Linux egyik bájos aspektusa, hogy míg szélesvásznon megy a marketing a mindenen, mindehol, mindenre használhatóságáról, addig a valóságban ez egy rendkívül keskeny ösvényt takar, amiről aztán, ha a user letéved nyakig merül a dágványba.
Folytatva a korábban megkezdett cikksorozatot[url=]szívássorozatot[/url], lássuk miképp lehetséges egy videokazetta tartalmát bevasalni digitális formátumba 2012-ben, Linux alatt.
Első lépés ugye a digitalizáló kártya, ami jelen esetünkben egy veretes 2000-es szériájú Leadtek Winfast kártya. Ez a kártya BT878-as chipre épül, kvázi referencia design (értsd: nincs semmi extra rajta). Anno 2001-ben vettem az elődjét, amit aztán egy többszöri 2.4-es kernel pánik és adatvesztés miatt, hirtelen felindulásból megtapostam és összetörtem (kis naivan azt hittem a kártya a szar). Aztán úgy hozta a sors, hogy egy talicskányi ugyanilyen kártyát kellett mindenféle rendszerekbe tákolnom. Amit jó tudni a kártyáról, hogy alapban két PCI eszközként jelenik meg a buszon, ugyanazon megszakításon és mivel nincs semmilyen komoly buffer mögötte, bizony igen alaposan megrángatja azt.
A kártyák XP alatt tökéletesen mennek, viszont Linux alatt, kernel verziótól függetlenül ordenáré fagyásokat és más vicces jelenségeket produkálnak. Az ok egyszerű és ismert, a kernel képtelen megküzdeni 3-4 konkurens PCI eszköztől jövő azonos megszakításon jövő kérésekkel. A problémában valamilyen szinten a BIOS gyártók keze is sáros, mert a kártyák által generált hibák erősen függenek az alaplapok BIOSától. Azoknál az alaplapoknál, ahol PCI slothoz lehet dedikálni kizárólagosan használt megszakításokat akár 4-5 ugyanilyen kártyával is stabilan működő rendszert összerakni, még régebbi (2.4-es) kernellel is.
Mi van azokkal a userekkel akik nem videodigitalizáló kártyához vesznek alaplapot? Nos nekik marad a szopás.
Egyik megoldás, hogy XPt bootol az ember, majd az Eszközkezelőben addig pöcögteti az eszköz által használt megszakítás, amíg az nem ütközik a másikkal. Ezután, ha nincs automatikus IRQ újrakiosztás engedélyezve a BIOSban, akkor a következő bootnál a kártya működni fog Linux alatt is. Hogy ugyanezt miért nem lehet megcsinálni Linux alatt? Lehet...csak...de...
Tömören összefoglalva, az ami két klikkelés windows alatt, az kernelparaméterezgetés, újraindítgatás, imádkozás és sok-sok kernelpánik. Egy kis olvasgatnivaló a témában: http://www.mjmwired.net/kernel/Documentation/x86/i386/IO-APIC.txt