Из понимания ядра Linux, здесь немного обсуждается поток ядра против пользовательского процесса, то есть обычный процесс:
Помимо пользовательских процессов, системы Unix включают несколько привилегированных
процессы называются потоками ядра со следующими характеристиками:
• Они работают в режиме ядра в адресном пространстве ядра .
• Они не взаимодействуют с пользователями и, следовательно, не требуют терминала
устройства.
• Они обычно создаются при запуске системы и остаются живыми
пока система не выключится.
...
В Linux потоки ядра отличаются от обычных процессов в
следующие пути:
• Потоки ядра работают только в режиме ядра, тогда как обычные процессы работают
альтернативно в режиме ядра и в режиме пользователя.
• Поскольку потоки ядра работают только в режиме ядра, они используют только линейные
адреса больше, чем PAGE_OFFSET. Регулярные процессы, с другой
вручную, используйте все четыре гигабайта линейных адресов в любом режиме пользователя
или режим ядра.
Я слышал о виртуальном адресном пространстве пользовательского процесса, то есть обычного процесса, и часть адресного пространства отображается в коде ядра и данных .
Мне было интересно, что означает "адресное пространство ядра" в приведенной выше цитате?
Разве это не часть виртуального адресного пространства пользовательского процесса?
Означает ли это, что ядро имеет свое собственное виртуальное адресное пространство, точно так же, как пользовательский процесс имеет свое собственное виртуальное адресное пространство?
Спасибо.