[comp.sys.ibm.pc] What is TSR anyway?

brand@janus.uucp (Graham Brand) (01/31/89)

Excuse my ignorance, but what does TSR stand for and what is it?

Cheers,
Graham "not a hacker" Brand
{brand@janus.berkeley.edu     ..!ucbvax!janus!brand}

berger@clio.las.uiuc.edu (02/01/89)

"Terminate and stay resident".  So-called TSR programs are loaded
into memory and stay there until you reboot.  These programs may
stay active at all times (like a keyboard buffer extender), or
may be called via "hot key" or another program.  The name is taken
from the operating system call that performs the operation of
terminating but keeping the program resident.

			Mike Berger
			Department of Statistics 
			University of Illinois 

			berger@clio.las.uiuc.edu
			{convex | pur-ee}!uiucuxc!clio!berger

bill@hpcvlx.HP.COM (Bill Frolik) (02/02/89)

TSR = Terminate and Stay Resident

This is a program that remains memory-resident when it terminates back
to DOS.  Normally, DOS reclaims the memory used by a terminating program.
Such applications generally take over an interrupt to perform, for example,
a "hot key" function or spool output to a printer.
_________________________________________
Bill Frolik		Hewlett-Packard
hplabs!hp-pcd!bill	Corvallis, Oregon

tcm@srhqla.UUCP (Tim Meighan) (02/03/89)

In article <27828@ucbvax.BERKELEY.EDU> brand@janus.UUCP (Graham Brand) writes:
>Excuse my ignorance, but what does TSR stand for and what is it?

Terminate and Stay Resident.  It means the program will install itself
in memory, mark that memory as protected (used) so that DOS will not
farm it out to a later program, and then terminate (return to the
DOS prompt.)  TSRs are pretty much a phenomenon found on IBM-PCs.

This is how such programs as SIDEKICK work; they hang out in your 
computer permanently, and in the case of the above, look at every
keystroke.  When a "hotkey" is pressed (a special key to invoke
a particular function) the resident program sees it, suspends the 
operation of whatever else your computer is doing, and launches its
own program (pops up a calculator or whatever).

The problem is that every time you install another TSR it may need to
be the most important TSR in memory; for example, it may want
first access to keypresses coming in.  Without any clearly defined
standards of behaviour for TSRs, they tend to conflict with each other
and with regular programs.  

The method for getting TSRs into memory in the first place comes from
an MS-DOS function that was never intended for this purpose.  The TSR 
function call in DOS was supposed to be used to patch errors in the
BIOS or make minor modifications to the operating system, not install
entire application programs permanently in memory.

And so it goes . . .

Tim Meighan
Network Operations
Silent Radio