6 ms·
Isn't MP/M an interesting one?
by mistrial9 1y ago
Isn't MP/M an interesting one?
- lproven 1y agoIt is, but CCP/M is a descendant of it. What stifled CCP/M in its era was that it wasn't compatible with MS-DOS device drivers. Today, that's largely irrelevant: there aren't any modern ones. I feel a modernised FOSS Concurrent DOS could be a fun toy: a multitasking x86-32 OS that can handle 4GB RAM and multitask lots of DOS apps. Slap a GUI on it -- DR GEM is FOSS now -- and it could do all many people need, while being about 0.01% the size of a lightweight Linux distro.
- jandrese 1y agoMultitasking DOS apps is always a minefield. Most DOS apps are expecting to have total control of any aspect of the machine they want, so if they're suddenly being asked to share it's bad news. This is why DOS stuff is all virtual machines now, and while Virtual Machines have many virtues, light weight is rarely one of them.
- rep_lodsb 1y agoVirtual 8086 mode on the 32-bit x86 processors was quite lightweight. EMM386.EXE used it just to emulate EMS :) And the virtualization done by Win9x or OS/2 wasn't that much more resource intensive either.
- lproven 1y agoYes, but as the comment below notes, the 386 has hardware-assisted DOS multitasking: basically, V86 mode is a hardware-enforced real mode VM. CP/M-86 was late -- years late, and MS-DOS got control of the market in that time. It didn't help that when CP/M-86 arrived on the IBM PC it was 5x the price of DOS. So, to make a more compelling product, DR merged CP/M-86 with MP/M to make Concurrent CP/M. The intent was multiple users on terminals, not multitasking on one PC, but it could do that. Concurrent CP/M got an MS-DOS emulator called DOS-mode. This was later built in and Concurrent CP/M became Concurrent DOS. (Later that bit was effectively spun out to become DR-DOS.) Concurrent DOS 286 ran in protected mode on 80286 machines and could multitask DOS apps in protect mode, which even OS/2 couldn't do. But this depended on a feature of pre-release 286 chips that Intel removed before release, crippling the new OS. (With it unable to multitask DOS on early shipping 286s, DR retargeted CDOS 286 as a real-time OS, renaming it FlexOS. That survived for decades. It's still supported by IBM and Toshiba today I think.) So when the 386 came along it did a big rewrite. CDOS 386 supports hardware-assisted DOS multitasking, including on terminals, but on the console too. No GUI, no windowing, only (by default) 4 full-screen virtual consoles, just as Linux has 7 vconsoles by default accessed with Alt-F1...F7. (Ctrl+Alt+F-keys in X11.) Including in graphics mode. At work in my first job, I ran MS-DOS COMMAND.COM on top of CDOS in one session, so it reported it was MS-DOS 3.3, but in the background the machine was running FRACTINT generating Mandelbrots for hours. No CPU heatsinks back then, no power management, no fans, so the PC was no louder running flat-out. It could even handle FRACTINT's fancy direct-VGA-register-writing graphics modes, which reliably crashed OS/2 2.0.
- retrac 1y agoMuch more sophisticated than you might think given the CP/M heritage. Memory protection and preemptive multitasking, asynchronous IO, networking support, and written partly in a high-level language. Software ecosystem comparable to early UNIX or VMS. And a dead end.
- cmrdporcupine 1y agoI would expect some of the IP made it into Concurrent DOS and DR DOS eventually. I know in the past when I've browsed the late-DR sources there were clear lines of continuity between various products in their family tree (GEMDOS, CP/M, M/PM, etc), so I suspect bits ended up in that
- Zardoz84 1y agosearch for Copland and what parts came back to DR-DOS