Код из 2000-х вернулся в Linux благодаря ИИ. Старый ftape-драйвер снова работает на ядре версии 6.8
Новости
Вот так должен использоваться ИИ в разработке
272 открытий3К показов
В Linux 6.8 снова заработал драйвер ftape, который не обновлялся с начала 2000-х. Он обеспечивал поддержку ленточных накопителей формата QIC, которые подключались к обычному флоппи-контроллеру.
Код считался устаревшим, его удалили из ядра в версии 2.6.20 (в 2006 году), а теперь воскресили с помощью ИИ-помощника.
За проект взялся разработчик из Wikimedia — Дмитрий Брант, который сначала не рассчитывал на быстрый успех. Но благодаря Claude Code (ИИ-помощник от Anthropic), старый код удалось привести в рабочее состояние всего за два вечера.
Что за драйвер и зачем он нужен?
ftape — это драйвер для лент, использующих QIC-картриджи. Такие накопители были популярны в 1990-х для резервного копирования, особенно в малом бизнесе и домашних системах.
В отличие от дорогих SCSI-устройств, QIC-ленты подключались прямо к контроллеру флоппи-дисков (или через LPT-порт) — и в этом была вся магия. Драйвер буквально «обманывал» флоппи-контроллер, заставляя его работать с лентами.
ftape умел снимать полные дампы картриджей в raw-режиме, которые потом можно было расшифровать. Это важно для тех, кто хочет восстановить архивы со старых лент, даже если файловая система повреждена.
Как ИИ помог воскресить драйвер
Работа велась в три этапа:
- Миграция под новое ядро. Claude Code получил старый код, совместимый только с ядром 2.4, и на основе подсказок заменил устаревшие вызовы ядра на актуальные API, устранил ошибки компиляции, адаптировал структуры данных.
- Преобразование в модуль. Драйвер был встроенным, а теперь работает как загружаемый модуль (
.ko), что делает его удобнее и безопаснее. - Отладка на современных системах. Разработчик подавал ИИ ассистенту
dmesg-логи и сравнивал с поведением старого драйвера. После нескольких итераций и ручных правок модуль заработал — ленты определяются, данные считываются.
На проект, который казался адом из макросов и документации, ушло всего пару вечеров и три запроса.
Почему это важно
- Проект демонстрирует практическую пользу ИИ в разработке системного ПО, особенно при адаптации заброшенных проектов.
- Драйвер позволяет работать со старыми ленточными архивами без необходимости содержать старые дистрибутивы или «заводить» музейную технику.
- Разработка открывает путь к восстановлению данных с дефектных носителей: сейчас планируют добавить утилиты для низкоуровневого анализа и восстановления по raw-дампам.
Но не все заслуга ИИ
Дмитрий подчеркивает: без понимания архитектуры ядра и Си-языка ничего бы не вышло. ИИ — всего лишь инструмент, который можно направить, если знаешь, куда двигаться.
Он как подчиненный инженер: все сделает, хочет угодить, но требует четкой постановки задачи. Ошибается, признает ошибки, но ответственность все равно на человеке.
Где это можно использовать
- В архивных лабораториях — для восстановления старых данных.
- В проектах по реставрации ретро-компьютеров.
- Для системных экспериментов и исследований истории хранения информации.
Модуль работает на Ubuntu 24.04 и других дистрибутивах с ядром 6.8+, но требует контроллер флоппи-дисков на материнской плате.
272 открытий3К показов



