3 ms·
I've thought about doing something like this but I am only very recently getting into low-level OS stuff. I can't remember who said this, but they called "Erla
by tombert 7mo ago
I've thought about doing something like this but I am only very recently getting into low-level OS stuff.
I can't remember who said this, but they called "Erlang an operating system for your code", and I think that's fairly accurate. When I build an Erlang app, I don't build it the same way as I would with Rust; I have a lot of independent gen_servers that do operate independent from each other.
The Erlang VM is (roughly) preemptive multitasking, and even each process has its own GC, so it does feel like it could be a natural fit for its own operating system without having to live on top of Linux.
- calvinmorrison 7mo agoThere's some definite prior art here where they worked on that a LOT. https://www.erlang-factory.com/static/upload/media/1498583896660864samwilliamshowtobuildanoswitherlang_awhistlestoptourofhydros.pdf https://www.erlang-factory.com/static/upload/media/149858389...
- tombert 7mo agoYou know, I read those slides when they were new, and I apparently just completely forgot about it. Not that it's not interesting, just that my brain is dumb sometimes.
- toast0 7mo agoUnfortunately, the hydros project website is gone. I'm not sure if it moved somewhere.
- calvinmorrison 7mo agohere's what I dug up https://github.com/attah/hydros https://github.com/attah/hydros https://github.com/samcamwilliams/hydros-site https://github.com/samcamwilliams/hydros-site
- toast0 7mo agoThanks! There's some really interesting things here. I chose to interface with some basic hardware only from my kernel, but hydros uses Erlang to interface with the IO-APIC and a bunch of other stuff. They've even got NIFs to do sti/cli from Erlang.