Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Структура и организация функционирования современных сетевых операционных систем



Содержание

Введение

 

Структура и организация функционирования современных сетевых операционных систем

 

Общая характеристика задания по трассировке процессов функционирования сетевых ОС

 

Раздел 1. Управление процессами

Занятие 1.1. Мультипрограммирование

Занятие 1.2. Циклическое квантование времени

Занятие 1.3 Приоритетные дисциплины

 

Раздел 2. Управление памятью

Занятие 2.1. Динамические разделы

Занятия 2.2. Свопинг процессов

Занятия 2.3. Страничная память

 

Раздел 3. Управление устройствами

Занятие 3.1. Циклическая буферизация

Занятие 3.2. Планирование дисковых операций

Занятие 3.3. Взаимодействие компьютеров в сет

 

Раздел 4. Управление информацией

Занятие 4.1. Файловая структура диска

 

Приложения

Приложение 1. Варианты заданий

Приложение 2. Описание алгоритмов работы компонентов ОС

 

Список основной рекомендуемой литературы

Список дополнительной литературы


Введение

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

В настоящем методическом пособии изучение основных возможностей современных сетевых операционных систем выполнено в соответствии с классической терминологией теории операционных систем, что позволяет затем применить полученные знания и навыки к анализу конкретных операционных систем на лабораторных занятиях. Рекомендуемыми к дальнейшему изучению на лабораторных занятиях являются операционные системы семейств MS Windows, Unix, QNX. Кроме того, возможно изучение специализированных операционных систем ком­мутаторов, маршрутизаторов и других сетевых устройств, например операционных систем IOS компании Cisco. Целесообразным представляется также проведение семи­нарских занятий по ретроспективному изучению опера­ционных систем, внесших значительный вклад в развитие теории операционных систем, таких, как MULTICS, OS/360, RSX11М, VAS/VMX.

Существуют различные уровни освоения предмета «Сетевые операционные системы», такие, как уровень квали­фицированного пользователя, уровень администратора и уровень проектировщика (разработчика). Базовым уровнем для направления «Компьютерные науки» и «Телекоммуникации» является уровень администратора. Однако квалифицированное администрирование в настоящее время практически невозможно без освоения основ проектирования операционных систем, предполагающих знание структур данных и алгоритмов работы компонентов операционной системы. Задания по трассировке процессов функционирования ОС представляют собой основу для изучения алгоритмов работы компонентов сетевых операционных систем.

Структура и организация функционирования современных сетевых операционных систем

 

Операционная система - это комплекс программ для управления ресурсами компьютера, организации интер­фейсов с пользователем и обеспечения защиты ресурсов. Таким образом, ОС решает две группы задач:

- управление ресурсами;

- организация интерфейсов.

Различают 4 типа ресурсов:

- процессоры;

- оперативная память;

- устройства ввода/вывода;

- информация.

Рассматривают 4 типа операций по управлению ре­сурсом:

- выделение;

- освобождение;

- отслеживание;

- планирование.

Таким образом, управление ресурсами представлено 16 компонентами операционной системы (4 типа ресурсов х 4 типа операций). Кроме того, ввиду существенных отличий устройств ввода/вывода (например, сетевая карта и магнитный диск) выполняют дальнейшее структурирование средств управления устройствами. Компонент операционной системы, организующий ввод/вывод для конкретного типа устройств называют драйвером.

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

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

Таким образом, операционная система запрещает непосредственное обращение пользовательских программ к оборудованию и выступает в качестве посредника, вы­полняя конкретные операции на устройствах от имени пользовательских процессов. Описанная технология явля­ется основой для реализации функций защиты пользова­тельских процессов друг от друга и самой операционной системы от пользовательских процессов. Обеспечение за­щиты возможно лишь при соответствующей аппаратной поддержке: наличии нескольких режимов работы процес­сора с различным множеством доступных команд. В про­стейшем случае используется 2 режима: «система» для исполнения ОС и «пользователь» для исполнения процессов пользователя. Попытка выполнения процессом пользо­вателя привилегированной команды (например, записи в порт устройства) вызывает специальное прерывание, пере­хватываемое ОС.

Классической является реализация компонентов операционной системы в форме ядра и множества системных процессов. Ядро представляет собой часть операционной системы, которая постоянно находится в оперативной памяти и не является процессом. Фактически ядро представляет собой множество обработчиков прерываний: аппаратных - для управления вводом/выводом, памятью и процессорами; программных - для реализации системных вызовов. В системные процессы выделяют компоненты ОС, требующие значительных временных затрат в процессе выполнения, например, файловые операции, командный и графический интерфейсы пользователя.

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

 

 

