Операционные системы
Покупка
Издательство:
Издательство Уральского университета
Автор:
Зверева Ольга Михайловна
Год издания: 2020
Кол-во страниц: 220
Дополнительно
Вид издания:
Учебное пособие
Уровень образования:
ВО - Бакалавриат
ISBN: 978-5-7996-3146-8
Артикул: 799100.01.99
Учебное пособие предназначено для подготовки бакалавров. Основной целью пособия является развитие компетенций студентов в области общих принципов построения и функционирования операционных систем — того класса программного обеспечения, без которого компьютер неработоспособен. Материал снабжен примерами из современных версий систем, которые призваны подтвердить действенность теоретических положений. В конце каждой главы есть перечень контрольных вопросов для проверки степени усвоения прочитанного.
Тематика:
ББК:
УДК:
ОКСО:
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Министерство науки и высшего образования Российской Федерации Уральский федеральный университет имени первого Президента России Б. Н. Ельцина О. М. Зверева ОПЕРАЦИОННЫЕ СИСТЕМЫ Учебное пособие Рекомендовано методическим советом Уральского федерального университета для студентов вуза, обучающихся по направлениям подготовки: 09.03.01 — Информатика и вычислительная техника; 09.03.04 — Программная инженерия Екатеринбург Издательство Уральского университета 2020
УДК 004.451(075.8) ББК 32.973-018.2я73 З-43 Рецензенты: ученый совет института инженерно-педагогического образования РГППУ (директор Е. В. Чубаркова); д-р техн. наук, проф. В. Г. Лабунец (Урал. гос. лесотехн. ун-т) Научный редактор — д-р техн. наук, проф. Л. Г. Доросинский Зверева, О. М. З-43 Операционные системы : учебное пособие / О. М. Зверева ; Мин-во науки и высш. образ. РФ. — Екатеринбург : Изд-во урал. ун-та, 2020. — 220 с. ISBN 978-5-7996-3146-8 Учебное пособие предназначено для подготовки бакалавров. Основной целью пособия является развитие компетенций студентов в области общих принципов построения и функционирования операционных систем — того класса программного обеспечения, без которого компьютер неработоспособен. Материал снабжен примерами из современных версий систем, которые призваны подтвердить действенность теоретических положений. В конце каждой главы есть перечень контрольных вопросов для проверки степени усвоения прочитанного. Библиогр.: 54 назв. Табл. 5. Рис. 70. УДК 004.451(075.8) ББК 32.973-018.2я73 ISBN 978-5-7996-3146-8 © Уральский федеральный университет, 2020
— 3 — Оглавление Предисловие ......................................................................................... 7 1. Понятие операционной системы. Появление, развитие и особенности современного состояния ОС ...................................... 8 Определение понятия «операционная система» ............................ 8 История появления операционных систем ..................................10 Первое поколение ЭВМ. Отсутствие операционных систем ..10 Второе поколение ЭВМ. Появление первых операционных систем ...............................................................11 Третье поколение ЭВМ: мультипрограммирование и другие передовые концепции ................................................13 Четвертое поколение ЭВМ. Сетевые операционные системы .....................................................................................17 Развитие операционных систем в 1980-е гг. ............................18 Современный этап развития операционных систем ....................20 Семейство Windows ...................................................................22 ОС, построенные на принципах UNIX ....................................24 Операционная система Linux ........................................................26 Версии Red Hat Enterprise Linux ...............................................27 Версии Debian ...........................................................................28 Версии Ubuntu ...........................................................................29 FreeBSD .....................................................................................30 Mac OS .......................................................................................32 Контрольные вопросы ...................................................................33 2. Требования к современным операционным системам. Функциональные компоненты операционной системы автономного компьютера .................................................................35 Требования к современным операционным системам ................35 Классификация операционных систем .........................................36 Функциональные компоненты операционной системы автономного компьютера ..............................................................38 Контрольные вопросы ...................................................................40
— 4 — Оглавление 3. Подсистема управления процессами ................................................41 Понятие «процесс» и «поток» ........................................................43 Создание процессов и потоков в ОС Windows .........................44 Планирование и диспетчеризация потоков ..................................45 Состояния потока ..........................................................................47 Алгоритмы планирования .............................................................48 Алгоритмы планирования, основанные на приоритетах .............50 Система приоритетов в ОС Windows ........................................51 Контрольные вопросы ...................................................................54 4. Управления процессами в операционной системе Linux...................55 Типы процессов .............................................................................56 Жизненный цикл процесса............................................................57 Состояния процессов в системе ...............................................59 Управление процессами ................................................................60 Инструменты работы с процессами .........................................62 Контрольные вопросы ...................................................................65 5. Подсистема управления основной памятью .....................................66 Иерархия запоминающих устройств .............................................66 Функции ОС по управлению основной памятью .........................67 Стратегии управления памятью ....................................................68 Типы адресов .............................................................................69 Алгоритмы распределения памяти ................................................70 Свопинг и виртуальная память ......................................................72 Страничное распределение ......................................................76 Стратегии управления страничной виртуальной памятью .....80 Определение размера страницы ...............................................81 Контрольные вопросы ...................................................................82 6. Подсистема управления внешними устройствами (подсистема ввода-вывода) .............................................................83 Дисковая подсистема ОС. Понятие «геометрии диска» ...............83 Понятие раздела. Схема разделов, основанная на MBR ..............86 BIOS и UEFI ..............................................................................88 Особенности работы с дисками и разделами в разных операционных системах ...........................................................92 Контрольные вопросы ...................................................................94 7. Файловые системы ..........................................................................95 Типы файлов ..................................................................................97
— 5 — Иерархическая структура файловой системы ...............................98 Имена файлов ...........................................................................99 Жесткие и символические ссылки ..............................................101 Монтирование файловых систем ................................................103 Атрибуты файлов ....................................................................105 Физическая организация и адресация файла .............................107 Современные файловые системы ................................................109 Примеры файловых систем .........................................................114 Организация ФС FAT .............................................................114 Файловая система NTFS .........................................................118 Контрольные вопросы .................................................................125 8. Отказоустойчивость дисковых систем и восстанавливаемость файловых систем ...........................................................................126 Восстанавливаемость файловых систем......................................127 Восстанавливаемость NTFS ........................................................129 Избыточные дисковые массивы RAID .......................................131 Уровень RAID-0 ......................................................................133 Уровень RAID-1 ......................................................................135 Уровни RAID-2, RAID-3, RAID-4 .........................................137 Уровень RAID-5 ......................................................................138 Другие уровни RAID ...............................................................140 Контрольные вопросы .................................................................141 9. Кэширование данных .....................................................................142 Кэширование данных ..................................................................142 Схема кэширования .....................................................................143 Проблема согласования данных при кэшировании ...................146 Схемы выполнения запросов в системах с кэш-памятью ..........147 Контрольные вопросы .................................................................149 10. Архитектура операционной системы: основные концепции .........150 Архитектура операционной системы .........................................150 Ядро и вспомогательные модули ОС .........................................151 Отличительные свойства ядра ..............................................151 Иерархический (многослойный) подход при построении ядра ..............................................................................................157 Микроядерная архитектура ........................................................162 Достоинства и недостатки использования микроядерной архитектуры ...........................................................................164 Поколения микроядер ..........................................................167
— 6 — Оглавление Архитектура Windows NT ...........................................................167 Исполнительная подсистема ................................................169 Контрольные вопросы ................................................................171 11. Подсистема безопасности ............................................................172 Основные понятия и определения .............................................173 Классификация угроз .................................................................175 Классификация атак ...................................................................177 Основные типы атак на операционную систему .......................177 Системный подход к обеспечению безопасности .....................181 Политика безопасности. Основные принципы ........................183 Основные функции подсистемы безопасности ОС ..................185 Идентификация, аутентификация и авторизация ...............186 Криптографические функции ..............................................187 Аудит ......................................................................................187 Управление политикой безопасности ..................................189 Разграничение доступа к объектам операционной системы ....190 Понятие объекта, субъекта и метода доступа ......................190 Классификация уровней защиты ОС ........................................197 Контрольные вопросы ................................................................200 12. Вредоносное программное обеспечение .......................................201 Законодательные меры против киберпреступлений .................202 Основные типы вредоносного ПО .............................................203 Вирусы ...................................................................................205 Черви .....................................................................................206 Троянские программы ..........................................................207 Разновидности троянских программ (по Касперскому) .....208 Пример троянской программы (KeyPass) ............................209 Эксплойты .............................................................................210 Признаки наличия вредоносного ПО на компьютере ..............211 Правила, которых следует придерживаться, для снижения риска заражения ..................................................212 Контрольные вопросы ................................................................213 Библиографический список .........................................................214
— 7 — Предисловие В данной книге представлен теоретический материал по основам построения и функционирования операционных систем — того класса программного обеспечения, благодаря которому то, что называют «железом», становится не просто набором железных и пластмассовых компонентов, а устройством, способным решать сложнейшие задачи. Основная цель издания не научить читателей устанавливать различные переключатели и кнопки, находя их в определенных окнах, а научиться понимать, как функционирует компьютер, почему и зачем нужно устанавливать те или иные параметры, чтобы компьютер работал и работал эффективно. Автор проиллюстрировала теоретический материал примерами из современных версий операционных систем настольных компьютеров (Windows 10 и Ubuntu (Linux)) для подтверждения того, что большинство описанных концепций не просто теоретические построения, а реальные основы технологий и алгоритмов, реализованных в работающих системах. Материал построен следующим образом: сначала вводная часть, описывающая историю развития операционных систем и описание состояния дел на рынке этого ПО, далее следуют главы, посвященные основным подсистемам, существующим в любой операционной системе. В конце каждой главы есть контрольные вопросы для тестирования степени понимая и усвоения прочитанного материала.
— 8 — 1. Понятие операционной системы. Появление, развитие и особенности современного состояния ОС Определение понятия «операционная система» В се многообразное ПО, установленное на персональном компьютере, можно отнести к одному из 3-х классов: 1) системное ПО — характеризуется тем, что без него ПК неработоспособен. Его в свою очередь можно условно разделить на 3 подкласса: • операционные системы; • отдельные системные программы, не входящие в состав ОС, — программы работы с диском, архиваторы, антивирусные программы и т. д.; • системное ПО для организации работы прикладного ПО, написанного на языке высокого уровня, — компиляторы, интерпретаторы, загрузчики, редакторы связей, системные библиотеки и т. д.; 2) прикладное ПО — характеризуется тем, что крайне разнообразно, сложно найти для него единую классификацию [1, 2]; 3) инструментальное ПО — характеризуется тем, что предоставляет инструментарий для создания других двух классов. Определив место ОС в составе всего ПО, дадим определение этого понятия, базируясь на понимании того, какие основные функции должна выполнять ОС. ОС является центральной составляющей системного ПО, основная задача которого — обеспечить работоспособность компьютера. Следует также учесть, что персональный компьютер подразумевает взаимодействие с пользователем, т. е. ОС должна выполнять интерфейсную функцию между аппаратурой компьютера, с одной стороны, и пользователем, т. е. его приложениями — с другой (рис. 1.1).
— 9 — Определениепонятия«операционнаясистема» Приложение 1 ОПЕРАЦИОННАЯ СИСТЕМА Приложение 2 Приложение 3 АППАРАТУРА Рис. 1.1. Место операционной системы в компьютерной системе Опе рационная система — это программно-аппаратный комплекс, который выполняет 2 основные функции: 1) эффективное управление ресурсами компьютера; 2) создание удобного интерфейса между пользователем и компьютером. Следует отметить, что ОС не просто комплекс взаимосвязанных программ, а программно-аппаратный комплекс, потому что в выполнение части функций аппаратура вовлечена непосредственно, примером может служить система прерываний или аппаратная защита областей памяти. Управление ресурсами состоит в решении следующих общих для всех типов ресурсов задач: 1) планировании ресурса — определение момента времени и объема выделяемого ресурса; 2) удовлетворении запросов на ресурсы — выделение ресурса в запланированном объеме и в запланированный момент времени; 3) отслеживании уровня и учете использования ресурса — поддержание информации о ресурсе в оперативном состоянии; 4) разрешении конфликтов — разрешение конфликтов при попытке одновременного доступа к ресурсу. Создание удобного интерфейса — интерфейсная функция — предполагает, что вместо реальной аппаратуры компьютера, ОС представляет пользователю расширенную виртуальную машину, с которой удобнее работать и которой можно управлять определенным способом. Операционная система образует ту программную среду, в которой выполняются прикладные программы пользователей. Такая среда называется операционной; это следует понимать в том плане, что при запуске программы она будет обращаться к операционной системе с со
— 10 — 1.Понятиеоперационнойсистемы.Появление,развитиеиособенностисовременногосостоянияОС ответствующими запросами на выполнение определенных действий, или функций [3]. История появления операционных систем История любой отрасли науки или техники позволяет не просто удовлетворить любопытство, но и дает основания для более глубокого понимания существующих тенденций, оценки перспективности тех или иных тенденций развития. Исходя из того факта, что ОС — это та часть ПО, которая наиболее тесно связана с аппаратной частью, можно утверждать, что история ОС непосредственно связана с историей вычислительной техники вообще, и рассматривать историю ОС следует в контексте истории развития аппаратуры вычислительных систем. В истории вычислительных машин (ВМ) обычно выделяют 4 (иногда 5) поколений вычислительных машин. Деление на поколения производят на основе определения элементной базы этих машин: лампы, полупроводниковые элементы, интегральные схемы (ИС), большие и сверхбольшие ИС. К пятому поколению иногда относят мобильные устройства (несколько отходя тем самым от принятого деления). Первое поколение ЭВМ. Отсутствие операционных систем Настоящее рождение ЭВМ произошло вскоре после окончания Второй мировой войны, в середине 1940-х гг. были созданы первые ламповые вычислительные устройства. Профессор Д. Атанасов и его аспирант Клиффорд создали в университете штата Айовы конструкцию, которая сейчас считается первым действующим цифровым компьютером. В ней использовалось 300 электронных ламп. Примерно в то же время Конрад Цузе в Берлине построил Z3 компьютер, основанный на использовании электромеханических реле. Отличительные черты этого периода: 1) одна и та же группа людей участвовала в проектировании, эксплуатации и программировании вычислительной машины — не было разделения труда в этой области деятельности, была единая научно-исследовательская работа в области вычислительной техники;