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

Содержание

Слайд 2

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

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

Слайд 3

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

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

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

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

Слайд 5

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

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

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

взаимодействие
Слайд 6

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Слайд 11

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

процессами, но не являются составной частью контекста процесса.
Слайд 18

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

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

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

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

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

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

Слайд 21

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

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

общего назначения (в том числе флаговый регистр)
Контекст состояния сопроцессора с плавающей точкой
Состояние регистров MMX/SSE (x86)
Состояние сегментных регистров (x86)
Состояние некоторых управляющих регистров (например, регистр CR3, отвечающий за страничное отображение памяти процесса) (x86)
Имя файла: Архитектура-ЭВМ.-Операционные-системы.-Загрузка-операционной-системы.pptx
Количество просмотров: 26
Количество скачиваний: 0