![](/user_photo/2706_HbeT2.jpg)
- •13. Виды ос: пакетная ос, примеры.
- •14. Виды ос: разделения времени, примеры
- •15. Виды ос: реального времени выполнения
- •16. Виды ос: сетевые (кластеры).
- •17. Виды процессов, порождение и ожидание завершения процессов разных видов
- •18. Ядро ос: задачи (управление)
- •19. Ядро ос: виды (монолитное, микро, гибридное).
17. Виды процессов, порождение и ожидание завершения процессов разных видов
Существует два типа процессов:
1) Системные процессы;
2) Пользовательские процессы.
Системные процессы могут порождать другие процессы.
Процесс пользователя не может породить другой процесс, он через запрос на системное обслуживание обращается к ОС которая и выполняет эту функцию.
Контекст и дескриптор процесса.
На протяжение существование процесса, его выполнение может быть многократно прервано и продолжено. Для того чтобы возобновить выполнение процесса, необходимо восстановить состояние его операционной среды на момент прерывание. Состояние операционной среды определяется, состоянием регистров, режимом работы процессора, указателями на открытые файлы, информацией о незавершенных операциях ввода вывода, кодами ошибок системных вызовах. Эта информация называется контекстом процесса.
18. Ядро ос: задачи (управление)
Ядро́ — центральная часть операционной системы (ОС), обеспечивающая приложениям координированный доступ к ресурсам компьютера, таким как процессорное время, память, внешнее аппаратное обеспечение, внешнее устройство ввода и вывода информации, переводя команды языка приложений на язык двоичных кодов, которые понимает компьютер. Также обычно ядро предоставляет сервисы файловой системы и сетевых протоколов.
Как основополагающий элемент ОС, ядро представляет собой наиболее низкий уровень абстракции для доступа приложений к ресурсам системы, необходимым для их работы. Как правило, ядро предоставляет такой доступ исполняемым процессам соответствующих приложений за счёт использования механизмов межпроцессного взаимодействия и обращения приложений к системным вызовам ОС.
Описанная задача может различаться в зависимости от типа архитектуры ядра и способа её реализации.
Ядро операционной системы (Kernel) - часть операционной системы:
постоянно находящаяся в оперативной памяти;
управляющая всей операционной системой;
содержащая: драйверы устройств, подпрограммы управления памятью, планировщик заданий;
реализующая системные вызовы и т.п.
Все операции, связанные с процессами, выполняются под управлением той части операционной системы, которая называется ядром. Ядро представляет собой лишь небольшую часть кода операционной системы в целом, однако оно относится к числу наиболее интенсивно используемых компонент системы. По этой причине ядро обычно резидентно размещается в основной памяти, в то время как другие части операционной системы перемещаются во внешнюю память и обратно по мере необходимости.
Одной из самых важных функций, реализованных в ядре, является обработка прерываний. В больших многоабонентских системах в процессор поступает постоянный поток прерываний. Быстрая реакция на эти прерывания играет весьма важную роль с точки зрения полноты использования ресурсов системы и обеспечения приемлемых значений времени ответа для пользователей, работающих в диалоговом режиме.
Когда ядро обрабатывает текущее прерывание, оно запрещает другие прерывания и разрешает их снова только после завершения обработки текущего прерывания. При постоянном потоке прерываний может сложиться такая ситуация, что ядро будет блокировать прерывания в течение значительной части времени, т. е. не будет иметь возможности эффективно реагировать на прерывания. Поэтому ядро обычно разрабатывается таким образом, чтобы оно осуществляло лишь минимально возможную предварительную обработку каждого прерывания, а затем передавало это прерывание на дальнейшую обработку соответствующему системному процессу, после начала работы которого ядро могло бы разрешить последующие прерывания.
Основные функция ядра:
Ядро операционной системы, как правило, содержит программы для реализации следующих функций:
обработка прерываний;
создание и уничтожение процессов;
переключение процессов из состояния в состояние;
диспетчирование ;
приостановка и активизация процессов ;
синхронизация процессов ;
организация взаимодействия между процессами;
манипулирование блоками управления процессами;
поддержка операций ввода-вывода;
поддержка распределения и перераспределения памяти;
поддержка работы файловой системы ;
поддержка механизма вызова-возврата при обращении к процедурам;
поддержка определенных функций по ведению учета работы
машины.
Ядро не участвует в конкуренции за ресурсы и системной задачей не является. Все необходимые ему ресурсы выделяются отдельно от других задач, фиксировано (часть оперативной памяти). Процессор предоставляется ядру вне конкуренции по прерываниям