Системное программное обеспечение. Особенности программирования 32-разрядных процессоров. Рощин А.В. - 41 стр.

UptoLike

Составители: 

41
Microsoft, например, хватает сил только на доскональную проверку
небольшого ядра Windows! Тем более на это не способен потребитель, у
которого нет всей документации. Даже в случае открытой системы типа
Linux, если документация есть и все исходные коды доступны
попробуйте доказать военным или банкирам, что в системе нет скрытых
ловушек и «черного хода»!
Создать собственную программу для переключения в защищенный
режим и работы в немнепростая задача. При работе с аппаратурой в
защищенном режиме программист должен четко понимать, какими
возможностями аппаратуры пользоваться опасно. Например, приводимые
в учебниках примеры программ для защищенного режима часто проявляют
несовместимость с определенными конфигурациями оборудования,
поскольку их авторы не имели достаточно широкой лабораторной базы для
тестирования. Дело в том, что периферийные устройства всегда имеют
какие-нибудь нестандартные особенности, добавляемые их изгото-
вителями в рекламных целях. При работе в реальном режиме DOS такие
особенности не применяются и потому никак не проявляются. Однако они
могут показать себя с самой неприятной стороны при переключении в
защищенный режим, когда программисту приходится перенастраивать
периферийные устройства на новую модель организации оперативной
памяти, перезаписывая при этом множество различных регистров
аппаратуры. Возможно две ситуации: либо в стандартных регистрах
некоторые разряды применяются нестандартным образом, но
программисту об этом ничего не известно, либо вообще имеются какие-
либо дополнительные регистры, не описанные в документации, но
влияющие на режим работы системы. Возникает абсурдная ситуация:
простой (реальный) режим работы задается процедурами BIOS фирмы-
изготовителя системной платы, которая обычно хорошо осведомлена об
особенностях применяемого на этой плате чипсета, а программы для
Microsoft, например, хватает сил только на доскональную проверку
небольшого ядра Windows! Тем более на это не способен потребитель, у
которого нет всей документации. Даже в случае открытой системы типа
Linux, если документация есть и все исходные коды доступны —
попробуйте доказать военным или банкирам, что в системе нет скрытых
ловушек и «черного хода»!
     Создать собственную программу для переключения в защищенный
режим и работы в нем — непростая задача. При работе с аппаратурой в
защищенном режиме программист должен четко понимать, какими
возможностями аппаратуры пользоваться опасно. Например, приводимые
в учебниках примеры программ для защищенного режима часто проявляют
несовместимость   с   определенными    конфигурациями      оборудования,
поскольку их авторы не имели достаточно широкой лабораторной базы для
тестирования. Дело в том, что периферийные устройства всегда имеют
какие-нибудь нестандартные особенности, добавляемые их изгото-
вителями в рекламных целях. При работе в реальном режиме DOS такие
особенности не применяются и потому никак не проявляются. Однако они
могут показать себя с самой неприятной стороны при переключении в
защищенный режим, когда программисту приходится перенастраивать
периферийные устройства на новую модель организации оперативной
памяти, перезаписывая при этом множество различных регистров
аппаратуры. Возможно две ситуации: либо в стандартных регистрах
некоторые   разряды    применяются         нестандартным   образом,   но
программисту об этом ничего не известно, либо вообще имеются какие-
либо дополнительные регистры, не описанные в документации, но
влияющие на режим работы системы. Возникает абсурдная ситуация:
простой (реальный) режим работы задается процедурами BIOS фирмы-
изготовителя системной платы, которая обычно хорошо осведомлена об
особенностях применяемого на этой плате чипсета, а программы для


                                      41