Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
htop
Commits
dc262f4d
Commit
dc262f4d
authored
Mar 29, 2010
by
Hisham Muhammad
Browse files
STARTTIME column
parent
22b0d7df
Changes
3
Hide whitespace changes
Inline
Side-by-side
Process.c
View file @
dc262f4d
...
...
@@ -27,6 +27,7 @@ in the source distribution for its full text.
#include <stdbool.h>
#include <pwd.h>
#include <sched.h>
#include <time.h>
#ifdef HAVE_PLPA
#include <plpa.h>
...
...
@@ -98,9 +99,10 @@ typedef struct Process_ {
long int priority;
long int nice;
long int nlwp;
char starttime_show[8];
time_t starttime_ctime;
#ifdef DEBUG
long int itrealvalue;
unsigned long int starttime;
unsigned long int vsize;
long int rss;
unsigned long int rlim;
...
...
@@ -186,7 +188,7 @@ const char *Process_fieldTitles[] = {
""
,
" PID "
,
"Command "
,
"S "
,
" PPID "
,
" PGRP "
,
" SESN "
,
" TTY "
,
"TPGID "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
" UTIME+ "
,
" STIME+ "
,
"- "
,
"- "
,
"PRI "
,
" NI "
,
"- "
,
"
-
"
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"
START
"
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"- "
,
"CPU "
,
" VIRT "
,
" RES "
,
" SHR "
,
" CODE "
,
" DATA "
,
" LIB "
,
" DIRTY "
,
" UID "
,
"CPU% "
,
"MEM% "
,
...
...
@@ -403,6 +405,7 @@ static void Process_writeField(Process* this, RichString* str, ProcessField fiel
}
break
;
}
case
STARTTIME
:
snprintf
(
buffer
,
n
,
"%s"
,
this
->
starttime_show
);
break
;
#ifdef HAVE_OPENVZ
case
CTID
:
snprintf
(
buffer
,
n
,
"%5u "
,
this
->
ctid
);
break
;
case
VPID
:
snprintf
(
buffer
,
n
,
"%5u "
,
this
->
vpid
);
break
;
...
...
@@ -578,6 +581,8 @@ int Process_compare(const void* v1, const void* v2) {
return
strcmp
(
p1
->
comm
,
p2
->
comm
);
case
NLWP
:
return
(
p1
->
nlwp
-
p2
->
nlwp
);
case
STARTTIME
:
return
(
p1
->
starttime_ctime
-
p2
->
starttime_ctime
);
#ifdef HAVE_OPENVZ
case
CTID
:
return
(
p1
->
ctid
-
p2
->
ctid
);
...
...
Process.h
View file @
dc262f4d
...
...
@@ -30,6 +30,7 @@ in the source distribution for its full text.
#include <stdbool.h>
#include <pwd.h>
#include <sched.h>
#include <time.h>
#ifdef HAVE_PLPA
#include <plpa.h>
...
...
@@ -100,9 +101,10 @@ typedef struct Process_ {
long
int
priority
;
long
int
nice
;
long
int
nlwp
;
char
starttime_show
[
8
];
time_t
starttime_ctime
;
#ifdef DEBUG
long
int
itrealvalue
;
unsigned
long
int
starttime
;
unsigned
long
int
vsize
;
long
int
rss
;
unsigned
long
int
rlim
;
...
...
ProcessList.c
View file @
dc262f4d
...
...
@@ -431,7 +431,7 @@ static int ProcessList_readStatFile(Process *proc, FILE *f, char *command) {
&
proc
->
minflt
,
&
proc
->
cminflt
,
&
proc
->
majflt
,
&
proc
->
cmajflt
,
&
proc
->
utime
,
&
proc
->
stime
,
&
proc
->
cutime
,
&
proc
->
cstime
,
&
proc
->
priority
,
&
proc
->
nice
,
&
proc
->
nlwp
,
&
proc
->
itrealvalue
,
&
proc
->
starttime
,
&
proc
->
vsize
,
&
proc
->
rss
,
&
proc
->
rlim
,
&
zero
,
&
proc
->
vsize
,
&
proc
->
rss
,
&
proc
->
rlim
,
&
proc
->
startcode
,
&
proc
->
endcode
,
&
proc
->
startstack
,
&
proc
->
kstkesp
,
&
proc
->
kstkeip
,
&
proc
->
signal
,
&
proc
->
blocked
,
&
proc
->
sigignore
,
&
proc
->
sigcatch
,
&
proc
->
wchan
,
&
proc
->
nswap
,
&
proc
->
cnswap
,
...
...
@@ -474,6 +474,13 @@ static bool ProcessList_readStatusFile(Process* proc, const char* dirname, char*
if
(
statok
==
-
1
)
return
false
;
proc
->
st_uid
=
sstat
.
st_uid
;
struct
tm
date
;
time_t
ctime
=
sstat
.
st_ctime
;
proc
->
starttime_ctime
=
ctime
;
(
void
)
localtime_r
((
time_t
*
)
&
ctime
,
&
date
);
strftime
(
proc
->
starttime_show
,
7
,
((
ctime
>
time
(
NULL
)
-
86400
)
?
"%R "
:
"%b%d "
),
&
date
);
return
true
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment