Live data from Hacker News

Theseus: A modern experimental OS written from scratch in Rust

github.com

11–20 of 153 posts

Re: Theseus: A modern experimental OS written from scratch in Rust

#12
post #9

I did a ctrl+F for the word "redox" here, since that's already modern experimental OS being written in Rust that's existed for some time, and I was surprised not to see it mentioned at all; I figured there would be a section for modern OS neophytes like me comparing and constrasting the two. Anyone have any insight into how this project differs from Redox?

Redox is a unix style operating system with a unix style design and ABI.

This operating system shares none of those goals, it seems to focus on a particular challenge related to the abstraction between subsystems of the operating system, following a term they call "state spilling". The goal appears to be to design an architecture that supports in-place updates of most components due to them having tightly constrained state management and inter-component dependencies.

Re: Theseus: A modern experimental OS written from scratch in Rust

#13
post #9

I did a ctrl+F for the word "redox" here, since that's already modern experimental OS being written in Rust that's existed for some time, and I was surprised not to see it mentioned at all; I figured there would be a section for modern OS neophytes like me comparing and constrasting the two. Anyone have any insight into how this project differs from Redox?

Redox is cited in their OSDI paper. Basically they have a bunch of new ideas for writing an OS that are implemented here; Redox is only similar because they're both in Rust.

Re: Theseus: A modern experimental OS written from scratch in Rust

#14
:) I've always have had a soft-spot for language-based designs. It's the only way we can get fearless refactoring throughout the stack.

If I may plug, check out https://internals.rust-lang.org/t/dogfooding-z-build-std-in-.... I'm it can heave us over the fence for the types of things that will make having a no_std cargo ecosystem easier.

Re: Theseus: A modern experimental OS written from scratch in Rust

#15
post #8

I do wonder about single address space, I've seen a few experimental systems follow this strategy lately and it feels reliant on hardware less defective than we presently have in commodity user gui performance systems.

IBM i (OS/400) has had single address space, tagged pointers, and an number of other "novel" things in the loop for eons. Many people interact with it daily, indirectly, in most of your big box retail stores (think stores like Costco, Lowes, etc).

Re: Theseus: A modern experimental OS written from scratch in Rust

#16
post #9

I did a ctrl+F for the word "redox" here, since that's already modern experimental OS being written in Rust that's existed for some time, and I was surprised not to see it mentioned at all; I figured there would be a section for modern OS neophytes like me comparing and constrasting the two. Anyone have any insight into how this project differs from Redox?

https://gitlab.redox-os.org/redox-os/redox/-/issues/1327

Re: Theseus: A modern experimental OS written from scratch in Rust

#17
post #15
post #8

I do wonder about single address space, I've seen a few experimental systems follow this strategy lately and it feels reliant on hardware less defective than we presently have in commodity user gui performance systems.

IBM i (OS/400) has had single address space, tagged pointers, and an number of other "novel" things in the loop for eons. Many people interact with it daily, indirectly, in most of your big box retail stores (think stores like Costco, Lowes, etc).

Parent did say "it [single address space] feels reliant on hardware less defective than we presently have in commodity user gui performance systems".

OS/400 and successors don't run on this kind of hardware.

Re: Theseus: A modern experimental OS written from scratch in Rust

#18
post #7
post #2

Was looking for the "why" behind this OS, and one of the authors gave a great OSDI talk on that very subject. https://www.youtube.com/watch?v=j4ZPZoPNjkw

Thank you for the link! EDIT: End to end we do not give enough information from the application to OS to the hardware for perfect optimizations. We do not start with enough information and we lose too much down the stack. Especially around concurrency. I think that at the end of the day there is some atomic information needed by hardware and OS to make optimizes about all code running on the system. I see the approac…

I can't recall the details or find them searching online, but I recall reading back in around 2000 about an emulator that was actually faster than bare metal when emulating its own hardware. I think maybe it was a Sun Microsystems project, but I'm not sure. Does anyone else recall this?

Re: Theseus: A modern experimental OS written from scratch in Rust

#19
post #11
post #5

If it were to have a Linux emulator, it could be named Liquor. (“Liquor is quite useful on removal.”)

You need to bacronym that to really make it stick. Linux In ...

Linux in quasi-unix oriented rust?

Re: Theseus: A modern experimental OS written from scratch in Rust

#20
post #18
post #7

Earlier quoted context omitted.

Thank you for the link! EDIT: End to end we do not give enough information from the application to OS to the hardware for perfect optimizations. We do not start with enough information and we lose too much down the stack. Especially around concurrency. I think that at the end of the day there is some atomic information needed by hardware and OS to make optimizes about all code running on the system. I see the approac…

I can't recall the details or find them searching online, but I recall reading back in around 2000 about an emulator that was actually faster than bare metal when emulating its own hardware. I think maybe it was a Sun Microsystems project, but I'm not sure. Does anyone else recall this?

You might be thinking of the Taos Operating System?

https://news.ycombinator.com/item?id=9806607

http://www.uruk.org/emu/Taos.html

It had an object oriented assembly language that everything compiled to and it JIT'd/on-fly-compiled code IIRC. Sounded very cool.

Post reply on HN