Measuring startup-time from userspace
From: Taras Glek
Date: Sun Jan 02 2011 - 18:05:27 EST
Hi,
Does Linux provide a reasonable way to measure how long a process has
existed for? The goal is to have a function that returns the number of
milliseconds since process-creation.
We'd like to be able to have Firefox self-diagnose startup times.
Unfortunately, it turns out that library loading time adds a lot to
startup before application code runs, so a in-application timer would
underestimate startup time.
It appears that the most precise solution is to read start time from
/proc/self/stat. Unfortunately the time is in jiffies-since-startup and
there don't seem to be any good counters to compare against (ie
/proc/uptime doesn't provide enough resolution). So far the only
workable solution seems to create a new thread/process. Then one can do
(/proc/<newpid>/stat.starttime - /proc/self/stat.starttime) * 1000 / HZ
.
The question is, there way for a process to measure time-since-startup
without horrible hacks like spawning a new processes?
Taras
ps. Perhaps /proc/timer_list contains enough info?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/