According to Andy Tanenbaum (read God) an operating system does two things, extends the machine and manages resources. An operating system extends the machine by providing some sort of higher level access or apis to make interfacing with the various hardware components easier. It manages resources by providing controlled access to each of the different devices that make up the computer.
Technically an operating system doesn't need to bootstrap the machine, or even run on real hardware, User Mode Linux or Windows running under VMWare are both still operating systems, however it is often accepted that the operating system is the first thing that the machine runs and that everything else is controlled by it.
Quote:Windows 9x arent OSs according to them.
The problem with Win9x is that it isn't responsible for bootstraping the machine, DOS is. DOS is also responsible for all the device and memory management until Win9x kicks in, even after the Win9x kernel proper has started, DOS is still there doing some of the work. Win9x is still classified as an operating system under Tanenbaum's definition though.
Quote:I've considered putting the time into making an actual QBOS to kill off detractors of the language, but in reality, the "QB" OS would in the end be more pure assembler than QuickBasic.
The problem with using QB to make an operating system is that QB generates code that relies on DOS being there. When you write an operating system in C for example, you don't even have access to the standard C library. If you need functions like printf or strcpy, you write your own.
Nobody yet seems to have even written a decent operating system simulator in QB. There have been plenty of fantasic guis/shells and scripting engines capable of running multiple scripts concurrently, but I haven't seen anything yet that simulates basic memory management or provides interprocess communication between scripts with locking mechanisms such as mutexes and semaphores, which are the things you tend to learn about in University operating system courses.
esus saves.... Passes to Moses, shoots, he scores!