В чем разница B / W TCB (блок управления потоком) и PCB (процесс)
Блок управления процессом (PCB)и блок управления потоком (TCB) используются в ядрах linux для того, чтобы иметь время на процессоре, делегированном им. В чем разница между ними?
Какая информация обычно хранится в блоке управления технологическим процессом (ПХД)?
3 ответа:
Некоторые примечательные поля, которые может содержать печатная плата, - это идентификатор процесса, идентификатор группы процессов, родительский процесс и дочерние процессы, указатель кучи, счетчик программ, состояние планирования (запущено, готово, заблокировано), разрешения (к каким системным ресурсам процесс имеет доступ), содержимое регистров общего назначения и открытые файлы.
TCB имеет несколько тех же полей, что и печатная плата (значения регистров, указатель стека, счетчик программ, состояние планирования), в дополнение к нескольким конкретным такие значения, как идентификатор потока и указатель на процесс, содержащий этот поток. Обратите внимание, что между потоками нет защиты.
В Linux есть структура task_struct, которая хранит информацию о потоке или процессе. Он объявлен в схед.h .
Печатная плата хранит информацию о процессе ядра. Например, адресные пространства и т. д...
Процесс может включать в себя различные потоки ядра. Оба управляются диспетчером и планировщиком.
TCB включает в себя информацию о потоке.
"блок управления процессом (PCB) и блок управления потоком (TCB) используются в ядрах, чтобы иметь время на ЦП, делегированном им" - обычно нет. Печатная плата будет иметь один или несколько УТС, связанных с ним. TCB описывает контекст выполнения, (например. указатель стека), текстолит контекст среды, (напр. сегменты памяти и разрешения).