Minsoo's FreeBSD wiki page
Introduction
Hi, I'm Minsoo, currently studying computer engineering at the University of Waterloo (currently planning transfer to mathematical physics). I have been using FreeBSD since FreeBSD 12.2. I avoided contributing to FreeBSD back then because I didn't want to use Subversion, so when FreeBSD finished the Git migration I started submitting patches to FreeBSD (mostly doc back then).
These days I work on schedulers, kernel dumps, and LLDB. I'm planning to work on virtual memory stuff in the future to introduce KASLR in the kernel.
TODO
LLDB
I hope I could finish the tasks below before LLVM 23 branching, but seems like it's impossible considering my university courseload.
- Add support for architectures on FreeBSD-14 and 15. (Both ProcessFreeBSD and ProcessFreeBSDKernelCore)
- Create an extensive test suite for ProcessFreeBSDKernelCore.
Scheduler
- Fix minor errors in the 4BSD scheduler. There are few notes and todo comments, check if they are completed. If so, remove them. If not, implement.
- Update scheduler.9, runq.9, sched_4bsd.4, sched_ule.4
- Write sched_4bsd.9 and sched_ule.9 to explain the scheduler internals and algorithms
- Help olce@ for ULE 4.0
- Introduce EEVDF scheduler instance in the base. Benchmark on different environments like servers, embedded, desktop, etc. See if it really improves weaknesses (e.g. latency) of the ULE scheduler.
Kernel dump
- Refactor kernel dump code so we can easily introduce other dump mechanisms
- Introduce kernel dump in ELF-core format that only contains used pages like minidump
- Update libkvm accordingly
- Update LLDB (and possibly GDB) to understand FreeBSD's kernel ELF core dump.
Contact
Email: <minsoo AT minsoo DOT io>
- Discord: minsoochoo
Links
Blog: https://minsoo.io
Mastodon: @minsoochoo