Memory Management in a Multimedia World
As a teenager in the late 80's and early 90's I grew up in the middle of the PC revolution. After begging my dad for a computer to help us kids with "homework", what I really wanted to do was to play PC games. He eventually bought the family our first IBM compatible PC, complete with an Intel 386 chip. 4MB of memory and most likely some incredibly small hard drive.
I had no idea how to use it and the internet wasn't even close to being mainstream at the time so most of what we learned was from tech magazines and books. The PC came with DOS 5.0 and Windows 3.1, although it took me months to find out that you had to type in "win" to start Windows, so I learned basic DOS commands first.
I vividly remember struggling to get various DOS games to install and configured. The original problem was the 640 KB conventional memory barrier imposed by the original IBM PC standard. Software developers could overcome this limitation by utilizing either EMS (Expanded Memory Specification) or XMS (Extended Memory Specification but often times not both. For example, many 1990 era LucasArts titles only worked with EMS while other game developers used XMS.
You could configure your PC to use both XMS and EMS but it really wasn't optimized for both solutions as the demand for more of the 640 MB conventional memory increased with more resource hogging games and the addition of sound cards and CD-ROMs.By the time we upgraded to a 486 PC, we also added a SoundBlaster 16, 2x CD-ROM drive and even a MIDI daughterboard so that we could enjoy the latest multimedia titles in all their glory. I tried to configure different autoexec.bat and config.sys files in order to play all my games, but I never understood all the complexities around this and what all the different options meant.
I eventually found and purchased a wonderful book by Joel Powell, Memory Management in a Multimedia World, Waite Group Press, 1994 that answered all my questions. The book went through every option and settings and provided real world examples of how to configure your computer to work with all the different combinations of hardware and software.
If I ever run into Mr Powell, I need to thank him for saving me from many frustrating nights of work and that his book still remains in my personal library.
