Pomocí AI byl portován ovladač ftape pro nová jádra Linux, který byl odstraněn před 20 lety

Dmitrij Brant z organizace Wikimedia představil port ovladače ftape pro moderní jádra Linux. Ovladač přestal být aktualizován v roce 2000 a byl vyloučen z jádra 2.6.20 v roce 2006 z důvodu problémů při práci na vícejádrových systémech. K obnovení možnosti kompilace a funkčnosti ovladače v distribucích se současnými jádry Linux bylo potřeba jeho přepracování s ohledem na změny vnitřního API a subsystémů jádra, k nimž došlo za posledních 20 let.

Portování je pozoruhodné tím, že bylo provedeno téměř výhradně silami AI asistenta Claude Code. Nakonec se podařilo vytvořit plně funkční ovladač, který je schopný se sestavovat a fungovat na systémech s jádry 6.8 a novějšími. Portování proběhlo ve třech etapách. V první fázi bylo AI asistentovi zadáno úkol modifikace kódu ovladače, který mohl být kompilován pouze s jádry 2.4, aby se mohl sestavit s novými verzemi jádra. AI úspěšně nahradil v ovladači volání zastaralých funkcí jádra aktuálními voláními, upravil použití datových struktur a odstranil všechny chyby, které se objevily při kompilaci.

Ve druhé fázi bylo zadáno úkol převést ovladač z kompilovatelné formy v jádře na variantu schopnou fungovat jako načitatelný modul jádra. AI asistent připravil načitatelný modul. Ve třetí fázi byla pomocí přenosu výstupu dmesg s informacemi o chybách a problémech, které se vyskytly během provozu, a také ukázkových ladicích dmesg zpráv od funkčního starého ovladače, port uveden do funkčního stavu schopného identifikovat přítomnost pásek a extrahovat obsah kazet.

Práci, která se zpočátku zdála být obtížně proveditelnou a vyžadovat několik týdnů studia dokumentace, se podařilo zvládnout za dva večery. K vytvoření funkčního modulu byly potřeba tři dotazy, několik diskuzí a pár manuálních úprav kódu. Přitom Dmitrij zdůrazňuje, že není dobré přeceňovat AI asistenty, kteří jsou pouze nástroji vyžadujícími smysluplnou interakci. Dmitrij ovládá jazyk C a má představu o modulech jádra, ale přesvědčit AI asistenta, aby jednal správným směrem, aniž by znal vnitřní strukturu modulů jádra, by podle něj bylo nemožné.

Při formulaci úkolu je důležité znát specifika a používat profesionální terminologii, jasně formulovat rámec realizované funkce a definovat mezery v tomto rámci, které má vyplnit AI. Je také nutné prozkoumat silné a slabé stránky AI asistentů, abychom jim nedávali úkoly, s nimiž si nebudou moci dobře poradit. Pro dosažení výsledku doporučuje Dmitrij považovat AI asistenta za zesilovač vlastních dovedností, a komunikaci s ním za spolupráci s podřízeným inženýrem, který udělá vše, co je řečeno, snaží se vyhovět, je sebevědomý, ale uznává chyby. Přijetí rozhodnutí, stanovení pravidel a odpovědnost za výsledek zůstávají na člověku.

Ovladač ftape je určen pro práci s magnetickými páskovými jednotkami, které používají kazety QIC s vlastním proprietárním formátem kódování a komprese dat. Taková zařízení byla často používána v 90. letech pro zálohování. Ovladač podporuje páskové jednotky, které nevyžadovaly drahý SCSI ovladač a připojovaly se k typovému ovladači Floppy disků (například zařízení Colorado Jumbo 250 a Ditto Max) nebo k paralelnímu portu (Trakker, Iomega Ditto).

Ftape byl jediným ovladačem, který dokázal extrahovat dumpy kazet v raw režimu, což umožnilo nejprve nahrát úplný dump a teprve poté se zabývat dekódováním formátu a extrakcí souborů. Připojení jednotky přes ovladač Floppy disků přitom připomínalo hack, protože ovladač musel "ošidit" ovladač určený pouze pro Floppy disky, aby mohl vydávat příkazy a organizovat interakci s páskovou jednotkou.

Dříve pro extrakci informací z páskových kazet musel Dmitrij používat samostatný počítač s CentOS 3.5 a jádrem 2.4.21. Po portaci ovladače bylo možné archive vyextrahovat na PC se současnými distribucemi Linuxu, jako je Ubuntu 24.04. Podporovány jsou 32- a 64bitové verze, ale pro práci s zařízeními připojenými k ovladači Floppy disků je potřeba základní deska s takovým ovladačem.

Mezi aplikacemi ovladače se zmiňuje obnovení dat ze starých páskových kazet a použití v projektech na rekonstrukci retropočítačů. V budoucnu se na základě ovladače plánuje připravit nástroj pro nízkoúrovňové získávání dat z poškozených páskových úložišť, který využívá raw dumpy pro obnovení informací bez ohledu na stav oddílových tabulek nebo přítomnost chyb při korekci chyb.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster