Я читал, что первые 3 ГБ зарезервированы для процесса, а последние ГБ — для ядра. Еще читал, что ядро загружается начиная со 2-х Мб физического адресного пространства (в зависимости от конфигурации). Мой вопрос в том, что сопоставление этого последнего 1 ГБ одинаково для всех процессов и сопоставлений с этой физической областью памяти?
Другой вопрос, когда процесс переходит в режим ядра (например, когда происходит вызов sys), то какие таблицы страниц используются, таблицы страниц процесса или таблицы страниц ядра? Если используются таблицы страниц ядра, то они не могут получить доступ к ячейкам памяти, принадлежащим процессу. Если это так, то, по-видимому, виртуальная память ядра бесполезна, поскольку весь доступ к коду ядра и данным будет осуществляться через сопоставление последнего 1 ГБ адресного пространства процесса. Пожалуйста, помогите мне прояснить это (любые полезные ссылки будут высоко оценены)