- •Краткая история эволюции вычислительных систем.
- •Третий период (начало 60-х – 1980 г.). Компьютеры на основе интегральных микросхем. Первые многозадачные ос
- •Четвертый период (с 1980 г. По настоящее время). Персональные компьютеры. Классические, сетевые и распределенные системы
- •Основные понятия, концепции операционных систем.
- •Архитектурные особенности ос. Монолитное ядро. Многоуровневые системы. Виртуальные машины. Микроядерная архитектура. Смешанные системы.
- •1.4.1 Монолитное ядро
- •1.4.2 Слоеные системы (Layered systems)
- •1.4.3 Виртуальные машины
- •1.4.4 Микроядерная архитектура.
- •1.4.5 Смешанные системы
- •Классификация ос. Критерии классификации.
- •Процессы. Понятие процесса. Состояние процесса.
- •2.1. Понятие процесса
- •2.2. Состояния процесса
- •Операции над процессами. Набор операций. Process Control Block и контекст процесса.
- •Одноразовые и многоразовые операции. Переключение контекста.
- •2.3.3. Одноразовые операции
- •2.3.4. Многоразовые операции
- •2.3.5. Переключение контекста
- •Планирование процессов. Уровни планирования. Критерии планирования и требования к алгоритмам.
- •3.1. Уровни планирования
- •3.2. Критерии планирования и требования к алгоритмам
- •Планирование процессов. Параметры планирования. Вытесняющее и невытесняющее планирование.
- •3.3. Параметры планирования
- •3.4. Вытесняющее и невытесняющее планирование
- •Алгоритмы планирования процессов. First-Come, First-Served (fcfs).
- •Алгоритмы планирования процессов. Round Robin (rr).
- •Алгоритмы планирования процессов. Shortest-Job-First (sjf).
- •Гарантированное планирование процессов. Приоритетное планирование.
- •3.5.5. Приоритетное планирование
- •Многоуровневые очереди (Multilevel Queue), многоуровневые очереди с обратной связью (Multilevel Feedback Queue).
- •3.5.7. Многоуровневые очереди с обратной связью (Multilevel Feedback Queue)
- •Кооперация процессов. Взаимодействующие процессы. Категории средств обмена информацией.
- •4.1. Взаимодействующие процессы
- •4.2. Категории средств обмена информацией
- •Логическая организация механизма передачи информации. Информационная валентность процессов и средств связи.
- •Особенности передачи информации с помощью линий связи. Буферизация. Нити исполнения.
- •4.3.3.1 Буферизация
- •Механизмы синхронизации процессов. Семафоры. Концепция семафоров. Мониторы. Сообщения.
- •6.1. Семафоры
- •6.1.1. Концепция семафоров
- •6.3. Сообщения
- •Тупики. Условия возникновения. Обнаружение тупиков. Основные направления борьбы с тупиками.
- •7.2 Концепция ресурса
- •7.3 Условия возникновения тупиков
- •7.4 Основные направления борьбы с тупиками.
- •Физическая организация памяти компьютеров.
- •21.Логическая память. Связывание адресов.
- •Схемы управления памятью. Схема с фиксированными разделами.
- •Схемы управления памятью. Оверлейная структура.
- •24.Схемы управления памятью. Динамическое распределение. Свопинг. Схема с переменными разделами.
- •8.3.3 Мультипрограммирование с переменными разделами.
- •Страничная память. Сегментная и сегментно-страничная организация памяти.
- •9.2.1 Страничная память
- •Архитектурные средства поддержки виртуальной памяти. Страничная виртуальная память.
- •9.2.1 Страничная память
- •Архитектурные средства поддержки виртуальной памяти. Сегментно-страничная организация виртуальной памяти. Структура таблицы страниц.
- •9.2.3 Таблица страниц
- •Ассоциативная память. Размер страниц. Инвертированная таблица страниц.
- •Аппаратно-независимый уровень управления виртуальной памятью. Алгоритмы замещения страниц. Алгоритм fifo. Выталкивание первой пришедшей страницы. Аномалия Билэди.
- •10.3.1 Fifo алгоритм. Выталкивание первой пришедшей страницы.
- •10.3.2 Оптимальный алгоритм
- •Аппаратно-независимый уровень управления виртуальной памятью. Управление количеством страниц, выделенным процессу. Модель рабочего множества. Трешинг.
- •Файловая система. Имена файлов. Типы файлов. Атрибуты файлов. Организация файлов и доступ к ним. Операции над файлами.
- •11.2 Имена файлов
- •11.4 Типы и атрибуты файлов
- •11.5 Доступ к файлам
- •Директории. Логическая структура файлового архива. Операции над директориями. Реализация файловой системы. Структура файловой системы. Защита файлов
- •11.8 Операции над директориями
- •Управление внешней памятью. Методы выделения дискового пространства. Управление свободным и занятым дисковым пространством. Размер блока.
- •12.3.2 Управление свободным и занятым дисковым пространством.
- •12.3.3 Размер блока
- •Система управления вводом – выводом. Физические принципы организации ввода – вывода. Структура контроллера устройств. Прямой доступ к памяти (Direct Memory Access – dma).
- •13.1 Физические принципы организации ввода-вывода.
- •Структура контроллера устройства.
- •Прямой доступ к памяти (Direct Memory Access – dma).
- •Логические принципы организации ввода – вывода. Структура системы ввода – вывода. Буферизация и кэширование.
- •13.2.1. Структура системы ввода-вывода.
- •Буферизация и кэширование.
- •Сети и сетевые операционные системы. Сетевые и распределенные операционные системы. Понятие протокола. Структура сетевой операционной системы
- •Адресация в сети. Одноуровневые адреса. Двухуровневые адреса. Удаленная адресация и разрешение адресов. Локальная адресация. Понятие порта. Полные адреса
- •Безопасность операционных систем. Угрозы безопасности. Криптография – базовая технология безопасности операционных систем.
- •15.2 Классификация угроз
- •15.3 Формализация подхода к обеспечению информационной безопасности. Классы безопасности
- •15.4 Политика безопасности
- •15.5 Криптография, как одна из базовых технологий безопасности ос.
- •Защитные механизмы операционных систем. Идентификация и аутентификация. Пароли, уязвимость паролей. Авторизация. Разграничение доступа.
- •16.1 Идентификация и аутентификация
- •16.1.1 Пароли, уязвимость паролей
Безопасность операционных систем. Угрозы безопасности. Криптография – базовая технология безопасности операционных систем.
В октябре 1988 г. в США произошло событие, названное специалистами крупнейшим нарушением безопасности амеpиканских компьютеpных систем из когда-либо случавшихся. 23-летний студент выпускного куpса Коpнеллского унивеpситета Робеpт Таппан Моppис запустил в компьютеpной сети ARPANET пpогpамму; пpедставлявшую собой pедко встpечающуюся pазновидность компьютеpных виpусов - сетевых чеpвей. В pезультате атаки был полностью или частично заблокиpован pяд общенациональных компьютеpных сетей, в частности Internet, CSnet, NSFnet, BITnet, ARPANET и несекpетная военная сеть Milnet. В итоге виpус поpазил более 6200 компьютеpных систем по всей Амеpике, включая системы многих кpупнейших унивеpситетов, институтов, пpавительственных лабоpатоpий, частных фиpм, военных баз, клиник, агентства NASA. Общий ущеpб от этой атаки оценивается специалистами минимум в 100 миллионов доллаpов. Р. Моppис был исключен из унивеpситета с пpавом повтоpного поступления чеpез год, и пpиговоpен судом к штpафу в 270 тыс.долл. и тpем месяцам тюpемного заключения.
Важность решения проблемы информационной безопасности в настоящее время общепризнанна, свидетельством чему служат громкие процессы о нарушении целостности систем. Убытки ведущих компаний США в связи с нарушениями безопасности информации в период с 1997 по 1999 годы составили $360'720'555. Причем только 31% опрошенных компаний смог определить количественно размер потерь. Проблема обеспечения безопасности носит комплексный характер, для ее решения необходимо сочетание законодательных, организационных и программно-технических мер.
Таким образом, обеспечение информационной безопасности требует системного подхода и нужно использовать разные средства и приемы морально-этические, законодательные, административные и технические. Нас будут интересовать последние. Технические средства реализуются программным и аппаратным обеспечением и решают разные задачи по защите и могут быть встроены в операционные системы, либо могут быть реализованы в виде отдельных продуктов. Во многих случаях центр тяжести смещается в сторону защищенности операционных систем.
Говоря об информационной безопасности, иногда различают два термина protection и security. Термин security используется для рассмотрения проблемы в целом, а protection для рассмотрения специфичных механизмов ОС сохраняющих информацию в компьютере. Граница здесь не отчетлива.
Есть несколько причин для реализации защиты. Hаиболее очевидная - помешать внешним вредным попыткам нарушить доступ к конфоденциальной информации. Не менее важно, однако, гарантировать, что каждый программный компонент в системе использует системные ресурсы только способом, совместимым с установленной политикой использования этих ресурсов. Эти требования абсолютно необходимы для надежной системы.
Наличие защитных механизмов может увеличить надежность системы в целом за счет обнаружения скрытых ошибок интерфейса между компонентами системы. Ранее обнаружение ошибок может предотвратить влияние неисправной подсистемы на здоровую.
Политика в отношении ресурсов может меняться в зависимости от приложения и во времени. По этой причине защита не может быть исключительно предметом дизайна ОС. Она также должна давать инструменты прикладным программистам для создания и поддержки защищенных ресурсов. Важный принцип - отделение политики от механизмов. Механизмы определяют то, как что-то может быть сделано, тогда, как политика решает, что должно быть сделано. Отделение политики от механизмов важно для гибкости системы. Политика может меняться в зависимости от места и времени. Желательно по возможности наличие общих механизмов, тогда как изменение политики требует лишь модификации системных параметров или таблиц.
Введем еще несколько понятий (см. также [30]).
Безопасная система обладает свойствами конфиденциальности, доступности и целостности.
Конфиденциальность(confidentiality) уверенность в том, что секретные данные будут доступны только тем пользователям, которым этот доступ разрешен (такие пользователи называютсяавторизованными).
Доступность (availability) гарантия того, что авторизованные пользователи всегда получат доступ к данным.
Целостность (integrity) уверенность в том, что данные сохраняют правильные значения. Это требует средств проверки целостности и обеспечивается запретом для неавторизованных пользователей, каким либо образом модифицировать данные.
Любое действие, которое направлено на нарушение конфиденциальности, целостности и доступности информации называется угрозой. Реализованная угроза называется атакой.