This question maybe a bit historical, but we didn't have Superuser at the time.

Around 2000 when I was starting my Computer science degree, a subject was Operating systems. The teacher asked us to list a few OS. I said Windows 95.

I was immediately shot down. Windows 95 wasn't on OS, as it used DOS to boot up. The actual OS was DOS, Win 95 was just a graphical wrapper around it.

I pointed that all trade magazines called Win95 an OS, but was told that they were run by laymen, and as a professional, I should know better. DOS was the only OS from Microsoft, at least till Win2K came out later that year.

So 12 years on, I'm still not sure. Could Win 95 be considered an OS?

  • 25
    If Win95 isn't an OS then neither is OS X, as that's really just Unix. – JonW Oct 30 '12 at 10:32
  • 13
    Ohh that annoys me so much - mI also had a professor like that - I wanted to decompile him.. lol - This is a good question though. But essential bot DOS and Win95 are Operating Systems! Tell him that Win95 was like today Virtualization. Win95 ran ONTOP of DOS to extend its own functionality as an Operating System. Who said you can only have one OS on a Machine? THat should shut him up. Good Luck – Piotr Kula Oct 30 '12 at 10:43
  • 14
    as it used DOS to boot up - by that logic, (almost) all OSes could be discarded as not OSes, because they run on top of the BIOS. – Izkata Oct 30 '12 at 12:00
  • 8
    "DOS was the only OS from Microsoft, at least till Win2K came out later that year" And all this time I thought both OS/2 (1987) and Windows NT (1993) were OSes... – user Oct 30 '12 at 12:57
  • 8
    Your professor would have defined Operating System in the course. That definition may have differed from the standard. The answer, therefore, is dependant on what the professor and the asker view an operating system to be. – Joshua Shane Liberman Oct 30 '12 at 14:38

11 Answers 11


I would say yes. First and foremost, windows 95 was a 32 bit operating system, which allowed pre-emptive multitasking (lets contrast this to the 16 bit MS dos) - dos was merely used as a way to bootstrap the OS, and used for some dos related functions (NT replaced it with the NTVDM). It had its own drivers (for example for networking, and mouse) and to an extent memory management. It handled disk and FS functionality. I'd probably compare this with OS/2 which also handled dos type things, and had its own API.

Windows 9x was also tied to specific versions of dos, as I recall, unlike windows 3.11. I'd argue that 'dos' here is a subsystem of windows rather than vice versa.

It's definitely an OS.

  • 3
    DOS wasn't even used directly when Windows was running, except for 16-bit device drivers. If you ran a DOS program it was launched in a DOS VM with Windows acting as the hypervisor (and that was 1995 :-)). – Joey Oct 30 '12 at 12:50
  • @Joey Didn't Windows 3.1x work the same way when running in 386 Enhanced Mode? – user Oct 30 '12 at 12:59
  • Not that I know of but that predates my history knowledge a bit, too. – Joey Oct 30 '12 at 13:18
  • "The [Windows 3.1] MS-DOS prompt is a virtual machine running a copy of MS-DOS. Since it's a virtual machine, as far as the MS-DOS prompt is concerned, it's just running all by its happy self on a dedicated computer running MS-DOS. In reality, of course, it's running inside a simulator being controlled by Windows, ..." Raymond Chen / The Old New Thing – user Oct 30 '12 at 13:52
  • An operating system is machine code that provides a way for the user to interact and takes user input, performs calculations on that input in order to produce an output. So, by definition, Windows 95 is in fact an operating system (or at least part of one) – Sylvester Nov 6 '12 at 23:37

I'd argue it is on the basis that there are a set of defined things that an 'operating system' performs, and Windows 95 was responsible for all of them regardless of DOS.

Hardware Abstraction

One of the jobs of an OS is to abstract out hardware interaction to common APIs so that applications do not need hardware-specific support.

Virtual Device Drivers (VxDs) where not sat within the 16-bit DOS environment, they were strictly 32-bit code operating within the Windows kernel under the HAL.

A few operations such as basic VGA, Hard disk, Keyboard and serial port access fell in the realm of the BIOS using interrupts, but DOS wasn't particularly involved.

Loading and executing programs

Windows was responsible for loading the program from the hard disk into RAM and beginning its execution with the exception of legacy DOS applications.

Scheduling and process management

