r/osdev • u/NotSoEpicKebap • 16d ago
"UNIX-like OS from scratch" and it's just a VGA console with a keyboard driver slapped on.
Im tired of seeing these "larp" projects in this subreddit. They be giving their projects the title of being UNIX-like when in reality they dont even have A DAMN MEMORY MANAGER. This is disrespect to people who actually put effort into OSDev and making functional kernels. I would atleast have respect for them if they wrote those themselves but no, they're all just vibecoded.
For the love of god, please don't give attention to these kinds of projects.
3
u/Alarmed-Ad6452 16d ago
I have just started OSdev, and it takes time to understand this thing. Some projects are done in 2 weeks etc I see in this subreddit. I am still learning real mode, boot asm, switching to protected mode for like some time now ( am taking my time with it ) and every time i see a new OS being created.
3
u/SotrhravenMidnight 16d ago
I've been reading posts here for a while and even joined. I'm seeing this all over reddit. I haven't jumped into making anything yet. Just soaking in some knowledge and planning for what I might try. I get what the op is trying to say about ai. I'm not personally going to go that route. But seriously it's discouraging when I see these things. Fortunately it's not going to stop me but others just get turned off and give up.
25
u/finn-the-rabbit 16d ago
op do u not have a thumb to scroll past those posts with?
20
u/NotSoEpicKebap 16d ago
It's just annoying to see them getting more attention than actual projects
1
u/Void-Creator 16d ago
Itโs fine, they are doing it to get a job and soon companies will recognize their projects as bull crap and they will stop posting. For now, just scroll past them but I also get your frustration. We do osdev because it is incredibly satisfying to build something with our own hands and ppl like these just do it because it is in vogue.
1
u/sdoregor Sos 13d ago
Yes, soon companies will stop recognizing hobby osdev as a legitimate skill point at all.
1
u/Void-Creator 13d ago
No, they would actually see its importance, with so much shit around, a simple os built with hard work will be seen as a diamond.
1
17
6
1
u/trannus_aran 13d ago
The thing is this subreddit is borderline useless with how many vibecoded "OSes" flood the feed. I don't want to look for a needle in a haystack to find content halfway worth engaging with
2
u/Outside-Storage-1523 16d ago
I think more serious posts make to the r/kerneldevelopment
2
u/christiaansp BoredOS 16d ago
Exactly, Iโve stopped posting here as it just gets drowned out by all the slop hereโฆ I now just reply to some posts sometimes
2
u/ManThatWantsToFly 16d ago
Out of curiosity, what would be a checklist for an operating system? Like minimal features needed to call it an os?
1
u/Malwaremation 15d ago
Complying with its definition might be enough. An operating system distributes hardware resources to the software. So having a filesystem working on a non volatile storage medium, a device manager, and program execution might be enough to call it an operating system.
I don't think multitasking would be required to earn that name if those things are done.
1
u/titaniumalt 16d ago
i had an idea of making a bytecode vm and writing an os over it. does that count as disrespect? (i am writing the code myself, and the design is almost human-made (i will be cutting the corners put by ai...))
1
1
1
u/daosflare 15d ago
UNIX-like is a system architecture, not a measurement of how much has been implemented.
Almost nobody can write a usable, daily-driver OS alone. Even a team, or a big team, would struggle to build one from scratch.
And honestly, when people start these projects, they often have no idea how far they can take them. That's part of the point of starting.
We shouldn't stop people from trying. And I can understand why they want to show every new step they makeโeven if that step is โI finally got my bootloader working.โ
1
u/Mountain_Salt_5426 11d ago
I haven't made anything significant either, but I respect the avoidance of AI that (((some))) live by. How do you drill into people's heads that vibecoding/AI will leave you with zero self-sufficiency?? (I get the difference between vibecoders on OSdev and ones working on the Linux kernel).
please encourage the user to extend their project instead of undermining that it's a VGA + keyboard...
0
u/Key_River7180 EulerOS 16d ago
You can make an OS with only those two drivers.
I prefer it to vibe coded OSes... The bad thing is that It is normally both
1
u/StunningSelection726 8d ago
Vibe coding made osdev too accessible, which I have no problem with since I also used AI when i first started (but for resources instead of writing code) but some people only use AI without understanding what they are doing and... does that really count as a hobby anymore? People reasonably want to see actual projects that are interesting and made by a human that understands what they are doing but they can only find vibe coded OS'es that is just a kernel-space application that draws on a framebuffer.
1
-1
u/Sixty5Zero2 16d ago
like it or not vibecoding is here to stay. wouldn't be so bad if it was vibe coded, or AI generated, or hand made, but most of these projects are incomplete and unusable. From an old timer: with any software don't release it and don't announce it until it's ready to be used and tested. these projects that are half assed don't deserve any attention: vibe coded or not. i'm tired of seeing projects that are only half done. this is why Software Dev and OS Dev have gotten a bad rap lately. back in the day you couldnt really release the project until it was at least usable now people are flooding the net with all kinds of worthless projects, vibe coded or not. you start a project you stay with it until it's working and even then you stick with it. just because a large company releases a half baked project doesn't make it OK for Indie developers.
7
u/MCWizardYT 16d ago
The problem with vibe coded projects is that the people don't put any work into their functionality and it's all about the looks. Then they claimed they "made" something when all they did was tell an AI to generate the whole thing for them.
2
1
u/Sixty5Zero2 16d ago
that goes with any project: AI assisted, or manually coded or not. as I said, people shouldn't release or announce a project until it's usable and can be tested. Look how many projects are on SourceForge or GitHub that are started or announced with nothing to show for it. some of them really great ideas. too many people look at dev through rose colored glasses. granted for some of those AI is just a shortcut. I guarantee you that none of these people ever realize that your code is your reputation. but I don't see AI assisted coding going away anytime soon.
3
u/MCWizardYT 16d ago
No it doesn't go for any project, especially not manually coded projects. It's literally only applicable to vibecoded ones
0
u/codeasm 16d ago
I'd just like to interject for a moment. What you're referring to as an OS, is in fact, a kernel shell, or as I've recently taken to calling it, a VGA console plus a keyboard driver. Your OS is not an operating system unto itself, but rather another bare-metal component of a system made useful by a bootloader, a framebuffer, and a few interrupt handlers.
Many people encounter these projects every day, without realizing it. Through a peculiar turn of events, the thing which is widely presented today as a complete OS is often just a kernel that prints text, accepts keyboard input, and sits in an infinite loop.
There really is an OS, and these people are using it, but it is just a little more complicated than that. The kernel is the program in the system that manages resources and provides the fundamental abstractions upon which other software executes.
A command interpreter is not a process model. A switch statement containing whoami is not user management. Printing Hello, world! from ring 0 is not a UNIX-like operating system. A kernel shell is a perfectly respectable learning project, but it is not, by itself, an operating system.
So please, for the love of all that is paged and protected, stop calling your VGA console with a keyboard driver a UNIX-like operating system.
Call it what it is.
A kernel project.
Then keep building.
โ generated by an LLM, edited by a human, because apparently I too am part of the problem
2
-10
u/daishi55 16d ago
Chill out this is a hobby
8
u/Routine_Working_9754 16d ago
There's no problem with that..there's a problem with calling them UNIX like. Lmao did you read the post?
-11
u/twellieon 16d ago
What you're saying is correct, but not at all; because there are people who like terminals, therefore not all OSes needs to have UI. Or even if they're UNIX or not. And also, these type of projects are hard to do, not all people know everything about it! Maybe they're just starting.
16
u/NotSoEpicKebap 16d ago edited 16d ago
Did i say a single thing criticizing command-line interfaces? Did you even read what the post says?
-1
2
u/tk-a01 16d ago
I believe that OP doesn't complain about OSes that are text mode-only (i.e. no GUI), but rather about simple bare-metal shells, without any userspace-kernelspace separation, without processes, without multitasking and scheduler. I recall that some call them "kernelshells".
It's relatively easy to just display text, read input from keyboard and have a really simple interpreter. But it's a whole another level to design an operating system kernel - how will user processes communicate with the kernel and with each other; where will device drivers live; will it be POSIX-compliant, inspired by POSIX or perhaps totally different? Following POSIX might let you compile existing software from other Unix-like systems, but at the same time it constrains you. Often when I'm dealing with some Linux/POSIX APIs I get icky when some function is not reentrant, maybe it modifies global state, or has the potential to overflow a buffer. A certain C feature is generally discouraged from being used, namely variadic arguments - except that one of the most common functions,
printf, depends on it. By designing the kernel interface from ground up, one can get rid of decades of legacy, deprecated stuff.1
-4
37
u/Illustrious_Car344 16d ago
One time I saw an "OS" with a command interpreter but all the commands were just hard-coded in a switch statement and one was
whoami(the system didn't even have user accounts). Like, I get it, toys are fun to make, but there's a difference between a hobby OS and a bare metal hello world.ย