Архитектура ЭВМ. Операционные системы. Загрузка операционной системы презентация

Содержание

Слайд 2

Загрузка операционной системы

Загрузка операционной системы

Слайд 3

Этапы загрузки операционной системы

Включение компьютера
Тестирование аппаратуры POST (Power-On Self-Test)
Загрузка BIOS из ПЗУ в

ОЗУ
Загрузка из MBR (Master Boot Record) загрузчика операционной системы (загрузчик 1-ого уровня)
Если есть загрузчик 2-ого уровня (обычно драйвер файловой системы), то загружается он
Загрузка ядра
Запуск основного процесса (init)

Этапы загрузки операционной системы Включение компьютера Тестирование аппаратуры POST (Power-On Self-Test) Загрузка BIOS

Слайд 4

Слайд 5

Состав операционной системы

Управление вводом-выводом, часто включает файловую систему
Управление оперативной памятью
Управление процессами
Межпроцессное взаимодействие

Состав операционной системы Управление вводом-выводом, часто включает файловую систему Управление оперативной памятью Управление процессами Межпроцессное взаимодействие

Слайд 6

Подсистема управления вводом-выводом

Реализует базовые механизмы обмена данными между устройствами ввода-вывода и оперативной

памятью вычислительной машины и обеспечивает организацию файлов в файловые системы.
Операция ввода выполняется как чтение данных с внешнего устройства в оперативную память, операция вывода - как запись данных из оперативной памяти на внешнее устройство.
При работе с файлами система ввода-вывода внедряет специальную абстракцию - поток ввода-вывода, что позволяет приложениям, которые обращаются за сервисами ввода-вывода, использовать однообразный перечень функций работы с файлами независимо от типа устройства, на котором находится файл, и типа файловой системы, содержащей этот файл. Различия доступа к различным устройствам и файловым системам обеспечиваются дополнительными программными модулями - драйверами устройств и файловых систем.

Подсистема управления вводом-выводом Реализует базовые механизмы обмена данными между устройствами ввода-вывода и оперативной

Слайд 7

Подсистема управления оперативной памятью

Обеспечивает распределение оперативной памяти между различными компонентами, а также распределяет

память под кэш системы ввода-вывода.
Виртуализирует оперативную памяти, благодаря чему каждая задача (процесс) получает собственную виртуальную память, причем таким образом, что недостаток реальной (физической) памяти покрывается за счет перераспределения данных между оперативной памятью и внешним накопителем и перемещения данных между физической оперативной памятью и внешним накопителем защищен от задач.

Подсистема управления оперативной памятью Обеспечивает распределение оперативной памяти между различными компонентами, а также

Слайд 8

Подсистема управления процессами

Обеспечивает создание процесса, загрузку программного кода и его выполнения и завершения

процесса.
Кроме того, подсистема обеспечивает диспетчеризацию выполнения процессов.

Подсистема управления процессами Обеспечивает создание процесса, загрузку программного кода и его выполнения и

Слайд 9

Межпроцессное взаимодействие

позволяет процессам синхронизировать свою работу, совместно и согласованно использовать общие ресурсы и

совместно выполнять обработку данных.

Межпроцессное взаимодействие позволяет процессам синхронизировать свою работу, совместно и согласованно использовать общие ресурсы

Слайд 10

Слайд 11

Планирование и диспетчеризация процессов решает две независимые задачи: 1. определяет, какой из готовых к

выполнению процессов, когда, и на какой интервал времени следует передать процессору для выполнения, т.е. выполняет собственно планирование процессов;
2. выполняет переключение процессов, т.е. снимает с исполнения текущий процесс и ставит на исполнение запланированный процесс. Такое переключение процессов называют диспетчеризацией.
Задача планирования является аппаратно-независимой. Планирование процессов осуществляется исходя из степени важности процессов для системы или пользователя и временной статистики их исполнения, т.е. без учета каких-либо аппаратных особенностей компьютера. Задача диспетчеризации, наоборот, является аппаратно-зависимой, т.к. переключение процессов связано с сохранением и загрузкой регистров конкретного процессора.

Планирование и диспетчеризация процессов решает две независимые задачи: 1. определяет, какой из готовых

Слайд 12

Контекст процесса

Каждому процессу соответствует контекст, в котором он выполняется. Этот контекст включает содержимое

пользовательского адресного пространства - пользовательский контекст (т.е. содержимое сегментов программного кода, данных, стека, разделяемых сегментов и сегментов файлов, отображаемых в виртуальную память), содержимое аппаратных регистров - регистровый контекст (регистр счетчика команд, регистр состояния процессора, регистр указателя стека и регистров общего назначения), а также структуры данных ядра (контекст системного уровня), связанные с этим процессом. Контекст процесса системного уровня в ОС UNIX состоит из "статической" и "динамических" частей. У каждого процесса имеется одна статическая часть контекста системного уровня и переменное число динамических частей.

