News for hackers. Stuff that matters.
Re:Windows 3.x looks for 3 occurrences of “CON” 59 bytes apart by EvanAnderson on Saturday June 29, 2019 @11:35PM (#20316180)
I'd be interested in a reference for this "crash" definition you're describing. It was common parlance in the late 80's in the DOS-era PC circles I ran in to use the word "crash" to mean a physical fault with a hard disk drive (probably in reference to a head crash) and I've seen it picked-up by the novice community over time. I've never seen any Microsoft-provided reference that forwarded such a definition.

None of this is to say that MS-DOS and Win3.x isn't a bizarre maze of assembly-language hacks. It was unreliable as hell, though the entire PC software ecosystem and playing fast-and-loose with tricks like directly accessing hardware was as much to blame as anything.

Re:Windows 3.x looks for 3 occurrences of “CON” 59 bytes apart by partitionator on Sunday June 30, 2019 @12:28AM (#20316339)
I've had things happen to old versions of Windows that have completely blown the system installed to the C: drive.

This was definitely a thing. You can recall an artifact of folk proof in this detail, by recalling a lot of more technical users and professional IT/desktop support staff in computer labs using C: as a system drive, and D: as the work area containing user files, even if it was a single user machine. Losing the C: partition was a bad burn, bad enough that you didn't let it happen twice.

Years later, even in the Vista days, I had a partition destroying error from a truly innocuous action (like renaming some file; and that NOT being just a coincidence, but a repeatable error with Google results), and had a flabbergasted flashback to a prior C: drive implosion, that reminded me why you always divide the bootable system install off to its own untouched C: partition, and always only put the things you care about on the D: drive, and create lots of backups.

This was real. Never touch C: and don't trust it. Never put anything that matters in the C: partition.

Re:Windows 3.x looks for 3 occurrences of “CON” 59 bytes apart by pdkl95 on Sunday June 30, 2019 @02:14AM (#20316660)
One of the ways Windows would corrupt itself was an optimization it used to reduce the size of the VM swap file. On many OS, when a program is loaded into memory the executable code pages of memory are the same as any other memory page: the VM might write the page to the swap file, and later reload that memory from the swap file to restore the memory page.

On windows, code pages were not sent to the swap file, because that data already had a copy of that data in the program's original .exe file! Instead of writing the memory page to the swap file, simply freeing the memory was much faster and saved a lot of space on the disk reserved for the swap file. The code pages were supposed to be read-only, but some kind of bug(s) would cause the memory pages to be seen as normal memory, where writes would mark the page as "dirty" and eventually the VM would write those changes to the swap file. Unfortunately, for code pages, the "swap file" was the original .exe, so the changes to the memory page would corrupt the .exe, probably requiring it to be reinstalled.

> always divide the bootable system install off to its own untouched C: partition

They might have been using 'ghost' to restore the C: partition over the LAN at boot time. This was very common in professionally-managed settings.

Re:Windows 3.x looks for 3 occurrences of “CON” 59 bytes apart by anticensor on Sunday June 30, 2019 @02:41AM (#20316741)
> Unfortunately, for code pages, the "swap file" was the original .exe, so the changes to the memory page would corrupt the .exe, probably requiring it to be reinstalled.

Do you mean Windows modified user programs without warning? It seems like it was a serious bug.

Re:Windows 3.x looks for 3 occurrences of “CON” 59 bytes apart by pdkl95 on Sunday June 30, 2019 @03:02AM (#20316808)
Yes, it could overwrite any program, but (if I recall correctly) it hit OS file most of the time simply because they were always open. It was a very rare bug, because it had to combine both corruption of the VM to allow the write to happen, and a bug (e.g. a pointer error) that would write to the program's code page. The actual modification would usually be very small, and wouldn't change the file size.

And yes, it was a serious bug, that might have been responsible for why Windows seemed to have a "half life". Over a given period of time, each system had a chance of corrupting itself. Some systems would be fine for years, but many needed to be reinstalled after a ~year.