Nah the i80386 was actually initially slower than the 80286, which was VERY disappointing, it was also expensive relative to performance.
The real change was the i486, which was way better and had integrated floating point, and a way more attractive starting price point especially considering the built in floating point.
If they mean changing mainstream computing because it’s 32 bit, Motorola did that way earlier with the M68000. Available in Apple computers.
I do think the 286 also had an MMU (and a surprising 1GB of virtual memory address space!)
However, entering and exiting protected mode (the mode where the MMU is useful) was painful on the 286, and I believe it slowed the adoption of those features. You had to reset the CPU to exit the mode!
The 386 was able to switch modes much easier (and added a virtual legacy 16 bit mode as well), allowing legacy software to be more easily integrated and runnable. Basically, I think it was successful because of “business reasons”, especially in the growing IBM PC compatible market. You could upgrade and still continue to run your legacy business software, but now with the ability to potentially run workstation/server level software as well.
But I’m probably biased because my first real computer was a 386 AT&T workstation with 4 megabytes of RAM, a real workhorse that I learned a lot on.
The main thing, as I understand it, is that the 386 supported preemptive multitasking, while the half-baked memory management in the 286 was only good enough to support cooperative multitasking. That was a big deal, and not just for business/workstation/server stuff.
My first computer was a 286, and while I don’t think I understood virtual memory at the time, I definitely remember it not being able to run a bunch of newer software (notably, Windows… 3.11?) because of fundamental incompatibility, not just lack of speed.
I think all the x86 processors support preemptive multitasking, but yes for sure you need a good MMU to really simplify things. The two almost always go hand in hand for good reason!
The memory management on the 286 was definitely buggier and “lesser” than on the 386, but as I understand it was more than sufficient to run a preemptive OS with virtual memory (Concurrent DOS 286 was just such an OS). The 286 just couldn’t run existing legacy 8086 software in this mode out of the box(only through a software emulation layer), so many people simply used it as a fast 8086 running MS-DOS/Windows.
The 386 fixed this by making it much easier/safer to use this legacy software in a protected mode environment, so something like Windows 3.x could run both DOS applications and it’s own native 16/32-bit ones at the same time. I’m honestly not sure why you couldn’t run Windows 3.11 on your 286, but I’m pretty sure it could be installed on one in standard mode. (I’ve read that some Compaq machines had an issue with that?) You would have only been able to run native 16-bit windows applications though, no DOS without resetting the system.
Again, I could be wrong (and would be curious to know if I am)! For context, I’ve worked as a firmware/BIOS engineer in the PC industry for 20 years, and spent most of my teenage years programming in assembly on those systems, and this is all from my direct experience with programming for such things. But also I’m old now and my brain don’t always work good…
EDIT:
The first i486 was with floating point, and it was faster than 80386 from the get go.
Later when the cut down SX that didn’t have floating point was introduced, they called the non cut down version DX.
But the original i486 was similar to later DX versions and included floating point.
But admittedly the better prices for 486 was probably due to competition with AMD heating up.
Nah the i80386 was actually initially slower than the 80286, which was VERY disappointing, it was also expensive relative to performance.
The real change was the i486, which was way better and had integrated floating point, and a way more attractive starting price point especially considering the built in floating point.
If they mean changing mainstream computing because it’s 32 bit, Motorola did that way earlier with the M68000. Available in Apple computers.
And Atari ST and Commodore Amiga and Sinclair QL.
Amiga 1000 is the best computer ever made! RIP Jack Tramiel.
Having a MMU was more revolutionary than integrated floating point.
I do think the 286 also had an MMU (and a surprising 1GB of virtual memory address space!)
However, entering and exiting protected mode (the mode where the MMU is useful) was painful on the 286, and I believe it slowed the adoption of those features. You had to reset the CPU to exit the mode!
The 386 was able to switch modes much easier (and added a virtual legacy 16 bit mode as well), allowing legacy software to be more easily integrated and runnable. Basically, I think it was successful because of “business reasons”, especially in the growing IBM PC compatible market. You could upgrade and still continue to run your legacy business software, but now with the ability to potentially run workstation/server level software as well.
But I’m probably biased because my first real computer was a 386 AT&T workstation with 4 megabytes of RAM, a real workhorse that I learned a lot on.
The main thing, as I understand it, is that the 386 supported preemptive multitasking, while the half-baked memory management in the 286 was only good enough to support cooperative multitasking. That was a big deal, and not just for business/workstation/server stuff.
My first computer was a 286, and while I don’t think I understood virtual memory at the time, I definitely remember it not being able to run a bunch of newer software (notably, Windows… 3.11?) because of fundamental incompatibility, not just lack of speed.
I think all the x86 processors support preemptive multitasking, but yes for sure you need a good MMU to really simplify things. The two almost always go hand in hand for good reason!
The memory management on the 286 was definitely buggier and “lesser” than on the 386, but as I understand it was more than sufficient to run a preemptive OS with virtual memory (Concurrent DOS 286 was just such an OS). The 286 just couldn’t run existing legacy 8086 software in this mode out of the box(only through a software emulation layer), so many people simply used it as a fast 8086 running MS-DOS/Windows.
The 386 fixed this by making it much easier/safer to use this legacy software in a protected mode environment, so something like Windows 3.x could run both DOS applications and it’s own native 16/32-bit ones at the same time. I’m honestly not sure why you couldn’t run Windows 3.11 on your 286, but I’m pretty sure it could be installed on one in standard mode. (I’ve read that some Compaq machines had an issue with that?) You would have only been able to run native 16-bit windows applications though, no DOS without resetting the system.
Again, I could be wrong (and would be curious to know if I am)! For context, I’ve worked as a firmware/BIOS engineer in the PC industry for 20 years, and spent most of my teenage years programming in assembly on those systems, and this is all from my direct experience with programming for such things. But also I’m old now and my brain don’t always work good…
Not until later with the DX chips. You could also get a 386 with an integrated fpu.
EDIT:
The first i486 was with floating point, and it was faster than 80386 from the get go.
Later when the cut down SX that didn’t have floating point was introduced, they called the non cut down version DX.
But the original i486 was similar to later DX versions and included floating point.
But admittedly the better prices for 486 was probably due to competition with AMD heating up.