- •Глава 1
- •Глава 2
- •В.Г.Олифер, н.А.Олифер. Сетевые операционные системы. Учебное пособие.-сПб.:бхв-Петербург, 2006.-536с.
- •В.А.Шеховцов. Операційні системи. Підручник .-к.:Виканавча група внv. 2005. 576с.
- •Столлингс в.Операционные системы. М.: Вильямс, 2001. -672с.
- •Раздел 1 введение
- •1.1. Понятие операционной системы, ее назначение и функции
- •1.1.1. Понятие операционной системы
- •1.1.2. Назначение операционной системы
- •1.2. История развития операционных систем
- •1.3. Классификация современных операционных систем
- •1.4. Функциональные компоненты операционных систем
- •1.4.1. Управление процессами и потоками
- •1.4.2. Управление памятью
- •1.4.3. Управление вводом-выводом
- •1.4.4. Управление файлами и файловые системы
- •1.4.5. Сетевая поддержка
- •1.4.6. Безопасность данных
- •1.4.7. Интерфейс пользователя
- •Раздел 2
- •2.1. Базовые понятия архитектуры операционных систем
- •2.2. Реализация архитектуры операционных систем
- •2.2.1. Монолитные системы
- •2.2.2. Многоуровневые системы
- •2.2.3. Системы с микроядром
- •2.2.4. Концепция виртуальных машин
- •2.3. Операционная система и ее окружение
- •2.3.1. Взаимодействие ос и аппаратного обеспечения
- •2.3.2. Взаимодействие ос и выполняемого программой
- •2.4. Особенности архитектур
1.2. История развития операционных систем
Первые операционные системы появились в 50-е года и были системами пакетной обработки. Такие системы обеспечивали последовательное выполнение программ в пакетном режиме (без возможности взаимодействия с пользователем). В определенный момент времени в памяти могла находиться только одна программа (системы были однозадачними), все программы выполнялись на процессоре с начала до конца. В такой ситуации ОС рассматривали просто как набор стандартных служб, необходимых прикладным программам и пользователям.
Следующим этапом стала поддержка многозадачности. В многозадачних системах в память компьютера стали загружать несколько программ, которые выполнялись на процессоре попеременно. При этом развивались два направления: многозадачная пакетная обработка и распределение времени. В многозадачной пакетной обработке загруженные программы, как и раньше, выполнялись в пакетном режиме. В режиме распределения времени с системой могли работать одновременно несколько пользователей, каждому из которых предоставлялся диалоговый терминал (устройство, которое состоит из клавиатуры и дисплея).
Поддержка многозадачности нуждалась в реализации в ОС средств координации задач. Можно выделить три составные части такой координации.
-
Защита критических данных задачи от случайного или намеренного доступа других задач.
-
Обеспечение обмена данными между задачами.
-
Предоставление задачам справедливой частицы ресурсов (памяти, процессора, дискового просторную и т.п.).
Еще одним этапом развития ОС стало появление персональных компьютеров. Сначала эти системы, как и ОС первого этапа, были однозадачними и предоставляли базовый набор стандартных служб (на этом этапе важным было внедрение графического интерфейса пользователя). Дальнейшее развитие аппаратного обеспечения дало возможность использовать в таких системах средства, разработанные для больших систем, прежде всего многозадачность и, как следствие, координацию задач.
Есть правило развития ОС для конкретной апаратной платформы: для большинства новых аппаратных платформ ОС сначала создают как базовый набор стандартных служб, координацию задач реализуют в ней позднее.
Много современных ОС сначала разрабатывались для персональных компьютеров или были перенесены на них из других аппаратных платформ. Основное внимание в этой книге будет уделено двум группам операционных систем: UNIX -совместимых системах, прежде всего Linux, и серии Windows NT/2000/XP фирмы Microsoftі (далее будем называть эти системы линией Windows ХР).
1.3. Классификация современных операционных систем
Рассмотрим классификацию современных операционных систем в зависимости от области их применения.
Прежде всего отметим ОС больших ЭВМ (мейнфреймов). Основной характеристикой аппаратного обеспечения, для которого их разрабатывают, это производительность ввода-вывода: большие ЭВМ оснащивают значительным количеством периферийных устройств (дисков, терминалов, принтеров и т.п.). Такие компьютерные системы используют для надежной обработки значительных объемов данных, при этом ОС должны эффективно поддерживать эту обработку (в пакетном режиме или в режиме распределения времени). Примером ОС такого класса может быть OS/390 фирмы ІВМ.
К следующей категории можно отнести серверные ОС. Главная характеристика таких ОС - способность обслуживать большое количество запросов пользователей к совместно используемым ресурсам. Важную роль для них сыграет сетевая поддержка. Есть специализированные серверные ОС, из которых исключенные элементы, не связанные с выполнением их основных функций (например, поддержка применений пользователя). Ныне для реализации серверов чаще применяют универсальные ОС (UNIX или системы линии Windows ХР).
Самая большая категория — персональные ОС. Некоторые ОС этой категории разрабатывали с расчетом на непрофессионального пользователя (линия Windows 95/98/Ме фирмы Microsoft, которую дальше будем называть Consumer Windows), другие являются упрощенными версиями универсальных ОС. Особое внимание в персональных ОС отводится поддержке графического интерфейса пользователя и мультимедиа-технологий.
Выделяют также ОС реального времени. В такой системе каждая операция должна быть гарантировано выполненная в заданном временном диапазоне. ОС реального времени могут руководить полетом космического корабля, технологическим процессом или демонстрацией видеороликов. Существуют специализированные ОС реального времени, такие как QNX и VxWorks.
Еще одной категорией есть встроенные ОС. К ним принадлежат управляющие программы для разнообразных микропроцессорных систем, которые используют в военной технике, системах бытовой электроники, смарт-картах и других устройствах. К таким системам ставят особые требования: размещение в малом объеме памяти, поддержка специализированных средств ввода-вывода, возможность прошивания в постоянном запоминающем устройстве (ПЗУ). Часто встроенные ОС разрабатываются под конкретное устройство; к универсальным системам принадлежат Embedded Linux и Windows CE.
