Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Миргородская 7сессия / Операционные системы / %D0%9E%D0%A1_%D0%A1%D0%93%D0%A2%D0%A3%20v5

.pdf
Скачиваний:
86
Добавлен:
12.02.2015
Размер:
4.09 Mб
Скачать

Саратовский государственный технический университет

Учебное пособие

ОПЕРАЦИОННЫЕ СИСТЕМЫ

ОС общего назначения

САРАТОВ 2010

РЕФЕРАТ

Рассматривается назначение и функции операционных систем, их клас-

сификации, особенности ОС реального времени, управление процессами и потоками в операционных системах Windows XP и QNX Neutrino, диспетче-

ризации и синхронизации протоков, межпроцессное взаимодействие, много-

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

Учебное пособие разработано на основе курса лекций по дисциплине ОПД.Ф.05 «Операционные системы», читаемой на кафедре «Системотехни-

ка» Саратовского государственного технического университета.

Учебноепособиесодержит236с.,

Ил.70,табл.14,библиогр.:33назв.

Петров Дмитрий Юрьевич

2

СОДЕРЖАНИЕ

 

ВВЕДЕНИЕ ..........................................................................................................

5

1. ОСНОВНЫЕ ПОНЯТИЯ В ОПЕРАЦИОННЫХ СИСТЕМАХ.....................

9

1.1. Классификация и функции операционных систем...................................

9

1.2. Выполнение команд в вычислительной системе....................................

17

1.3. Прерывания...............................................................................................

23

1.4 Архитектуры операционных систем ........................................................

27

1.6. Управление оперативной памятью вычислительной системы...............

31

1.7. Общие сведения о процессах и потоках..................................................

40

2. ОПЕРАЦИОННАЯ СИСТЕМА WINDOWS ...............................................

46

2.1. Версии операционной системы Windows................................................

46

2.2. Архитектура операционной системы WINDOWS................................

50

2.3. Процессы и потоки в Windows................................................................

55

2.4. Взаимодействие процессов......................................................................

59

2.5. Управление потоками в Windows............................................................

63

2.6. Файловые системы Windows...................................................................

67

2.7. Установка и последовательность загрузки Windows..............................

78

2.8. Интерпретатор команд и пакетные файлы..............................................

83

2.9. Конфигурирование Windows ...................................................................

88

3. ОПЕРАЦИОННАЯ СИСТЕМА QNX NEUTRINO ......................................

97

3.1. Версии операционной системы QNX Neutrino .......................................

97

3.2. Архитектура операционной системы QNX Neutrino...........................

102

3.3. Процессы в QNX6...................................................................................

111

3.4. Потоки в QNX6.......................................................................................

125

3.5. Управление потоками и процессами в QNX6.......................................

140

3.6. Файловые системы QNX.......................................................................

155

3.7. Инсталляция и последовательность загрузки QNX..............................

160

3.8. Интерпретаторы команд и пакетные файлы в QNX.............................

163

3.9. Конфигурирование QNX........................................................................

167

3

4. ВИРТУАЛЬНЫЕ МАШИНЫ......................................................................

170

4.1. Общие сведения о виртуальных машинах ............................................

170

4.2. Работа с виртуальной машиной VmWare..............................................

174

5. ЗАЩИТА ОТ СБОЕВ И НЕСАНКЦИОНИРОВАННОГО ДОСТУПА....

180

5.1. Принципы построения систем безопасности........................................

180

5.2. Безопасность операционной системы WINDOWS ...............................

189

6. СЕТЕВЫЕ ВОЗМОЖНОСТИ ОПЕРАЦИОННЫХ СИСТЕМ..................

198

6.1. Аппратаное обеспечение локальных сетей..........................................

198

6.2. Сети Windows ........................................................................................

208

6.3. Локальная сеть на основе QNET...........................................................

215

6.4. Глобальные сети.....................................................................................

220

7. МНОГОПРОЦЕССОРНЫЕ СИСТЕМЫ.....................................................

226

7.1. Архитектуры многопроцессорных операционных систем.................

226

7.2. Принципы функционирования SMP и кластеров .................................

230

7.3. Принципы функционирования кластеров.............................................

233

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ..........................................

237

4

ВВЕДЕНИЕ

