- •1 Понятие операционной системы 4
- •2 Эволюция и режимы функционирования 10
- •3 Общая архитектура 15
- •4 Управление процессами 23
- •5 Управление памятью 44
- •6 Ввод-вывод и файловая система 65
- •1Понятие операционной системы
- •1.1Назначение и состав системы обработки информации. Понятие виртуальной машины
- •1.2Назначение и функции системных программ
- •1.3Задачи, решаемые операционной системой
- •1.4Операционная система как виртуальная машина
- •1.5Операционная система как система управления ресурсами
- •1.6Оценка деятельности операционной системы
- •1.7Классификация операционных систем
- •Контрольные вопросы
- •2Эволюция и режимы функционирования
- •2.1Непосредственный доступ
- •2.2Пакетный режим
- •2.2.1Однопрограммный (последовательный) режим выполнения пакета
- •2.2.2Многопрограммный режим. Классическое мультипрограммирование
- •2.3Системы информационного обслуживания
- •2.4Режим разделения времени
- •2.5Режим реального времени
- •Контрольные вопросы
- •3Общая архитектура
- •3.1Ядро и вспомогательные модули
- •3.2Ядро в привилегированном режиме
- •3.3Многослойная структура операционной системы
- •3.4Функциональные компоненты операционной системы
- •Контрольные вопросы
- •4Управление процессами
- •4.1Понятия «процесс» и «поток»
- •4.2Создание процессов и потоков
- •4.3Защита ресурсов
- •4.4Планирование и диспетчеризация потоков
- •4.5Состояния потока
- •4.6Мультипрограммирование на основе прерываний
- •4.6.1Назначение, типы и обработка прерываний
- •4.6.2Программные прерывания
- •4.6.3Обработка системных вызовов
- •4.7Синхронизация процессов и потоков
- •4.7.1Цели и средства синхронизации
- •4.7.2Необходимость синхронизации и гонки
- •4.7.3Критическая секция
- •4.7.4Блокирующие переменные
- •4.7.5Семафоры
- •4.7.6Тупики
- •Контрольные вопросы
- •5Управление памятью
- •5.1Функции ос по управлению памятью
- •5.2Типы адресов
- •5.3Свопинг и виртуальная память
- •5.4Страничное распределение
- •5.5Сегментное распределение
- •5.6Сегментно-страничное распределение
- •5.7Разделяемые сегменты памяти
- •Контрольные вопросы
- •6Ввод-вывод и файловая система
- •6.1Управление файлами и внешними устройствами
- •6.2Задачи ос по управлению файлами и устройствами
- •6.3Многослойная модель подсистемы ввода - вывода. Общая схема
- •6.4Логическая организация файловой системы
- •6.4.1Цели и задачи файловой системы
- •6.4.2Типы файлов
- •6.4.3Иерархическая структура файловой системы
- •6.4.4Имена файлов
- •6.4.5Атрибуты файлов
- •6.4.6Логическая организация файла
- •6.5Физическая организация файловой системы
- •6.5.1Диски, разделы, секторы, кластеры
- •6.5.2Физическая организация и адресация файла
- •6.5.3Физическая организация fат
- •6.6Файловые операции
- •6.6.1Два способа организации файловых операций
- •6.6.2Открытие файла
- •Контрольные вопросы
- •Приложение 1. Кэширование данных Назначение кэш-памяти
- •Иерархия запоминающих устройств
- •Принцип действия кэш-памяти
- •Приложение 2. Физическая организация ntfs
- •Структура тома ntfs
- •Структура файлов ntfs
- •Каталоги ntfs
- •Литература
1Понятие операционной системы
1.1Назначение и состав системы обработки информации. Понятие виртуальной машины
Под системой обработки информации (СОИ) обычно понимают совокупность технических и программных средств, предназначенных для решения задач (вычислительных, информационных, функциональных), связанных с обработкой информации на ЭВМ. Такие задачи, считающиеся традиционными, включают:
разработку и отладку программ,
управление информацией (хранение, введение и использование имен и обозначений, поиск, организация связей и т.п.),
эксплуатация программ (запуск программ и контроль за их выполнением).
Заметим, что успешное решение перечисленных задач возможно только в случае предоставления СОИ пользователям соответствующих средств - услуг. Дело в том, что современный пользователь или даже прикладной программист может обойтись без досконального знания аппаратного устройства компьютера. Ему не обязательно быть в курсе того, как функционируют различные электронные блоки и электромеханические узлы компьютера. Более того, очень часто пользователь может не знать даже системы команд центрального процессора.
Говорят, что совокупность предоставляемых СОИ услуг определяет для пользователя виртуальную (абстрактную) машину в отличие от реально существующей физической ЭВМ, а описание этих услуг и правила пользования ими образуют интерфейс СОИ. Этот интерфейс определяет язык виртуальной машины - язык общения пользователей с системой.
Различные классы решаемых задач, опыт и предпочтения пользователей требуют от СОИ предоставления возможности общения с различными виртуальными машинами; в этом смысле можно говорить о Basic-машине, Ci++-машине, Java-машине и т.п. В результате реальная машина, способная выполнять только небольшой набор элементарных действий, определяемых ее системой команд, превращается в виртуальную машину, выполняющую широкий набор гораздо более мощных функций.
На рис.1 представлен общий состав СОИ.
Прикладное программное обеспечение |
Системное программное обеспечение |
Физическая машина |
Рис. 1. Состав системы обработки информации
Взаимодействие такой системы с внешним миром осуществляется с помощью внешних (периферийных) устройств, обеспечивающих связь СОИ с пользователями.
Концептуально СОИ удобно рассматривать с точки зрения двух групп выполняемых ею функций:
функции, общие для широкого круга применений, реализуемые системными программами,
функции, необходимые для решения конкретных задач, и реализуемые конкретными прикладными программами (приложениями).
Здесь каждый слой, с одной стороны, использует ресурсы, предоставляемые слоем,
расположенным непосредственно под ним, а с другой – формирует интерфейс для предоставления собственных ресурсов слою, находящемуся над ним.
Замечание. Границы между слоями подвижны: так, прикладная программа, если она представляет интерес и ценность для широкого круга пользователей и потому часто используется, может быть включена в состав системных программ. В свою очередь, с целью экономии (например, ускорения работы системной составляющей СОИ) функции, выполняемые системной программой, могут быть реализованы микропрограммой, то есть, переданы на аппаратный уровень.