Продвижение сайта стоимость самая доступная.
Лучшие книги интернета
Материалы предоставлены только для просмотра. Любое использование материалов в коммерческих целях запрещено

27Робер Журден



    памяти. Диагностика AT настолько хороша, что Вы можете целиком
    положиться на системную информацию о конфигурации.
    Память постоянно занимается частями операционной системы,
    драйверами устройств, резидентными программами обработки прерыва-
    ний и управляющими блоками MS DOS. При проверке банков памяти Вы
    не должны вносить необратимых изменений в содержимое памяти.
    Сначала надо сохранить значение, хранящееся в тестируемой ячейке,
    затем проверить ее и восстановить первоначальное значение.
    Имеется еще одна проблема. Если Ваша процедура хотя бы времен-
    но модифицирует свой код, то это может привести к краху. Поэтому
    для проверки надо выбирать такую ячейку из блока 64K, которая не
    будет занята текстом Вашей процедуры. Для этого поместите проце-
    дуру тестирования впереди программы, а для тестирования выберите
    ячейку со смещением равным смещению для кодового сегмента. Напри-
    мер, если регистр кодового сегмента содержит 13E2, то сегмент
    начинается со смещения 13E2 во втором 64K-байтном блоке памяти.
    Поскольку Ваша подпрограмма проверки не может находиться по этому
    адресу, то Вы можете безопасно проверять значение 3E2 в каждом
    блоке. Запрет прерываний [1.2.2] позволяет не беспокоиться о
    модификации кода из-за аппаратных прерываний, которые могут
    происходить во время проверки.
    Определение количества памяти реально доступной операционной
    системе также требует некоторого фокуса. Когда программа первый
    раз получает управление, то DOS отводит ей всю доступную память,
    включая верхнюю область памяти, содержащую нерезидентную часть
    DOS (которая автоматически перезагружается, если она была модифи-
    цирована). Для запуска другой программы из текущей или для того,

Предыдущая страница    27    Следующая страница




1729848879