3 ms·
What would be the challenge to write OS kernel in Lisp? Just X86, for the sake of umm simplicity, something like xv6: https://github.com/mit-pdos/xv6-public ht
by anta40 4y ago
What would be the challenge to write OS kernel in Lisp?
Just X86, for the sake of umm simplicity, something like xv6:
https://github.com/mit-pdos/xv6-public https://github.com/mit-pdos/xv6-public
Yes, I've read about Lisp machines. Sounds like a super expensive machine only accessible by big-budgeted research companies.
Most of Lisp folks on the net talk about how homoiconic language is elegant, or how REPL makes development faster, or how useful Lisp is for automatic theorem prover etc etc but very rarely I see Lisp folks talk about system programming, unlike C/C++/Rust folks.
- lispm 4y agoMezzano is a recent Common Lisp OS: https://github.com/froggey/Mezzano https://github.com/froggey/Mezzano
- anta40 4y agoGUI-based. Cool. But unlike xv6, I guess skimming the code wouldn't be that easy/straightfoward. And the build system looks unfamiliar, unlike xv6 which only requires 1 Makefile. Let me try it, anyway.
- ducktective 4y ago>OS kernel in Lisp GC is the problem there. Look up Carp-lisp
- hayley-patton 4y ago> GC is the problem there. It is? That didn't stop Genera, Interlisp, Movitz or Mezzano to name a few. Outside Lisp there's also Smalltalk, Oberon and Singularity to name a few operating systems with GC.
- ducktective 4y agoIf an OS has a GC-based kernel, it is automatically inferior to one lacking GC. That's why the cases you brought up are not used in industrial/production environments in modern times.
- hayley-patton 4y agoBut why?
- ducktective 4y agoRandom pauses and inferior performance
- hayley-patton 4y agoCompared to the other pauses kernels make? Biscuit (POSIX in Go [0]) introduced at worst a pause of 115 microseconds and a slowdown due to GC and safety checks of 15%. But the forementioned systems don't have a kernel/userspace split; Microsoft measured the split made a server 25 to 33% _slower_ [1]. [0] https://pdos.csail.mit.edu/papers/biscuit:login19.pdf https://pdos.csail.mit.edu/papers/biscuit:login19.pdf [1] https://dl.acm.org/doi/10.1145/1178597.1178599 https://dl.acm.org/doi/10.1145/1178597.1178599
- ducktective 4y agoThanks for the link. Didn't know about this.
- hajile 4y agoLisp machines are famous, but the complexity of a modern system means that even with a perfect kernel, you couldn't get any peripherals to work.