Why did Mac OS 7 perform poorly with virtual memory enabled?
retrocomputing.stackexchange.com
retrocomputing.stackexchange.com
I'm pretty sure that is wrong. What most likely slowed down with VM was that as soon as a page operation had to be performed, the OS would block and do nothing else until the disk access was done.
I worked with a web developer in the mid 90's who served some image files off his desktop Mac. We noticed intermittent hangs and slowdowns during file transfers. After much head scratching, we pieced together that every time he held down his mouse button, networking stopped until he let go. This was 100% reproducible, and 100% hilarious to us Linux folks.
It got eventually got better.
I think this is a rather uniquely-bad behavior among modern macOS apps, though; I have a feeling it's because it's the only one that also runs on Windows, and the required portability layer is "a bit" legacy.
That was why when BeOS came out around that time and, often on the same hardware you used MacOS 7 on, you could drag windows around with video playing in them, with 3D objects spinning in other window, with video being wrapped on to 3D objects in real-time, it was utterly mind-blowing. The user interface never quit on you, it never beachballed, it just kept going.
I have to chuckle when I see Windows 10 struggle to do what BeOS did effortlessly on a 603e machine with a video card so primitive it couldn't even run any real 3D games.
Same difference, but 10 years prior to BeOS...
On BeOS the menu UI had its own thread. Even if the app was busy thinking it still wouldn't jam. That wasn't the case on other operating systems that simply had multi-process support.
This was back when holding the mouse button down was required to keep a menu open, right?
Choice quote from http://lowendmac.com/1997/performa-and-power-mac-x200-issues...:
One of the biggest complaints about the x200 series is slow Internet handling. For one thing, looking at the chart above, all data from either the ports or the ethernet controller must pass through the processor to get to memory, then be processed, sent to the IDE controller for cache saving, and then interpreted for graphics display.
There are symptoms to notice because of this. While a web page is loading, typed characters will be lost. When dealing with high IDE access, the graphics controller will seem to freeze. When copying to a network or downloading a file, the monitor will rarely update and will have redraw problems. Spooled print jobs will take forever if lots of processor resizing is necessary.
[1] http://lowendmac.com/2014/power-mac-and-performa-x200-road-a...
We also ran into the serial port issues the article describes, we got better performance hooking our 56k modem up to the Quadra and sharing that connection to the 5200 over LocalTalk via IPNetRouter than actually using the modem directly.
Now I'm curious what made the 5200 better at MP3 playback. My recollection is that the only way to get the upgraded Quadra to play MP3s in realtime was with SoundApp monopolizing the CPU so you couldn't even click anything else. On the Performa, you could run MacAmp in the background while browsing the web, with stuttering "only" during whole page repaints. This was 20 years ago, my recollection could be poor... I soon got my own Quadra 660AV (video digitizing!) and eventually a PowerMac 7500 (that I upgraded to G3 and could even run early versions of OS X with Xpostfacto)
After a few days of that crap I just installed YellowDog Linux.
ahhh... I'm fond the days from when you could run whole applications in all of 4MiB -- GUIs included.
In the G3 and G4 days with easy-open computers it wasn't uncommon for one designer to put out a call for more memory to do something intensive, like edit a poster, and other designers would sacrifice a stick or two to the cause. When the job was done they'd put the memory back in the other machines.
The department had another identical workstation that wasnt being used just then and I pointed out I could swap half of it's RAM to his machine for the day. He and his boss looked at me as though I was insane. An hour later they called me and asked me to do it, the model run completed in a couple of hours and I swapped the RAM back.
He had a Quadra 950 with 128MB of RAM, which required some pretty exotic SIMMs. That would be a pretty expensive machine in today's money. This was for handling Adobe Illustrator files with large embedded images.
So just imagine the possibilities for ESP32 applications.