Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-08-14 | reorganization: first steps | dzwdz | |
2023-08-13 | libc: replace fork2_n_mount with mount_at | dzwdz | |
2023-08-10 | user/fs: no longer inject MOUNT_ATs by default | dzwdz | |
arguably the wrong choice from an usability standpoint, but the right choice from a performance standpoint. there's definitely a nicer way to do this | |||
2023-08-06 | libc: fs_dirinject2 for injecting multiple paths | dzwdz | |
2023-06-10 | kernel: implement getpid, getppid | dzwdz | |
2023-06-04 | kernel: rework /proc/ and process IDs | dzwdz | |
I'm yet to write proper docs but the TL;DR is: Mounting /proc/ creates a new pid namespace. You're still visible in the old namespace with your old pid, but your children won't be. You see your own pid as 1. Current pids of children will be preserved, pids will be allocated starting from the highest one of your children. | |||
2023-02-23 | fix: printf related warnings | dzwdz | |
2023-01-25 | style: typedef structs, shorter namespaces | dzwdz | |
I've wanted to do this for a while, and since I've just had a relatively large refactor commit (pcpy), this is as good of a time as any. Typedefing structs was mostly inspired by Plan 9's coding style. It makes some lines of code much shorter at basically no expense. Everything related to userland kept old-style struct definitions, so as not to force that style onto other people. I also considered changing SCREAMING_ENUM_FIELDS to NicerLookingCamelcase, but I didn't, just in case that'd be confusing. | |||
2023-01-19 | kernel: user interrupts | dzwdz | |
2023-01-06 | kernel: basic procfs | dzwdz | |
2023-01-06 | kernel: turn the NULLFS into an always present special handle | dzwdz | |
preparing for HANDLE_PROCFS | |||
2022-12-27 | sh: minor usability / aesthetic improvements | dzwdz | |
2022-12-25 | user/lib: reorganize a few header files | dzwdz | |
2022-09-04 | user/shell: use perror | dzwdz | |
2022-08-11 | shared/header: don't mix kinds of declarations between headers | dzwdz | |
syscalls.h shouldn't define a random struct etc | |||
2022-08-08 | user/libc: cwd | dzwdz | |
2022-08-08 | user: separate tmpfs into its own executable, add `mount` | dzwdz | |
2022-08-07 | user/shell: make `whitelist` work in a more sensible way | dzwdz | |
doesn't need to be a shell builtin now | |||
2022-08-07 | user/shell: make `>>` work for executables | dzwdz | |
2022-08-03 | shared: clean up printf, %u support (amongst other things) | dzwdz | |
2022-08-01 | user/shell: add a `time` builtin | dzwdz | |
2022-08-01 | user/shell: add a whitelist builtin | dzwdz | |
2022-07-31 | user/shell: use an array of function pointers for the builtins | dzwdz | |
2022-07-30 | user: stderr | dzwdz | |
2022-07-28 | user/shell: redirections | dzwdz | |
2022-07-27 | user/libc: a shitty fgets() | dzwdz | |
2022-07-27 | user/shell: basic shell script support | dzwdz | |
2022-07-27 | user/shell: fix echo | dzwdz | |
2022-07-27 | user/shell: actual parsing, multiple argument support | dzwdz | |
2022-07-27 | user/libc: execve() supports passing argv now | dzwdz | |
2022-07-27 | user: cleanup init and the shell's code | dzwdz | |
2022-07-26 | user: break out the shell and tests into separate binaries | dzwdz | |