Описание проекта
Разработка модуля ядра Linux для управления файлами и процессами с внедрением логики контроля доступа. Адаптация системных вызовов и API под Linux, устранение зависимостей от Windows-драйверов, оптимизация производительности и обеспечение безопасности. Взаимодействие драйвера с клиентскими модулями и совместное тестирование функционала с другими командами.
Требования к кандидату
-
Опыт системного программирования на C
-
Глубокие знания POSIX API и системных вызовов Linux
-
Опыт работы с файловыми системами, файловыми дескрипторами, mmap, epoll, inotify
-
Опыт работы с процессами, потоками и межпроцессным взаимодействием (IPC)
-
Создание модулей ядра Linux (Kernel Modules) для управления файлами и процессами
-
Знание структуры VFS (Virtual File System)
-
Работа с системными хуками (ptrace, seccomp)
-
Навыки профилирования и оптимизации кода (GDB, perf, strace, анализ системных логов)
-
Опыт работы с Makefile, CMake
-
Знание Git и CI/CD процессов
-
Учет уязвимостей и обеспечение защиты данных на уровне драйверов
Задачи
-
Разработка модуля ядра Linux для управления файлами и процессами
-
Внедрение логики контроля доступа
-
Адаптация системных вызовов и API под Linux
-
Устранение зависимостей от Windows-драйверов
-
Оптимизация производительности и минимизация накладных расходов драйвера
-
Исправление багов, связанных с безопасностью и производительностью
-
Работа с инструментами профилирования (perf, strace)
-
Настройка взаимодействия драйвера с клиентскими модулями
-
Совместное тестирование функционала с другими командами (Java, аналитики)