summaryrefslogtreecommitdiff
path: root/src/kernel/proc.c
AgeCommit message (Expand)Author
2022-04-28kernel/proc: reparent deathbedded processesdzwdz
2022-04-28kernel/proc: simplify `process_seed`dzwdz
2022-04-28kernel/proc: explicitly handle all process states in switch()esdzwdz
2022-04-28kernel/vfs: don't wait for IRQs when system is about to haltdzwdz
2022-04-22kernel: recursive process_freedzwdz
2022-04-21kernel: consolidate `process_seed` and `run_init`dzwdz
2022-04-21kernel/proc: only expose `process_switch_any()`dzwdz
2022-04-21kernel/proc: only kill deathbedded processes on switch attemptdzwdz
2022-04-21kernel: recursive kill()dzwdz
2022-04-21kernel: `shutdown()`; temporarily print process states on shutdowndzwdz
2022-04-16kernel/vfs: store the queue in `vfs_request` itselfdzwdz
2022-04-15kernel/vfs: don't hang on orphaned vfs callsdzwdz
2022-04-15kernel/vfs: don't hang waiting for a vfs backend after it exit()sdzwdz
2022-04-14kernel/proc: only change state through `process_transition`dzwdz
2022-04-14kernel: store a pointer to the callback function in .waits4irqdzwdz
2022-04-14kernel: port init's `printf` implementationdzwdz
2022-04-14kernel: basic page allocator, `process_free`dzwdz
2022-04-12kernel/proc: implement `process_next` for simple process iterationdzwdz
2022-04-11kernel: implement `cpu_pause()` in assembly, remove `irq_interrupt_flag()`dzwdz
2022-04-11kernel/arch: only allow IRQs in the idle processdzwdz
2022-04-11kernel: shutdown when init quitsdzwdz
2022-04-10init/fs: handle delegated reads in a subprocessdzwdz
2022-04-10kernel: idle processdzwdz
2022-04-10kernel: process_find_multipledzwdz
2022-04-09kernel: `vfs_request_accept` now doesn't switch processesdzwdz
2021-11-14shared: use a single implementation of mem* functions everywheredzwdz
2021-11-02fork2 refactor: every process now has (only) a single controlled vfs_backenddzwdz
2021-10-15kernel: quit QEMU once there are no running processes leftdzwdz
2021-10-04remove unused variables in process_try2collectdzwdz
2021-10-04implement process_kill()dzwdz
2021-10-04remove support for processes returning strings on exitdzwdz
2021-09-21start using sparse's `-Wdecl`dzwdz
2021-09-21implement (safe) min/max macrosdzwdz
2021-09-21refactor `await_finish` into `process_try2collect`dzwdz
2021-09-20create a few specialized panic()sdzwdz
2021-09-19show the malloc balance on halt; remove a bad kfree() calldzwdz
2021-09-18remove `struct process.stack_top` - it was unuseddzwdz
2021-09-12implement part of `fs_respond`dzwdz
2021-09-11replace `user_ptr` with a linux-style `__user` annotationdzwdz
2021-09-08style: simplify the `kmalloc(sizeof(...` callsdzwdz
2021-09-05move most of the memory stuff to kernel/mem/dzwdz
2021-09-04refactor finding empty handles to a functiondzwdz
2021-09-04rename file descriptors to handlesdzwdz
2021-08-25remove FD_STDOUTdzwdz
2021-08-25implement vfs_mount_seed, which creates the vfs passed to initdzwdz
2021-08-24switch to using user_ptr for pointers coming from userlanddzwdz
2021-08-24replace () with (void) in function definitionsdzwdz
2021-08-24implement FD_SPECIAL_TTY, an stdout equaliventdzwdz
2021-08-24add some scaffolding for file descriptorsdzwdz
2021-08-22basic mount resolvingdzwdz