Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Напиши свою операционную систему!


Информационный Канал Subscribe.Ru

.:: Write your own Operating System! ::.

Напиши свою ОС! № 1

Предисловие

Здравствуйте, уважаемые подписчики!

За прошедший период времени меня просто забросали письмами и сообщениями системы ICQ, что не может не радовать. Я, по возможности, отвечаю всем, но если кого-нибудь забыл - извините и напишите мне повторно. Также хочу исправить досадный глюк - часть схемы, которую я приводил в прошлом выпуске рассылки просто была обрублена. Вот как выглядит схема на самом деле:

+-----------+  +--------------+  +--------------+  +-----------+
| Пользова- |->| Операционная |->|   Драйвер    |->| Устройст- |
|   тель    |<-|   Система    |<-|  Устройства  |<-|    во     |
+-----------+  +--------------+  +--------------+  +-----------+

Как вы можете заметить, изменился дизайн рассылки. Сделано это с целью повышения ее читабельности. Кроме того, теперь текстовая версия рассылки будет готовиться лично мной, а не преобразовываться из html, как было раньше.

Тема сегодняшнего выпуска

Первоначально я планировал посвятить данный выпуск загрузке программ вообще, но потом передумал - было бы нелогично поступать так. Поэтому, я решил посвятить сегодняшний выпуск теме, крайне интересующей большинство начинающих осеписателей. А именно, как загружается сама ОС. На самом деле, этой теме посвящено достаточно много статей и даже ресурсов. Поэтому, моя цель - выбрать самое главное, "переварить" это и изложить в данной рассылке в простой и понятной форме. Как это у меня получилось - судить вам. Итак, давайте начнем.

С чего начинается родина? Или сага о начальной загрузке.

Итак, давайте представим себе компьютер в самом начале своей загрузки. Куча железа, не объединенная между ничем. Однако, как-то же надо загрузить ОС и предоставить пользователю интерфейс для работы с компьютером. Ситуация кажется безнадежной, если бы не одна программа - BIOS. Мы с вами достаточно взрослые люди, так что объяснять, что такое BIOS никому не надо. BIOS располагается в ПЗУ и ответственна за начальную загрузку компьютера, за самодиагностику системы, за обеспечение базовых функций ввода/вывода, а также за загрузку программы, управляющей первоначальной загрузкой самого главного для пользователя - ОС. Многие из вас, возможно, знакомы с такой функцией BIOS как изменение порядка загрузочных устройств.

    Если вам интересно, то вы можете выйти из вашей почтовой программы, перезагрузиться и при появлении стартового экрана с базовой информацией нажать Del либо другую клавишу, в зависимости от того какие у вас версия и производитель BIOS (информация о том, "что жать" находится на этом экране в левом нижнем углу). После этого зайдите в "Advanced BIOS feautures" (пользователям иной BIOS, чем у меня придется обратиться к документации). Там вы можете увидить (и, что немаловажно, изменить) список загрузочных устройств и порядок их проверки.

Так вот. BIOS проверяет все устройства, указанные в этом списке на наличие загрузочного сектора, в соответсвии с этим списком. Если среди устройств, указанных в данном списке нет загрузочных (либо загрузочный сектор какого-то из дисков поврежден), то на экран пишется ошибка и BIOS ждет нажатия клавиши Enter ("Please replace your system disk and press Enter")

Что такое загрузочный сектор и с чем его едят
    Загрузочный сектор - это область на диске, содержащая код, производящий дальнейшую загрузку ОС. Он размещается в самом начале загрузочного диска (нулевой цилиндр, нулевая головка, первый сектор). Обычно загрузочный сектор ограничен 512 байтами (а нам больше и не надо. поверьте, что для Ассемблера это более чем достаточно! А загрузочный сектор ни на чем кроме Ассемблера я бы вам писать не рекомендовал.) и содержит значение "AA55H" в последних двух байтах.

После этого загрузочный сектор загружается BIOS по адресу 0000:7C00H и ему передается управление.

Послесловие

Сегодня мы рассмотрели процесс первоначальной загрузки компьютера. Вернее, расмотрели мы наиболее часто встречающийся тип загрузки. Существуют еще несколько разновидностей, но им я планирую посвятить тдельную статью и потом ее опубликовать в данной рассылке. Так что ждите. Извините, что этот выпуск столь короткий - я бы не хотел, чтобы у вас в голове образовалась каша, поэтому в каждом выпуске рассматриваю только одну тему. Зато теперь я планирую выпускать рассылку чаще - около 2 раз в неделю.

Напомню, что вы всегда можете связаться со мной по e-mail либо по ICQ (233661333). Буду рад любым вопросам и комментариям. До следующего выпуска!

Олег Шимчик aka Wanderer


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное