0

I am trying to develop a multi-process system with RaspberryPi in which I want to monitor all major processes and how they are scheduled using Linux. That is, obtaining scheduler states, start time, release time etc. I have been messing with '/proc' folder in order to find such an information but I haven't able to find anything really useful so far.

For example, if you go into /proc/pid/task/pid you can see:

se.exec_start
se.vruntime
se.sum_exec_runtime
se.statistics.wait_start
se.statistics.sleep_start
se.statistics.block_start
se.statistics.sleep_max
se.statistics.block_max
se.statistics.iowait_sum
se.statistics.wakeups

and so on. Now, this looks like I am up to something, but not clear enough. I want to just see how processes are scheduled in cores. i.e, Process1 released at 0.30, then Process2 started at 0.70 (system timer values) etc.

Is something like this possible by monitoring kernel folders such as '/proc'? If not, is there a way to determine this using another tracing tools or scheduler tools for Linux?

Any guidance is greately appreciated. Please tell me if there is something else I need to provide.

Thanks in advance.

  • You mean like this? – Fiximan Mar 2 '17 at 11:47
  • Did you trydtrace? General warning: You'll get a lot of data of you want all scheduling details. – dirkt Mar 2 '17 at 17:38
0

every process is different in what starts it and how/why it ends. it seems like what you're trying to do is practically impossible, unless you want to look at the calls a process is making, in that case you can use strace and sort through the output to see what it's doing exactly.

  • Hmm, exactly I want to learn why and when processes start and get released. I want to see how Linux schedules all processes, not one which calls a process make. A level above, I guess. – mozcelikors Mar 2 '17 at 12:09
  • different processes are started by different other processes, you have to do research on which process is started by what other process because they're all different. a good starting point would be to look at the init process, strace -p 1 and look at what it's starting, though i assume you have what processes you want to monitor already in mind. and most of those probably aren't started by init, but rather some other program. – Jonroxtech24 Mar 2 '17 at 12:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.