Live data from Hacker News

A completely-from-scratch hobby operating system

github.com

71–79 of 79 posts

Re: A completely-from-scratch hobby operating system

#71

Earlier quoted context omitted.

Even if you do not want the new OS to run on anything else but your own laptop, that still needs a huge amount of drivers, for PCIe, USB, Ethernet, WiFi, Bluetooth, TCP/IP, NVME, keyboard / mouse / trackpad, sound, GPU, sensors, power management, ACPI and so on. The volume of work for rewriting all these is many times larger than writing from scratch all the core of a new OS. Rewriting them requires studying a huge a…

I think you're still missing the point here. Not every hobby OS needs or even wants networking, gpu support, even storage I/O, etc. See TempleOS. The goal typically isn't to make a fully featured OS.

If you do not want those features, that means that the OS is not intended to be used on a personal computer, but only on an embedded computer.

For dedicated embedded computers, the purpose for an OS becomes completely different and compatibility with anything does not matter any more.

Not only personal computers cannot be used without a huge amount of device drivers, but even for a very simple server, e.g. an Internet gateway/router/firewall or a NAS server, the amount of work for writing the device drivers, the file systems and the networking part would be much more work than writing the core of a new OS.

Only for embedded computers the work needed for device drivers can be smaller than for the base operating system.

Re: A completely-from-scratch hobby operating system

#72

Earlier quoted context omitted.

Someone who would make a new OS, should define a completely new system call interface, as it is likely that now it is possible to conceive a better interface than 50 years ago and anyway if it would not be different there would be no reason to make a new OS, instead of modifying an existing one. Nevertheless, the first thing after defining a new OS interface must be writing a POSIX API translation layer, to be able t…

> Writing a new OS is enough work, nobody would have time to also write file systems, compilers, a shell, a text editor, an Internet browser and so on. > So there must exist some translation layer also for device drivers, maybe by running them in a virtual machine. > ... but rewriting all the device drivers that could be needed would take years, so it is important to implement a way to reuse the existing device drive…

You hit it on the head: The point is purely for fun and learning. I want to learn as much as I can by rebuilding apps from scratch, etc. I had my first computer in 1977/78, a Commodore PET 2001, followed by a Vic-20, so if I can duplicate the bare system I had them and a PL to create apps, I am back where I started - having fun with computers!

Re: A completely-from-scratch hobby operating system

#73
post #47

Earlier quoted context omitted.

As a real-time OS it is known for deterministic response times. If it were exceptionally fast (and licenses cheap enough), you'd see hosts in the TOP500 using it.

TOP500 is chock full of microkernels though, even if the "I/O nodes" would run Linux

I'd like to see more information about that. I remember that Penguin Computing offered such some 15 years ago, but don't know where it was deployed or still is. Cray and IBM had also such a concept for their superclusers in the past, but are they still using such? The one HPC environment I worked on (a major car manufacturer in Europe) used plain RH Linux on all nodes as recently as three years ago.

The current #1 (Fugaku) uses IHK/McKernel as kernel for the actual payload. The previous #1 (IBM Summit) seems to use RH Linux though. Perhaps, since the most performance critical part is run by and within the GPGPU(s), the actual OS doesn't matter all that much (for performance -- it matters of course for programmer's comfort/efficiency).

Re: A completely-from-scratch hobby operating system

#74
post #68
post #58

Earlier quoted context omitted.

Just to clarify: are you active/a mod in that channel? Now I’m curious how the GP got the idea you own it.

Because I created the channel during the Freenode exodus to prevent it being poached and transferred ownership to Klange when a few people mentioned he was the person that should have it.

There are quite a lot of channels like that - the week I spent running around warning as many big projects as I could get hold of that there was clearly no way out seemed to help a lot, but of course there was still the problem of "who's actually online when the hammer drops to -execute- the planning people had done". It was kinda exhilerating watching practically the entire userbase move as one, but I'd really really rather not have to do it again :D

Still kind of amazes me that given the number of signatories I got nobody thought "hey, maybe this isn't going to work" but it turned into an excellent mutual support resource for those of us moving instead: https://gist.github.com/shadowcat-mst/998cea12794768bdb3da2d...

Re: A completely-from-scratch hobby operating system

#75
post #47

Earlier quoted context omitted.

TOP500 is chock full of microkernels though, even if the "I/O nodes" would run Linux

I'd like to see more information about that. I remember that Penguin Computing offered such some 15 years ago, but don't know where it was deployed or still is. Cray and IBM had also such a concept for their superclusers in the past, but are they still using such? The one HPC environment I worked on (a major car manufacturer in Europe) used plain RH Linux on all nodes as recently as three years ago. The current #1 (F…

There used to be a lot of "special microkernel on compute RPCing to Linux on I/O" on Crays and the like. Hard to say how prevalent it is now, and most annoyingly I can't recall the names. (Charon?)

Re: A completely-from-scratch hobby operating system

#76
post #27

I love that the OS seems to be named after Toaru Majutsu no Index and Toaru Kagaku no Railgun. Misaka the kernel and Kuroko the interpreter are named after iconic characters from the series.

So following the English translation of the franchise the project can be called "A certain OS" - quite a nice name actually! :)

Re: A completely-from-scratch hobby operating system

#77
post #60
post #38

Earlier quoted context omitted.

You are now debugging a distributed system.

fun fact: you already are in linux. being a monolith doesn't change the nature of the problem.

Are you? I'm paddy pretty sure I can run a single Linux and point a single gdb at it[0] and debug it in a single memory space; I don't think you can do that with a microkernel.

[0] possibly resorting to UML, but still

Re: A completely-from-scratch hobby operating system

#78
post #23

Earlier quoted context omitted.

Libraries are shared by programs and refrences to library routines are automatically resolved at program load time.

How is this different than regular "dynamic linking" where ld-linux.so resolves symbols and loads the shared objects?

[deleted]

Re: A completely-from-scratch hobby operating system

#79
post #23

Earlier quoted context omitted.

Libraries are shared by programs and refrences to library routines are automatically resolved at program load time.

How is this different than regular "dynamic linking" where ld-linux.so resolves symbols and loads the shared objects?

Yes, it is the same thing.
Post reply on HN