Аппаратными средствами современных вычислительных систем управ-

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

пьютерами. Это взаимодействие основано на двух противоречивых критери-

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

второму – операционные системы реального времени (QNX, VxWorks).

Существует множество определений термина операционная система реального времени взаимодополняющих друг друга [1]. Самыми распро-

странёнными из них являются:

1. Операционная система, в которой успешность работы любой про-

граммы зависит не только от её логической правильности, но и от времени, за которое получается результат. Если система не может удовлетворить вре-

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

2. В соответствии со стандартом POSIX 1003.1: «Реальное время в опе-

рационных системах — это способность операционной системы обеспечить требуемый уровень сервиса в определённый промежуток времени».

3. Операционная система, реагирующая в предсказуемое время на не-

предсказуемое появление внешних событий.

4. Интерактивные системы постоянной готовности. В категорию ОСРВ интерактивные системы постоянной готовности относят, исходя из маркетинговых соображений, и если интерактивную программу называют

«работающей в РВ», то это означает, что запросы от пользователя обрабаты-

ваются с задержкой, незаметной для человека.

В табл. 1 приведен сравнительный анализ ОСРВ и систем общего на-

значения.

5

Сравнительный анализ ОС РВ и общего назначения

Таблица 1

 

 

 

 

Характеристики

ОС реального времени

 

ОС общего назначения

 

Успеть среагировать

на

Оптимально распределить ре-

Основная задача

события,

происходящие

сурсы

компьютера

между

 

на оборудовании

 

пользователями и задачами

На что

Обработка

внешних

со-

Обработка действий

пользо-

ориентирована

бытий

 

 

 

вателя

 

 

 

 

Инструмент для создания

Воспринимается

пользовате-

Как

конкретного

аппаратно-

лем как

набор

приложений,

позиционируется

программного

комплекса

готовых к использованию

 

реального времени

 

 

 

 

 

 

 

Кому

Квалифицированный раз-

Пользователь средней квали-

предназначена

работчик

 

 

 

фикации

 

 

 

ОС РВ бывают двух типов — системы жесткого и мягкого РВ.

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

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

Системы жёсткого реального времени не допускают задержек реакции системы, так как это может привести: к потере актуальности результатов; к

большим финансовым потерям; к авариям и катастрофам.

Если не выполняется обработка критических ситуаций, либо она про-

исходит недостаточно быстро, система жёсткого реального времени преры-

вает операцию и блокирует её, чтобы не пострадала надёжность и готовность остальной части системы. Примерами систем жёсткого РВ могут быть — системы управления бортового оборудования, системы аварийной защиты,

регистраторы аварийных событий.

Системы мягкого реального времени характеризуются возможностью задержки реакции, что может привести к увеличению стоимости результатов и снижению производительности системы в целом. Примером может слу-

жить работа компьютерной сети. Если система не успела обработать очеред-

ной принятый пакет, это приведет к остановке на передающей стороне и по-

6

вторной посылке (в зависимости от протокола). Данные при этом не теряют-

ся, но производительность сети снижается.

Основное отличие системам жёсткого и мягкого РВ можно охарактери-

зовать так: система жёсткого реального времени никогда не опоздает с реак-

цией на событие, система мягкого реального времени — не должна опазды-

вать с реакцией на событие.

Обозначим операционной системой реального времени такую систему,

которая может быть использована для построения систем жёсткого реального времени. Это определение выражает отношение к ОСРВ как к объекту, со-

держащему необходимые инструменты, но также означает, что эти инстру-

менты ещё необходимо правильно использовать.

Большинство программного обеспечения ориентировано на «мягкое» реальное время. Для подобных систем характерно:

гарантированное время реакции на внешние события (прерывания от оборудования);

жёсткая подсистема планирования процессов (высокоприоритет-

ные задачи не должны вытесняться низкоприоритетными, за некоторыми ис-

ключениями);

повышенные требования к времени реакции на внешние события или реактивности (задержка вызова обработчика прерывания не более десятков микросекунд, задержка при переключении задач не более 100 микросекунд).

Классическим примером задачи, где требуется ОСРВ, является управ-

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

но, работа не будет сделана, несмотря на то, что робот находится в правиль-

ном месте. Если он подготовится раньше, то деталь ещё не успеет подъехать,

