Age | Commit message (Collapse) | Author |
|
This really improves the feeling of "system overview" :^)
|
|
|
|
|
|
|
|
|
|
I'm still feeling this out, but I am starting to like the general idea.
|
|
The idea here is to combine a potential syscall error code with an arbitrary
type in the case of success. I feel like this will end up much less error
prone than returning some arbitrary type that kinda sorta has bool semantics
(but sometimes not really) and passing the error through an out-param.
This patch only converts a few syscalls to using it. More to come.
|
|
Also use some Clang attribute wizardry to get a warning for use-after-move.
|
|
There's always a current working directory inode.
|
|
|
|
This accidentally grew into a little bit of VFS cleanup as well.
Also add a simple /bin/ln implementation to exercise it.
|
|
There are no more kernel bitmaps. It's much better this way.
|
|
|
|
It's useful to be able to see the readable, writable and bitmap flags.
|
|
|
|
|
|
They are backed by a Lockable<String> to ensure that access is synchronized.
|
|
For now, the WindowServer process will run with high priority,
while the Finalizer process will run with low priority.
Everyone else gets to be "normal".
At the moment, priority simply determines the size of your time slices.
|
|
Since we know who's holding the lock, and we're gonna have to yield anyway,
we can just ask the scheduler to donate any remaining ticks to that process.
|
|
|
|
This seems like an extremely relevant metric to track.
|
|
|
|
It automagically computes %CPU usage based on the number of times a process
has been scheduled between samples. The colonel task is used as idle timer.
This is pretty cool. :^)
|
|
This will be useful for implementing some process-related utilities.
|
|
Now the filesystem is generated on-the-fly instead of manually adding and
removing inodes as processes spawn and die.
The code is convoluted and bloated as I wrote it while sleepless. However,
it's still vastly better than the old ProcFS, so I'm committing it.
I also added /proc/PID/fd/N symlinks for each of a process's open fd's.
|