aboutsummaryrefslogtreecommitdiffstats
path: root/linux/LinuxProcess.h
diff options
context:
space:
mode:
authorDaniel Lange <DLange@git.local>2016-04-11 13:01:07 +0200
committerDaniel Lange <DLange@git.local>2016-04-11 13:01:07 +0200
commitff9409b1737627857eb47f64f536a3f66b6a09a4 (patch)
tree61b631ba551e68a4f656b8b76ff7bd0d9955fc64 /linux/LinuxProcess.h
parentf75ab6d2c11e8a8e18191b087564aedebbeb96c5 (diff)
downloaddebian_htop-ff9409b1737627857eb47f64f536a3f66b6a09a4.tar.gz
debian_htop-ff9409b1737627857eb47f64f536a3f66b6a09a4.tar.bz2
debian_htop-ff9409b1737627857eb47f64f536a3f66b6a09a4.zip
Imported Upstream version 2.0.0upstream/2.0.0
Diffstat (limited to 'linux/LinuxProcess.h')
-rw-r--r--linux/LinuxProcess.h161
1 files changed, 161 insertions, 0 deletions
diff --git a/linux/LinuxProcess.h b/linux/LinuxProcess.h
new file mode 100644
index 0000000..f2d81aa
--- /dev/null
+++ b/linux/LinuxProcess.h
@@ -0,0 +1,161 @@
+/* Do not edit this file. It was automatically generated. */
+
+#ifndef HEADER_LinuxProcess
+#define HEADER_LinuxProcess
+/*
+htop - LinuxProcess.h
+(C) 2014 Hisham H. Muhammad
+Released under the GNU GPL, see the COPYING file
+in the source distribution for its full text.
+*/
+
+
+#define PROCESS_FLAG_LINUX_IOPRIO 0x0100
+#define PROCESS_FLAG_LINUX_OPENVZ 0x0200
+#define PROCESS_FLAG_LINUX_VSERVER 0x0400
+#define PROCESS_FLAG_LINUX_CGROUP 0x0800
+#define PROCESS_FLAG_LINUX_OOM 0x1000
+
+typedef enum UnsupportedProcessFields {
+ FLAGS = 9,
+ ITREALVALUE = 20,
+ VSIZE = 22,
+ RSS = 23,
+ RLIM = 24,
+ STARTCODE = 25,
+ ENDCODE = 26,
+ STARTSTACK = 27,
+ KSTKESP = 28,
+ KSTKEIP = 29,
+ SIGNAL = 30,
+ BLOCKED = 31,
+ SSIGIGNORE = 32,
+ SIGCATCH = 33,
+ WCHAN = 34,
+ NSWAP = 35,
+ CNSWAP = 36,
+ EXIT_SIGNAL = 37,
+} UnsupportedProcessField;
+
+typedef enum LinuxProcessFields {
+ CMINFLT = 11,
+ CMAJFLT = 13,
+ UTIME = 14,
+ STIME = 15,
+ CUTIME = 16,
+ CSTIME = 17,
+ M_SHARE = 41,
+ M_TRS = 42,
+ M_DRS = 43,
+ M_LRS = 44,
+ M_DT = 45,
+ #ifdef HAVE_OPENVZ
+ CTID = 100,
+ VPID = 101,
+ #endif
+ #ifdef HAVE_VSERVER
+ VXID = 102,
+ #endif
+ #ifdef HAVE_TASKSTATS
+ RCHAR = 103,
+ WCHAR = 104,
+ SYSCR = 105,
+ SYSCW = 106,
+ RBYTES = 107,
+ WBYTES = 108,
+ CNCLWB = 109,
+ IO_READ_RATE = 110,
+ IO_WRITE_RATE = 111,
+ IO_RATE = 112,
+ #endif
+ #ifdef HAVE_CGROUP
+ CGROUP = 113,
+ #endif
+ OOM = 114,
+ IO_PRIORITY = 115,
+ LAST_PROCESSFIELD = 116,
+} LinuxProcessField;
+
+#include "IOPriority.h"
+
+typedef struct LinuxProcess_ {
+ Process super;
+ IOPriority ioPriority;
+ unsigned long int cminflt;
+ unsigned long int cmajflt;
+ unsigned long long int utime;
+ unsigned long long int stime;
+ unsigned long long int cutime;
+ unsigned long long int cstime;
+ long m_share;
+ long m_trs;
+ long m_drs;
+ long m_lrs;
+ long m_dt;
+ #ifdef HAVE_TASKSTATS
+ unsigned long long io_rchar;
+ unsigned long long io_wchar;
+ unsigned long long io_syscr;
+ unsigned long long io_syscw;
+ unsigned long long io_read_bytes;
+ unsigned long long io_write_bytes;
+ unsigned long long io_cancelled_write_bytes;
+ unsigned long long io_rate_read_time;
+ unsigned long long io_rate_write_time;
+ double io_rate_read_bps;
+ double io_rate_write_bps;
+ #endif
+ #ifdef HAVE_OPENVZ
+ unsigned int ctid;
+ unsigned int vpid;
+ #endif
+ #ifdef HAVE_VSERVER
+ unsigned int vxid;
+ #endif
+ #ifdef HAVE_CGROUP
+ char* cgroup;
+ #endif
+ unsigned int oom;
+} LinuxProcess;
+
+#ifndef Process_isKernelThread
+#define Process_isKernelThread(_process) (_process->pgrp == 0)
+#endif
+
+#ifndef Process_isUserlandThread
+#define Process_isUserlandThread(_process) (_process->pid != _process->tgid)
+#endif
+
+
+extern ProcessFieldData Process_fields[];
+
+extern ProcessPidColumn Process_pidColumns[];
+
+extern ProcessClass LinuxProcess_class;
+
+LinuxProcess* LinuxProcess_new(Settings* settings);
+
+void Process_delete(Object* cast);
+
+/*
+[1] Note that before kernel 2.6.26 a process that has not asked for
+an io priority formally uses "none" as scheduling class, but the
+io scheduler will treat such processes as if it were in the best
+effort class. The priority within the best effort class will be
+dynamically derived from the cpu nice level of the process:
+extern io_priority;
+*/
+#define LinuxProcess_effectiveIOPriority(p_) (IOPriority_class(p_->ioPriority) == IOPRIO_CLASS_NONE ? IOPriority_tuple(IOPRIO_CLASS_BE, (p_->super.nice + 20) / 5) : p_->ioPriority)
+
+IOPriority LinuxProcess_updateIOPriority(LinuxProcess* this);
+
+bool LinuxProcess_setIOPriority(LinuxProcess* this, IOPriority ioprio);
+
+void LinuxProcess_writeField(Process* this, RichString* str, ProcessField field);
+
+long LinuxProcess_compare(const void* v1, const void* v2);
+
+bool Process_isThread(Process* this);
+
+
+#endif

© 2014-2024 Faster IT GmbH | imprint | privacy policy