- •Операционные системы
- •Введение
- •Глава 1 понятие и эволюция операционных систем
- •1.1. Определение операционной системы
- •1. 2. История развития операционных систем
- •1.3. Основные характеристики ос
- •1.4. Принципы построения ос
- •Глава 2 архитектура вычислительной системы
- •2.1. Особенности методов построения
- •Глава 3 управление процессами
- •3.1. Операции над процессами
- •3.2. Основная концепция обработки прерываний
- •3.3. Переключение контекста в ec эвм
- •Глава 4 управление асинхронными параллельными процессами
- •If q(s) очередь не пуста?
- •Глава 5 управление основной памятью
- •Глава 6 управление виртуальной памятью
- •6.1. Концепция виртуальной памяти
- •1.Признак обращения 0 - было
- •2.Признак модификации записи 0 - неизменен.
- •6.2. Динамическая страничная организация
- •6.3. Сегментная организация виртуальной памяти
- •6.4. Комбинированная странично-сегментная организация памяти
- •6.5. Двухуровневая страничная организация
- •Глава 7 многозадачность и многонитевость
- •7.1. Понятие многонитевости
- •7.2. Реализация многонитевой обработки в windows 95
- •7.3. Подкачка страниц памяти
- •Глава 8 управление процессорами и заданиями в однопроцессорном вычислительном комплексе
- •Глава 9 управление процессорами и заданиями в мультипроцессорных вычислительных комплексах.
- •9.1. Решение фирмы Сompaq
- •Глава 10 управление периферийными устройствами
- •10.1. Физическая организация периферийных устройств
- •10.2. Организация программного обеспечения ввода-вывода
- •Глава 11 подсистема управления данными
- •11.1. Система управления файлами
- •11.2. Способы доступа и организации файлов
- •11.3. Управление внешней памятью
- •11.4. Способы распределения памяти на диске
- •Глава 12 Современные концепции и технологии проектирования операционных систем
- •12.1. Требования, предъявляемые к ос 90-х годов
- •12.2. Тенденции в структурном построении ос
- •Глава 13 История и общая характеристика семейства операционных систем unix
- •Глава 14 История Windows nt
- •14.1. Версии Windows nt
- •14.2. Структура: nt executive и защищенные подсистемы
- •14.3 Области использования Windows nt
- •Литература:
Министерство образования Российской Федерации
Томский политехнический университет
__________________________________________________________
А.А. Дубаков
Операционные системы
Учебное пособие
Томск 1999
УДК 681.325.5
Дубаков А.А. Операционные системы: Учебное пособие. - Томск:. Изд. ТПУ, 1999. – с.
Настоящее учебное пособие охватывает архитектуру и современные концепции и технологии проектирования операционных систем: управление процессами, работу с памятью, мультипроцессорные системы, управление устройствами, управление данными, безопасность систем. Изложение ведется в общем виде без привязки к какой - либо конкретной операционной системе. Рассмотрены наиболее распространенные и играющие важную роль в настоящее время операционные системы: UNIX, Windows NT.
Пособие подготовлено на кафедре “Оптимизации систем управления” ТПУ и предназначено для студентов Центра дистанционного образования по направлению “Информационные системы в экономике”.
Печатается по постановлению Редакционно-издательского Cовета Томского политехнического университета.
Рецензенты:
Ю.П. Ехлаков - профессор Томского университета систем управления и радиоэлектроники; доктор технических наук; зав. кафедрой «Автоматизации обработки экономической информации».
Марков Н.Г. – профессор Томского политехнического университета; доктор технических наук, зав. кафедрой «Вычислительной техники».
Темплан 1999
Томский политехнический университет, 1999
Введение
Нарастающие темпы компьютеризации уже приблизили время, когда в контакте с компьютерами оказываются не только относительно немногочисленные профессионалы по обработке информации, а практически все члены общества. Контакт с компьютером - это контакт с его программным обеспечением и, прежде всего, с операционной системой (ОС). Именно она формирует интерфейс между аппаратурой компьютера и человеком, причем задача создателей ОС состоит в том, чтобы сделать этот интерфейс, как теперь принято говорить, как можно более дружественным.
Свойства ОС зачастую оказываются не менее важными, чем свойства аппаратуры. Известны случаи, когда переход с одной ОС на другую на одной и той же машине приводил к пятикратному ускорению разработки программ.
На «голой» машине в современном мире не работает практически никто, и именно это определяет интерес к операционным системам.
В главе 1 вводится понятие «операционная система», приводятся факты из истории развития операционных систем и обсуждаются основные характеристики операционных систем. Глава 2 рассматривает архитектуру вычислительной системы и выделяет обобщенный состав и функции операционной системы. В главе 3 даются понятия процесса, перехода процесса из состояния в состояние, прерывания, переключения контекста, вводятся различные концепции, связанные с управлением процессами, и рассматривается организация прерываний в различных архитектурах ЭВМ. В главе 4 введено понятие асинхронности. Здесь обсуждаются проблемы, возникающие в случае совместного доступа к разделяемым ресурсам, а также описаны различные способы взаимоисключения, как аппаратные, так и программные, обеспечивающие решение этих проблем. Рассматриваются примитивы взаимоисключения, семафоры и мониторы, и то, каким образом их можно использовать для решения классических проблем параллелизма; приведено описание задачи «читатели и писатели», реализуемое при помощи рассмотренных средств. Здесь же объясняется, что такое тупик (дедлок), при котором выполнение различных процессов не может продолжаться, поскольку они ожидают событий, которые никогда не произойдут; представлены различные средства решения этой проблемы. В главе 5 обсуждаются различные проблемы управления памятью в системах физической (реальной) памяти, в главе 6 - виртуальной памяти. Прослеживается развитие систем реальной памяти - от систем, где вся память предоставлялась в распоряжение одного пользователя, до мультипрограммных систем с различными видами распределения памяти, описываются организация и управление виртуальной памятью. В главе 6 объясняется концепция виртуальной памяти и показано, каким образом благодаря применению методов поблочного отображения, страничной организации и сегментации памяти можно уменьшить объем информации отображения. Приводится подробное описание реализации виртуальной памяти и преобразования адресов в системах со страничной организацией и сегментацией памяти и обсуждаются различные стратегии управления системами виртуальной памяти. Рассматриваются стратегии вталкивания, размещения и выталкивания данных, причем обсуждаются стратегии вталкивания по требованию и упреждающего вталкивания. Основное внимание в этой главе уделяется стратегиям выталкивания (подкачки) страниц; рассматриваются принцип оптимальности и стратегии выталкивания страниц. В главе 7 обсуждаются понятия многозадачность и многонитевость и различия между ними, а также реализация многонитевой обработки и подкачка страниц памяти в операционной системе Windows 95/NT. В главе 8 речь идет об управлении процессорами, в частности, о проблемах планирования загрузки процессоров и о мультипроцессорном режиме. Основное внимание сосредоточено на стратегиях планирования; здесь обсуждается планирование на верхнем уровне, промежуточном и нижнем уровне, цели и критерии планирования, приоритетное планирование, статические и динамические приоритеты, «заслуженные» или «купленные» приоритеты, а также планирование по предельному сроку. Представлены различные алгоритмы планирования. Эта глава заканчивается анализом механизмов многоуровневых очередей с обратными связями. В главе 9 обсуждаются мультипроцессорные системы, разработанные как средство повышения производительности и надежности машин. Рассматривается использование достоинств параллелизма. Анализируются различные мультипроцессорные аппаратные архитектуры и варианты организации операционных систем, и архитектурные решения мультипроцессорных Flex/MP и TryFlex фирмы COMPAQ. В главе 10 рассматривается управление периферийными устройствами в различных архитектурах ЭВМ и организация программного обеспечения ввода-вывода. Глава 11 посвящена подсистеме управления данными. Рассматриваются логический и физический аспекты управления файлами, способы организации и управления внешней памятью. В главе 12 рассматриваются современные концепции и технологии проектирования операционных систем. Формулируются требования, предъявляемые к современным ОС, такие, как расширяемость, переносимость, совместимость, безопасность. Большое внимание уделяется описанию различных тенденций структурного построения ОС. Главы 13 и 14 описывают характеристики и области применения операционных систем UNIX и Windows NT, соответственно.