logo search
Лекции по операционным системам

Проблема реентерабельности ms dos

На РП накладываются многочисленные ограничения, затрудняющие работу программиста. Например, РП не разрешается использовать прерывания MS DOS в произвольный момент времени. Это связано с тем, что с самого начала MS DOS проектировалась как однозадачная ОС, поэтому функции прерываний MS DOS не обладают свойствами реентерабельности (повторной входимости). Рассмотрим, например, следующую ситуацию. Пусть обычная программа вызвала какую-либо функцию прерывания MS DOS. Если во время выполнения программы, реализующей эту функцию, произойдет событие, например срабатывание таймера, в результате чего будет вызвана РП и последняя вызовет ту же самую функцию MS DOS, то произойдт недопустимое искажение вычислительного процесса, так как функция MS DOS не может быть вызвана повторно прежде, чем закончится работа этой функции по обслуживанию предыдущего вызова.

Аналогичные затруднения могут иметь место при повторном вызове функций BIOS, так как далеко не все они реентерабельны. Те же затруднения могут возникнуть и при использовании программ, написанных на языке высокого уровня (ЯВУ), так как программы библиотек этого ЯВУ могут содержать вызовы функций MS DOS и BIOS.

Лекция N 12

Режимы работы ЭВМ IBM PC с центральным процессором (ЦП) 80х86 (x > 2)

ЭВМ IВМ РС с ЦП 8086 могла работать только в так называемом реальном режиме. Начиная с ЦП 80286 появилась возможность испозования защищенного режима работы, однако вскоре появился более современный ЦП 80386, основные особенности архитектуры которого нашли свое отображение и в следующих моделях ряда этих ЦП: 80486, 80586 и т.д. Поэтому режимы функционирования ряда этих ЦП будем рассматривать для ЦП 80386 и выше. Каждый из этих ЦП может функционировать в одном из трех режимов: реальном, защищенном и виртуальном; далее будут кратко рассмотрены основные особенности функционирования и использования этих режимов.