Операционные системы
Покупка
Тематика:
Другие операционные системы
Издательство:
Томский государственный университет
Год издания: 2020
Кол-во страниц: 220
Дополнительно
Вид издания:
Учебное пособие
Уровень образования:
ВО - Бакалавриат
ISBN: 978-5-94621-935-8
Артикул: 777104.01.99
В учебном пособии изложены особенности функционирования, назначения и архитектуры современных операционных систем (ОС). Отражены понятие и эволюция операционных систем, архитектурные особенности и классификация ОС по различным критериям, особенности управления процессами и памятью, основы организации файловых систем и некоторые их конкретные примеры, рассмотрены консолидированные серверные системы хранения данных большого объема RAID, основы организации мультипроцессорных ОС.
Учебное пособие предназначено для студентов высших учебных заведений.
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
- 09.03.03: Прикладная информатика
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РФ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ А.В. Замятин С.П. Сущенко ОПЕРАЦИОННЫЕ СИСТЕМЫ Учебное пособие Томск Издательство Томского государственного университета 2020
УДК 004.451.9 ББК 32.972.111 З26 Замятин А.В., Сущенко С.П. З26 Операционные системы : учебное пособие / А.В. Замятин, С.П. Сущенко. – Томск : Издательство Томского государственного университета, 2020. – 220 с. ISBN 978-5-94621-935-8 В учебном пособии изложены особенности функционирования, назначения и архитектуры современных операционных систем (ОС). Отражены понятие и эволюция операционных систем, архитектурные особенности и классификация ОС по различным критериям, особенности управления процессами и памятью, основы организации файловых систем и некоторые их конкретные примеры, рассмотрены консолидированные серверные системы хранения данных большого объема RAID, основы организации мультипроцессорных ОС. Учебное пособие предназначено для студентов высших учебных за ведений. УДК 004.451.9 ББК 32.972.111 Рецензенты: доктор технических наук, профессор А.М. Кориков кандидат технических наук, доцент С.А. Останин ISBN 978-5-94621-935-8 © Замятин А.В., Сущенко С.П., 2020 © Томский государственный университет, 2020
Понятие и эволюция операционных систем 3 СОДЕРЖАНИЕ ВВЕДЕНИЕ ......................................................................................................6 1. ПОНЯТИЕ И ЭВОЛЮЦИЯ ОПЕРАЦИОННЫХ СИСТЕМ....................8 1.1. Основные понятия, назначения и функции ОС ..................................8 1.2. Эволюция вычислительных и операционных систем ......................12 1.2.1. История развития ОС..................................................................12 1.2.2. Основные функции ОС...............................................................22 1.2.3. Особенности современного этапа развития ОС .......................23 Вопросы для самопроверки......................................................................24 2. АРХИТЕКТУРНЫЕ ОСОБЕННОСТИ ОС. КЛАССИФИКАЦИЯ ОС...............................................................................26 2.1. Архитектурные особенности ОС ......................................................26 2.1.1. Монолитное ядро ........................................................................26 2.1.2. Микроядерная архитектура........................................................27 2.1.3. Многоуровневые системы..........................................................30 2.1.4. Виртуальные машины.................................................................31 2.1.5. Смешанные системы...................................................................32 2.2. Классификация ОС..............................................................................33 Вопросы для самопроверки .......................................................................37 3. УПРАВЛЕНИЕ ПРОЦЕССАМИ..............................................................38 3.1. Мультипрограммирование..................................................................38 3.1.1. Мультипрограммирование в системах пакетной обработки.....40 3.1.2. Мультипрограммирование в системах разделения времени .....41 3.1.3. Мультипрограммирование в системах реального времени.......42 3.1.4. Мультипрограммирование при мультипроцессорной обработке ...............................................................................................44 3.1.5. Роль прерываний при мультипрограммировании....................47 3.2. Планирование процессов и потоков ..................................................54 3.2.1. Понятие процесса и потока ........................................................54 3.2.2. Создание процессов и потоков ..................................................58 3.2.3. Управляющие структуры процессов и потоков .......................60 3.2.4. Состояния процесса ....................................................................63 3.2.5. Критерии планирования .............................................................67 3.2.6. Цели и свойства алгоритмов планирования .............................68 3.2.7. Виды планирования ....................................................................71 3.2.8. Алгоритмы планирования ..........................................................73
Операционные системы 4 3.3. Взаимодействие и синхронизация процессов и потоков .................77 3.3.1. Независимые и взаимодействующие вычислительные процессы ................................................................................................77 3.3.2. Цели и средства синхронизации................................................78 3.3.3. Пример необходимости синхронизации ...................................80 3.3.4. Механизмы синхронизации .......................................................82 3.3.5. Проблемы синхронизации..........................................................91 3.3.6. Механизмы межпроцессного взаимодействия .........................94 Вопросы для самопроверки .....................................................................100 4.УПРАВЛЕНИЕ ПАМЯТЬЮ....................................................................103 4.1. Основные положения ........................................................................103 4.1.1. Задачи по управлению памятью ..............................................104 4.1.2. Типы адресации.........................................................................105 4.2. Распределение памяти.......................................................................110 4.2.1. Общие принципы управления памятью в однопрограммных ОС......................................................................110 4.2.2. Особенности организации управления памятью в мультипрограммных ОС..................................................................113 4.2.3. Распределение фиксированными разделами ..........................115 4.2.4. Распределение динамическими разделами.............................117 4.2.5. Распределение перемещаемыми разделами ...........................119 4.2.6. Сегментное распределение ......................................................121 4.2.7. Страничное распределение ......................................................132 4.2.8. Особенности эффективного использования таблиц страниц....................................................................................139 4.2.9. Сегментно-страничное распределение....................................144 Вопросы для самопроверки .....................................................................147 5. ФАЙЛОВЫЕ СИСТЕМЫ .......................................................................149 5.1. Физическая организация жесткого диска........................................149 5.2. Принципы построения файловой системы......................................155 5.2.1. Интерфейс файловой системы.................................................155 5.2.2. Функциональная схема организации файловой системы......155 5.2.3. Типовая структура файловой системы на диске ....................158 5.2.4. Способы выделения дискового пространства ........................159 5.2.5. Управление дисковым пространством....................................164 5.2.6. Размер логического блока ........................................................165 5.3. Особенности загрузки ОС.................................................................166
Понятие и эволюция операционных систем 5 5.4. Файлы и файловая система...............................................................169 5.4.1. Цели и задачи файловой системы............................................170 5.4.2. Типы файлов..............................................................................172 5.4.3. Атрибуты файла ........................................................................175 5.4.4. Доступ к файлам .......................................................................176 5.4.5. Операции над файлами.............................................................179 5.4.6. Иерархическая структура каталогов .......................................181 5.4.7. Операции над директориями....................................................182 5.5. Особенности организации некоторых файловых систем...............183 5.5.1. FAT.............................................................................................183 5.5.2. VFAT..........................................................................................190 5.5.3. NTFS...........................................................................................192 5.5.4. HPFS...........................................................................................196 5.5.5. UFS.............................................................................................199 5.6. Дисковые массивы RAID..................................................................204 6. МУЛЬТИПРОЦЕССОРНЫЕ ОС И СРЕДСТВА ВИРТУАЛИЗАЦИИ ....................................................................................207 6.1. Организация мультипроцессорных ОС. ..........................................207 6.2. Коммуникационные средства многомашинных систем уровня пользователя.................................................................................211 6.3. Средства виртуализации ...................................................................213 ЛИТЕРАТУРА .............................................................................................218
Операционные системы 6 Предисловие С каждым годом использование вычислительных систем стано вится все более широким, существенно повышая эффективность функционирования различных бизнес-процессов больших и малых предприятий, облегчая и делая более разнообразной и интересной работу с персональными компьютерами рядовых пользователей по всему миру. Во многом это заслуга операционной системы (ОС) – неотъемлемой части любой современной вычислительной системы, от простого и недорого пользовательского компьютера до мощного суперкомпьютера с десятками процессоров. В связи с этим очевидны ведущая роль современных ОС и осо бое внимание, которое следует уделять их изучению. Предлагаемое учебное пособие направлено в некоторой степени на решение данной задачи. В нем сделана попытка изложить самые основные элементы особенностей функционирования, назначения и архитектуры современных ОС без существенной «привязки» к какой-либо конкретной ОС и лишних деталей функционирования, усложняющих процесс понимания. В пособии главным образом изложены общетеоретические во просы построения и функционирования ОС: базовые понятия ОС, основные этапы эволюции ОС, составляющие функционирования мультипроцессной системы, – мультипрограммирование, планирование процессов и потоков и механизмы их взаимодействия и синхронизации, основные задачи по управлению памятью, особенности реализации распределения оперативной памяти и физической организации жесткого диска, базовые принципы построения типовой файловой системы, особенности загрузки ОС и организация консолидированных серверных систем хранения данных большого объема RAID различного уровня. Пособие предназначено для студентов, которые хотели бы по лучить базовые знания о принципах организации операционных
Предисловие 7 систем, а также для широкого круга подготовленных пользовате- лей, желающих углубить свои познания в области ОС. Более глубокие знания основных архитектурных принципов построения и функционирования ОС позволят обоснованно принимать решения по приобретению того или иного вычислительного оборудования и программного обеспечения, организовывать его эффективную и надежную эксплуатацию, принимать решения о необходимости его частичного обновления или замены.
Операционные системы 8 1. ПОНЯТИЕ И ЭВОЛЮЦИЯ ОПЕРАЦИОННЫХ СИСТЕМ 1.1. Основные понятия, назначения и функции ОС Для того чтобы ответить на вопрос, что представляет собой операционная система, необходимо сначала выяснить, из чего состоит вычислительная система (ВС) в целом. Обобщенно структура вычислительной системы представлена на рис. 1. Во-первых, в состав ВС входит то, что называют аппаратным, или техническим, обеспечением (англ. hardware): процессоры, память, мониторы, таймеры, дисковые устройства, накопители на магнитных лентах, сетевая коммуникационная аппаратура, принтеры и т.д., объединенные магистральным соединением (шиной). Во-вторых, составной частью ВС является программного обес печение (ПО), в котором выделяют две части – системное и прикладное. Системное ПО – это набор программ, которые управляют компонентами ВС, такими как процессор, коммуникационные и периферийные устройства; эти программы предназначены для обеспечения функционирования и работоспособности системы в целом. Большинство из них отвечает непосредственно за контроль и объединение в единое целое различных компонентов аппаратного оборудования ВС, обеспечение работы компьютера самого по себе и выполнение различных прикладных программ. Системное ПО противопоставляется прикладному ПО, которое напрямую решает проблемы пользователя, оно предназначено для выполнения определенных пользовательских задач и рассчитано на непосредственное взаимодействие с пользователем. К прикладному ПО, как правило, относят разнообразные вспомогательные программы (игры, текстовые процессоры и т.п.). Следует отметить, что деление на прикладное и системное ПО является отчасти условным и зависит от того, кто осуществляет
1. Понятие и эволюция операционных систем 9 такое деление. Так, обычный пользователь, не искушенный в программировании, может считать текстовый процессор Microsoft Word системной программой, а с точки зрения программиста, это – приложение. Компилятор языка С для обычного программиста – системная программа, а для системного – прикладная. Пользователь Прикладные программы Прочие системные программы Операционная система Техническое обеспечение Системные программы Программное обеспечение Рис. 1. Пользователь и обобщенная структура вычислительной системы Принимая во внимание вышеизложенное, следует отметить, что операционная система является фундаментальным компонентом системного программного обеспечения. Именно эта часть ПО будет основным предметом детального рассмотрения далее.
Операционные системы 10 Очевидно, что операционная система является основным ком понентом любой вычислительной системы и во многом определяет эффективность ее функционирования в целом. При этом дать однозначное определение операционной системе затруднительно. Главным образом это связано с тем, что операционная система выполняет целый ряд разнородных функций, начиная от обеспечения пользователю-программисту удобств посредством предоставления комфортного интерфейса к аппаратной части вычислительной системы и заканчивая обеспечением рационального управления ресурсами вычислительной системы. В связи с этим целесообразно дать несколько различных определений и сделать акцент на целях создания операционных систем, их функциях и предназначении. Главными целями разработчиков операционных систем явля ются следующие: 1. Эффективное использование всех компьютерных ресурсов. 2. Повышение производительности труда программистов. 3. Простота, гибкость, эффективность и надежность организации вычислительного процесса. 4. Обеспечение независимости прикладного ПО от аппаратного ПО. Операционная система (ОС) – это программа, которая обеспе чивает возможность рационального использования оборудования компьютера удобным для пользователя образом. ОС – базовый комплекс компьютерных программ, обеспечива ющий управление аппаратными средствами компьютера, работу с файлами, ввод и вывод данных, а также выполнение прикладных программ и утилит. Кроме различных определений ОС, два из которых приведены выше, пользователи выделяют ряд различных точек зрения на ОС: – ОС как виртуальная машина; – ОС как система управления ресурсами; – ОС как защитник пользователей и программ; – ОС как постоянно функционирующее ядро. Для более полного представления об ОС рассмотрим основные точки зрения пользователей более подробно.