
- •Состав и принципы работы операционных систем и сред. Понятие, основные функции, типы операционных систем.
- •Определение операционной системы
- •Определение операционной среды
- •Последовательность действий оператора при решении задач на ранних компьютерах без операционной системы
- •Ранние операционные системы имели следующие характеристики
- •Язык управления заданиями
- •Операционные оболочки
- •Иерархическая структура компьютера и операционной системы
- •Последовательность развития системного программного обеспечения
- •9.Последовательность развития системного программного обеспечения
- •Методы обработки пользовательских программ в зависимости от их характеристик
- •Поколения операционных систем
- •Классификационные признаки в определении поколения операционной системы
- •13. Задачи, решаемые операционными системами
- •14. Единицы работ операционных систем
- •15. Классификация операционных систем
- •16. Основные характеристики однопрограммных ос
- •17. Основные характеристики многопрограммных ос
- •18. Организация памяти современного компьютера
- •19. Стековая память
- •Виртуальная память
- •Ассоциативная память
- •Внешняя память
- •Мультипрограммность и мультизадачность
- •Понятие задания в ос
- •Управление ресурсами в ос
- •Понятия процесса и потока
- •Понятие волокна
- •Управление процессами и потоками
- •Формы мультипрограммной работы
- •30.Критерии организации пакетной обработки
- •31. Критерии организации режима разделения времени
- •32.Характеристики систем реального времени
- •33.Характеристики симметричных мультипроцессорных систем
- •34. Последовательность создания процессов в компьютере
- •35. Характеристика образа процесса
- •36. Дескриптор процесса и его характеристика
- •37. Контекст процесса и его характеристика
- •38 Способы реализации потоков
- •39 Достоинства реализации потоков в ядре
- •40 Недостатки реализации потоков в ядре
- •41 Достоинства реализации потоков в пространстве пользователя
- •42) Недостатки реализации потоков в пространстве пользователя
- •43) Потенциальные проблемы, возникающие при выполнении процессов, не осведомленных друг о друге
- •44) Методы взаимоисключения
- •45) Условия возникновения тупиковой ситуации
- •Классы прерываний в компьютерах
- •Состав аппаратных средств систем прерываний компьютеров
- •Последовательность обработки прерываний (запоминание контекста)
- •Последовательность обработки прерываний (собственно обработка прерывания)
- •50. Эволюция ввода – вывода
- •51. Согласование скоростей обмена и кэширования данных
- •52. Системный монитор и его использование
- •53. Диспетчер задач Windows
- •Файл подкачки и его характеристики
- •Адресное пространство операционной системы
- •Соответствие между видом планирования единиц работы ос и выполняемыми функциями планирования
- •Соответствие между алгоритмом планирования и его характеристиками
- •Невытесняющие (non-preemptive)
- •Вытесняющие (preemptive)
- •Концепция квантования потоков
- •60. Приоритеты в алгоритмах планирования мультипрограммного вычислительного процесса.
- •61. Цели создания файловых систем
- •62. Фундаментальные способы организации файлов
- •63. Физическая организация размещения файлов на диске
- •Менеджер ввода-вывода
- •Шифрующая файловая система efs
- •Ресурсы, требуемые для работы устройству ввода-вывода
- •Фрагментация и ее виды, дефрагментация
- •68. Квотирование дискового пространства
- •69. Алгоритм дискового планирования
- •70. Установка разрешений файлам и каталогам
- •71. Семафор Дейкстры.
- •Архитектура операционной системы
- •Достоинства многослойной иерархической архитектуры ос
- •Достоинства микроядерной архитектуры ос
- •Эффективность операционной системы
- •77. Совместимость ос
- •78. Основные преимущества виртуализации ос
- •Драйверы устройств
- •80. Структура адресного пространства прикладного процесса
- •81. Понятие файла и файловой системы
- •82. Главная загрузочная запись диска и ее структура
- •83. Характеристика первичных и расширенных разделов диска
- •84. Виды логической организации файлов
- •85. Точки соединения с ос Windows
- •86. Каталоги файловой системы ntfs
- •87. Интерфейс прикладного программирования
- •88. Сегментная организация памяти
- •89. Страничная организация памяти
- •90. Сегментно-страничная организация памяти
- •91. Последовательность выполнения .Exe файлов
- •Защита и восстановление ос Windows 2000. Архивация. Установочные дискеты. Безопасный режим загрузки.
- •93. Защита и восстановление ос Windows 2000. Консоль восстановления, диск аварийного восстановления. Резервное копирование и восстановление.
- •95. Общая характеристика системы unix. Интерфейсы системы и их характеристика.
- •96. Структура ядра системы unix. Состав и характеристика компонентов ядра.
- •Оболочка системы unix. Работа в оболочке. Командная строка. Основные команды работы с файлами, каналы, сценарии.
- •Команды по работе с файловой системой
- •Операционная система Windows 2000. Структура системы. Основные компоненты и их характеристика.
- •Операционная система Windows 2000. Уровень аппаратных абстракций. Функции уровня. Уровень ядра.
- •Технология аутентификации. Сетевая аутентификация на основе одноразового пароля.
Понятия процесса и потока
Процесс – это целенаправленный акт обработки данных (выполняемая программа или программа в стадии выполнения)
Процессорное время наиболее часто распределяется между потоками. Потоки представляют собой последовательности выполнения команд. Каждый процесс начинается с одного потока, но новые потоки могут выполняться процессором динамически. В простейшем случае процесс состоит из одного потока. Процесс завершится, когда прекратит своё существование последний поток.
Название |
Описание |
Задание |
Набор процессов с общими квотами и лимитами |
роцесс |
Контейнер для ресурсов и потоков |
Поток |
Исполнение кода в процессе |
Волокно |
Облегченный поток, полностью управляемый в пространстве пользователя |
Понятие волокна
Волокно |
Облегченный поток, полностью управляемый в пространстве пользователя |
Волокна подобны потокам, но планируются в пространстве пользователя, создавшей их программой. У каждого потока может быть несколько волокон, с той разницей, что когда волокно блокируется, оно помещается в очередь блокированных волокон. После чего для работы выбирается другие волокна в составе этого же потока. При этом ОС не знает ничего о смене волокон, так как все тот же поток выполняет работу.
Управление процессами и потоками
Основные функции управления процессами и потоками
Создание процессов и потоков.
Обеспечение процессов и потоков необходимыми ресурсами.
Изоляция процессов.
Планирование выполнения процессов и потоков.
Диспетчеризация потоков.
Синхронизация процессов и потоков.
Завершение и уничтожение процессов и потоков.
События, приводящие к созданию процессов:
Инициализация (загрузка) ОС.
Запрос процесса на создание дочернего процесса.
Запрос пользователя на создание процесса (например, при входе в систему в интерактивном режиме).
Инициирование пакетного задания.
Создание операционной системой процесса какой-либо службы.
Подсистема управления процессами и потоками отвечает за обеспечение процессов необходимыми ресурсами. ОС поддерживает в памяти специальные информационные структуры, в которые записывает, какие ресурсы выделены каждому процессу. Она может назначить процессу ресурсы в единоличное пользование или совместное пользование с другими процессами. Некоторые из ресурсов выделяются процессу при его создании, а некоторые – динамически по запросам во время выполнения. Ресурсы могут быть выделены процессу на все время его жизни или только на определенный период. При выполнении этих функций подсистема управления процессами взаимодействует с другими подсистемами ОС, ответственными за управление ресурсами, такими как подсистема управления памятью, подсистема ввода-вывода, файловая система.
Для того чтобы процессы не могли вмешаться в распределение ресурсов, а также не могли повредить коды и данные друг друга, важнейшей задачей ОС является изоляция одного процесса от другого. Для этого операционная система обеспечивает каждый процесс отдельным виртуальным адресным пространством, так что ни один процесс не может получить прямого доступа к командам и данным другого процесса.
В ОС, где существуют процессы и потоки, процесс рассматривается как заявка на потребление всех видов ресурсов, кроме одного – процессорного времени. Этот важнейший ресурс распределяется операционной системой между другими единицами работы – потоками, которые и получили свое название благодаря тому, что они представляют собой последовательности (потоки выполнения) команд. Переход от выполнения одного потока к другому осуществляется в результате планирования и диспетчеризации. Работа по определению момента, в который необходимо прервать выполнение текущего потока, и потока, которому следует предоставить возможность выполняться, называется планированием. Диспетчеризация заключается в реализации найденного в результате планирования решения, т.е. в переключении процессора с одного потока на другой.
Синхронизация потоков является одной из важнейших функций подсистемы управления процессами и потоками. Современные операционные системы предоставляют множество механизмов синхронизации, включая семафоры, мьютексы, критические области и события. Все эти механизмы работают с потоками, а не с процессами. Поэтому когда поток блокируется на семафоре, другие потоки этого процесса могут продолжать работу.
Каждый раз, когда процесс завершается, – а это происходит благодаря одному из следующих событий: обычный выход, выход по ошибке, выход по неисправимой ошибке, уничтожение другим процессом – ОС предпринимает шаги, чтобы "зачистить следы" его пребывания в системе. Подсистема управления процессами закрывает все файлы, с которыми работал процесс, освобождает области оперативной памяти, отведенные под коды, данные и системные информационные структуры процесса.