
- •Эволюция операционных систем. Структура вычислительной системы
- •Понятие операционной системы.
- •Функции операционных систем.
- •Основные понятия и концепции ос.
- •Архитектурные особенности ос.
- •Классификация ос.
- •Краткие сведения об архитектуре компьютера.
- •История создания ос корпорации Microsoft.
- •Системы Unix и Linux.
- •Дистрибутивы Linux.
- •Процессы. Понятие процесса.
- •Состояния процесса.
- •Одноразовые операции. Упрощенная иеархическая структура процессов.
- •Многоразовые операции. Приостановка, блокирование и разблокирование процесса.
- •Переключение контекста. Выполнение операции разблокирования процесса.
- •Планирование процессов. Уровни планирования процессов.
- •Критерии планирования и требования к алгоритмам.
- •Вытесняющее и невытесняющее планирование.
- •Алгоритм планирования First-Come, First-Served (fcfs).
- •Алгоритм планирования Round Robin (rr).
- •Алгоритм планирования Shortest-Job-First (sjf).
- •Гарантированное планирование.
- •Приоритетное планирование.
- •Многоуровневые очереди с обратной связью (Multilevel Feedback Queue).
- •Категории средств обмена информацией.
- •Логическая организация механизма передачи информации. Установка связи.
- •Особенности передачи информации с помощью линий связи.
- •Буферизация.
- •Поток ввода/вывода и сообщения.
- •Надежность средств связи. Завершение связи.
- •Потоки исполнения.
- •Алгоритмы синхронизации. Interleaving, race condition и взаимоисключения.
- •Критическая секция.
- •Программные алгоритмы организации взаимодействия процессов.
- •Требования, предъявляемые к алгоритмам синхронизации.
- •Запрет прерываний.
- •Переменная-замок.
- •Флаги готовности.
- •Алгоритм Петерсона.
- •Команда Test-and-Set (проверить и присвоить).
- •Команда Swap (обменять значения).
- •Механизмы синхронизации процессов и потоков.
- •Цели и средства синхронизации.
- •Решение проблемы producer-consumer с помощью семафоров.
- •Wait-функции и ожидаемые таймеры.
- •События и семафоры.
- •Мьютексы.
- •Реализация мониторов и передачи сообщений с помощью семафоров.
- •Реализация семафоров и передачи сообщений с помощью мониторов
- •Реализация семафоров и мониторов с помощью очередей сообщений
- •Управление памятью. Физическая организация памяти
- •Физическая организация памяти компьютера
- •Свойство локальности
- •Логическая память
- •Связывание адресов
- •Функции системы управления памятью
- •59. Схема управления памятью с одним процессом в памяти
- •Страничная память
- •Сегментная и сегментно-страничная организация памяти
- •Виртуальная память. Архитектурные средства поддержки виртуальной памяти. Понятие виртуальной памяти
- •Архитектурные средства поддержки виртуальной памяти
- •Страничная виртуальная память
- •Сегментно-страничная организация виртуальной памяти
- •Структура таблицы страниц
- •Ассоциативная память
- •Размер страницы
- •Аппаратно-независимый уровень управления виртуальной памятью. Исключительные ситуации при работе с памятью
- •Стратегии управления страничной памятью
- •Алгоритмы замещения страниц: общие правила, классификация, эффективность
- •Алгоритм fifo
- •Аномалия Билэди
- •Оптимальный алгоритм (opt)
- •Алгоритм nru
- •Алгоритм lru
- •Программное моделирование алгоритма lru
- •Трешинг
- •Моделирование рабочего множества
- •Страничные демоны (сервисы). Фоновый процесс
- •Программная поддержка сегментной модели памяти процесса
- •Файловая система. Файлы с точки зрения пользователя. Функции файловой системы
- •Общие сведения о файлах (имена, типы, атрибуты)
- •Организация файлов и доступ к ним (последовательный, прямой). Формы организации файлов
- •Операции над файлами
- •Директории. Логическая структура файлового архива
- •Разделы диска
- •Операции над директориями
- •Защита файлов
- •Реализация файловой системы. Общая структура файловой системы. Блок-схема файловой системы
- •Управление внешней памятью. Методы выделения дискового пространства
- •Выделение непрерывной последовательностью дисковых блоков
- •Связанный список. Хранение файла в виде связанного списка дисковых блоков.
- •Индексные узлы.
- •Управление свободным и занятым дисковым пространством.
- •Структура файловой системы на диске. Примерная структура файловой системы на диске.
- •Связывание файлов. Структура файловой системы с возможностью связывания файла с новым именем.
- •Кооперация процессов при работе с файлами.
- •Примеры разрешения коллизий и тупиковых ситуаций.
- •Hадежность файловой системы.
- •Целостность файловой системы.
- •Порядок выполнения операций.
- •Журнализация.
- •Производительность файловой системы. Кэширование.
- •Современные архитектуры файловых систем.
- •Дополнительные возможности современных файловых систем (на примере ntfs ос Windows xp).
- •Система управления вводом-выводом
- •Физические принципы организации ввода-вывода.
- •Общие сведения об архитектуре компьютера.
- •Прямой доступ к памяти (Direct Memory Access – dma).
- •Структура системы ввода-вывода. Логические принципы организации ввода-вывода.
- •Структура подсистемы ввода-вывода. Драйверы.
- •Функции подсистемы ввода-вывода.
- •Компоненты подсистемы ввода-вывода (структурная схема).
- •Диспетчер ввода-вывода.
- •Типовая обработка ввода-вывода.
- •Установка драйвера.
- •Диспетчер электропитания.
- •Сетевые и распределенные операционные системы.
- •Взаимодействие удаленных процессов как основа работы вычислительных сетей.
- •Основные вопросы логической организации передачи информации между удаленными процессами.
- •Понятие протокола.
- •Многоуровневая модель построения сетевых вычислительных систем. Семиуровневая эталонная модель osi/iso.
- •Проблемы адресации в сети. Одноуровневые адреса. Двухуровневые адреса.
- •Удаленная адресация и разрешение адресов. Схема разрешения имен с использованием dns-серверов.
- •Основные понятия информационной безопасности. Угрозы безопасности
- •Формализация подхода к обеспечению информационной безопасности.
- •Криптография как одна из базовых технологий безопасности ос.
- •Шифрование. Шифрование открытым ключом.
- •Шифрование с использованием алгоритма rsa.
- •Защитные механизмы ос. Идентификация и аутентификация
- •Пароли, уязвимость паролей.
- •Шифрование пароля.
- •Авторизация. Разграничение доступа к объектам ос.
- •Аудит системы защиты.
- •Анализ некоторых популярных ос с точки зрения их защищенности: ms-dos; Windows nt/2000/xp; Windows Vista; Windows 7.
- •Брандмауэр ос ms Windows.
Эволюция операционных систем. Структура вычислительной системы
Операционная система (ОС) – это программа, которая обеспечивает возможность рационального использования оборудования компьютера удобным для пользователя образом.
Из чего состоит любая вычислительная система? Во-первых, принято называть словом hardware техническое обеспечение: процессор, память, монитор, дисковые устройства и т. д., объединенные магистральным соединением (шиной).
Во-вторых, вычислительная система состоит из программного обеспечения. Все программное обеспечение принято делить на две части: прикладное и системное. К прикладному программному обеспечению, как правило, относятся разнообразные банковские и прочие бизнес-программы, игры, текстовые процессоры и т. п. Под системным программным обеспечением обычно понимают программы, способствующие функционированию и разработке прикладных программ. Надо сказать, что деление на прикладное и системное программное обеспечение является отчасти условным и зависит от того, кто осуществляет такое деление. Так, обычный пользователь, неискушенный в программировании, может считать Microsoft Word системной программой, а с точки зрения программиста, это приложение. Компилятор языка Си для обычного программиста – системная программа, а для системного – прикладная. Несмотря на эту нечеткую грань, данную ситуацию можно отобразить в виде последовательности слоев.
Операционная система является фундаментальным компонентом системного программного обеспечения.
Понятие операционной системы.
Большинство пользователей имеет опыт эксплуатации операционных систем, но тем не менее они затруднятся дать этому понятию точное определение. Давайте кратко рассмотрим основные точки зрения.
Операционная система как виртуальная машина
ОС представляет собой интерфейс между пользователем и компьютером.
Архитектура большинства компьютеров на уровне машинных команд очень неудобна для использования прикладными программами. Например, работа с диском предполагает знание внутреннего устройства его электронного компонента – контроллера для ввода команд вращения диска, поиска и форматирования дорожек, чтения и записи секторов и т. д. Ясно, что средний программист не в состоянии учитывать все особенности работы оборудования (в современной терминологии – заниматься разработкой драйверов устройств), а должен иметь простую высокоуровневую абстракцию, скажем, представляя информационное пространство диска как набор файлов. Файл можно открывать для чтения или записи, использовать для получения или сброса информации, а потом закрывать. Это концептуально проще, чем заботиться о деталях перемещения головок дисков или организации работы мотора. Аналогичным образом, с помощью простых и ясных абстракций, скрываются от программиста все ненужные подробности организации прерываний, работы таймера, управления памятью и т. д. Более того, на современных вычислительных комплексах можно создать иллюзию неограниченного размера операционной памяти и числа процессоров. Всем этим занимается операционная система. Таким образом, операционная система представляется пользователю виртуальной машиной, с которой проще иметь дело, чем непосредственно с оборудованием компьютера.
Операционная система как менеджер ресурсов
Операционная система предназначена для управления всеми частями весьма сложной архитектуры компьютера. Представим, к примеру, что произойдет, если несколько программ, работающих на одном компьютере, будут пытаться одновременно осуществлять вывод на принтер. Мы получили бы мешанину строчек и страниц, выведенных различными программами. Операционная система предотвращает такого рода хаос за счет буферизации информации, предназначенной для печати, на диске и организации очереди на печать. Для многопользовательских компьютеров необходимость управления ресурсами и их защиты еще более очевидна. Следовательно, операционная система, как менеджер ресурсов, осуществляет упорядоченное и контролируемое распределение процессоров, памяти и других ресурсов между различными программами.
Операционная система как защитник пользователей и программ
Если вычислительная система допускает совместную работу нескольких пользователей, то возникает проблема организации их безопасной деятельности. Необходимо обеспечить сохранность информации на диске, чтобы никто не мог удалить или повредить чужие файлы. Нельзя разрешить программам одних пользователей произвольно вмешиваться в работу программ других пользователей. Нужно пресекать попытки несанкционированного использования вычислительной системы. Всю эту деятельность осуществляет операционная система как организатор безопасной работы пользователей и их программ. С такой точки зрения операционная система представляется системой безопасности государства, на которую возложены полицейские и контрразведывательные функции.
Операционная система как постоянно функционирующее ядро
Наконец, можно дать и такое определение: операционная система – это программа, постоянно работающая на компьютере и взаимодействующая со всеми прикладными программами.
Невозможно дать ей адекватное строгое определение. Нам проще сказать не чт. е. операционная система, а для чего она нужна и что она делает.