aboutsummaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2022-05-28start implementing new proc/rpc handlingKimplul
+ Essentially, separate root process and remote procedure call handling. I really should write down some documentation so I don't forget, but essentially: All threads share a common process virtual memory, and when a thread wants to make an rpc, it switches over to its own rpc vmem space that is linked to the remote process.
2022-05-24make process loading more genericKimplul
2022-05-24initial musings about execKimplul
2022-05-23start writing documentationKimplul
2022-05-23modify file genKimplul
2022-05-23new include structure, make parse easier for doxyKimplul
2022-05-23switch from clang-format to uncrustifyKimplul
The output is close enough, and I like that uncrustify is a third-party tool, so people can install a single tool for formatting instead of having to lug around a whole toolchain. I fully expect to have to add settings to uncrustify.conf, but let's see how this goes.
2022-05-22fixed accidental removal of CLEANUP_CMDKimplul
2022-05-22add @file info to all filesKimplul
+ Next step, start documenting contents of each file.
2022-05-22rename vm_branch to vmemKimplul
+ Closer to what it's for rather than what it is.
2022-05-22improved tcb handling in preparation for processesKimplul
2022-05-21add status info to memory mappingsKimplul
+ next up would probably be to start working on process/thread relationships, largely as documented. Still not entirely sure about how I want to handle fork, but I suppose I might figure it out at some point.
2022-05-21implement timers betterKimplul
2022-05-09improve uapiKimplul
2022-05-05fix makefiles on netbsdKimplul
+ Doesn't quite compile all the way unfortunately, building the GNU toolchain on NetBSD is a bit more difficult than I was expecting. LLVM does compile, but fails to link for some reason.
2022-05-05riscv64 boots with clang (sort of)Kimplul
2022-04-29continue building base for irq handlingKimplul
2022-04-24fix rv32 compile errorsKimplul
2022-04-24start initial irq handlingKimplul
+ Still lots todo, and I'm not entirely sure how I should handle program space switches (mainly since the kernel uses the process' stack, maybe it shouldn't?)
2022-04-23ran clang-formatKimplul
2022-04-21fix warnings on 32bit riscvKimplul
+ Will most probably not work on 32bit, but nice to make 'portable' code.
2022-04-21use uint64_t for timer ticksKimplul
+ GCC seems to provide this even on 32bit platforms, though I should really check.
2022-04-21start working on timer subsysKimplul
2022-04-17expand sbi implementation a bitKimplul
2022-04-10add basic ubsan and fix issues reported by itKimplul
2022-04-10add clang format and run itKimplul
2022-03-01make vmflags_t 16 bitsKimplul
lower 8 bits are reserved for arch-specific flags (but at least read/write/execute) and higher 8 bits are metadata, currently only for VM_VIRTUAL (to be used when the backing physical memory shouldn't be freed)
2022-01-07Use #if defined(...) when not guard clauseKimplul
2022-01-07Modified pmem configuration handlingKimplul
2022-01-07Prefix static functions with __Kimplul
+ Probably completely unnecessary stylistic thing, but I'll roll with it
2022-01-07Moved debugging into debug.cKimplul
+ No clue why I had that stuff in common/main.c
2022-01-07Steps towards better status/debugging controlKimplul
2022-01-07Improved header dependency treeKimplul
2022-01-07Allow building with clangKimplul
+ Release mode is sort of broken, as lto doesn't work with linker relaxation and turning the relaxation off causes issues with the jump from init to kernel (as I've currently implemented it, could probably be fixed with a manual jump from assembly, I'll add it to my TODO list)
2022-01-06Jump back to kernelspace testedKimplul
+ Added automated categories to debugging, bug/info/warn/error etc. Now I should just try to use them here and there :D
2021-12-29RefactoringKimplul
+ Mainly just moving stuff out or arch/riscv/ that should be handled in common/ + Prepared separate process stack/call stack for server callbacks, rest to be implemeted soon ish
2021-12-29Preparations for refactoringKimplul
2021-12-27Started work on syscallsKimplul
2021-12-26First useful jump to userspace!Kimplul
2021-12-23Fixups to four previous commitsKimplul
+ Christ, I'm shit at git etiquette
2021-12-23map_fill_region can now utilize higher order pagesKimplul
2021-12-23Added stat/mod_vmemKimplul
+ In general improved riscv vmem.c
2021-12-21Modified vmem internals to use pagesKimplul
2021-12-20Right up to init_proc, FUCK YEAHKimplul
+ Lots to do still, should keep a more detailed TODO.txt, among other things implement Sv48 support, make more things single truths etc.
2021-12-20More sensible initKimplul
+ Who knew some reservations were a good thing? (at least relativelyy speaking)
2021-12-20Revert "still some issues with vmem"Kimplul
This reverts commit 69d13626a37e33f31627a1144605a8fb93684d25.
2021-12-20still some issues with vmemKimplul
+ Not sure if I should go with noinit or init, fuck
2021-12-20Added init backKimplul
2021-12-19Add cpio newc format readerKimplul
+ Still need to actually add in an initrd that uses the format :D
2021-12-19Massive changes to jump to userspaceKimplul