Раздел 2. Управление памятью

 

Оперативная память (ОП) является вторым после ЦП ресурсом но своей значимости для исполнения процесса. Множество способов управления памятью конкретных ОС можно классифицировать по следующим основным признакам:

- полное либо частичное размещение процесса в ОП;

- связное либо несвязное выделение оперативной памяти;

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

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

 

Занятие 3.2. Планирование дисковых операций

 

Цель занятия: освоить основы планирования дисковых операций, оценить эффективность применения планирования дисковых операций

Краткое изложение теоретического материала

Планирование является наиболее сложной операцией ОС. Большинство ОС ограничиваются реализацией лишь операций выделения, освобождения и отслеживания своих ресурсов. Однако использование операций планирования может существенно повысить производительность ВС. Изучим средства планирования ОС на примере плани­рования дисковых операций.

Магнитный диск представляет собой сложное электронно-механическое устройство. На общей оси собраны несколько дисков с магнитными поверхностями; как правило, внешние поверхности нижнего и верхнего дисков не используются. Поверхности дисков разбиты на дорожки в форме концентрических окружностей. Доступ к данным дорожек обеспечивает блок магнитных головок, переме­щаемый между дорожками шаговым двигателем. Каждая дорожка разбита на секторы равной длины; сектор является минимальной адресуемой единицей магнитного диска и содержит блок данных. Множество равноудалённых от оси дорожек всех поверхностей именуют цилиндром. Таким образом, физический адрес сектора (блока данных) состоит из номера цилиндра, номера поверхности и номера сектора.

 

Быстрое вращение диска (1000 об/с) обеспечивает сравнительно высокую скорость чтения-записи для всех секторов текущего цилиндра. Операция перемещения блока головок к другому цилиндру требует включения шагового двигателя и занимает сравнительно большее (10 - 20 раз) время.

Запросы чтения-записи магнитного диска разме­щаются ОС в очередь. При отсутствии планирования они выполняются в порядке поступления. Заметим, что такой способ реализации запросов в большинстве случаев является неэффективным, так как приводит к частым перемещениям блока головок. Переупорядочение очереди запросов по критерию минимизации суммарного пути перемещения головок позволяет минимизировать общее время выполнения всех запросов. Учитывая разницу времён чтения-записи и перемещения головок, можно прийти к выводу, что повышение производительности является существенным:



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

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

 

Задание

Выполнить ручную трассировку работы планировщика очереди запросов к магнитному диску. Заполнить трас­сировочную таблицу.

Характеристики ОС: планирование дисковых операций, мультипрограммирование

 

Порядок выполнения

]. Выполнить ручную трассировку работы средств плани­рования дисковых операций.

2. Заполнить трассировочные таблицы.

3. Выполнить анализ эффективности планирования дисковых операций.

4. Сформулировать преимущества и недостатки планиро­вания дисковых операций.

 

Пример выполнения

Время перемещения головки на 1 цилиндр - 1. Время записи - 10.

Последовательность операций ввода/вывода

 

Время Очередь к МД Операция МД
  Движение к 100 (100)
Движение к 100 (80)
150, 120 Движение к 100 (60)
150, 120, 110 Движение к 100 (40)
200, 150, 120, 110 Движение к 100 (20)
10, 200, 150, 110 Запись 100(10)
10, 200, 150 Движение к 110 (10)
10, 200, 160, 150 Запись 110(10)
   

 

Варианты заданий - Приложение 1.8. Контрольные вопросы

1. Для чего необходимо планирование операций МД?

2. Из чего состоит физический адрес данных на МД?

3. Каким образом выполняется переупорядочение очереди к МД?

4. Как влияет планирование операций МД на производительность ВС?

 

 

Приложения

Приложение 1. Варианты заданий П.1.1. Мультипрограммирование


 

n - номер студента в журнале Вариант № 29.


 

Структура задания:

31: 10ЦП-300МД-20ЦП

32: 30ЦП-1000МЛ-40ЦП

33: 50Ц11-400МД-1ОЦП-100МД-20ЦП

34: 30ЦП-2060ЦЯ-40ЦП-400МД-1 ОЦП


 

П.1.4. Динамические разделы

Размер ОП: V = ((n mod 4) + 7) * 10