DOS had no multitasking to speak of, Windows 95 supported preemptive multitasking and multithreading.

Virtual Memory

Windows allowed the use of swap file to allow applications to use more memory in their local address space than actually existed as physically available memory. DOS did not have such a capability.

I've kept this a tad light on details, but the idea is there. Windows did all the things an 'Operating System' does and didn't require DOS in order to do it except as a kind of pre-execution environment.


Back in the nineties, Microsoft marketed Windows 95 as an operating system. If that's not the most important reference, I don't know what else is.

The Most Compatible Operating System - Windows 95 gives you the flexibility to use the latest 32-bit applications, as well as your existing applications.

See for yourself on the Wayback Machine:

Of course, it always depends on what an "operating system" is defined as for you.

  • 7
    Of course it was marketed as an OS, because what the hell would consumers know about bootstrapping, GUI shell, etc. When "normal" people hear OS, they knew it was something that could "make their computer work". – MarioDS Oct 30 '12 at 10:53
  • 9
    There are many views of reality, marketing's view often diverges from IT's view and very often from the computer-scientist's view. I tend not to put any weight on the viewpoint of marketing weasels but maybe I've read too much Dilbert . – RedGrittyBrick Oct 30 '12 at 10:54
  • 1
    @RedGrittyBrick As I said, it simply depends on the "true" definition of what an "operating system" is. Without defining that in the first place, there's no real answer to the question. Maybe I should get out my Tanenbaum books? ;) – slhck Oct 30 '12 at 10:55
  • 2
    I can't figure out the reason this answer recieved a downvote. If Microsoft called it an operating system, then it was an operating system, often people of power are incorrect and/or are just plain idiots. – Ramhound Oct 30 '12 at 11:01
  • 2
    @Ramhound: I was somewhat tempted to downvote. If Dannon (or some other company) calls something "strawberry yogurt", then I won't necessarily expect strawberries. Would you? – Hendrik Vogt Oct 30 '12 at 17:17

Your question "was it an O/S" can't be answered without a definition of "Operating System". If you use the Wikipedia entry as a definition, we have to answer "YES, Windows 95 is an operating system".

MS/DOS is a boot loader for Windows 3.x and Windows 95.

Even Windows 3.x is a operating system. It has device drivers for the access of hardware. It provides services for inter-application-communication, memory management, timers and so on. With the 386 Enhanced Mode it can host 16 and 32 bit applications.

You may argue that Windows95 is not a real multi-tasking-OS. But that was not your teachers question.

You can just grab some function to handle some messages in a loop and some ISRs and you have a real operating system. It's not necessary to have memory management, tasks or processes at all. Don't compare apples and oranges, but they are all fruits.

  • It's worth noting that even Windows 3.1x weren't strictly 16-bit. When running in 386 Enhanced Mode (which IIRC was the default if the hardware requirements were met) several important parts ran in 32-bit protected mode. Examples listed by Wikipedia include disk access and (in WfW 3.11) networking. – user Oct 30 '12 at 13:05
  • Any comment about why this answer was downvoted? – harper Jan 27 '16 at 7:37

I would say it is.

It does not have the same DOS as Win 3.1 - which by the way required a pre-installation of it.

So, Win95 was a packet using it's own DOS 7.0 and higher. Whereas the independent DOS stopped by 6.22 in 1994.

It is somewhat hairsplitting, because Win95 could be of course be said to be a wrapper around DOS, but I would rather say, that it is a Name for an enhanced MSDOS based(!) OS.

It is based on MSDOS, but not the same as MSDOS 6.22 - that is why I am voting for it as an independent OS.

My source - mostly found through german Wiki ;)

However - I might extend, that on University levels, a very restrictive definition on OS is used - that is why other definitions might differ in this matter - making Win95 not an OS, because all major hardware interface functions are still the same as in DOS6.22.

I am not sure in that exact point, but I would bet, they are not all the same as in the 7.0 version, hence making it an independed one, distributed under the name of Win95.

  • by the way, I would be happy to see an alternative argumentation :) – Jook Oct 30 '12 at 10:31

Hmm. Windows 95 (and 98, by extension) did always feel more like an application than a true operating system. It's certainly true that they were started via autoexec.bat from DOS on boot. In that sense, I suppose they wouldn't be a "true" OS.

