Потоки и процессы

Терминология

Понятия потоков и процессов различаются между отладкой в пользовательском режиме и отладкой в режиме ядра.

  • При отладке в пользовательском режимепроцесс является процессом операционной системы, а поток — потоком операционной системы.

  • При отладке в режиме ядраподсистема отладчика создает виртуальный процесс для каждого целевого объекта; Этот процесс представляет ядро и не соответствует ни одному процессу операционной системы. Для каждого физического процессора на целевом компьютере отладчик создает виртуальный поток; эти потоки представляют процессоры и не соответствуют ни одному потоку операционной системы.

При возникновении события подсистема задает процесс события и поток событий для процесса и потока (операционной системы или виртуальной среды), в которых произошло событие.

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

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

Неявный поток — это поток операционной системы, который определяет регистры целевого объекта, включая стек вызовов, кадр стека и смещение инструкций.

При возникновении события неявный поток и неявный процесс изначально задаются потоком событий и процессом; Их можно изменить, пока сеанс доступен.

Потоки и данные обработки

Подсистема хранит несколько фрагментов информации о каждом потоке и процессе. Сюда входят системный поток и идентификатор процесса и системные дескрипторы, а также среда обработки (PEB), блок среды потока (TEB) и их расположение в памяти целевого объекта.

Дополнительные сведения

Дополнительные сведения об использовании потоков и процессов см. в разделе Управление потоками и процессами.