Добавил:
Developer Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции (в примечаниях текст).pptx
Скачиваний:
22
Добавлен:
25.03.2023
Размер:
11 Мб
Скачать
☆

Как операционная система загружается в компьютер?

Как приложения взаимодействуют с ОС?

Системный вызов – программное прерывание, обращение пользовательского процесса к ядру операционной системы для выполнения какой-либо операции.

Механизм системных вызовов — это интерфейс, который предоставляет ядро ОС (kernel space) пользовательским процессам (user space).

Системные библиотеки (system DLL – Dynamic Link Library, динамически подключаемая библиотека), преобразующие системные вызовы приложений в системные вызовы ядра

Как оборудование взаимодействует с ОС?

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

•Управление процессами (Process scheduler - планировщик)

•Межпроцессное взаимодействие (IPC - Inter Process Communication)

•Управление памятью (Memory manager)

•Файловая система (File system)

•Пользовательские оболочки

Основные абстракции

Процесс — совокупность инструкций и данных, что находятся в оперативной памяти и обрабатываются процессором. Другими словами - исполнение программы в целом (не путать с потоком исполнения).

Состояние (контекст) процесса

С внешней стороны, процесс можно описать следующим:

•Состояние

-Состояние памяти

-Содержимое регистров процессора

•Адресное пространство — у каждого процесса своё.

•Состояние исполнения — то, исполняется ли этот процесс на процессоре в данный момент или ожидает чего-либо.

•CPU - величина использования процессорного времени.

Сегменты памяти процесса

Состояния исполнения

Информация о процессе

Вся информация о процессе содержится в специальной структуре данных, поддерживаемой операционной системой для каждого процесса – PCB (Process Control Block) - Блок управления процессов.

•Process ID: идентификатор каждого из процессов в ОС.

•State: текущее состояние процесса.

•Privileges: разрешения доступа к системным ресурсам.

•Pointer: указатель на родительский процесс.

•Priority: приоритет процесса и другая информация, которая требуется для планирования процесса.

•Program Counter: указатель на адрес следующей команды, которая должна быть выполнена.

•CPU registers: регистры процессора, необходимые для состояния исполнения.

•Accounting Information: уровень нагрузки на процессор, статистика и другие данные.

•I/O Information: список ресурсов, использующих чтение и запись.

Поток

Файл