Bootstrap

Основная задача любой OS

Основная задача любой OS

Понятно, что ни один зравомыслящий программист не захочет иметь дела с диском на аппаратном уровне.

Вместо него оборудованием занимается та часть программного обеспечения, которая называется драйвером диска и предоставляет, не вдаваясь в детали, интерфейс для чтения и записи дисковых блоков.

Операционные системы содержат множество драйверов для управления устройствами ввода-вывода.

Но для большинства приложений этот уровень является слишком низким . Поэтому все операционные системы предоставляют еще один уровень абстракции для использования дисков — файлы.

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

Эта абстракция является ключом к управлению сложностью.

Хорошая абстракция превращает практически неподъемную задачу в две, решить которые вполне по силам.

Первая из этих задач состоит в определении и реализации абстракций, а вторая — в использовании этих абстракций для решения текущей проблемы. Одна из абстракций, понятная практически любому пользователю компьютера, — это уже упомянутый
ранее файл.

...

Задача операционной системы заключается в создании хорошей абстракции, а затем в реализации
абстрактных объектов, создаваемых в рамках этой абстракции, и управлении ими.

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

Учитывая важность этого положения, стоит изложить его несколько другими словами. При всем уважении к разработчикам Macintosh, следует заметить, что аппаратное обеспечение не отличается особым изяществом. Реально существующие процессоры,
блоки памяти, диски и другие компоненты представляют собой слишком сложные устройства, предоставляющие трудные, неудобные, не похожие друг на друга и не обла-
дающие постоянством интерфейсы для тех людей, которым приходится создавать для них программное обеспечение. Иногда такая ситуация объясняется необходимостью поддержки обратной совместимости, а иногда она связана со стремлением к экономии
средств, но порой разработчики аппаратного обеспечения просто не понимают (или не хотят понимать), как много проблем они создают для разработчиков программного обеспечения. Одна из главных задач операционной системы — скрыть аппаратное обеспечение и существующие программы (и их разработчиков) под создаваемыми взамен них и приспособленными для нормальной работы красивыми, элегантными, неизменными абстракциями. Операционные системы превращают уродство в красоту (рис. 1.2).

схематичное изображение аппаратного  и программного уровня

MODERN
OPERATING SYSTEMS
4th Edition
Andrew S. Tanenbaum,
Herbert Bos
 

Копирование материалов разрешается только с указанием автора Roman Sakhno и индексируемой прямой ссылкой на сайт (http://itdid.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/sahroman.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/sahroman.

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как настроить свой компьютер

  2. Текстовая ссылка:

    Она выглядит вот так: Как настроить свой компьютер

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.

крипто-донат, на развитие сайта itdid.ru:

В новом окне с терминалом itdid.ru, введите любую сумму: