устройства, которые перед запуском защищаемой программы подсоединяются к стандартному каналу последовательного или параллельного ввода—вывода (например, для одной из используемых мною программ этот ключ вставляется как переходник между разъемом параллельного порта и кабелем принтера). Электронные ключи реализуются на основе заказных микросхем и осуществляют нужное интерфейсное взаимодействие с защищаемой программой.

Объем доступной оперативной памяти на IBM— совместимых ПК может составлять от 64 до 640 Кбайт (речь идет о стандартной памяти, см. п.5.1). При инициации ДОС в двухбайтное слово по адресу $0000:$0413 заносится количество килобайт доступной ДОС оперативной памяти. Следует заметить, что к моменту загрузки ДОС в памяти могут устанавливаться резидентные программы (чаще всего это драйверы устройств), так что доступная остальным программам ДОС память в общем случае будет меньше физической памяти ПК. Чтобы определить объем физически установленной в ПК оперативной памяти, следует предварительно определить тип ПК. Дело в том, что для компьютеров класса IBM AT и PS/2 используется специальная энергонезависимая КМОП—память1 , хранящая некоторую весьма полезную информацию о составе аппаратных средств ПК и, в том числе, — о доступной памяти, в то время как на компьютерах IBM PC и IBM XT такой памяти нет.

Структура КМОП—памяти может быть описана следующим образом:

type

CMOS_Type = record case Byte of

1: (

Sec . Byte {Секунды системного времени}

ASec Byte {Секунды будильника}

Min Byte {Минуты системного времени}

AMin Byte {Минуты будильника}

Hour Byte {Часы системного времени}

AHour Byte {Часы будильника}

DOW Byte {День недели текущей даты}

Day ' Byte {День текущей даты}

Month Byte {Месяц}

Year Byte {Год}

StatA Byte {Состояние порта А}

StatB Byte {Состояние порта В}

StatC Byte {Состояние порта С}

StatD Byte {Состояние порта D)

POST Byte {Статус завершения программы POST

(проверка работоспособности ПК)} Shut Byte {Байт состояния программы перезагрузки ДОС}

1 КМОП — сокращение от Комплементарная пара Металл—Окисел—Полупроводник (англ. CMOS) — название технологии изготовления микросхем с пониженным энергопотреблением. Энергонезависимость КМОП—памяти достигается ее питанием от автономной батарейки или аккумулятора.