Programs that can operate in the background mode under Microsoft Windows are termed "well-behaved" or "Microsoft Windows compatible." There are a number of conditions that programs must fulfill to be Microsoft Windows compatible. (See the Microsoft Windows documentation for a complete list of conditions.)
The most important and difficult condition for Microsoft Windows compatibility is that programs not write information directly to the computer's video regeneration buffer. This means either that (1) programs must access the screen only through DOS or BIOS calls, which put one character to the screen at a time and are, therefore, very slow, or (2) programs must explicitly deal with Microsoft Window's video management functions.
To permit programs to operate in the background while another program has control of the screen, Microsoft Windows provides the capability, via a "Get Video Buffer" function, to assign each program an individual "video buffer" located in user memory. The individual video buffers are distinct from the computer's video regeneration buffer that controls the information displayed on the screen; thus, output written to the individual video buffers will not appear on the screen. Microsoft Windows provides an Update Video Display function to move information from the individual video buffers to the regeneration buffer when the program has control of or shares the video display.