Аннотация:
Разработка ядра операционной системы с нуля обычно занимает у команды опытных инженеров несколько лет. Однако соучредитель CentOS и инициатор проекта Rocky Linux Грегори Курцер недавно продемонстрировал довольно особенный результат: он с помощью агентов искусственного интеллекта создал новое ядро операционной системы Ginux всего за 11 дней. Это ядро не использует какой-либо код ядра Linux, но оно уже может загружать Rocky Linux 10. Хотя это все еще исследовательский прототип, этот проект показывает новую возможность для ИИ участвовать в разработке сложного базового программного обеспечения.

Курцер впервые анонсировал проект Ginux на прошлой неделе через социальную платформу X. Соответствующий код также был загружен на GitHub и принял лицензию Apache 2.0 с открытым исходным кодом. Название Ginux объединяет три элемента Linux: GPT и Greg. Во вступлении к проекту даже пошутило, что, чтобы автор не слишком самовосхвалял, букву G следует интерпретировать как GPT.
Ginux не является ответвлением Linux и не копирует компоненты ядра из существующего кода Linux. Его управление памятью, планирование процессов, файловая система и сетевые функции написаны с нуля и в основном разработаны с использованием языка Rust. Что у него действительно общего с Linux, так это двоичный интерфейс приложений (ABI). Другими словами, Ginux имитирует системный интерфейс, предоставляемый Linux программному обеспечению, так что программы, изначально написанные для Linux, могут работать без изменения кода.
Разработчик проекта описывает этот дизайн следующим образом: Linux — это не просто реализация ядра, его также можно рассматривать как «индивидуальную» среду или среду совместимости, представляемую ядром прикладному программному обеспечению. В настоящее время Ginux реализует только режим совместимости с Linux, и возможность добавления режима совместимости с BSD не исключается в будущем.
Однако Ginux еще далек от полной совместимости с Linux. Согласно документации проекта, если взять за основу интерфейс x86-64 Linux 6.12, только 82 из 375 его системных вызовов были полностью реализованы, еще 245 могут работать лишь частично, а остальные 48 намеренно установлены недоступными. Это означает, что, хотя он уже может работать с некоторым существующим программным обеспечением Linux, его пока нельзя рассматривать как зрелую замену Linux общего назначения.
Ginux также представляет набор механизмов изоляции, называемых «Домены». Программное обеспечение работает в изолированной среде, и каждый домен имеет независимые процессы, пространство памяти и файловые системы. Проект надеется, что этот механизм обеспечит более сильные границы изоляции, чем традиционные контейнеры. Однако Ginux по-прежнему может использовать стандартные образы контейнеров OCI для создания файловых систем для каждого домена. Именно таким образом он смог загрузить Rocky Linux 10 и ускорить загрузку системы до многопользовательской цели systemd.
Самый интересный аспект этого развития — роль искусственного интеллекта. В техническом отчете Курцер называет свой подход «агентной инженерией, управляемой человеком». Он отвечает за определение общей архитектуры, формулирование этапов разработки и критериев приемки, в то время как агент искусственного интеллекта отвечает за большую часть последующей работы по выполнению, включая написание кода, запуск ядра, запуск тестов и модификацию кода после обнаружения проблем.
Весь процесс завершается постоянно выполняющейся задачей OpenAI Codex, в качестве модели используется GPT-5.6 Sol. За 11 дней ИИ сгенерировал в общей сложности около 139 000 строк кода и тестового контента, а также выполнил более 1000 отправок кода. В процессе разработки реальный дистрибутив Rocky Linux также сыграл важную роль: он выявил некоторые проблемы, которые искусственно созданные тестовые примеры не смогли обнаружить при его фактическом запуске и запуске.
Однако Курцер не упаковал Ginux в готовую к использованию операционную систему. В настоящее время проект все еще полностью работает на виртуальной машине QEMU. Он пока не поддерживает прямой запуск на физическом оборудовании, а также не поддерживает устройства хранения данных с графическим процессором и NVMe. Более того, Ginux еще не прошел независимый аудит безопасности, и его безопасность не может быть полностью проверена.
Курцер считает, что искусственный интеллект теперь способен писать сложное системное программное обеспечение, но самая сложная часть не исчезла. Совместимость программного обеспечения, безопасность и возможности долгосрочного обслуживания по-прежнему являются ключевыми барьерами, определяющими, сможет ли операционная система действительно добиться успеха. Другими словами, ИИ может значительно сократить процесс разработки кода с нуля, но он не может автоматически гарантировать достаточную надежность этих кодов и не может заменить длительную инженерную проверку.
В то же время сообщество разработчиков ядра Linux также постепенно пытается внедрить инструменты искусственного интеллекта. В прошлом месяце основатель Linux Линус Торвальдс использовал Claude Code для написания набора экспериментальных патчей к кэшу страниц, но позже рецензенты обнаружили, что существуют условия гонки, поэтому соответствующий код все еще находится на рассмотрении. Примерно в то же время разработчики ядра Linux также согласились больше не требовать от участников раскрытия информации о том, был ли их код создан с помощью искусственного интеллекта.
Значение Ginux может быть не в том, что он может немедленно заменить Linux, а в том, что он демонстрирует новую модель разработки программного обеспечения: люди несут ответственность за цели, архитектуру и ключевые решения, а агенты ИИ отвечают за большой объем конкретной работы по внедрению и тестированию. Сложные системы, на формирование которых раньше уходили годы, теперь могут получить работающий прототип за долю времени. Тем не менее, переход от прототипа к действительно надежной операционной системе, которая может адаптироваться к широкому спектру оборудования и поддерживаться в течение длительного времени, еще долгий инженерный путь.
Комментарии