I'm not really happy with all the recent OS projects such as SnipOS.
They only look like the interface of some operating systems.
I do not think that these projects have interesting parts.
If you want to make an OS,my advice is atleast implement one of the below:
Programming language interpreter
(Bonus,i think its quite hard) Users and security
I don't know why @bh does not like this kind of posts(got suspended before partially because post saying that real oses have file systems)
What I don't like is posts that say "everyone else is doing the wrong thing" and either don't say how to improve it or do say, but suggest things that are way too hard. That serves no purpose other than to discourage people.
The thing that all those definitions of "operating system" are talking about is what people these days call the OS kernel. That's a piece of code that you never see; it has no user interface. Instead it interacts with programs, including the program that people think of as the OS, which is actually an application like any other application, whose job is to manage your display and window system, and to start other applications when you click on their icon.
(In my youth the user interface code actually was part of the OS kernel, so it was unambiguous to talk about "the OS." This was changed forever by Unix.)
You can sort of do thread management, the main kernel task, in Snap! using continuations; this is shown in the manual, at the end of the continuations chapter. What that thread system leaves out is memory management: figuring out where to fit a new thread given all the other threads already in memory.
But just simulating the user interface is a big enough project to be interesting and fun. And ultimately that's what we're here for. What Snap! is all about is the idea that if you're given better tools, you can have harder fun.
Oh.I may have not received that notification.If you want to say that you can say it on every topic instead of just once.
(if its an simulator,you can invent some new assembly for it,and make an interpreter.real oss have bytecode)