4 ms·
Hi Nition! What a great question! (Everybody who's reading this, please upvote!) OK, so you've got all kinds of choices in this area! First off, I assume, be
by peter_d_sherman 5y ago
Hi Nition!
What a great question! (Everybody who's reading this, please upvote!)
OK, so you've got all kinds of choices in this area!
First off, I assume, because/ you mentioned FreeDOS/TempleOS/Windows 3.1 -- that you're looking for an x86 (Intel/AMD) OS.
First question: 32-bit or 64-bit?
32-bit OS's will run on older hardware (20+ years old!) -- but (in general!) you'll be limited to a max of 4GB of usable RAM...
64-bit will, of course, run on newer hardware, but in general will be a little bit more complex than an old, Open Source, "barebones" OS'es...
Second question: Windows compatible or not?
You want the OS to be Open Source right? That would rule out any version of Windows -- but that wouldn't rule out ReactOS (https://reactos.org/ https://reactos.org/). Many Windows programs will run on ReactOS -- but some might not, and/or have interesting bugs -- so "buyer beware" as they say.
But, in terms of overall lines of code and complexity, ReactOS is probably the least simple Free and Open Source OS'es, next to Linux itself...
You might be actually looking for two things, or rather three:
1) Simple Open Source Non-Graphical Command-Line OS.
2) Open Source Graphical Window Manager / Windowing System For That OS.
3) Example Source Code (for that OS and Window Manager) which implements a text editor, an audio player app, a calculator, etc.
Also, keep in mind that unless #2 is written to be as simple as possible (and thus uses only simple monospaced bitmap fonts) -- then you're also going to be dealing with a font rendering subsystem -- which is going to add to the complexity and thus learning curve -- of the codebase...
If you've got an underlying Non-Graphical OS like FreeDOS (or any other) -- if that OS does not prohibit direct hardware access to the video card, OR if the underlying OS can specifically be requested to give direct hardware access to a program it runs -- then you might try writing a program to implement GUI features on that non-GUI OS... it would be a great programming exercise!
But if you don't, I'm sure such GUI's (ideally, simple ones, not X/Windows AKA X11, nor the Windowing code in Windows/ReactOS) must exist -- just search GitHub...
Maybe that's what to do...
Search GitHub for GUI's or simple OS'es that implement GUI's... find one that is as simple/understandable as you desire -- and that's your go-to OS for this!
Anyway, Good Luck in your quest!
- Nition 5y agoHi, thanks a lot. To answer your questions: > You're looking for an x86 (Intel/AMD) OS. Correct. > 32-bit or 64-bit? 64-bit - assume a relatively modern laptop as a target platform. But 32-bit is fine. I'm sure I wouldn't need >4GB of RAM for this sort of purpose. > Windows compatible or not? Nah, I'm thinking super simple. Like a web browser would be a luxury. I only mentioned Windows 3.1 as an example of an OS that's very simple and fast. > ReactOS I've seen it mentioned over the years, but never looked much into it. I'll have a better look. > You might try writing a program to implement GUI features on that non-GUI OS... it would be a great programming exercise! I am a programmer, though mostly in games. In this case I'd prefer something that works out of the box, though I do like your suggestion - I just already have a lot of projects and not a lot of free time. Searching for GUIs for non-GUI operating systems is an interesting idea as well. Someone else here also linked a big list of custom "hobby" operating systems[1], many of which are on GitHub. Running an OS - or a GUI for an OS - that's built by some random user on GitHub may not be the most sane option (I already see that a fair amount were last updated years ago) but I'm going to have a look around anyway. [1] https://wiki.osdev.org/Projects https://wiki.osdev.org/Projects