50

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?

shantnu
  • 407

11 Answers11

30

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.

Joey
  • 41,098
Journeyman Geek
  • 133,878
11

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.

PhonicUK
  • 3,141
  • 1
  • 20
  • 17
9

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.

slhck
  • 235,242
6

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.

harper
  • 1,071
5

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.

Jook
  • 1,945
1

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.

Xyon
  • 1,593
  • 9
  • 15
1

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

1

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.

Random832
  • 641
1

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.

0

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.

Mark Hurd
  • 419
0

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.

The article What was the role of MS-DOS in Windows 95? describes the process.

Glorfindel
  • 4,158
Strabbi
  • 328