Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Вопрос 15. ОС MS-DOS. Порядок загрузки.Содержание книги
Поиск на нашем сайте При включении питания компьютера управление передается базовой системе ввода/вывода, BIOS. Она выполняет проверку аппаратных узлов компьютера, формирует начальную часть таблицы векторов прерываний, инициализирует устройства и начинает процесс загрузки операционной системы. Загрузка начинается с того, что BIOS делает попытку прочитать самый первый сектор дискеты, вставленной в дисковод А: (на загрузочной дискете этот сектор содержит загрузчик операционной системы). Если в дисковод вставлена системная дискета, с нее считывается загрузчик и ему передается управление. Если дискета не системная, т.е. не содержит загрузочной записи, на экран выдается сообщение с просьбой заменить дискету. Если же дискеты в дисководе А: вообще нет, то BIOS читает основную загрузочную запись диска С: (Master Boot Record). Обычно это самый первый сектор на диске. Управление передается загрузчику, который находится в этом секторе. Загрузчик анализирует содержимое таблицы разделов (она также находится в этом секторе), выбирает активный раздел и читает загрузочную запись этого раздела. Загрузочная запись активного раздела (Boot Record) аналогична загрузочной записи, находящейся в первом секторе системной дискеты. Загрузочная запись активного раздела считывает с диска файлы IO.SYS и MSDOS.SYS (именно в этом порядке). Затем считываются и загружаются резидентные драйверы. Начинается формирование связанного списка драйверов устройств. Анализируется содержимое файла CONFIG.SYS, загружаются описанные в этом файле драйверы. Сначала загружаются драйверы, описанные параметром DEVICE, затем (только в MS-DOS версии 4.х и 5.0) резидентные программы, указанные операторами INSTALL. После этого считывается командный процессор и ему передается управление. Командный процессор состоит из трех частей - резидентной, инициализирующей и транзитной. Первой загружается резидентная часть. Она обрабатывает прерывания INT 22H, INT 23H, INT 24H, управляет загрузкой транзитной части. Эта часть командного процессора обрабатывает ошибки MS-DOS и выдает запрос пользователю о действиях при обнаружении ошибок. Инициализирующая часть используется только в процессе загрузки операционной системы. Она определяет начальный адрес, по которому будет загружаться пользовательская программа и инициализирует выполнение файла AUTOEXEC.BAT. Транзитная часть командного процессора располагается в старших адресах памяти. В этой части находятся обработчики внутренних команд MS-DOS и интерпретатор командных файлов с расширением имени.BAT. Транзитная часть выдает системное приглашение (например, А:\>), ожидает ввода команды оператора с клавиатуры или из пакетного файла и организует их выполнение. После загрузки командного процессора и выполнения начальных процедур, перечисленных в файле AUTOEXEC.BAT, подготовка системы к работе завершается. Вопрос 16. Загрузочный сектор жесткого диска. Структура элементов раздела в таблице разделов диска. 1 физический сектор содержит: Таблицу описания разделов и программу начальной загрузки, предназначенная для проверки таблиц разделов и передачу управления одному из них; Таблица описания разделов содержит 4 элемента, каждый равен 16 байтам; Разделы расположены в обратном порядке со следующим смещением: 1ВЕ; 1СЕ; 1DЕ; 1ЕЕ Со смещения 1FF расположен код АА55, который является подписью таблицы разделов.Каждый 16-байтовый код содержит следующую информацию: Смещение 01 бт – индикатор начальной загрузки; Смещение 1 бт – признак …….; Смещение 21 бт – начальный сектор; Смещение 31 бт – начальный цилиндр; Смещение 41 бт – системный индикатор; Смещение 51 бт – признак конца; Смещение 61 бт – конечный сектор; Смещение 71 бт – конечный цилиндр; Смещение 84 бт – начальный сектор …..; Смещение 04С бт –количество секторов на диске. Т.о. можно разбить на логические диски. Смещение 3 8 байт – имя и версия системы. Смещение 0В 2 байта – число байт (512) в секторе. Смещение 0D 1 байт – число секторов на устройстве. Смещение 0Е 2 байта – число резервных секторов. Смещение 13 2 байта – общее число секторов на логическом томе. Смещение 15 1 байт – дескриптор носителя данных. Смещение 16 2 байта – число секторов FAT. Смещение 1А 2 байта – число головок. Смещение 1С 2 байта – число невидимых секторов. Вопрос 17. Структура загрузочного сектора диска. Сектор начальной загрузки: идентификатор разработчика; программа-загрузчик; блок параметров; Смещение; Смещение 3 8 байт – имя и версия системы; Смещение 0В 2 байта – число байт (512) в секторе; Смещение 0D 1 байт – число секторов на устройстве; Смещение 0Е 2 байта – число резервных секторов; Смещение 13 2 байта – общее число секторов на логическом томе; Смещение 15 1 байт – дескриптор носителя данных; Смещение 16 2 байта – число секторов FAT; Смещение 1А 2 байта – число головок; Смещение 1С 2 байта – число невидимых секторов. Вопрос 18. ОС MS-DOS. Форматы исполняемых файлов. Оператор может запустить два типа программ (если не считать командных файлов, которые, вообще говоря, не являются программами, состоящими из машинных кодов) - программы, имеющие расширение имени.COM и.EXE. Эти файлы имеют различный формат и загружаются по-разному, однако, когда загрузка завершена, в памяти компьютера эти два типа программ выглядят совершенно одинаково. COM-файл - это двоичный образ Вашей программы, состоящий из кода и данных. То есть это файл, содержащий программу в "чистом" виде. Такая программа (как и EXE-программа) может загружаться в любое место памяти. DOS выполняет ее привязку к физическим адресам при загрузке с помощью установки сегментных регистров. Существенным ограничением COM-программы является то, что она не может занимать больше одного сегмента (соответственно, файл.COM не может быть по длине больше 64К). Программа в формате EXE может иметь любой размер. В самом начале файла программы содержится заголовок (у COM-файла заголовка нет). Этот заголовок используется операционной системой в процессе загрузки программы в память для правильной установки сегментных регистров. Заголовок EXE-файла нужен только при загрузке; когда программа загружена и готова к работе, самого заголовка уже нет в памяти. Заголовок EXE-файла состоит из форматированной зоны и таблицы расположения сегментов (Relocation Table). Вопрос 19. Структура PSP. В области памяти после резидентной части, выполняющей загрузку программ, строится префикс Программного Сегмента (см. таблицу ниже). PSP представляет собой 100h – байтовую область памяти, вслед за которой загружается программа. В эту область заносятся системные данные, которые бывает полезно считывать; в частности, по адресу 80h в PSP заносится командная строка, сопутствующая программе. Структура PSP
В PSP программа со смещением 2F находится 4-байтовая область, в которую DOS помещает указатель стека при обращении к системным функциям, так как при выполнении ряда системных выховов используется внутренний стек DOS. При пошаговом выполнении обработку int 21h первым выполняет отладчик, чей указатель будет сохранен в активном PSP. Вопрос 20. Прерывания. Прерывание – это действие, производимое компьютером для выполнения системных и сервисных функций во время работы основного процесса. 3 этапа: Приостановление выполнения основного процесса; Обработка прерывания; Возврат управления основному процессу; 2 вида прерываний: Аппаратное; Программное (функцию пишем сами, поддерживает система). Программные прерывания удобно использовать для организации доступа к отдельным, общим для всех программ модулям. Например, программные модули операционной системы доступны прикладным программам именно через прерывания, и нет необходимости при вызове этих модулей знать их текущий адрес в памяти. Прикладные программы могут сами устанавливать свои обработчики прерываний для их последующего использования другими программами. Для этого встраиваемые обработчики прерываний должны быть резидентными в памяти. Мы научимся создавать свои программы обработки прерываний и будем говорить об этом при обсуждении резидентных программ. Аппаратные прерывания вызываются физическими устройствами и приходят асинхронно. Эти прерывания информируют систему о событиях, связанных с работой устройств, например о том, что наконец-то завершилась печать символа на принтере и неплохо было бы выдать следующий символ, или о том, что требуемый сектор диска уже прочитан, его содержимое доступно программе. Использование прерываний при работе с медленными внешними устройствами позволяют совместить ввод/вывод с обработкой данных в центральном процессоре и в результате повышает общую производительность системы. Некоторые прерывания (первые пять в порядке номеров) зарезервированы для использования самим центральным процессором на случай каких-либо особых событий вроде попытки деления на ноль, переполнения и т.п. Иногда желательно сделать систему нечувствительной ко всем или отдельным прерываниям. Для этого используют так называемое маскирование прерываний, о котором мы еще будем подробно говорить. Но некоторые прерывания замаскировать нельзя, это немаскируемые прерывания. Заметим еще, что обработчики прерываний могут сами вызывать программные прерывания, например, для получения доступа к сервису BIOS или DOS (сервис BIOS также доступен через механизм программных прерываний). Составление собственных программ обработки прерываний и замена стандартных обработчиков DOS и BIOS является ответственной и сложной работой. Необходимо учитывать все тонкости работы аппаратуры и взаимодействия программного и аппаратного обеспечения. При отладке возможно разрушение операционной системы с непредсказуемыми последствиями, поэтому надо очень внимательно следить за тем, что делает Ваша программа. Обработка прерывания может происходить в соответствии с тремя основными схемами. Сначала вызывается системный обработчик, затем добавленный. Данный способ используется для дополнения системной обработкой какой- либо функции.
|
||||||||||||||||||||||||||||||||
|
Последнее изменение этой страницы: 2017-02-05; просмотров: 489; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.128 (0.01 с.) |