Terminate And Stay Resident Software
Terminate and Stay Resident (TSR) software remains in computer memory even after it stops running. This was a common type of computer software in the days of Microsoft DOS operating systems. Given the advent of Windows these programs have virtually ceased to exist. But learning about them improves our understanding of how operating systems worked. They also help improved the user interface. And last but not least, they made millions of dollars for successful developers.
In the days of DOS the operating system normally ran a single program at a time. This could be quite frustrating; users would have to wait for a favorite program to start working, even if the computer system wasn’t really doing anything. Terminate and Stay Resident software solved this problem, albeit not always in the best manner. Users were satisfied unless the system sputtered. Let’s see how this all worked.
Borland Sidekick, the king of TSR programs.
When an application program running under DOS wanted to stop, it would so inform DOS’s control program COMMAND.COM. This program freed up the application program’s memory and other system resources. Accessing these resources once again meant reloading the program from the disk. Users were unhappy waiting for the program to reload. After all, they bought a computer to do things fast.
Clever programmers took advantage of a somewhat obscure DOS feature so that a program could remain in memory even after it terminated. The good news was that users would no longer have to wait for the program to reload. The bad news… These tricks lead to several problems.
Once upon a time many programmers had to learn the DOS memory map.
For starters, most DOS viruses would make use of such functionality to wreak their havoc. Another problem was interference between the operating system and the TSR. For example, to reactivate Sidekick, probably the most famous and most widely sold one of them all, the user pressed the two Shift keys simultaneously. Sidekick monitored the keyboard constantly, trying to see if the user wanted to reactivate it. But keyboard monitoring is supposed to be a DOS function. So sooner or later DOS and Sidekick would bump heads. As TSRs became more and more popular, more and more programs bumped heads with each other and with DOS. Furthermore, each of these programs required its own memory. You may remember that computer memory was sorely lacking on the old DOS computers, even with the kludges. At some point it no longer makes sense for homeowners to add additions to their home’s additions. It eventually makes more sense to demolish the out of date structure and build a new one from scratch. Let me finish with a real-life story.
I remember like yesterday the last time I used Sidekick, my favorite and almost only Terminate and Stay Resident program. I called my technician when my computer misbehaved. His first question, “What TSRs are you using?” I answered, “Only Sidekick.” His response, “There’s your problem, get rid of it.” I did and my computer started working again. Then, like millions of others, I went to Windows. Another operating system that meant other problems. But for me and for so many others, Terminate and Stay Resident programs were forever terminated.