Компьютерный мастер в Израиле


Резидентные программы


Этот пункт можно при первом чтении опустить.
Как правило, после окончания работы программы вся занимаемая ею оперативная память освобождается и делается доступной для следующих запускаемых пользователем программ. Однако в операционной системе MS DOS для программ имеется возможность не освобождать (полностью или частично) по окончании своей работы занимаемую ими оперативную память. Такие программы называются резидентными, или постоянно находящимися в памяти.
При запуске резидентной программы она выполняет какие-то действия, после чего оканчивает свою работу. На экране появляется приглашение MS DOS,4 и пользователь может запускать другие программы. Однако часть оперативной памяти компьютера остается занятой резидентной программой.
Иногда пользователь может повторно выдавать команду запуска резидентной программы для установки каких-то режимов ее работы. При этом программа, как правило, устанавливает, что она уже является резидентной и не отбирает больше оперативной памяти у MS DOS.
Наличие резидентных программ имеет смысл потому, что при первом запуске они указывают операционной системе MS DOS, что она для выполнения некоторых своих услуг должна вызывать некоторые заложенные в этих программах подпрограммы. Данные подпрограммы и располагаются в той части оперативной памяти, которая не освобождается при первом запуске резидентной программы.
Например, резидентная программа может установить собственную подпрограмму для обработки ситуаций нажатия пользователем клавиш на клавиатуре. Такая подпрограмма может проверять, не нажата ли пользователем определенная комбинация клавиш, и если она нажата, то вызывать некоторую программу, а если нет — передавать управление стандартной подпрограмме MS DOS для обработки нажатия клавиш. Так работают многие известные резидентные программы, например SideKick, Norton Guides и др. Несколько более сложно обрабатывают нажатие клавиш драйверы клавиатуры, предназначенные для ввода русских букв с клавиатуры, а также программы, расширяющие возможности клавиатуры, например SuperKey, SrnartKey и др.
Резидентные программы могут использоваться и для некоторых других функций, например для выполнения каких-то особых действий по управлению устройствами компьютера, разграничению доступа к файлам на компьютере, защите от компьютерного вируса и т.д. Резидентные программы должны занимать небольшой объем оперативной памяти и весьма нетривиальным образом взаимодействовать с операционной системой MS DOS, поэтому они пишутся достаточно квалифицированными программистами, как правило, на языках Ассемблер и Си.