It's odd and maybe even misleading that 1995 chart doesn't have Windows 2 or Windows 3.0 on it as separate bars, only NT. They were pretty big by that time. I can only say I was flat-out developing Win2 then Win3 applications in C in the early 90s for architectural space planning (Win2 interfacing with AutoCAD through AutoLISP) and real-time graphical chart plotting of options traded stocks for Win3 and OS/2 PM. I recall running Windows 1.0 on a PC/AT then and it was pretty much the fastest GUI I'd ever seen.
Windows 2/3/3.1/3.11 weren't operating systems. They were shells. Calling them operating systems would mean Norton Commander is an operating system. Or that BASH is an operating system rather than Linux.
Is there any reason you can't run Windows 2/3/3.1/3.11 on a DRI made operating system?
Computers were definitely mainstream by 1995, at least in the United States. Everyone I knew had one, even people living in trailers. Might have only been a 286, but they had a computer.
I'm also not sure why you are lumping in smart devices, social media, and Netflix with computers. Those all came much later.
That's not at all a fair assessment. Windows 3.x had cooperative multitasking which was something not readily available in bare MSDOS. So it was able to be running a word processor, Excel, Paint and a comms program or Mosaic with Trumpet Winsock all at the same time in a Windows session. This was pretty impressive and Windows did a lot behind the scenes, such as crawling the stack and constantly patching it on the fly to allow virtual memory. I had to deal with this back in the day.
This goes into some detail about Win3 VMM: https://www.xtof.info/inside-windows3.html
Windows 2/3/3.1/3.11 weren't operating systems. They were shells. Calling them operating systems would mean Norton Commander is an operating system. Or that BASH is an operating system rather than Linux.
That is utterly lunkheaded BS. A “shell” is what COMMAND.COM is, IE, a human accessible user interface for performing various tasks (launching programs, manipulating files, configuration tasks) that runs on top of an OSes’s bare API. Windows, sure, can perform these tasks for DOS programs (specifically via the Program Manager), but the whole *point* of it was providing a rich API for running software specifically written for it. Windows, even as far back as 1.0, is an operating system in every respect we’d consider important today, with the one complication that it bootstraps itself on top of MS-DOS and abstracts file system access through it. (Windows 3.1 with 32 bit disk access enabled doesn’t even do that latter part, for all practical purposes it’s just as much a “full” operating system as Windows 95 is.)
Pull out a manual documenting the Windows API and programming model and you’ll see how much it is *not* just a “shell”.
(And to be fair, I would apply the same “not just a shell” standard to any other full featured GUI that happens to bootstrap off DOS, like GEM or GEOS.)
Strictly speaking for a brief period, yes, Microsoft put a sniffer in Windows 3.1 to specifically break launching it on DR-DOS.
But again, you’re entirely missing the point. By your logic DOS isn’t an “operating system” either, it’s merely a “shell” around the PC’s ROM BIOS services. I mean, sure, that’s a stupid argument to take very far, but no stupider than trying to argue that Windows applications are just “DOS programs”.
I don't think DR made any mistakes. Not even with IBM. Nor did Microsoft gain market dominance for another decade. Back in the 80s, a lot of people thought Apple would show the way forward, but the existing base of PC users who often had technical applications were still predominant until the end of the 80s and continued with DOS.
IIRC, Gary Kildall was very, very wealthy despite evidential alcholism, and even had his own lear jet - A major achievement in the 80s / early 90s. He never lived long enough to see his empire's demise, and despite Windows taking off, the use of DOS and similar systems was still massive and the future of PCs undecided by 1995.
I guess you're nitpicking over 1995/1996 because Kildall died in 1994? But CP/M was already dead years prior. Even if he hadn't died, Kildall wasn't going to somehow revive CP/M and regain all the PC market share from Microsoft in a year or two. I think sometimes people forget how ruthless Microsoft was in the 90s.
It's odd and maybe even misleading that 1995 chart doesn't have Windows 2 or Windows 3.0 on it as separate bars, only NT. They were pretty big by that time. I can only say I was flat-out developing Win2 then Win3 applications in C in the early 90s for architectural space planning (Win2 interfacing with AutoCAD through AutoLISP) and real-time graphical chart plotting of options traded stocks for Win3 and OS/2 PM. I recall running Windows 1.0 on a PC/AT then and it was pretty much the fastest GUI I'd ever seen.
Well, I've posted to links that provide good information that don't consider Win3.x to be it's own OS. So it's clear I'm not the only one with the opinion.
But I'm open to an interesting discussion around what did exist in 1995 and whether Windows 95 and onwards was all but decided, or whether people at the time could have thought other OS might prevail.
Does anyone want to post a link to an acceptable description of what is an OS and what is a Shell with certainty that we can agree on?
I'm surprised that whether Microsoft's post-DOS dominance was or wasn't established in 1995 is such an emotive topic, but I'm enjoying hearing different ideas about this.
I guess you're nitpicking over 1995/1996 because Kildall died in 1994? But CP/M was already dead years prior. Even if he hadn't died, Kildall wasn't going to somehow revive CP/M and regain all the PC market share from Microsoft in a year or two. I think sometimes people forget how ruthless Microsoft was in the 90s.
It's a widespread view, rightly or wrongly, that DRI and SCP were "Victims" of Microsoft - and that DRI made a big mistake with IBM, and Microsoft stole the world out from under them. Which is a fantastic fictional plot - but I think that DRI would not have been the success that Microsoft was even if they had signed the NDA with IBM. It would change the timeline, but I think Microsoft would still have prevailed. And DRI made a LOT of money. I think they ran their course within Gary Kildall's lifetime and they made good decisions. I'm not sure there was a better decision on the table. Even PC DOS died out around 1995.
I think Microsoft would have prevailed regardless of whether the PC ran CP/M or MSDOS as PCDOS. And I don't think that anything they experienced prior to Gary Kildall's death would have prevented DRI from thinking that they could have taken over and maybe competed against Microsoft in the long run. And I don't think that, were things different excepting the alcoholism. that it was impossible for DRI to have been a major player in the modern OS marketplace, even post windows.
When windows 95 came out, and started to accelerate, then I think the story changed. Microsoft found it's second wind and was going to continue forever.
I guess to say, it is at that point that they really started up and will never stop.
Note: that 2%-ish market share for PC-DOS on your 1995 chart is almost entirely IBM-labeled PCs with it preinstalled, and nearly all of these PCs also shipped with Windows 3.x. (IBM had full unfettered OEM rights to bundle Windows 3.x on their machines; don’t forget that even OS/2 2.x preinstalls shipped with a modified copy included.) The reason it’s dead on the 1997 chart is because by then bundling anything but Win95 was basically history.
Read a book, not wikipedia(*). A “shell” is what I described, the “outer layer” of an operating system that provides the user interface that a human interacts with when not running another specific application. (IE, it’s basically the “default” application, and is generally written as if it *were* an application, using the OSes’ normal APIs.) The problem with just calling Windows a “shell” is that the component that fits that definition of the “shell”, IE, the Program Manager, *is not a DOS program*. Windows is a *huge* pile of APIs, far more than DOS has built into it, that define an entirely different programming environment, and its shell runs on top of *that*. All DOS meaningfully supplies to Windows is file system access, and the main reason Microsoft used those services in the consumer versions of Windows prior to 9x (with the aforementioned exception of 32 bit disk access in Windows 3.1) is it helped with compatibility issues. (Disk hardware was about the most diverse aspect of PC hardware in the 80’s and early 90’s, because the use of INT13 DOS/BIOS calls allowed for a fair amount of hardware abstraction.)
If you really want to be pigheaded and insist that Windows is “just a shell” because it launches from a DOS prompt instead of bootstrapping directly that’s your right, but from a computer science standpoint it’s a ridiculous hair to split. This really gets absurd when you consider Windows 3.x running in Standard and 386 Enhanced mode, because those versions construct a hugely elaborate cage around DOS and basically swallow it after they’re launched. DOS has *zero* Protected Mode support and has *no idea* what’s going on in these situations, so it’s clearly *not* the “Operating System” in charge once Windows is up and running.
Program Manager, the “shell” of Windows 3.x, is a *Windows* application. You can copy it off a Win3 installation and run it on any version of 9x or NT that has 16 bit API support. You *cannot* run it on DOS without Windows. Nor can you run any other Windows program on DOS without Windows installed. Comparing Windows to Norton Commander as if they were the same thing is beyond stupid.
(‘ yes, Wikipedia’s article on Windows 3.1 calls it a “shell”. It’s wrong and dumb. Their article on Windows 3.0 is a lot better; it still describes it as something other than a “complete” operating system, but it much better paints the picture of how significant the technology that went into it was and how, for instance, IBM considered it a direct competitor/threat to their own protected mode *operating system* OS/2.)
… the first version of Linux I ever played with was this little toy distribution that you unzipped onto a DOS filesystem and launched using a DOS boot loader; this loaded the Linux kernel and used a special filesystem module called “UMSDOS” to mount the directory you unzipped everything into as the root filesystem and fake a UNIX filesystem on top of it, storing the long file names and permissions in hidden meta files.
Other than this oddity with filesystem representation this system was a normal Linux installation, but are you going to insist it was all a “shell” because I launched it from DOS?
… anyway, whether you want to *call* Windows 3.x an “operating system” or not is besides the point for this conversation. By 1995 it was installed on the vast majority of new PCs out of the box (and had been retrofitted to millions of older PCs), and your average PC user had at least some exposure to running Windows applications. (Microsoft Office as a unified product had been on the market for five years now, and was already by far the most popular GUI office suite in the world.)
I don’t even understand where you’re trying to go dragging DRI into this. Sure, Windows 3.x can run on top of DR-DOS, but it gets *zero* benefit out of doing so. Also… you are aware of the fact that DRI was technically defunct as of 1991, right? (It had been sold to Novell.) They had absolutely nothing in their pipeline to offer as an alternative to Windows 95; they had developed some “interesting” tech along similar lines to Windows 386 Extended Mode as part of the abortive “Star Trek” collaboration with Apple:
But it never went anywhere. Bits of it, along with a few chunks of GEM, ended up in DR-DOS as parts of the multitasking DOS shell, but this was a purely niche DOS power user product that didn’t do much but eat what was left of DesqView’s lunch. None of this would have been attractive to anyone who’d already gotten hooked on Microsoft Windows apps, so… yeah, not sure what’s trying to be sold here.
Read a book, not a magazine. A “shell” is what I described, the “outer layer” of an operating system that provides the user interface that a human interacts with when not running another specific application.
OK, I can accept that definition - So the shell is *not* the operating system, but is only a part of the operating system. It's the outer layer that exists beyond the key functionality of the hardware abstraction and the BIOS layers. I think your definition is close enough to anything that would have reasonably been linked to.
(IE, it’s basically the “default” application, and is generally written as if it *were* an application, using the OSes’ normal APIs.) The problem with just calling Windows a “shell” is that the component that fits that definition of the “shell”, IE, the Program Manager, *is not a DOS program*.
If a new system creates the entire function of the OS it replaces, as per the Linux example you provided in the subsequent post, then yes, I would agree it's a different OS. If all that remains is the BIOS, or the other elements of the OS are avoided entirely, then it's a new OS.
Under Windows 3.11. You want to install a new drive, but it's not compatible with the BIOS, so you load drivers. You include the driver.sys file on config.sys, and maybe some other parts in autoexec.bat. These shim themselves into the OS - Does Windows recognize these drivers? These DOS drivers? If so, then the shell is just a shell, not matter how advanced is it not? If it replaces everything.
I think this is a pretty good differentiator between a replacement OS and a new Shell to add additional functionality, but still respect the existing elements of the current OS - eg, Disk structure, Device access, etc.
Where do you place Windows? They replaced a lot in 386 Windows, but on the 286, it still worked with the OS in place IIRC.... so in my opinion, it's just a shell replacement. A very advanced shell replacement.
So based on that, I would say that Windows 3.1 is a shell, not an OS.
As noted, I'm surprised that's such a controversial opinion. I know Wikipedia isn't considered a major source of information however;
Windows is a *huge* pile of APIs, far more than DOS has built into it, that define an entirely different programming environment, and its shell runs on top of *that*. All DOS meaningfully supplies to Windows is file system access, and the main reason Microsoft used those services in the consumer versions of Windows prior to 9x (with the aforementioned exception of 32 bit disk access in Windows 3.1) is it helped with compatibility issues. (Disk hardware was about the most diverse aspect of PC hardware in the 80’s and early 90’s, because the use of INT13 DOS/BIOS calls allowed for a fair amount of hardware abstraction.)
Though I question whether the functionality inherent to Windows is required to abstract elements of the hardware that cannot be accessed through DOS to begin with, or whether the new functionality under the API simply extends on what the DOS offers, with much of it inherent to the shell itself.
If you really want to be pigheaded and insist that Windows is “just a shell” because it launches from a DOS prompt instead of bootstrapping directly that’s your right,
There's no need to call names and infer I'm something derogatory if I don't immediately accept an alternative opinion expressed by another person. I already mentioned I'm quite open. I'm asking reasonable questions. By all means change my mind - I'm genuinely considering your opinion, but I'd really like to understand what's behind your opinion before adopting it.
but from a computer science standpoint it’s a ridiculous hair to split. This really gets absurd when you consider Windows 3.x running in Standard and 386 Enhanced mode, because those versions construct a hugely elaborate cage around DOS and basically swallow it after they’re launched. DOS has *zero* Protected Mode support and has *no idea* what’s going on in these situations, so it’s clearly *not* the “Operating System” in charge once Windows is up and running.
Program Manager, the “shell” of Windows 3.x, is a *Windows* application. You can copy it off a Win3 installation and run it on any version of 9x or NT that has 16 bit API support. You *cannot* run it on DOS without Windows. Nor can you run any other Windows program on DOS without Windows installed. Comparing Windows to Norton Commander as if they were the same thing is beyond stupid.
Any program can be created that doesn't run without an additional supporting program. You can run DOS programs on Windows. Do they interface to any function loaded from the underlying DOS substructure in memory or are all of the functions replaced? That only windows can run windows programs is like arguing MSBASIC is an operating system, because you *cannot* run BASIC programs on DOS without BASIC first being loaded. Especially so since it's usually an interpreted language.
… anyway, whether you want to *call* Windows 3.x an “operating system” or not is besides the point for this conversation. By 1995 it was installed on the vast majority of new PCs out of the box (and had been retrofitted to millions of older PCs), and your average PC user had at least some exposure to running Windows applications. (Microsoft Office as a unified product had been on the market for five years now, and was already by far the most popular GUI office suite in the world.)
This just isn't true. Not by any measure. It didn't launch until late AUGUST 1995 ! By 1995 has a clear and unambiguous meaning. It means 1 Jan 1995. I don't know how many PCs released with Windows 95 by 1st Jan 1996, but I would have no reason to believe that isn't true if you want to change the year you've claimed.
I don’t even understand where you’re trying to go dragging DRI into this. Sure, Windows 3.x can run on top of DR-DOS, but it gets *zero* benefit out of doing so. Also… you are aware of the fact that DRI was technically defunct as of 1991, right? (It had been sold to Novell.) They had absolutely nothing in their pipeline to offer as an alternative to Windows 95; they had developed some “interesting” tech along similar lines to Windows 386 Extended Mode as part of the abortive “Star Trek” collaboration with Apple:
Because that's the thread topic... The thread is literally talking about the CP/M "hold" over OS choice - and so pointing out that DRI operating sysetms, and DOS related technologies they made were still entirely relevant until 1995. By which time, Gary Kildall was *very* wealthy. Which, if you go back to what I posted that sparked this controversy, is what I said!
LoL! That's funny. Why am I mentioning DRI in a thread about DRI and about CP/M and MS-DOS ! Because it's on-topic. Hence why when mentioning the death of Gary Kildall, I specifically spoke of the era in the context of events that occured before that date. Not after it. Though it was owned by Novell by then, I'm guessing he still viewed it as his legacy.
But it never went anywhere. Bits of it, along with a few chunks of GEM, ended up in DR-DOS as parts of the multitasking DOS shell, but this was a purely niche DOS power user product that didn’t do much but eat what was left of DesqView’s lunch. None of this would have been attractive to anyone who’d already gotten hooked on Microsoft Windows apps, so… yeah, not sure what’s trying to be sold here.
I wasn't familiar with this project. It's interesting to read about it and I think it's pretty cool - Might have been OS-X more than a decade before? - Maybe it went nowhere, but it also might have gone somewhere. I think until Windows95, anything could have happened. MacOS was the only underdog that challenged microsoft from 1982 to today. Clearly it had potential at the time, because they tried it. Or are you arguing everyone knew it was a mistake before they did it and they did it anyway?
I've had it in my mind that each had its own "era" in a sequential thing like "CP/M was it for 8 years, and then MS-DOS was it for X years", but the early date of the IBM PC in 1981 seems to throw that idea out the window. Obviously CP/M was earlier, but how much earlier and for how long did it "rule"? What makes me question this is both that (1) What CP/M machines propelled it to popularity before the release of the PC specifically. What I've noticed is that there seems to be a lot of PC's that were CP/M based, but AFTER that 1981 year. Was it a situation where the PC hadn't taken over and some of CP/M's momentum from before 1981 drove the development of those systems even after the PC was released?
Windows 2/3/3.1/3.11 weren't operating systems. They were shells. Calling them operating systems would mean Norton Commander is an operating system. Or that BASH is an operating system rather than Linux.
Is there any reason you can't run Windows 2/3/3.1/3.11 on a DRI made operating system?
Not exactly, IMO; a shell does not abstract hardware and does not present an application runtime. The entire point of Windows is running Windows applications.
If I go to wikipedia I'll get this - "An operating system (OS) is system software that manages computer hardware and software resources, and provides common services for computer programs."
In the case of early Windows/GEM/Ensemble running on DOS, what is the involvement of DOS in definition above? Largely down to disk I/O, the rest of resources and entire common services are presented from these not-OS.
Terminology issue and grey zone; for user that boots into Win 3 and runs Microsoft Office for work, Windows is the operating system. None of what he does would be possible without it.
Delete a UI shell like NC and fall back to system shell, replace that system shell for something else, you don't lose functionality anywhere.
Btw when I first heard about Windows it had been described as "the program". That was in 3.x age. Anecdotal but it shows people did not see it as point and click XTree Gold. But as things were defined, and DOS was an OS, Windows could not be an OS. Simple as that, but in design and a lot of practice, it was.
Not exactly, IMO; a shell does not abstract hardware and does not present an application runtime. The entire point of Windows is running Windows applications.
If I go to wikipedia I'll get this - "An operating system (OS) is system software that manages computer hardware and software resources, and provides common services for computer programs."
In the case of early Windows/GEM/Ensemble running on DOS, what is the involvement of DOS in definition above? Largely down to disk I/O, the rest of resources and entire common services are presented from these not-OS.
Terminology issue and grey zone; for user that boots into Win 3 and runs Microsoft Office for work, Windows is the operating system. None of what he does would be possible without it.
Delete a UI shell like NC and fall back to system shell, replace that system shell for something else, you don't lose functionality anywhere.
Btw when I first heard about Windows it had been described as "the program". That was in 3.x age. Anecdotal but it shows people did not see it as point and click XTree Gold. But as things were defined, and DOS was an OS, Windows could not be an OS. Simple as that, but in design and a lot of practice, it was.
From Wikipedia: Microsoft Windows was announced by Bill Gates on 10 November 1983, 2 years before it was first released.[1] Microsoft introduced Windows as a graphical user interface for MS-DOS, which had been introduced two years earlier.[2] The product line evolved in the 1990s from an operating environment into a fully complete, modern operating system over two lines of development, each with their own separate codebase.
The first versions of Windows (1.0 through to 3.11) were graphical shells that ran from MS-DOS. Windows 95, though still being based on MS-DOS, was its own operating system.
So I went and checked this with a LLM, since they are pretty good at teasing these questions out. (Chat GPT). I kept it to two straight questions to avoid hallucination as much as possible.
Q. when did Windows change from being a graphical user interface for DOS into an Operating System?
A. Windows transitioned from being a graphical user interface (GUI) for DOS to a full-fledged operating system with the release of Windows 95 on August 24, 1995.
Here’s the evolution:
Early Windows Versions (Windows 1.0, 2.0, 3.x): These versions, starting in 1985, were GUIs that ran on top of MS-DOS. They relied heavily on DOS for file management, system booting, and many core functionalities. Essentially, DOS was still the base operating system, and Windows provided a graphical layer for ease of use.
Windows 95: This was the first version that truly began shifting Windows away from DOS. While Windows 95 still used DOS as a bootloader, it integrated the graphical interface and underlying functionality more tightly. Windows 95 introduced features like the Start menu, taskbar, and a more robust 32-bit architecture, making it much closer to a modern operating system. DOS was no longer needed for most tasks after booting, making it feel like a standalone OS.
Windows NT (Released in 1993): Although Windows NT was technically released before Windows 95, it was aimed at professional users and businesses. It had a completely independent kernel and did not rely on DOS at all, marking an even clearer departure from the DOS-based foundation.
So, while Windows 95 was the major turning point for consumers, Windows NT laid the groundwork for future versions like Windows 2000 and XP, which eventually replaced DOS entirely in both consumer and enterprise editions.
Q. Would it be accurate to describe Windows 1.0, 2.0 and 3.x as above as an operating system from any perspective?
A. From a technical standpoint, it wouldn't be entirely accurate to describe Windows 1.0, 2.0, and 3.x as full operating systems. These early versions were more accurately graphical user interfaces (GUIs) or operating environments that ran on top of MS-DOS, which was the actual operating system.
However, there are certain perspectives where you might loosely refer to these versions of Windows as an "operating system," though this would be more informal or conceptual rather than strictly technical:
User Experience: For many users, early versions of Windows provided an environment that abstracted much of DOS's complexity, giving the illusion of a standalone system. Users could interact with programs, files, and devices through a graphical interface without directly managing DOS commands. From this view, Windows appeared to act like an OS, even though it wasn't managing hardware or providing core system functions on its own.
Ecosystem: These early versions of Windows created their own distinct ecosystem of applications that relied on the Windows API (Application Programming Interface). Developers could write software for the "Windows platform," leading to some confusion where people might describe Windows as an operating system in a functional sense. But technically, MS-DOS was still required for hardware interaction and system booting.
Broader Definition of OS: If you take a broader definition of what constitutes an operating system—i.e., any software that manages user interaction with the machine—then Windows in this era could be loosely considered a partial OS, since it handled aspects of application management, multitasking, and user interface.
In a strict computer science sense, though, Windows 1.0, 2.0, and 3.x were not full operating systems, since they relied on MS-DOS for memory management, file systems, and hardware access. The real leap to a standalone OS came with Windows NT and later versions like Windows 95, which integrated many of the core system functionalities directly into Windows.
So I looked around everywhere for "Operating environment" and it's a term that doesn't really get used much in the modern era. I can find plenty of non-authoritative references to Windows 3.x being an "Environment" rather than a "System" - so I dug a little deeper. Sadly there is no archive of Microsoft press releases, but I finally found what I wanted on youtube... What did "Microsoft" themselves decide Windows 3.1 was?
They called it an *environment*.
From the mouth of none other than Bill Gates himself.
Any other links/references anyone can find? Or is it reasonable to decide Microsoft Windows before 95 was an "Operating Environment" and the Operating System is "MS-DOS" ?
I ask in all seriousness, as there really seems to be a lot of resistance to this idea expressed in the thread - but no one has found and referenced anything that can be linked to that clearly delineates Windows 1/2/3.x as an OS?
Based on Microsoft assertions, I'm happy to accept it as an Operating Environment instead of a Shell (which a shell somewhat is) but no matter how hard I look, I can't find any references to anyone describing Windows 1/2/3.x as an Operating System with any authority.
Whether or not Windows 3.1 was technically an operating system really doesn't matter in the context of this thread. If you bought a program that required Windows 3.1, your computer had to run Windows 3.1.
All the "killer apps" were moving to Windows by 1994. DRI didn't have a compatible alternative (and if they did I'm sure Microsoft would have sued them). Sure you could run Windows 3.1 on DR-DOS, but it provided no benefit over MS-DOS or PC-DOS for Windows itself.
Whether or not Windows 3.1 was technically an operating system really doesn't matter in the context of this thread. If you bought a program that required Windows 3.1, your computer had to run Windows 3.1.
All the "killer apps" were moving to Windows by 1994. DRI didn't have a compatible alternative (and if they did I'm sure Microsoft would have sued them). Sure you could run Windows 3.1 on DR-DOS, but it provided no benefit over MS-DOS or PC-DOS for Windows itself.
I'm just trying the answer the OP's question - and identify the CP/M era and MSDOS era. So I thought the earlier questions as to whether the MS-DOS era did end in 1996 was quite pertinent to the topic - since there might have been a Windows 3.x era preceeding it. I think the arguments presented by others were excellent, but I still think that it falls into the MS-DOS era.
You are right about the killer apps even though DRI did have GEM... I still recall the father of a friend using it for DTP in the late 80s / Early 90s. But it was pretty obvious that GEM wasn't heading where Windows was going. Especially when SVGA monitors came out and were supported. As long as the card had Windows 3.x drivers, you could finally get the value out of the additional cost for a 1Mb VGA card.
And I always thought the real killer app was Mosaic. Sure, WYSIWYG stuff was nice, and I really liked Lotus Write myself over Word, but when I saw Mosaic in 1993, it blew me away. That was the point I could see where all of this was headed, and I wasn't too far from the target even back then. I couldn't write a windows program, but HTML? I could write that. And add the graphics.
I ask in all seriousness, as there really seems to be a lot of resistance to this idea expressed in the thread - but no one has found and referenced anything that can be linked to that clearly delineates Windows 1/2/3.x as an OS?
Based on Microsoft assertions, I'm happy to accept it as an Operating Environment instead of a Shell (which a shell somewhat is) but no matter how hard I look, I can't find any references to anyone describing Windows 1/2/3.x as an Operating System with any authority.
Such clear delineation is hard to ask for. Microsoft calling Windows 1/2/3 an OS in DOS age would be a political statement too. And they did not want to compete against their own product which was a market leader, rather supplement it.
The terminology of "operating environment" is a good pick, it implies something where both users and applications live, but it is clearly a new term in use to differentiate against "operating system".
Technically, we're used to calling anything that bootloader kicks off an "OS" but that doesn't line up that well with common definition of providing abstractions and services.
Even the technical community is not capable of distinction between Linux, GNU and GNU/Linux in everyday talk.
I'm just trying the answer the OP's question - and identify the CP/M era and MSDOS era. So I thought the earlier questions as to whether the MS-DOS era did end in 1996 was quite pertinent to the topic - since there might have been a Windows 3.x era preceeding it. I think the arguments presented by others were excellent, but I still think that it falls into the MS-DOS era.
I believe Win 3.x fully overlaps with DOS, Windows 95 slightly early on.
Myself and my friends, we had DOS/Win3.x setups that were more favoured to DOS side (games ofc), and tried to move to Win95 but stuff did not work. At a time I'm sure we had all three on the drive.
Regular people, well it was common for child to bring some BASIC code or something from school, to want to play a game, so there's overlap between 3.x and DOS, even if owner used it for Windows stuff, it was just bound to be using some DOS thing sometime.
Was that in 1996 for most people? I don't know. I do remember 1997 and a lot of Windows 3.1 setups around.
Again depends on what you define as end of an era. Is it on the beginning of the downslope or when the horse finally dies? Well by 1990 it was clear that DOS will be done for but 5 years on, demanding games were still being written for it and not Windows 3. When was the last major game that used DOS and not Windows for PC released? 1997? That was the death act for sure.