Live data from Hacker News

Essence: Desktop operating system built from scratch

nakst.gitlab.io

141–150 of 299 posts

Re: Essence: Desktop operating system built from scratch

#141
post #45

This is insane, I can't imagine how much work went into it. I had a similar idea as a kid, I was pissed at all the bloat consuming my cpu and ram on windows so I wanted to build my own os that would run a single app taking advantage of 100% of the hardware. I learned some assembly and managed to create a bootable floppy disk, then quickly gave up, realizing how much work a functioning os would take...

I did this in the mid-90s when this book came out: https://www.amazon.com/Developing-32-Bit-Operating-System-Cd... I knew x86 well from demo scene coding, and I had the Linux and NetBSD sources to help, but the hardest bit was just getting all the boot sector stuff going properly and getting the processor into 386 mode as soon as possible. I wrote an entire OS that booted into a windowed GUI, multi-threaded, file sys…

Hey, I remember looking at your operating system in the 90'. I do not remember where I find it. It's nice to read about it today.

Re: Essence: Desktop operating system built from scratch

#142

So first off: Very cool. Amazingly polished, and self-hosting! Especially since it looks to be an actually-independent project with POSIX as an optional compat layer. I feel like the features that are unique are mostly in 3 groups: 1. Features that shouldn't be unique to this system. Tabbed windows have occasionally happened on other systems, and probably should become more common, and there's no reason it shouldn't…

or the file manager showing when files are open On Windows and Linux this is not difficult, I believe; the functionality is already present in things like https://docs.microsoft.com/en-us/sysinternals/downloads/hand... and lsof.

You can use inotify to figure out what files are opened, closed or when they are written too. Can be used for example to indicate active file downloads in the file manager.

However I don't think that's quite enough, as most apps will close the files again after they have read them. There is no need to keep them open, as you are working on their in-memory representation, not on the file on the disk until you hit 'Save'. So this seems more like a desktop level feature similar to "Recent Files", where the apps has to manually announce what it is doing instead of relying on low level file operations to figure it out.

Re: Essence: Desktop operating system built from scratch

#143
post #122

Earlier quoted context omitted.

Tabbed windows are a built-in feature of native Mac apps.

Sorry but I will need a screenshot and how to do to believe you.

https://www.macrumors.com/2016/09/20/macos-sierra-tabbed-win...

Re: Essence: Desktop operating system built from scratch

#144

This reminds me of an OS built with asm for Dell desktop PC’s around 2005-ish. The DE had most things you’d expect from a Linux distro at the time, including true transparency (IIRC), and the whole thing fit on a floppy. Saw it in a Linux mag at the time.

http://menuetos.net

And its fork: http://kolibrios.org/en/

Re: Essence: Desktop operating system built from scratch

#146
post #120

Earlier quoted context omitted.

or the file manager showing when files are open On Windows and Linux this is not difficult, I believe; the functionality is already present in things like https://docs.microsoft.com/en-us/sysinternals/downloads/hand... and lsof.

Again, it depends on how the application accessing the file is developed. If your program just read to copy in memory then closes the file, waiting for the next save to reopen it, the OS can’t know on which file you are working. And this, i think, must be a pretty common implementation.

If it closes the file, then it wouldn't be an open file?

Re: Essence: Desktop operating system built from scratch

#147

This is an amazing piece of work, but it's clearly a labor of love: this isn't going to have any real-world use any time soon. Where operating systems are headed is more towards security (process isolation, bulletproof input etc), not lightweight GUIs on top of thin kernels like this. Are there any passion (or other) projects that explore this? I know about Qubes, but that's more like a heavy layer on top of a heavy…

Spectrum OS, meant be a more usable upgrade from Qubes. Based on NixOS. Currently stuck on plumbing problems. https://spectrum-os.org/ Bheem OS, "a next generation secure operating system." Inspired some by Spectrum. So new they can't keep their blog online. Here's a snapshot of a recent blog post about the security features https://blog.openw3b.org/crosvm-for-os-and-app-virtualizatio...

>> Currently stuck on plumbing problems.

As is everything written in nix!

Re: Essence: Desktop operating system built from scratch

#148

So first off: Very cool. Amazingly polished, and self-hosting! Especially since it looks to be an actually-independent project with POSIX as an optional compat layer. I feel like the features that are unique are mostly in 3 groups: 1. Features that shouldn't be unique to this system. Tabbed windows have occasionally happened on other systems, and probably should become more common, and there's no reason it shouldn't…

Tabbed windows are a built-in feature of native Mac apps.

I’m pretty sure it’s tabbing within the same application.

What would be interesting to see how useful it would be, is heterogeneous tab grouping (tabs from different apps)

Re: Essence: Desktop operating system built from scratch

#149
Amazing work! I just watched the author's video about the UI features: https://www.youtube.com/watch?v=aGxt-tQ5BtM

The app in a tab approach seems really neat.

I guess if big tech decides to stop developing new useful features, we will have to start doing it on our own.

Re: Essence: Desktop operating system built from scratch

#150
post #2

I really think this is impressive. I also like the unique take on windowing. There's a video here: https://www.youtube.com/watch?v=aGxt-tQ5BtM Great job!

The "open a window and then put an application in it" thing reminds me of Plan 9; in that case, IIRC, you open windows and they start as a terminal, but if you execute anything else the new program just "inherits" the same window.

Slightly similar in practice, but very different concept.

In Plan 9, every process draws interacting with a screen file (in fact, it is a whole filesystem, also including keyboard, mouse, control files, ...). What rio, the Plan 9 window manager, does is to "multiplex" this screen file (again, file system) so that each process has its own screen which does not correspond to the physical monitor, but to a window.

An uncommon feature that derives from this design is that you can run a new rio instance inside a rio window. More important, you can just connect to other machines and interact with their windowing filesystems, getting network transparency "for free".

Post reply on HN