I consider them to be more like a desktop environment in linux. I run, for example, Arch linux in work, and Xfce on top of that. While Xfce is what I spend most of my time using, it isn't an operating system, it is a window manager, and that is what I would call Win 95.

  • 2
    Except that Windows 95 included drivers for things a window manager doesn't concern itself about - sound, peripherals etc. It also managed memory, processes, threads, timers and some other stuff. – amn Oct 30 '12 at 10:40
  • Except that Linux is definitely a multitasking O/S with much more than MS DOS, and similar to what Win95, catered for, without the desktop environment. – Mark Hurd Oct 30 '12 at 10:45
  • Bad comparison maybe. "Linux" isn't really one thing, and most iterations of it currently in use are vastly newer than DOS is. – Xyon Oct 30 '12 at 14:12

An operating system is a system that keeps the environment running for a user.

Windows 95 had different memory management compared to DOS And while something looking like dos was starting the machine, it wasnt normal dos. Bootloaders where different.

windows 95 was 32 bit (unlike dos), had multitasking (unlike dos), and as unseen in any other operating system by its time, it was the first operating system to suport plug and play. It also was superior in use over OS2 warp. Windows 95 was technical more advanced despite some programmers loved OS2 warp because of object orientated interfac (which to most users was more a kind of a crime)

Windows 95 was also an operating system designed for administrated corperate environments, unlike Dos After NT3.51 a kind of windows 3.11 Windows 95 gave a good look like windows NT 4.0 and later start menu etc But also policies to restrict users, it had registry etc Dos cannot be used like that.

Maybe it was to new for your teacher, or well he was just

  • 2
    I can't immediately source it, but the Amiga supported a variant of plug and play (called autoconfiguration, IIRC) long before Windows 95 was even thought of. Several DOS extenders, including Windows 3.x, supported (usually cooperative) multitasking. OS/2 2.0 was released in 1992 and was largely a 32-bit OS with preemptive multitasking which retained excellent DOS compatibility. NT 3.x and plain Windows 3.x were completely separate product lines (with the plain Windows line going through 95, 98 and ending at WinME); Windows 2000 is technically NT 5.0, and Win7 is really Windows NT 6.1. – user Oct 30 '12 at 13:12

The logic that it "used DOS to boot up" isn't valid, because it would mean Linux isn't an OS since it uses GRUB to boot up, modern Windows isn't an OS because it uses NTLDR to boot up. Whether it's an operating system depends on whether it provides basic services (such as file system access, task switching) itself, or leaves that to a different layer. Also consider that "DOS 7" wasn't a real product - all components of so-called "DOS" that Windows 95 allegedly runs on top of, or uses as a bootloader, are in fact part of Windows 95.


As touched upon before, the very definition of operating system is hotly contested, and to some extent has shifted considerably.

Generally there are two polar definitions of OS:

  1. The system that allows you to operate the computer
  2. The system that operates the computer.

Within the industry there is considerable disagreement as to the term, and I do not imagine this will be solved in one question, so here is my take on the situation.

In the realms of brand-name operating systems, such as Ubuntu, or OSX, or even Microsoft Windows, of course Windows 95 is an operating system. That is, as with definition 1 above, it provides in one package the software required to allow you to interact with your system with ease. If one operating system bundles another, then that larger package is still an operating system.

However, with reference to the second definition, I would argue that Windows 95 is an operating system supplement. It may have its own set of drivers, but it still builds upon the kernel in MSDOS. MSDOS is what allows the system to boot, provides the lowest-level API.

If you want a middle ground, I have no problem with describing MSDOS as taking on more of a bootloader function (akin to Grub), although if some portion of it remains in memory then I think it must be considered the kernel, and thus the "true" operating system under definition 2.

Lastly, with regards to the kind of personality that insists their definition is superior, and insists everyone else should be branded as "wrong", such people are merely pushing their own agenda, and rarely succeed at it.


I would also say it is.

MS DOS was not multitasking, and does not have the WINAPI.

At worst you could say it was a multitasking window manager extension, with the WINAPI, but that's (at least almost) an O/S IMHO.


Windows 95 isn't just a graphical wrapper around DOS. Windows 95 can use DOS device drivers if present, but contains and prefers to use the 32 bit drivers.

This article: http://blogs.msdn.com/b/oldnewthing/archive/2007/12/24/6849530.aspx describes the process.

Not the answer you're looking for? Browse other questions tagged or ask your own question.