==============Определение процесса================

1. Процесс: активный объект, работающий в (основной) памяти. Приложение, однако, является статическим объектом. Когда приложение загружается в память, оно запускается как процесс.

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

==============Выполнение процесса============

3. Запущенное состояние процесса:

3.1 Инициализировать и загрузить статические данные.

3.2 Во время выполнения процесс будет обрабатывать текущие задачи, такие как выделение памяти, чтение данных из файлов. Это достигается путем создания динамического пространства кучи.

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

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

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

5. Виртуальная память не гарантирует ее полного существования в физической памяти. Также физическая память не может постоянно удовлетворять потребности процессов.

============Состояние выполнения процесса================

6. Как ОС узнает, какой шаг (строки в двоичном коде) выполнила программа/приложение/процесс? Это зависит от счетчика программ, который интегрирован/расположен/принадлежит центральному процессору.

7. Счетчик программ хранится в регистре процессора, который управляет процессом. Существует множество регистров ЦП, соответствующих различным процессам.

8.Указатель стека, указывающий на вершину стека процесса.

===========Блок управления процессом==================

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

9.1 Создается одновременно с самим процессом.

9.2 Некоторые определенные типы его параметров будут обновляться при изменении состояния процесса.

9.3 В случае слишком частых изменений, таких как программный счетчик, печатная плата будет полагаться на внешнюю помощь (например, выделенный счетчик ЦП), чтобы помочь

10. Вопрос: Какая связь между печатной платой и регистром ЦП?

11. Переключение контекста. Когда ЦП изменяет свой рабочий процесс, мы называем это переключением контекста, потому что он должен переключаться для другого контекста процесса. Примечание: этот шаг может быть довольно дорогим из-за 1. количества циклов для загрузки сохраненных инструкций 2. ХОЛОДНЫЙ КЭШ, потери кеша.

============Жизненный цикл процесса===================

12. Жизненный цикл процесса: новый — готовый — запущенный — ожидающий — завершенный

13. Процесс создает дочерний процесс с помощью Fork или Exec, обратите внимание на разницу.

============Правило планировщика процессора=================

14. Функции планировщика ЦП:

14.1 Вытеснить, прервать текущий и сохранить текущий контекст

14.2 Расписание, запустите планировщик, чтобы выбрать следующий процесс для загрузки и запуска

14.3 Отправка, процесс отправки и контекст переключения для него.

15. Определите, как долго должен выполняться процесс.

16. 4 способа входа в очередь готовности процесса. Происходит ввод-вывод, истек временной интервал, разветвлен дочерний процесс, прерван.

===========Взаимодействия между процессами==============

17. Механизмы интеллектуальной собственности:

17.1 Сообщение — Прохождение

17.2 Общая память