- •1. Понятие и структура ос. Эволюция вычислительных и ос. Основные функции ос
- •Первый период (1945–1955 гг.)
- •Второй период (1955 г.– нач. 60-х)
- •Третий период (нач. 60-х – 1970 г.)
- •Четвертый период (с 1970 – 80 гг.) Персональные компьютеры.
- •Пятый период (с 1980 г. По н.В.)
- •3. Мультипрограммирование. Особенности реализации мультипрограммирования в системах пакетной обработки, разделения времени, реального времени, с мультипроцессорной обработкой
- •В системах пакетной обработки
- •В системах разделения времени
- •В системах реального времени
- •4.1. Различают симметричную и ассиметричную архитектуру таких систем
- •4.2. По способу организации процесса:
- •4. Роль прерываний при мультипрограммировании.
- •5. Понятие процесса и потока. Создание процессов и потоков. Управляющие структуры процессов и потоков
- •6. Контекст процесса и его состояния
- •7. Планирование процессов и потоков: критерии, виды, алгоритмы планирования
- •8. Параллельные процессы, синхронизация процессов, пример необходимости синхронизации, критическая секция.
- •9. Механизмы синхронизации: блокирующие переменные, семафоры, мониторы.
- •1) Блокирующие переменные
- •2) Семафоры
- •10. Проблемы синхронизации(тупики) и способы их разрешения.
- •11. Механизмы межпроцессного взаимодействия (каналы, очереди сообщений, разделяемая память)
- •12. Управление памятью: задачи управления, типы адресации
- •13. Распределение памяти: общие принципы управления памятью в однопрограммных ос, распределение памяти фиксированными, динамическими, перемещаемыми разделами
- •14. Сегментное распределение памяти
- •15. Страничное распределение памяти
- •16. Особенности эффективного использования таблицы страниц: многоуровневые таблицы страниц, ассоциативная память, инвертированная таблица страниц, хеширование
- •17. Сегментно - страничное распределение памяти
- •18. Физическая организация жёсткого диска
- •19. Принципы построения файловой системы: интерфейс, функциональная схема, типовая структура файловой системы
- •20. Способы выделения дискового пространства. Управление дисковым пространством. Размер логического блока
- •21. Особенности организации некоторых файловых систем
- •Vfat (Virtual fat)
Третий период (нач. 60-х – 1970 г.)
Компьютеры на основе интегральных микросхем. Первые многозадачные ОС
В технической базе произошел переход от отдельных полупроводниковых элементов типа транзисторов к интегральным микросхемам, что привело к еще большему:
-
повышению надежности;
-
уменьшению стоимости;
-
повышению производительности;
Повышению эффективности использования процессорного времени мешает низкая скорость работы механических устройств ввода-вывода (1200 перфокарт/мин.)
В пакетные системы вводится прием «spooling» или «подкачки-откачки» данных, что позволило совместить реальные операции ввода-вывода одного задания с выполнением другого задания.
При обработке пакета заданий на носителях непрямого доступа появилась возможность выбора очередного выполняемого задания.
В пакетных системах начинается развитие функций планирования.
Дальнейшее повышение эффективности использования процессора достигается за счет идеи мультипрограммирования - пока одна программа выполняет операцию ввода-вывода, процессор не простаивает, а выполняет другую программу. После окончании операции ввода-вывода, процессор возвращается к выполнению предыдущей программы.
Четвертый период (с 1970 – 80 гг.) Персональные компьютеры.
Следующий период в эволюции вычислительных систем связан с появлением больших интегральных схем (БИС).
Компьютер с достаточно развитой архитектурой стал доступен отдельному человеку.
Период характеризуется тем, что:
-
компьютеры стали использоваться не только специалистами, что потребовало разработки «дружественного» программного обеспечения
-
рост сложности и разнообразия решаемых на ПК задач привели к возрождению практически всех черт, характерных для архитектуры больших вычислительных систем.
Появляется:
-
вытесняющая многозадачность
-
использование концепции баз данных для хранения и распределенной обработки больших объемов информации
-
приоритетное планирование
-
выделение квот на использование ограниченных ресурсов компьютеров
-
системы разделения времени: процессор переключается между задачами через определенные интервалы времени
Пятый период (с 1980 г. По н.В.)
Уменьшается стоимость компьютеров и увеличивается стоимость труда программиста.
Благодаря широкому распространению вычислительных сетей и средств оперативной обработки (работающих в режиме on-line), пользователи получают доступ к территориально распределенным компьютерам.
В середине 80-х стали бурно развиваться сети компьютеров работающих под управлением сетевых и распределенных ОС.
Сетевые (классические) ОС характеризуются:
-
возможностью доступа к ресурсам другого сетевого компьютера
-
каждый ПК в сетевой ОС работает под управлением ОС, отличающейся от ОС автономного компьютера наличием дополнительных средств (программной поддержкой для сетевых интерфейсных устройств и доступа к удаленным ресурсам), которые, однако, не меняют структуру ОС
Распределенные ОС:
-
«внешне» выглядят как обычные автономные системы (пользователь может не знать где хранятся файлы – на локальной или удаленной машине – и где выполняются программы)
-
«внутреннее» строение распределенной ОС имеет существенные отличия от автономных систем
Функции ОС
Все функции ОС можно условно разделить на две различные группы – интерфейсные и внутренние.
Интерфейсные функции ОС:
-
управление аппаратными средствами
-
управление устройствами ввода-вывода
-
управление файловой системой
-
поддержка многозадачности
-
планирование доступа пользователей к общим ресурсам;
-
интерфейс пользователя
-
поддержка работы в локальных и глобальных сетях
Внутренние функции ОС:
-
обработки прерываний
-
управления виртуальной памятью
-
планирования использования процессора
-
обслуживания драйверов устройств
2. Классификация ОС. Архитектурные особенности ОС
1) Монолитное ядро (старейший способ)
- Любая процедура может вызвать любую
- Единое адресное пространство + все процессы привилегированные
- Ядро совпадает с ОС -> при обновлении надо перекомпилировать
2) Многоуровневые системы
- Система разбита на уровни, взаимодействие уровня N возможно только с N-1
3) Виртуальные машины
- Реализуется имитация hardware, при обращении к которому, в действительности происходят вызовы к реальной ОС, которая производит необходимые действия.
4) Микроядерная архитектура
- Большинство составляющих ОС – модули, взаимодействующие через микроядро
«+» - модульность ; возможность без прерывания работы, выгружать и подгружать новые драйверы и файловые системы.
«-» - дополнительные накладные расходы на передачу сообщений, сложный процесс проектирования.
5) Смешанные системы
- Совмещают в себе несколько подходов, к примеру BSD и Windows NT (монолитное ядро + микроядро)
DEF Системный вызов – обращение прикладной программы к ядру ОС для выполнения какой-либо операции.
Обычно выглядит как вызов подпрограммы или функции из системной библиотеки. Однако, системный вызов как частный случай вызова такой ф-ии или подпрограммы следует отличать от более общего обращения к системной библиотеке.
Классификация ОС
-
По назначению
-
Общего назначения
-
Специального назначения (встраиваемые системы, системы реального времени, встраиваемые системы)
-
Многозадачные и однозадачные
- Предоставляют пользователю виртуальную машину, но у многозадачной системы так же идет управление совместно используемыми ресурсами.
-
Многопользовательские и Однопользовательские
- Многопользовательские, в отличии от однопользовательских систем имеют механизм защиты информации каждого пользователя от несанкционированного доступа других пользователей.
- Не всякая многозадачная система является много пользовательская, а однозадачная – однопользовательской.
-
Поддерживающие и не поддерживающие многопоточность
-
Многопроцессорные и однопроцессорные
Вытесняющая и невытесняющая многозадачность
-
Вытесняющая многозадачность (Unix, Windows NT)
- механизм планирования процессов распределен между системой и ПП.
- решение о переключении процесса принимает ОС, а не активный процесс.
-
Невытесняющая многозадачность (Windows 3.x)
- механизм планирования процессом целиком сосредоточен в ОС.
- активный процесс сам отдает управления ОС, что бы та выбрала другой готовый к выполнению процесс.
*ПП – прикладная программа