Я не знаю много о ядре Linux, и у меня есть несколько вопросов.
Какова основная цель отделения памяти ядра от памяти пространства пользователя? Чтобы убедиться, что пользовательское приложение не может сделать ничего плохого ядру?
Сколько существует способов для приложения уровня пользователя передать управление ядру? Что я могу придумать: include (1) вызов системного вызова, (2) отображение памяти в ядре (но я думаю, что mmap () также системный вызов) и (3) загрузка модуля ядра (но я думаю, lsmod также вызывает некоторый системный вызов). Я прав? Есть ли другие способы, которые я пропустил?
Сколько способов атаковать ядро? Могу ли я иметь некоторые краткие сведения о них?
Если я получаю привилегию root, значит ли это, что я полностью контролирую ядро? А именно, я могу делать все, что захочу с ядром и оборудованием? Или у меня все еще ограничена мощность ядра?
Я был бы очень признателен, если бы кто-нибудь смог помочь мне найти ответ на эти вопросы.