1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 11:08:11 +00:00

Kernel+ProcessManager: Show per-process syscall counts.

Added a simple syscall counter to the /proc/all contents. :^)
This commit is contained in:
Andreas Kling 2019-04-17 14:48:55 +02:00
parent c59f8cd663
commit c02c6fef28
6 changed files with 22 additions and 4 deletions

View file

@ -579,7 +579,7 @@ ByteBuffer procfs$all(InodeIdentifier)
auto processes = Process::all_processes();
StringBuilder builder(processes.size() * 80);
auto build_process_line = [&builder] (Process* process) {
builder.appendf("%u,%u,%u,%u,%u,%u,%u,%s,%u,%u,%s,%s,%u,%u,%u,%u,%s\n",
builder.appendf("%u,%u,%u,%u,%u,%u,%u,%s,%u,%u,%s,%s,%u,%u,%u,%u,%s,%u\n",
process->pid(),
process->main_thread().times_scheduled(), // FIXME(Thread): Bill all scheds to the process
process->tty() ? process->tty()->pgid() : 0,
@ -596,7 +596,8 @@ ByteBuffer procfs$all(InodeIdentifier)
process->amount_resident(),
process->amount_shared(),
process->main_thread().ticks(), // FIXME(Thread): Bill all ticks to the process
to_string(process->priority())
to_string(process->priority()),
process->syscall_count()
);
};
build_process_line(Scheduler::colonel());