Контекст процесса Каждому процессу соответствует контекст, в котором он выполняется. Этот контекст включает

Слайд 13

Статическая часть контекста процесса

Описатель процесса, т.е. элемент таблицы описателей существующих в системе

процессов. Описатель процесса включает, в частности, следующую информацию:
состояние процесса;
физический адрес в основной или внешней памяти u-области процесса;
идентификаторы пользователя, от имени которого запущен процесс;
идентификатор процесса;
прочую информацию, связанную с управлением процессом.

Статическая часть контекста процесса Описатель процесса, т.е. элемент таблицы описателей существующих в системе

Слайд 14

Статическая часть контекста процесса

U-область (u-area), индивидуальная для каждого процесса область пространства ядра, обладающая

тем свойством, что хотя u-область каждого процесса располагается в отдельном месте физической памяти, u-области всех процессов имеют один и тот же виртуальный адрес в адресном пространстве ядра. Именно это означает, что какая бы программа ядра не выполнялась, она всегда выполняется как ядерная часть некоторого пользовательского процесса, и именно того процесса, u-область которого является "видимой" для ядра в данный момент времени.

Статическая часть контекста процесса U-область (u-area), индивидуальная для каждого процесса область пространства ядра,

Слайд 15

U-область процесса

указатель на описатель процесса;
идентификаторы пользователя;
счетчик времени, которое процесс реально выполнялся

(т.е. занимал процессор) в режиме пользователя и режиме ядра;
параметры системного вызова;
результаты системного вызова;
таблица дескрипторов открытых файлов;
предельные размеры адресного пространства процесса;
предельные размеры файла, в который процесс может писать;
и т.д.

U-область процесса указатель на описатель процесса; идентификаторы пользователя; счетчик времени, которое процесс реально

Слайд 16

Динамическая часть контекста процесса

это один или несколько стеков, которые используются процессом при его

выполнении в режиме ядра. Число ядерных стеков процесса соответствует числу уровней прерывания, поддерживаемых конкретной аппаратурой.

Динамическая часть контекста процесса это один или несколько стеков, которые используются процессом при

Слайд 17

Текст операций системы и ее глобальные информационные структуры совместно используются всеми процессами, но

не являются составной частью контекста процесса.

Текст операций системы и ее глобальные информационные структуры совместно используются всеми процессами, но

Слайд 18

При запуске процесса система исполняется в контексте процесса. Когда ядро системы решает запустить

другой процесс, оно выполняет переключение контекста с тем, чтобы система исполнялась в контексте другого процесса. Ядро осуществляет переключение контекста только при определенных условиях. Выполняя переключение контекста, ядро сохраняет информацию, достаточную для того, чтобы позднее переключиться вновь на первый процесс и возобновить его выполнение. Аналогичным образом, при переходе из режима задачи в режим ядра, ядро системы сохраняет информацию, достаточную для того, чтобы позднее вернуться в режим задачи и продолжить выполнение с прерванного места. Однако, переход из режима задачи в режим ядра является сменой режима, но не переключением контекста.
Ядро выполняет переключение контекста, когда меняет контекст процесса A на контекст процесса B; оно меняет режим выполнения с режима задачи на режим ядра и наоборот, оставаясь в контексте одного процесса, например, процесса A.

При запуске процесса система исполняется в контексте процесса. Когда ядро системы решает запустить

Слайд 19

Ядро обрабатывает прерывания в контексте прерванного процесса, пусть даже оно и не вызывало

никакого прерывания. Прерванный процесс мог при этом выполняться как в режиме задачи, так и в режиме ядра. Ядро сохраняет информацию, достаточную для того, чтобы можно было позже возобновить выполнение прерванного процесса, и обрабатывает прерывание в режиме ядра. Ядро не порождает и не планирует порождение какого-то особого процесса по обработке прерываний.

Ядро обрабатывает прерывания в контексте прерванного процесса, пусть даже оно и не вызывало

Слайд 20

Слайд 21

При переключении контекста происходит сохранение и восстановление следующей информации:
Регистровый контекст регистров общего назначения

(в том числе флаговый регистр)
Контекст состояния сопроцессора с плавающей точкой
Состояние регистров MMX/SSE (x86)
Состояние сегментных регистров (x86)
Состояние некоторых управляющих регистров (например, регистр CR3, отвечающий за страничное отображение памяти процесса) (x86)

При переключении контекста происходит сохранение и восстановление следующей информации: Регистровый контекст регистров общего

Имя файла: Архитектура-ЭВМ.-Операционные-системы.-Загрузка-операционной-системы.pptx
Количество просмотров: 20
Количество скачиваний: 0