For those looking to try their hand at building an OS, there's Linux From Scratch. https://www.linuxfromscratch.org/ I failed tremendously, but I had a lot of incorrect ideas about what makes an operating system go. The learning experience was worth it, though.
Interview with Andreas Kling of Serenity OS (2022)
21–30 of 181 posts
Re: Interview with Andreas Kling of Serenity OS (2022)
#22Re: Interview with Andreas Kling of Serenity OS (2022)
#23I just wonder how much of the truly exceptional engineering in today's software was done by people on drugs (yes, 'ADHD' medication counts). I fully expect it to be a significant chunk, but I hope it's not the majority.
Core to Andreas' story is that he did his engineering as an escape from drugs, not the other way around as you allude to.
Re: Interview with Andreas Kling of Serenity OS (2022)
#24Earlier quoted context omitted.
Why is this "hacky"? I've long wondered why databases need to be on filesystems, other than simply convenience. If you think about it, a filesystem is, itself, basically a database (not a relational one of course). So it seems like you could improve performance a lot by eliminating the filesystem layer and going straight to direct disk access. Also, how this would be done would probably change depending on whether yo…
>I've long wondered why databases need to be on filesystems, other than simply convenience. [...]So it seems like you could improve performance a lot by eliminating the filesystem layer and going straight to direct disk access. Both Oracle RDBMS and older versions of Microsoft SQL Server had the option to use "raw disk devices" / "raw partitions" instead of the filesystem. It had some obvious justifications such as a…
Re: Interview with Andreas Kling of Serenity OS (2022)
#25I just wonder how much of the truly exceptional engineering in today's software was done by people on drugs (yes, 'ADHD' medication counts). I fully expect it to be a significant chunk, but I hope it's not the majority.
I'm confused by the use of quotes. Do you think ADHD is a made-up thing?
Re: Interview with Andreas Kling of Serenity OS (2022)
#26Re: Interview with Andreas Kling of Serenity OS (2022)
#27I'm increasingly tempted to try my hand at making a toy OS - or at least a kernel. There's a few things I desperately want an operating system to do: 1. Have either database-like transactions or (at a minimum) write barriers for file operations. The current filesystem semantics are terrible for databases and other applications which need to not corrupt their data after a crash. fsync() is too heavy, because you can't…
Re: Interview with Andreas Kling of Serenity OS (2022)
#28I just wonder how much of the truly exceptional engineering in today's software was done by people on drugs (yes, 'ADHD' medication counts). I fully expect it to be a significant chunk, but I hope it's not the majority.
Re: Interview with Andreas Kling of Serenity OS (2022)
#29Earlier quoted context omitted.
You're on the right path! My area of interest is actually making messaging (a-la-Smalltalk/Erlang) the root idea everything is built upon, rather than the file stream. The file metaphor made sense in the 1960, not in an ultra-networked world of heterogeneous CPUs. IMO, communication should be the basis of computing. Which also means inventing a language to build this novel paradigm. As Dan Ingalls said, an operating…
You might enjoy http://synit.org/ , perhaps. Heavily inspired by both Smalltalk and Erlang. (It's my own wee quixotic project btw)
Re: Interview with Andreas Kling of Serenity OS (2022)
#30I love this but just looking at the comments - while admittedly cool, implementing your own OS isn't black magic or particularly arcane knowledge; sure it's a whole lot of work where you're often reimplementing the wheel, but not outside the realm of any reasonably skilled graduate I would think.
While not black-magic, dealing with hardware and its quirks is a different skillset than writing React logic. A bug might need a reboot, or in some rare cases with terrible hardware, turning it into a paperweight.
In fact, I believe that learning to write low-level code for simple hardware (say, an Arduino or a RP2040), is a smoother path for a complete newbie than learning the massively complex frontend world, and provides much better foundational knowledge.