{"video_id":"fp_MuFQ2lOT0P","title":"TQ: Why Windows 95 Crashed So Much","channel":"Techquickie","show":"Techquickie","published_at":"2022-08-19T00:22:00.039Z","duration_s":288,"segments":[{"start_s":0.0,"end_s":5.6,"text":"Windows 95 was a big deal. It gave us the start button, featured USB support, and made people","speaker":null,"is_sponsor":0},{"start_s":5.6,"end_s":10.32,"text":"who weren't alive in the 1960s aware of who the Rolling Stones are. But despite all that,","speaker":null,"is_sponsor":0},{"start_s":10.32,"end_s":15.52,"text":"let's be real. Windows 95 and its successors, Windows 98 and especially ME, collectively","speaker":null,"is_sponsor":0},{"start_s":15.52,"end_s":20.72,"text":"referred to as Windows 9X, were bugger than a roach motel. It might be tempting to lay the","speaker":null,"is_sponsor":0},{"start_s":20.72,"end_s":24.56,"text":"blame on the less powerful hardware of the time, especially considering that many of","speaker":null,"is_sponsor":0},{"start_s":24.56,"end_s":29.36,"text":"Windows Vista's problems were a result of PC makers installing it on below spec computers,","speaker":null,"is_sponsor":0},{"start_s":29.44,"end_s":33.84,"text":"but it turns out the main reason Windows 9X was so maddening was that the operating system was","speaker":null,"is_sponsor":0},{"start_s":33.84,"end_s":38.8,"text":"built like a house of cards. You see, all three of these OSs were based on MS-DOS, which was released","speaker":null,"is_sponsor":0},{"start_s":38.8,"end_s":44.56,"text":"all the way back in 1981. And even though Windows looked very different, it shared lots of the code","speaker":null,"is_sponsor":0},{"start_s":44.56,"end_s":50.08,"text":"with DOS under the hood. And as a metaphor, well, putting an infotainment system and some heated","speaker":null,"is_sponsor":0},{"start_s":50.08,"end_s":55.28,"text":"seats in an 81 Bonneville isn't exactly going to make it run the same as a modern car. The reason","speaker":null,"is_sponsor":0},{"start_s":55.36,"end_s":59.68,"text":"that Microsoft built Windows 95 this way was because they wanted users to be able to run","speaker":null,"is_sponsor":0},{"start_s":59.68,"end_s":64.72,"text":"familiar DOS programs and wanted the OS to run well on older hardware. And to be fair to Microsoft,","speaker":null,"is_sponsor":0},{"start_s":64.72,"end_s":70.0,"text":"Windows 95 largely achieved these goals. But doing so came at an unavoidable cost.","speaker":null,"is_sponsor":0},{"start_s":70.0,"end_s":74.4,"text":"The stability problems ultimately boiled down to the fact that DOS was not meant to be a true","speaker":null,"is_sponsor":0},{"start_s":74.4,"end_s":79.12,"text":"multitasking operating system. Although a big part of Microsoft's marketing was how well the","speaker":null,"is_sponsor":0},{"start_s":79.12,"end_s":83.92,"text":"new Windows taskbar would make it super easy to switch between programs, that underlying DOS code","speaker":null,"is_sponsor":0},{"start_s":83.92,"end_s":88.64,"text":"was built more for something called cooperative multitasking. What this meant was that DOS relied","speaker":null,"is_sponsor":0},{"start_s":88.64,"end_s":94.08,"text":"on programs voluntarily relinquishing CPU time if the user wanted to switch to a different program.","speaker":null,"is_sponsor":0},{"start_s":94.08,"end_s":98.72,"text":"This wasn't a big problem in DOS because users were nearly always just trying to use one program","speaker":null,"is_sponsor":0},{"start_s":98.72,"end_s":102.88,"text":"at a time. Not only were there hardware and software limitations that kneecapped how many","speaker":null,"is_sponsor":0},{"start_s":102.88,"end_s":108.24,"text":"programs you could conceivably run and an interface that steered you toward exiting a program rather","speaker":null,"is_sponsor":0},{"start_s":108.24,"end_s":113.44,"text":"than minimizing it, but early users largely thought in a single task paradigm. Windows 9x,","speaker":null,"is_sponsor":0},{"start_s":113.44,"end_s":118.08,"text":"though, was supposed to allow you to have lots of things open simultaneously. To enable this,","speaker":null,"is_sponsor":0},{"start_s":118.08,"end_s":122.88,"text":"Windows 95 introduced preemptive multitasking, which is the same scheme we use today. In preemptive","speaker":null,"is_sponsor":0},{"start_s":122.88,"end_s":127.68,"text":"multitasking, the OS has much more control over programs because it steps in and divvies up CPU","speaker":null,"is_sponsor":0},{"start_s":127.68,"end_s":131.52,"text":"time on its own rather than waiting for the programs to do it. But the problem back in the","speaker":null,"is_sponsor":0},{"start_s":131.52,"end_s":136.88,"text":"Windows 9x days was that this was really only implemented for newer 32-bit programs. And there","speaker":null,"is_sponsor":0},{"start_s":136.88,"end_s":141.84,"text":"were plenty of old 16-bit software people were still using that didn't exactly play by the rules.","speaker":null,"is_sponsor":0},{"start_s":141.84,"end_s":145.76,"text":"A huge problem that you would run into was that older code would often access","speaker":null,"is_sponsor":0},{"start_s":145.76,"end_s":150.0,"text":"another program's memory space, or even the memory space of Windows itself.","speaker":null,"is_sponsor":0},{"start_s":150.0,"end_s":155.2,"text":"16-bit programs and especially DOS mode device drivers were especially notorious for doing this,","speaker":null,"is_sponsor":0},{"start_s":155.2,"end_s":159.36,"text":"as during the DOS days, programs and drivers were allowed to access far more of the system's","speaker":null,"is_sponsor":0},{"start_s":159.36,"end_s":163.52,"text":"hardware directly than they are today. So when you tried to get those pieces of software to work","speaker":null,"is_sponsor":0},{"start_s":163.52,"end_s":166.72,"text":"in an environment where there were lots of other programs running at the same time,","speaker":null,"is_sponsor":0},{"start_s":166.72,"end_s":172.24,"text":"it often wasn't a pretty picture. There were other problems as well. Even newer 32-bit device","speaker":null,"is_sponsor":0},{"start_s":172.24,"end_s":176.8,"text":"drivers actually shared memory space with the Windows kernel itself, meaning that the entire","speaker":null,"is_sponsor":0},{"start_s":176.8,"end_s":181.92,"text":"operating system was vulnerable to poorly written software in more ways than one. Windows 9x also","speaker":null,"is_sponsor":0},{"start_s":181.92,"end_s":186.32,"text":"did itself no favors by doing a poor job of freeing up memory that was no longer being used by a","speaker":null,"is_sponsor":0},{"start_s":186.32,"end_s":190.56,"text":"program, a problem called a memory leak, which reduced the amount of memory available to other","speaker":null,"is_sponsor":0},{"start_s":190.56,"end_s":195.36,"text":"programs resulting in slowdowns and eventually a crash. Of course, the Windows versions of","speaker":null,"is_sponsor":0},{"start_s":195.36,"end_s":199.28,"text":"today aren't perfect, but they're a heck of a lot more stable than the bad old days we've been","speaker":null,"is_sponsor":0},{"start_s":199.28,"end_s":204.16,"text":"talking about in this episode. So what changed? Well, even before Windows 95 came out, Microsoft","speaker":null,"is_sponsor":0},{"start_s":204.16,"end_s":208.8,"text":"already had an alternate version of Windows called Windows NT. This version didn't have the old DOS","speaker":null,"is_sponsor":0},{"start_s":208.8,"end_s":213.28,"text":"code that made 9x so buggy, was built from the ground up for seamless multitasking support,","speaker":null,"is_sponsor":0},{"start_s":213.28,"end_s":218.32,"text":"and crucially had the ability to isolate each program's memory space much more effectively.","speaker":null,"is_sponsor":0},{"start_s":218.32,"end_s":222.08,"text":"But as an operating system intended for more professional and workstation use,","speaker":null,"is_sponsor":0},{"start_s":222.16,"end_s":226.64,"text":"NT had higher system requirements and wouldn't support a lot of the older programs and hardware","speaker":null,"is_sponsor":0},{"start_s":226.64,"end_s":232.72,"text":"most users still needed. However, in 2001, Microsoft released Windows XP, the first version of Windows","speaker":null,"is_sponsor":0},{"start_s":232.72,"end_s":237.6,"text":"based on the NT kernel that was aimed at home users. They were able to do this because the Windows","speaker":null,"is_sponsor":0},{"start_s":237.6,"end_s":242.8,"text":"9x family, flawed as it may have been, steered developers toward coding for 32-bit operating","speaker":null,"is_sponsor":0},{"start_s":242.8,"end_s":247.52,"text":"systems compatible with newer hardware. After a few years of this, Microsoft finally felt confident","speaker":null,"is_sponsor":0},{"start_s":247.6,"end_s":252.24,"text":"enough to ditch those weird DOS Windows hybrids and the NT kernel continues to power Windows to","speaker":null,"is_sponsor":0},{"start_s":252.24,"end_s":256.24,"text":"this day. But if you really miss Windows 95, there's nothing stopping you from changing your","speaker":null,"is_sponsor":0},{"start_s":256.24,"end_s":260.72,"text":"desktop background to cyan, hooking up a CD ROM drive, and playing some space cadet pinball in","speaker":null,"is_sponsor":0},{"start_s":260.72,"end_s":264.72,"text":"your browser. You can even kick your tower once in a while if you missed the instability. Yep,","speaker":null,"is_sponsor":0},{"start_s":265.36,"end_s":270.0,"text":"gotta love that. Sometimes I kicked mine to get it to start working again. Usually I just had to","speaker":null,"is_sponsor":0},{"start_s":270.0,"end_s":274.08,"text":"unplug it though. So thanks for watching. Like the video if you liked it, dislike it if you didn't,","speaker":null,"is_sponsor":0},{"start_s":274.08,"end_s":278.72,"text":"check out our other videos like the one I did on Redbox, that was fun. And comment with video","speaker":null,"is_sponsor":0},{"start_s":278.72,"end_s":283.36,"text":"suggestions down below and don't forget to subscribe and follow, follow. Like ring the bell,","speaker":null,"is_sponsor":0},{"start_s":283.36,"end_s":288.72,"text":"you mean? Yeah, ring the bell, click the little bell. Yes, thank you, bye.","speaker":null,"is_sponsor":0}],"full_text":"Windows 95 was a big deal. It gave us the start button, featured USB support, and made people who weren't alive in the 1960s aware of who the Rolling Stones are. But despite all that, let's be real. Windows 95 and its successors, Windows 98 and especially ME, collectively referred to as Windows 9X, were bugger than a roach motel. It might be tempting to lay the blame on the less powerful hardware of the time, especially considering that many of Windows Vista's problems were a result of PC makers installing it on below spec computers, but it turns out the main reason Windows 9X was so maddening was that the operating system was built like a house of cards. You see, all three of these OSs were based on MS-DOS, which was released all the way back in 1981. And even though Windows looked very different, it shared lots of the code with DOS under the hood. And as a metaphor, well, putting an infotainment system and some heated seats in an 81 Bonneville isn't exactly going to make it run the same as a modern car. The reason that Microsoft built Windows 95 this way was because they wanted users to be able to run familiar DOS programs and wanted the OS to run well on older hardware. And to be fair to Microsoft, Windows 95 largely achieved these goals. But doing so came at an unavoidable cost. The stability problems ultimately boiled down to the fact that DOS was not meant to be a true multitasking operating system. Although a big part of Microsoft's marketing was how well the new Windows taskbar would make it super easy to switch between programs, that underlying DOS code was built more for something called cooperative multitasking. What this meant was that DOS relied on programs voluntarily relinquishing CPU time if the user wanted to switch to a different program. This wasn't a big problem in DOS because users were nearly always just trying to use one program at a time. Not only were there hardware and software limitations that kneecapped how many programs you could conceivably run and an interface that steered you toward exiting a program rather than minimizing it, but early users largely thought in a single task paradigm. Windows 9x, though, was supposed to allow you to have lots of things open simultaneously. To enable this, Windows 95 introduced preemptive multitasking, which is the same scheme we use today. In preemptive multitasking, the OS has much more control over programs because it steps in and divvies up CPU time on its own rather than waiting for the programs to do it. But the problem back in the Windows 9x days was that this was really only implemented for newer 32-bit programs. And there were plenty of old 16-bit software people were still using that didn't exactly play by the rules. A huge problem that you would run into was that older code would often access another program's memory space, or even the memory space of Windows itself. 16-bit programs and especially DOS mode device drivers were especially notorious for doing this, as during the DOS days, programs and drivers were allowed to access far more of the system's hardware directly than they are today. So when you tried to get those pieces of software to work in an environment where there were lots of other programs running at the same time, it often wasn't a pretty picture. There were other problems as well. Even newer 32-bit device drivers actually shared memory space with the Windows kernel itself, meaning that the entire operating system was vulnerable to poorly written software in more ways than one. Windows 9x also did itself no favors by doing a poor job of freeing up memory that was no longer being used by a program, a problem called a memory leak, which reduced the amount of memory available to other programs resulting in slowdowns and eventually a crash. Of course, the Windows versions of today aren't perfect, but they're a heck of a lot more stable than the bad old days we've been talking about in this episode. So what changed? Well, even before Windows 95 came out, Microsoft already had an alternate version of Windows called Windows NT. This version didn't have the old DOS code that made 9x so buggy, was built from the ground up for seamless multitasking support, and crucially had the ability to isolate each program's memory space much more effectively. But as an operating system intended for more professional and workstation use, NT had higher system requirements and wouldn't support a lot of the older programs and hardware most users still needed. However, in 2001, Microsoft released Windows XP, the first version of Windows based on the NT kernel that was aimed at home users. They were able to do this because the Windows 9x family, flawed as it may have been, steered developers toward coding for 32-bit operating systems compatible with newer hardware. After a few years of this, Microsoft finally felt confident enough to ditch those weird DOS Windows hybrids and the NT kernel continues to power Windows to this day. But if you really miss Windows 95, there's nothing stopping you from changing your desktop background to cyan, hooking up a CD ROM drive, and playing some space cadet pinball in your browser. You can even kick your tower once in a while if you missed the instability. Yep, gotta love that. Sometimes I kicked mine to get it to start working again. Usually I just had to unplug it though. So thanks for watching. Like the video if you liked it, dislike it if you didn't, check out our other videos like the one I did on Redbox, that was fun. And comment with video suggestions down below and don't forget to subscribe and follow, follow. Like ring the bell, you mean? Yeah, ring the bell, click the little bell. Yes, thank you, bye."}