ион заблокирует ей путь.

Всвоем развитии ОСРВ строились на основе следующих архитектур.

7

Монолитная архитектура ОС определяется как набор модулей, взаи-

модействующих между собой внутри ядра системы и предоставляющих при-

кладному ПО входные интерфейсы для обращений к аппаратуре. Их основ-

ной недостаток заключается в плохой предсказуемости ее поведения, вы-

званной сложным взаимодействием модулей между собой.

Уровневая (слоевая) архитектура (например, MS-DOS). Прикладное ПО имеет возможность получить доступ к аппаратуре не только через ядро системы и ее сервисы, но и напрямую. По сравнению с монолитной такая ар-

хитектура обеспечивает значительно большую степень предсказуемости ре-

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

сутствие многозадачности.

Основной принцип микроядерной архитектуры или «клиент– серверной» заключается в вынесении сервисов ОС в виде серверов на уро-

вень пользователя и выполнении микроядром функций диспетчера сообще-

ний между клиентскими пользовательскими программами и серверами – сис-

темными сервисами. Преимущества микродероной архитектуры:

1.Повышенная надежность, так как каждый сервис является, по сути,

самостоятельным приложением и его легче отладить и отследить ошибки.

2.Улучшенная масштабируемость, т.к. ненужные сервисы могут быть исключены из системы без ущерба для ее работоспособности.

3.Повышенная отказоустойчивость, так как «зависший» сервис может быть перезапущен без перезагрузки системы.

Ядро ОСРВ обеспечивает функционирование промежуточного абст-

рактного уровня ОС, который скрывает от прикладного ПО специфику тех-

нического устройства процессора и связанного с ним аппаратного обеспече-

ния. Например, ОС QNX Neutrino поддерживает нескольких аппаратных платформ (MIPS, PowerPC, StrongARM/xScale, SH-4, x86).

8

1.ОСНОВНЫЕ ПОНЯТИЯ В ОПЕРАЦИОННЫХ СИСТЕМАХ

1.1.Классификация и функции операционных систем

Операционная система (ОС) (англ. operating system) — базовый ком-

плекс компьютерных программ, обеспечивающий интерфейс с пользователем,

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

ОС позволяет абстрагироваться от деталей реализации аппаратного обеспечения вычислительной системы (ВС), предоставляя разработчикам про-

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

Вычислительные системы состоят из аппаратного и программного обес-

печения. Программное состоит из системного и прикладного. Системное про-

граммное обеспечение - программы и комплексы программ, являющиеся об-

щими для всех, кто использует совместно технические средства компьютера и применяемые как для разработки новых программ, так и для организации вы-

полнения существующих программ [2]. В этом смысле системное программ-

ное обеспечение может быть разделено на 5 групп (рис.1):

1.операционные системы (ОС);

2.системы программирования;

3.утилиты (специальные системные программы, с помощью кото-

рых обслуживается сама ОС);

4.интерфейсные оболочки для взаимодействия с пользователем;

5.системы управления файлами

Под операционной системой понимают комплекс управляющих и обра-

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

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

числительной системы и организации надёжных вычислений.

9

Рис. 1. Структура системного программного обеспечения

Наиболее общей является следующая классификация ОС:

1.однозадачные (однопрограммные) (MS-DOS) и многозадачные

(QNX, Windows XP);

2. однопользовательские (Windows) и многопользовательские (один центральный процессор и блок оперативной памяти соединялся с многочис-

ленными терминалами (UNIX));

3.однопроцессорные (Windows 98) и многопроцессорные (Windows XP, Linux);

4.общего назначения (Windows XP) и реального времени (QNX Neutrino, LynxOS-178).

ОС общего назначения - системы, где время реализации функций не критично и не определяет качества функционирования ВС. В ОС жёсткого ре-

ального времени (QNX Neutrino) невыполнение тех или иных функций за оп-

ределённый промежуток времени приводит к отказу всей ВС. ОС мягкого ре-

ального времени близки к ОС общего назначения, но в оценке их качества функционирования фигурирует время выполнения функций, но их невыпол-

нение не приводит к отказу ВС (Linux).

На рис.2. представлено распределение наиболее известных ОС в про-

странстве категорий:

10