2

Кроме того, если пользовательский процесс связывает общую lib, скажем, glib, libX, libY, libZ, то glib и libX, Y, Z имеют свои отдельные vma-структуры для текста, данных, но все равно используют один и тот же стек w/пользовательский процесс, правильно?В linux все процессы ядра имеют один и тот же стек ядра, каждый пользовательский процесс имеет свой собственный стек, правильно?

ответ

1

Неверный.

Существует одно адресное пространство ядра и нет процессов ядра.
Есть потоки ядра, и есть потоки пользовательского пространства, которые входят в ядро. Они выполняются в адресном пространстве ядра.
Каждый из них имеет отдельный стек в адресном пространстве ядра.

Смежные вопросы