Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-08-17 | tests: fix the bad_delegate test | dzwdz | |
It was closing the request handle... Now I'm guaranteeing an empty handle in a smarter way. | |||
2024-08-17 | kernel: immediately fail open() request instead of truncating the path | dzwdz | |
less error prone | |||
2024-08-17 | *: getxattr | dzwdz | |
2024-08-16 | tmpfs: minor cleanup | dzwdz | |
2024-08-15 | ext2fs: don't create files unless OPEN_CREATE is set | dzwdz | |
2024-08-03 | kernel: send user interrupt on page fault | dzwdz | |
I really should just rename interrupts to something else. This is inspired by Plan9 and meant to make debugging easier, as the dying process can take a stacktrace etc. It kinda sucks that the default handler now depends on fprintf, which is quite a bit of code, but whatever. | |||
2024-07-27 | cmd/termcook: fix integer size cast warning | dzwdz | |
2024-07-26 | kernel: implement _sys_intr_return | dzwdz | |
2024-07-25 | kernel: pass more information to user on interrupt | dzwdz | |
This is meant to facilitate a syscall for returning from interrupts, which will actually work in the general case as opposed to the current hack, which only works if the interrupt occured during a syscall (which is correct... for now). | |||
2024-07-22 | tests: check if SSE registers are preserved on context switches | dzwdz | |
2024-07-20 | *: moving files | dzwdz | |
2024-07-11 | kernel: start cleaning up VfsRequest | dzwdz | |
* I'm being more strict about the linked list state to hopefully ensure I'm not leaking any references. * vfsreq_create was renamed to vfsreq_dispatchcopy as that name feels more clear. It copies its argument, and dispatches it. * Requests for user backends are now handled more like requests for kernel backends - there's an accept() function that accepts a request. | |||
2024-05-19 | cmd: implement timebench | dzwdz | |
2024-05-19 | kernel: implement /dev/bintime | dzwdz | |
2024-05-11 | kernel: DUP_RDONLY and DUP_WRONLY | dzwdz | |
I probably should've tested DUP_WRONLY too, now that I think about it. TODO? | |||
2024-05-11 | kernel: remove HANDLE_NULLFS | dzwdz | |
It was a dumb hack that wasn't even necessary - an error when mounting should shadow over the mountpoint anyways. | |||
2024-05-11 | kernel: fix null dereference when delegating an nonexistent handle | dzwdz | |
2024-05-05 | net: expose the rtl mac to userland, make the netstack use it | dzwdz | |
2024-05-05 | libc: implement asprintf | dzwdz | |
2024-05-04 | kernel/rtl8139: prepare for /dev/eth/mac | dzwdz | |
2024-05-04 | user/ntpfs: implement a basic ntp client | dzwdz | |
time() will probably end up doing io. That sounded bad at first, but Plan 9 does that too (see /sys/src/libc/9sys/nsec.c), so it's probably fine. I might need better service management soon. Also, dunno what it should return before it makes contact with NTP. I could implement RTC support, but eh. Doesn't feel that necessary. I'll also need to remember how the hell threading works, so it can talk with the ntp daemon on another thread. | |||
2024-04-14 | httpd: serve files out of /usr/www | dzwdz | |
2024-02-23 | kernel: fix _sys_fs_wait in init | dzwdz | |
2024-02-21 | cmd/socksfs: support connecting to ipv4 | dzwdz | |
2024-02-21 | user/*: remove some minor header-related TODOs | dzwdz | |
pretty useless, but the list of all the TODOs is getting unwieldy, so I might as well cross some crap off that list | |||
2023-12-25 | user/libc: reorganize net stuff, basic hosts-only gethostbyname() | dzwdz | |
/usr/share/hosts because i don't have /etc/ yet and i don't feel like creating it. | |||
2023-12-25 | kernel: _sys_getnull() (basically /dev/null) | dzwdz | |
2023-09-30 | user: rework terminal handling | dzwdz | |
2023-09-29 | *: properly remove _sys_filicide | dzwdz | |
not sure how that slipped by | |||
2023-09-25 | kernel/intr: accept a message, allow killing processes via intrs | dzwdz | |
2023-09-22 | build: support single file commands | dzwdz | |
2023-09-18 | kernel: implement _sys_time() | dzwdz | |
After some consideration this seems like the most fitting way to handle timekeeping. Directly, the syscall is only useful for keeping time within a single process, but it is meant to be used for e.g. NTP clients, which will provide the real time through the VFS. | |||
2023-09-17 | kernel/amd64: add HPET support, slightly rework time handling | dzwdz | |
2023-09-13 | *: clean up the filesystem | dzwdz | |
moved keyboard and vtty to /dev/, removed some obsolete stuff | |||
2023-09-13 | cmd/init: remove /initctl, use intr instead | dzwdz | |
2023-09-11 | *: rename /kdev/ to /dev/ | dzwdz | |
2023-09-07 | user: fix stdio stream pos; remove the shell pipe redir workaround | dzwdz | |
2023-09-07 | shell: use waitpid | dzwdz | |
2023-09-07 | shell: fix endless loop after redirection | dzwdz | |
2023-09-03 | misc: remove old debug prints | dzwdz | |
the rtl8139 mac wasn't being read correctly anyways, and the init stuff wasn't revelant in ages. the rest is relatively useful | |||
2023-09-03 | libc: split up large .c files, slimming down small binaries a bit | dzwdz | |
2023-09-02 | netstack: only return from open() once the socket connects | dzwdz | |
2023-09-02 | cmd: add socksfs | dzwdz | |
2023-09-02 | libc: opendir_f; make httpd use it | dzwdz | |
2023-08-31 | cmd/ps: use dirent.h | dzwdz | |
2023-08-31 | kernel: add _sys_getprocfs in place of HANDLE_PROCFS | dzwdz | |
This makes the side-effects more explicit, and feels less hacky than `HANDLE_PROCFS`. I don't think accessing a handle alone should have side-effects, even if it's a "special" one. | |||
2023-08-30 | style: get rid of eprintf | dzwdz | |
2023-08-29 | kernel: remove _sys_await, emulate it in libc | dzwdz | |
2023-08-29 | tests: fix everything broken by the pipe change | dzwdz | |
god, those tests are a mess. so are esemaphores. | |||
2023-08-15 | user: fix freeze if graphical shell was quit | dzwdz | |