aboutsummaryrefslogtreecommitdiffstats
path: root/init/subsys.c
AgeCommit message (Collapse)Author
2024-03-30*: directory changesturret
since this project is a skeleton and not meant to clutter up the code that will actually consume the bot, i've opted to consolidate the majority of files under a single directory and minimise extra files *: move code to util/ *: move include files to include/dbs/ net: consolidate net functions into single file config: remove config
2024-01-18all: remove defunct printsturret
2024-01-14subsys: clear signal handlersturret
since we moved our signal handlers to be created before subsystems are created, our new signal handlers (which namely blocks SIGTERM, used for panicing) are passed on. in order to restore full panic functionality, we clear all signal blocks before passing execution to the subsystem
2023-12-18*: enforce 78 char line limitturret
2023-12-18subsys: decrement subsystem count on subsys terminationturret
2023-12-18subsys: implement subsystem respawningturret
2023-12-18subsys: use rlimits to determine stack sizeturret
2023-12-03subsys: add mode variable & some helper funcsturret
2023-11-24misc: subsys upgrade, log timestampsturret
(log) - create LOGLEVEL constant numbers - implement CONSOLE_LOGLEVEL - color array now uses loglevel constants - timestamp now shown (thanks util-linux) (init) - register mainpid - hello world print - fix process reaper to refer to subsys when reaping (subsys) - create maximum subsystem count - create subsystem table - add debugging prints to subsystem entry and termination - create function to handle process termination (unmap stack, free subsystem malloc, clear entry in table) - disable subsystem inception - change die references to fail with print - supply clone with signal to send on termination (SIGCHLD)
2023-11-19misc: minor bugs and commentsturret
sprinkle a little bit of commenting throughout the codebase. hopefully i dont regret what i've written - clone: bottom of stack is passed through - print: write newline at end of message - initcall: functions return void type very basic net startup. hopefully i dont regret implementing the websocket protocol myself in a language as holy as C.
2023-11-19Initial committurret
- create subsystem system using clone syscall, shared memory, shared file descriptors - printk-like logging facility (TODO: console loglevel) - initcall system (like linux kernel) TODO: determine license factors: linker.ld, linux kernel licensing (some ideas are more liberally taken rather than paraphrased)