PDB или EProcess содержат данные, необходимые ОС для управления процессом и указатели на некоторые дополнительные структуры.
Например, каждый процесс состоит из одного или нескольких потоков, поэтому PDB имеет ссылку на TDB, которое имеет ссылку на базу данных второго потока. Для каждого процесса, выполняющего Win32 приложения процесс подсистемы среды Win32.
Файл csrss.
В дополнение к PDB создаётся параллельно аналогичная структура данных. В PDB имеется указатель на блок данных, который необходим исполнительной системе, работающего в режиме ядра, то есть в Win32k.sys. Кроме того информация, которая активно используется не только ОС, но и конкрентным приложением вынесена в блок PEB (адресное пространство пользователя).
Лекция № 9
PDB (EPROCESS). Начинается со стандартного заголовка. Состоит из идентификатора объекта и счётчика ссылок на этот объект. Далее идёт ссылка на адрес блока KPROCESS, или ссылка на блок процесса ядра.
Блок процесса ядра содержит информацию необходимую для управления процессом для тех компонентов ОС, которые работают в кольце 0, например, диспетчеру процессов. В блоке PDB затем содержится идентификатор родительского процесса.
Для обычных прикладных программ родительским процессом является explorer.exe. В PDB содержится блок квот – это информация об использовании страничного файла процессом.
· Количество страниц данного процесса, которые заблокированы в памяти.
· Дескрипторы виртуальных адресов – это структуры, описывающие распределение ВАП.
· Указатель на цепочку потоков данного процесса.
· Указатель на таблицу дескрипторов.
· Указатель на блок переменных окружения PEB.
· Ссылка на блок процесса подсистемы Win32PROCESS – содержит дополнительную информацию о процессе, которая необходима подсистеме Win32.