Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Структура и организация функционирования современных сетевых операционных системСтр 1 из 7Следующая ⇒
Содержание Введение
Структура и организация функционирования современных сетевых операционных систем
Общая характеристика задания по трассировке процессов функционирования сетевых ОС
Раздел 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.
Варианты заданий - Приложение 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
П.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; Просмотров: 970; Нарушение авторского права страницы