Этот термин продолжает отображаться в примечаниях к моей операционной системе, и я не совсем уверен, что это такое/где он хранится и как и почему.
Что такое таблица процессов linux? Из чего состоит?
Ответ 1
Таблица процессов в Linux (например, почти в любой другой операционной системе) представляет собой просто структуру данных в ОЗУ компьютера. Он содержит информацию о процессах, которые в настоящее время обрабатываются ОС.
Эта информация содержит общую информацию о каждом процессе
- идентификатор процесса
- владелец процесса
- приоритет процесса
- переменные среды для каждого процесса
- родительский процесс
- указывает на исполняемый машинный код процесса.
Очень важная информация в таблице процессов - это состояние, в котором каждый текущий процесс. Эта информация важна для ОС, поскольку она позволяет так называемую многопроцессорную обработку, то есть возможность фактически запускать несколько процессов только на одном процессоре (ЦП).
Информация о том, используется ли процесс в настоящее время ACTIVE, SLEEPING, RUNNING и т.д., используется ОС для обработки выполнения процессов.
Кроме того, существует статистическая информация, например, когда был запущен процесс RUNNING в последний раз, чтобы позволить планировщику ОС решить, какой процесс должен работать дальше.
Таким образом, таблица процессов является центральным организационным элементом для ОС для обработки всех запущенных процессов.
В этой теме можно найти краткое введение:
http://www.linuxforums.org/forum/kernel/42062-use-process-table.html
И wikipedia также имеет приятную информацию о процессах:
http://en.wikipedia.org/wiki/Process_management_(computing)#Process_description_and_control
Ответ 2
Таблица процессов - это структура данных в ядре Linux, в которой хранится информация обо всех текущих процессах. В таблице процессов содержатся идентификаторы процесса, использование памяти в процессе, что такое дескриптор файла, используемый в процессе, и т.д.
Ядро отслеживает созданный и выполняемый процесс с помощью дескриптора процесса. Каждый дескриптор процесса содержит
1. Identifier - process ID, parent and child process ID, user ID
2. State - process state, priority
3. Resource - CUP and Memory
Основная информация таблицы процессов:
- Идентификатор процесса
- Идентификатор пользователя процесса
- Приоритет процесса
- Состояние процесса
- Использование ресурсов процесса
ps aux - это команда Linux, используемая для перечисления всех состояний процесса и использования ресурсов (памяти, процессора). Вы можете просмотреть список процессов с помощью владельца, PID, CPU, MEM, STAT и т.д.
Ответ 3
Таблица процессов - это структура данных ядра , которая описывает состояние процесса (вместе с процессом U Area). Он содержит поля, которые всегда должны быть доступны ядру.
Он содержит следующие поля:
- поле состояния (которое идентифицирует состояние процесса)
- которые позволяют ядру находить процесс и его область в памяти
- UID для определения различных привилегий процесса
- PID для задания отношений b/w-процессов (например, fork)
- дескриптор события (когда процесс в состоянии сна)
- параметры планирования для определения порядка, в котором процесс переходит к состояниям "запущенное ядро" и "пользователь работает"
- поле сигнала для отправки сигналов в процесс, но еще не обработано
- которые предоставляют время выполнения процесса в режиме ядра и пользовательском режиме.
- которое дает размер процесса (так что ядро знает, сколько места выделяется для процесса).
Короче говоря, таблица процессов предоставляет информацию о процессах в ядре.