mirror of
https://github.com/RGBCube/serenity
synced 2025-05-23 19:05:08 +00:00
Kernel+SystemMonitor: Add fault counters
This patch adds three separate per-process fault counters: - Inode faults An inode fault happens when we've memory-mapped a file from disk and we end up having to load 1 page (4KB) of the file into memory. - Zero faults Memory returned by mmap() is lazily zeroed out. Every time we have to zero out 1 page, we count a zero fault. - CoW faults VM objects can be shared by multiple mappings that make their own unique copy iff they want to modify it. The typical reason here is memory shared between a parent and child process.
This commit is contained in:
parent
c33ac7f170
commit
35138437ef
7 changed files with 62 additions and 0 deletions
|
@ -685,6 +685,9 @@ Optional<KBuffer> procfs$all(InodeIdentifier)
|
|||
process_object.add("ticks", process.main_thread().ticks());
|
||||
process_object.add("priority", to_string(process.priority()));
|
||||
process_object.add("syscall_count", process.syscall_count());
|
||||
process_object.add("inode_faults", process.inode_faults());
|
||||
process_object.add("zero_faults", process.zero_faults());
|
||||
process_object.add("cow_faults", process.cow_faults());
|
||||
process_object.add("icon_id", process.icon_id());
|
||||
};
|
||||
build_process(*Scheduler::colonel());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue