When an OS making use of 386's features became mainstream we were well into the '90s. By that time the 386 itself was long obsolete. If by everyone you mean almost nobody, then I agree because that's how many people used the 386 as a 386 and not simply a fast 8086.
You are right about before 1990, but already in 1990 Windows 3.0 was released, which had a non-negligible amount of users, even if most Windows 3.0 users typically switched continuously between using Windows 3.0 and MS-DOS, because they continued to use various MS-DOS applications, e.g. Lotus 1-2-3, WordPerfect and so on.
In 1990, far away from USA, and where computers where relatively much more expensive, I have started to use a 80386DX-based PC/AT clone on which (besides MS-DOS), I have used two 386-specific operating systems, i.e. Windows 3.0 and SCO UNIX (a couple of years later I have also used on it other 386-specific OSes, e.g. IBM OS/2 2.0).
I agree that during its lifetime more 80386 users must have used MS-DOS than other operating systems, but already since 1990 there was a non-negligible number of users of 80386 in 32-bit mode, with Windows 3.0 and its successors.
Moreover, even many of the strictly MS-DOS users were using EMM386.SYS in order to access the memory above 1 MB within MS-DOS programs.
While EMM386.SYS does not count as a complete operating system, it was a program using 80386 in its 32-bit mode that was an essential part of MS-DOS after 1990, because already by 1990 most 80386 PCs had more than 1 MB of memory, with 2 MB typical for the cheapest and 4 MB typical for the more expensive.
DESQview 386, a DOS multitasker, was released a little bit earlier. Probably more useful than Windows at the time given the popularity of DOS applications. I remember some local BBSes running multiple "nodes" in DESQview.
> Windows 3.0/3.1 offered a 386 Enhanced mode with significant benefits:
Which was a follow-up to Windows/386 2.0 released in 1987.
I guess the big difference is few people ever used Windows 2.x, even in its 8086 variant, and use of its 386 variant was even rarer. Whereas Windows 3.0 was widely adopted. And by the time Windows 3.0 came out, 386 machines had become much more common too
Previous Windows versions were for 8088 or 80286, which caused serious limitations for how memory was allocated and used (e.g. the programs had to be written in such a way as to allow the operating system to change the values of the pointers, whenever it needed to move the already allocated memory regions to other places).
While Windows 3.0 had compatibility modes with earlier Windows versions, its native mode was designed for 80386, which allowed a completely different programming model, removing the annoying limitations of the older Windows versions.
Saying that Windows 3.0 was a follow-up is not really appropriate because it was a very different operating system, even if many APIs had remained as compatible as possible with the earlier Windows versions.
> Previous Windows versions were for 8088 or 80286, which caused serious limitations for how memory was allocated and used.
No, this is not true. Windows/386 2.0 (and 2.1 and 2.11) were specifically for the 80386 only. The other edition of Windows 2.x, Windows/286, was for 80286 (and despite its name suggesting it required a 286, it was supported on 8086 as well, albeit with fewer features)
> Saying that Windows 3.0 was a follow-up is not really appropriate because it was a very different operating system, even if many APIs had remained as compatible as possible with the earlier Windows versions.
Again, I don't see how this is true. Windows 3.0's 386 Enhanced Mode was a direct evolution of Windows/386 2.x.
It sounds like you are under the false impression that the 386-only mode was a new thing in Windows 3.0, when it wasn't, it was first introduced with Windows/386 2.0
I assume that you are right, but for some reason the 386-mode of Windows 2.x has not been popular and it was little known.
That must have been either because Windows 2.x in general was not popular, or because before 1990 the computers with 80386 were too expensive.
What I know for sure is that since 1990 Windows 3.0 has become popular enough and most of its users were using the 386 mode, which removed the problems caused by memory relocation.
Before Windows 95, most serious work would still be done using MS-DOS programs, frequently using EMM386.SYS for upper memory access, but many also had Windows 3.x on their computers and were toying with it from time to time.
Texas Instruments was selling i386 Xenix systems to a major farm implement company in the early 90s. I actually traveled the country installing these in dealerships. They ran an accounting system written in RM+COBOL.
TI replaced this line with 68000-based UNIX, then sold their business computer systems line to HP.
I will say that the 486 Altos system I got a bit later was much better than the 386. Still, it was impressive how these boxes could support multiple users.
Those of us who were actually there at the time were running Xenix, System V, SunOS and Novell Netware requiring 386 features in the late 80s, much less the 90s.