toaruos/kernel
Kevin Lange 4d8335ad75 Implement proper wait/waitpid.
This is a pretty big commit, so let's run through it in parts:

- All of the userspace changes are to switch away from syscall_wait
  Mostly, this is to waitpid; some things were tweaked to do things
  "properly" instead of waiting for particular processes. Init has
  been fixed to do a proper spin wait.
- syscall_wait is gone - as are its uses. newlib bindings have been
  using just waitpid for a while now.
- waitpid now performs like a Unix waitpid
- process reaping is no longer a "do this on next change thing":
  it happens when a process is waited on, like it should
  (That means we can have real zombies: terminated processes that
  have not yet been waited on)
- Reparenting of children to init has been implemented, so you
  can fork-daemonize!

Overall, this is pretty big... So I hope it doesn't break everything.
2014-04-27 01:37:33 -07:00
..
cpu Fix extern declaration of isrs table 2014-04-13 02:01:56 -07:00
devices make pci_scan take an extra arg 2014-04-10 23:34:55 -07:00
ds Implement proper wait/waitpid. 2014-04-27 01:37:33 -07:00
fs kill sockfs, what even is this 2014-04-13 00:51:37 -07:00
include Implement proper wait/waitpid. 2014-04-27 01:37:33 -07:00
mem Do a better job with page table management 2014-04-25 23:17:20 -07:00
misc Do a better job with page table management 2014-04-25 23:17:20 -07:00
sys Implement proper wait/waitpid. 2014-04-27 01:37:33 -07:00
link.ld Initial work on modules 2014-03-09 19:36:28 -07:00
main.c Fix a typo and a potentially crash with timers 2014-04-13 02:03:11 -07:00
start.s Fix GRUB boot stuff 2014-03-16 18:54:32 -07:00