| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ Essentially, separate root process and remote procedure call handling.
I really should write down some documentation so I don't forget, but
essentially: All threads share a common process virtual memory, and
when a thread wants to make an rpc, it switches over to its own rpc
vmem space that is linked to the remote process.
|
|
|
|
|
|
|
|
The output is close enough, and I like that uncrustify is a third-party
tool, so people can install a single tool for formatting instead of
having to lug around a whole toolchain. I fully expect to have to add
settings to uncrustify.conf, but let's see how this goes.
|
|
+ Next step, start documenting contents of each file.
|
|
+ Closer to what it's for rather than what it is.
|
|
|
|
+ next up would probably be to start working on process/thread
relationships, largely as documented. Still not entirely sure about
how I want to handle fork, but I suppose I might figure it out at some
point.
|
|
|
|
|
|
|
|
|
|
+ Still lots todo, and I'm not entirely sure how I should handle program
space switches (mainly since the kernel uses the process' stack, maybe
it shouldn't?)
|
|
|
|
+ GCC seems to provide this even on 32bit platforms, though I should
really check.
|
|
|
|
|
|
|
|
lower 8 bits are reserved for arch-specific flags (but at least
read/write/execute) and higher 8 bits are metadata, currently only for
VM_VIRTUAL (to be used when the backing physical memory shouldn't be
freed)
|
|
|
|
|
|
+ Probably completely unnecessary stylistic thing, but I'll roll with it
|
|
+ No clue why I had that stuff in common/main.c
|
|
|
|
|
|
+ Release mode is sort of broken, as lto doesn't work with linker
relaxation and turning the relaxation off causes issues with the jump
from init to kernel (as I've currently implemented it, could probably
be fixed with a manual jump from assembly, I'll add it to my TODO
list)
|