Hacker News new | ask | show | jobs
by hulitu 1117 days ago
Because of the low quality, normally no. But since you asked: DOS was not a bootloader for Win3.1. Win 3.1 cannot run without DOS. There were TSRs which were loaded in DOS which interacted with Win3.1.

And multitasking: only one program was active at a time (just like in Android today). When you minimized the program, it was suspended.

2 comments

None of those individual claims are true.

1. Windows 3.1 can run without DOS. For example: on top of DR DOS, an entirely independent operating system from a different vendor. And of course it also runs on top of OS/2 2.0 and above which is not remotely DOS like in structure. Now yes to be fair that is because IBM had access to the Microsoft source code for Windows 3.0 and 3.1. Even so it falsifies your statement.

2. Your claim about multitasking is wrong and it is specifically refuted in the article that you are criticising.

2a. Under Windows 3.0 and 3.1, Windows binaries multitask cooperatively, and programs can and do run in the background. You can minimise the program and it will keep working. Four example you could minimise a comms program that is doing a download of a dial-up, and keep working in some other application. Your download would continue. I used this in production from 2.01 up until Windows for Workgroups 3.11. It was Windows 3 – it was very unstable – so you have to be extremely careful with what you did, but it was possible.

2b. As the article specifically spells out, Windows 3.0 and 3.1 were able to pre-emptively multitask DOS applications. So although Windows binaries were only cooperatively multitasked, DOS binaries were pre-empted... which was necessary because MS-DOS didn't support multitasking. And just for the sake of clarity, this did not require a 386: they were able to multitask DOS apps even on 8086, although that ability wasn't much use, because you wouldn't have enough available memory on an 8086 to run two or more DOS programs at once. But you could demonstrate it with tiny DOS applications like say `pkzip`. The relevance of a 386 and 386 enhanced mode to this was memory management - Windows 3 could use V86 mode to give each DOS program 640 kB RAM.

> 1. Windows 3.1 can run without DOS. For example: on top of DR DOS, an entirely independent operating system from a different vendor. And of course it also runs on top of OS/2 2.0 and above which is not remotely DOS like in structure. Now yes to be fair that is because IBM had access to the Microsoft source code for Windows 3.0 and 3.1. Even so it falsifies your statement

You are mixing up the terms here.

Windows 3.1 cannot run without DOS.

Windows 3.1 can run without MS DOS.

The difference is, that you provide other DOS implementation. It cannot run if you remove it. It was not able to boot itself, the launcher itself (win.com) was DOS executable.

> 1. Windows 3.1 can run without DOS. For example: on top of DR DOS, an entirely independent operating system from a different vendor.

So it still needs DOS. I mean you cannot boot directly in win.com.

You've just done the same thing as the author of the article, only there are Raymond Chen references elsewhere in this thread that contradict your statements.
Raymond Chen stated that there were different OSs running inside win3.1.

https://devblogs.microsoft.com/oldnewthing/20100517-00/?p=14...

There was a lot of HW which only had DOS drivers which were loaded prior to starting Windows. Yes, the Windows kernel took the whole thing further but it still relied on MS-DOS for some things.

TSRs (which amount to "DOS drivers") were notoriously flaky with Win3.1. Some requiring installation prior, some requiring installation inside of a guest DOS shell, some just not working at all. More reliable ones (such as MSCDEX) were explicitly compatible with Win3.1 and its IDT.

https://www-user.tu-chemnitz.de/~heha/vxd/vxd.htm