Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-08-14 | reorganization: first steps | 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-08 | bootstrap: fix main()'s stack alignment | dzwdz | |
2023-08-08 | build: build bootstrap as an ELF first, and then convert to a raw binary | dzwdz | |
2023-08-06 | kernel: put every driver in /kdev/ | dzwdz | |
there's no real reason for bootstrap to be doing that, and this brings it closer to only doing the elf loading | |||
2023-08-06 | libc: fs_dirinject2 for injecting multiple paths | dzwdz | |
2023-06-17 | libc: expand psdata into a proper struct, include executable base | dzwdz | |
this is very useful for debugging userland programs using the qemu gdb stub | |||
2023-02-25 | toolchain: working customized toolchain for userland bins | dzwdz | |
2023-02-23 | build: don't -Isrc/ in user code | dzwdz | |
2023-02-23 | fix: misc 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-25 | user: process titles, /bin/ps | dzwdz | |
2023-01-06 | kernel: basic procfs | dzwdz | |
2022-12-25 | user/lib: reorganize a few header files | dzwdz | |
2022-09-20 | shared: rename ufs_request to better fit its role in userland | dzwdz | |
The old name could have suggested that it held a response to a request received by fs_wait. The new name is unfortunately very similar to the `struct vfs_request` already used internally in the kernel, but it's better at conveying that it contains a filesystem request yet to be handled. vfs_request - virtual filesystem request (a bad name in hindsight) ufs_request - user filesystem request | |||
2022-08-30 | set up the stack in user/bootstrap instead of the kernel | dzwdz | |
2022-08-28 | user/lua: prepare libc headers | dzwdz | |
2022-08-19 | syscall/fs_wait: return a handle for each request | dzwdz | |
2022-08-13 | user/bootstrap: remove some dummy symbols | dzwdz | |
2022-08-13 | user/bootstrap: move .bss before .text | dzwdz | |
prevents the initrd from overflowing into .bss | |||
2022-08-13 | user: plan9-style /bin/ union | dzwdz | |
2022-08-08 | fs: getsize() on directories | dzwdz | |
2022-08-07 | user/libc: strchr | dzwdz | |
2022-08-05 | add _syscall_getsize | dzwdz | |
2022-08-04 | do some simple TODOs, organize the rest; general code maintainance | dzwdz | |
2022-08-01 | user/fs: fs_whitelist injects directory entries | dzwdz | |
2022-07-31 | user: replace the MOUNT macro with MOUNT_AT | dzwdz | |
The old style could be confused with a regular function, where the driver would be executed unconditionally. This should make it more obvious that the driver doesn't get executed in the parent process. | |||
2022-07-30 | user/fs: create a shared library for handling directory reads | dzwdz | |
2022-07-30 | user/bootstrap: discard the relocation sections | dzwdz | |
2022-07-29 | use a shared fs_normslice() function to handle offsets | dzwdz | |
2022-07-27 | user/libc: execve() supports passing argv now | dzwdz | |
2022-07-26 | user/shell: automatically execute binaries in /bin/ | dzwdz | |
2022-07-26 | user/libc: a _start that automatically selfrelocates PIEs | dzwdz | |
2022-07-26 | user/libc: exit() | dzwdz | |
What an interesting commit. | |||
2022-07-26 | shared: move some headers from shared/ to camellia/ | dzwdz | |
2022-07-26 | move user_bootstrap to user/bootstrap for consistency's sake | dzwdz | |