Характеристики выполняемых процессов

 

П.1.5. Свопинг процессов

Варианты - Приложение L.4. Приоритет 3 - абсолютный.

Время загрузки/выгрузки: tio = ((n mod 2) + 1) * 10

 

 

П.1.6. Страничная память

Количество страниц ОП: NO = ((n mod 3) + 3 Количество страниц ВнП: NE = ((n mod 4) + 5

Характеристики выполняемых процессов Ci из Приложения 1.1.

 

П.1.8. Планирование дисковых операций

Время перемещения головки на 1 цилиндр:

ТС = (n mod 2) +1

Время записи: ТЮ = ((n mod 3) + 1) * 5

Последовательность операций ввода/вывода

 

Приложение 2. Описание алгоритмов работы компонентов ОС

 

Алгоритмы планирования процессов.

 

Задание:

Разработать алгоритм модулей управления процессами в сетевой ОС.


Внешние спецификации.

 


 

Считаем, что указанные процедуры работают с очередями, упорядоченными по приоритету. Приоритет-0...255 (1 байт).

Приоритет 255 - абсолютный по отношению ко всем остальным.

Задача состоит в разработке алгоритмов для указанных точек входа.

 

Используемые структуры данных.

1. БУП - блок управления процессом (РСВ).


 

Примечания:

- указатель Current может быть пустым, если текущий процесс заблокирован/завершён;

- в системе имеется предопределённый процесс ленивец IDLE, priority = 0.

- если требуемое действие не указано в списке используемых процедур и не может быть описано явно на алгоритмическом языке, для его записи будем исполь­зовать форму комментариев:

; выделить требуемый объём ОП.

Алгоритмы.

 


 





 

 

Основная рекомендуемая литература

 

1. Олифер В.Г., Олифер Н.А. Сетевые операционные системы. - Питер, 2001.-544 с.

2. Дейтел Г. Введение в операционные системы: В 2 т. - М.: Мир, 1987, - 756 с.

3. Краковяк С. Основы организации и функционирования ЭВМ. - М.: Мир, 1988.-480 с.

4. Мэдник С., Донован Дж. Операционные системы. - М.: Мир, 1978.-640 с.

Дополнительная литература

1. Иртегов Д. Введение в операционные системы. - BHV: Санкт- Петербург, 2002. - 624 с.

2. Столлингс В. Операционные системы. - Вильяме, 2002. - 848 с.

3. Партыка Т.Л., Попов И.И. Операционные системы, среды и оболочки. - Форум, 2003. - 400 с.

4. Гордеев А.В., Молчанов А.Ю. Системное программное обеспе­чение. - СПб.: Питер, 2001.

5. Робачевский A.M. ОС UNIX. - BHV: С.-Петербург, 2001.

6. Кулаков Ю.А., Омелянский С.В. Компьютерные сети. - К.: Юниор, 1999.

7. Шоу А. Логическое проектирование операционных систем. - М.: Мир, 1981.-360 с.

8. Соловьев Г.Н. Операционные системы ЦВМ. - М.: Машино­строение, 1977. - 136 с.

9. Татцан Г. Операционные системы. — М.: Мир, 1976, - 471с.

10. Лихачева Г.Н., Медведев В.Д. Операционные системы. - М.: Статистика, 1980. - 231с.

И. Зелковиц М., Шоу А., Гэннон Дж. Принципы разработки программного обеспечения. - М.: Мир, 1982. - 368 с.

12. Коэн Л.Дж. Анализ и разработка операционных систем. - М.: Наука, 1975.- 190 с.

13. Кристиан К. Введение в операционную систему UNIX. - М.: Финансы и статистика, 1985. — 318 с.

14. Бирюков В.В., Рыбаков А.В., Шикура Ю.П. Введение в систему про­граммирования ОС РВ. - М.: Финансы и статистика, 1986. - 192 с.

15. Кейслер С. Проектирование операционных систем для малых ЭВМ. - М.: Мир, 1986. - 680 с.

16. Методические указания к курсовому проектированию операционных систем (для студентов специальности 22.04) / Сост.: А.В. Григорьев, Д.А. Зайцев, А.И. Слепцов. - Донецк: ДГТУ, 1994.-29 с.

Содержание

Введение

 

Структура и организация функционирования современных сетевых операционных систем

 

Общая характеристика задания по трассировке процессов функционирования сетевых ОС

 

Раздел 1. Управление процессами

Занятие 1.1. Мультипрограммирование

Занятие 1.2. Циклическое квантование времени

Занятие 1.3 Приоритетные дисциплины

 

Раздел 2. Управление памятью

Занятие 2.1. Динамические разделы

Занятия 2.2. Свопинг процессов

Занятия 2.3. Страничная память

 

Раздел 3. Управление устройствами

Занятие 3.1. Циклическая буферизация

Занятие 3.2. Планирование дисковых операций

Занятие 3.3. Взаимодействие компьютеров в сет

 

Раздел 4. Управление информацией

Занятие 4.1. Файловая структура диска

 

Приложения

Приложение 1. Варианты заданий

Приложение 2. Описание алгоритмов работы компонентов ОС

 

Список основной рекомендуемой литературы

Список дополнительной литературы


Введение

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

В настоящем методическом пособии изучение основных возможностей современных сетевых операционных систем выполнено в соответствии с классической терминологией теории операционных систем, что позволяет затем применить полученные знания и навыки к анализу конкретных операционных систем на лабораторных занятиях. Рекомендуемыми к дальнейшему изучению на лабораторных занятиях являются операционные системы семейств MS Windows, Unix, QNX. Кроме того, возможно изучение специализированных операционных систем ком­мутаторов, маршрутизаторов и других сетевых устройств, например операционных систем IOS компании Cisco. Целесообразным представляется также проведение семи­нарских занятий по ретроспективному изучению опера­ционных систем, внесших значительный вклад в развитие теории операционных систем, таких, как MULTICS, OS/360, RSX11М, VAS/VMX.

Существуют различные уровни освоения предмета «Сетевые операционные системы», такие, как уровень квали­фицированного пользователя, уровень администратора и уровень проектировщика (разработчика). Базовым уровнем для направления «Компьютерные науки» и «Телекоммуникации» является уровень администратора. Однако квалифицированное администрирование в настоящее время практически невозможно без освоения основ проектирования операционных систем, предполагающих знание структур данных и алгоритмов работы компонентов операционной системы. Задания по трассировке процессов функционирования ОС представляют собой основу для изучения алгоритмов работы компонентов сетевых операционных систем.

Структура и организация функционирования современных сетевых операционных систем

 

Операционная система - это комплекс программ для управления ресурсами компьютера, организации интер­фейсов с пользователем и обеспечения защиты ресурсов. Таким образом, ОС решает две группы задач:

- управление ресурсами;

- организация интерфейсов.

Различают 4 типа ресурсов:

- процессоры;

- оперативная память;

- устройства ввода/вывода;

- информация.

Рассматривают 4 типа операций по управлению ре­сурсом:

- выделение;

- освобождение;

- отслеживание;

- планирование.

Таким образом, управление ресурсами представлено 16 компонентами операционной системы (4 типа ресурсов х 4 типа операций). Кроме того, ввиду существенных отличий устройств ввода/вывода (например, сетевая карта и магнитный диск) выполняют дальнейшее структурирование средств управления устройствами. Компонент операционной системы, организующий ввод/вывод для конкретного типа устройств называют драйвером.

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

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

Таким образом, операционная система запрещает непосредственное обращение пользовательских программ к оборудованию и выступает в качестве посредника, вы­полняя конкретные операции на устройствах от имени пользовательских процессов. Описанная технология явля­ется основой для реализации функций защиты пользова­тельских процессов друг от друга и самой операционной системы от пользовательских процессов. Обеспечение за­щиты возможно лишь при соответствующей аппаратной поддержке: наличии нескольких режимов работы процес­сора с различным множеством доступных команд. В про­стейшем случае используется 2 режима: «система» для исполнения ОС и «пользователь» для исполнения процессов пользователя. Попытка выполнения процессом пользо­вателя привилегированной команды (например, записи в порт устройства) вызывает специальное прерывание, пере­хватываемое ОС.

Классической является реализация компонентов операционной системы в форме ядра и множества системных процессов. Ядро представляет собой часть операционной системы, которая постоянно находится в оперативной памяти и не является процессом. Фактически ядро представляет собой множество обработчиков прерываний: аппаратных - для управления вводом/выводом, памятью и процессорами; программных - для реализации системных вызовов. В системные процессы выделяют компоненты ОС, требующие значительных временных затрат в процессе выполнения, например, файловые операции, командный и графический интерфейсы пользователя.

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

 

 


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-03-17; Просмотров: 929; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.083 с.)
Главная | Случайная страница | Обратная связь