I have an idea (And rather than create a whole new topic about it, I'll just post it here (You're welcome mods!
lol)).
Alright, well I figured I might create a relatively simple SDK that allows you to create software that can run without an OS on the x86 architecture. Basically, an SDK that lets you build an OS (Obviously not a full blown OS or with driver support or anything like that).
Now when I say "OS" I mean it in a technical sense - this would really just build programs independent of an OS.
Now - the idea behind it is that you use the C language (Or C++ if you write your own support code for it) and link against the SDKs libraries. From there several utilities would be responsible for building your program in a bootable (sp?) form.
Any such SDK would take care of the following (Not counting the utilities):
* Graphics Mode Support (Text, VGA, maybe VESA).
* _Most_ of the standard C library
* GUI Functions
* Drawing Sub-functions of the GUI
* Hard Disk Management
* Various Low-Level "Utility" Functions (Restarting the computer, for example)
* Primitive Sounds (Like the BEEP program/function in Windows)
* Keyboard Input
* Mouse Input
* Port I/O
* Interrupt Request Handling
There would probably be a higher level "utility" SDK (Comparable to OpenGL's GLU library) which might support the following:
* Dynamic Libraries
* File System Support (FAT 32 most likely, and perhaps a custom file system)
* _MAYBE_ (probably not) multi-tasking (It's not as difficult as it looks, but it is something that an OS should take care of, not this).
The utilities included might be something like this:
* BUILD (Of course you'd need this - it'd read a build script and call the compiler, linker, and assembler (not in that order) and then create a bootable ISO or floppy disk image
* IDE (I'd use the scintilla editing component - the rest is easy (It really is, lol)).
Anyways I'm interested in what you guys think of this.
I for one would find it useful for myself, I'm mainly wondering if other (more experienced C/C++ users) would find it useful as well.
NOTE: I never said I *would* build it. It's something I might do in my spare time from my main projects.
Cheers,
-naota
I'm not a dictator to those that do stuff for me by will. Only those who don't.