2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the License);
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an AS IS BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 using System.Collections.Generic;
21 using System.Threading.Tasks;
22 using System.ComponentModel;
24 namespace Tizen.System
27 /// The structure for CPU usage.
31 [EditorBrowsable(EditorBrowsableState.Never)]
32 internal CpuUsage(Interop.RuntimeInfo.CpuUsage usage)
34 IoWait = usage.IoWait;
36 System = usage.System;
40 /// Running time of un-niced user processes (Percent).
42 public double User { get; internal set; }
44 /// Running time of kernel processes (Percent).
46 public double System { get; internal set; }
48 /// Running time of niced user processes (Percent).
50 public double Nice { get; internal set; }
52 /// Time waiting for I/O completion (Percent).
54 public double IoWait { get; internal set; }
58 /// The structure for CPU usage per process.
60 public class ProcessCpuUsage
62 [EditorBrowsable(EditorBrowsableState.Never)]
63 internal ProcessCpuUsage(Interop.RuntimeInfo.ProcessCpuUsage usage)
69 /// The amount of time this process has been scheduled in user mode (clock ticks).
71 public uint UTime { get; internal set; }
73 /// The amount of time this process has been scheduled in kernel mode (clock ticks).
75 public uint STime { get; internal set; }