# Linux Module-HOWTO

## Autor: Lauri Tischler, ltischler@efore.fi
v1.1, 20 października 1996
Wersja polska: Paweł Olszewski alder@amg.net.pl
v1.01, 10 marca 1997

To jest Module-HOWTO, opisujący wszystkie możliwe parametry, które przekazywać można modułom Linuxa w trakcie ich ładowania. Zawarta tu informacja powstała w oparciu o jądro Linuxa w wersji 2.0.23.

## 1. Wstęp

Do napisania tego dokumentu zainspirował mnie znakomity BootPrompt-HOWTO Paula Gortmakera. Za zgodą Paula wykorzystałem jego pracę jako ramę, na której rozpiąłem swoje wywody. Różne części tego dokumentu zostały bezwstydnie, bez jakichkolwiek pozwoleń, skradzione z rozmaitych plików README i *.txt, które znaleźć można w katalogach źródłowych Linuxa. Składam szczere podziękowania wszystkim autorom tych tekstów - dzięki nim mógł powstać Module-HOWTO.

Struktura/kolejność modułów opisanych w niniejszym dokumencie jest w zasadzie analogiczna do zastosowanej w programie konfiguracyjnym jądra systemu - menuconfig, uruchomionym w trybie single_menu_mode=TRUE.

Zamieszczam tutaj wszystkie elementy, które w programie konfiguracyjnym mają opcję "moduł", niezależnie od faktu, czy mają one jakieś parametry ładowania czy też nie.

Wszystkie elementy opracowane są zgodnie z poniższym przykładowym schematem:

    Polecenie ładowania:
            /sbin/modprobe ne.o io=0x300 irq=5

            io = 0          (Wymaga jawnego określenia wartości "io=0xNNN")
            irq = 0         (Próbuje określić ustawione IRQ poprzez autoIRQ)
            (Sprawdza porty: 0x300, 0x280, 0x320, 0x340, 0x360)

            Wymaga 8390.o

Autorem i opiekunem Module-HOWTO jest:

> Lauri Tischler, `ltischler@efore.fi`

Wersja polska:

> Pawko Olszewski, alder@amg.com.pl

> v1.0, 23 lutego 1997

## 1.1 Deklaracja i Prawa autorskie

Ten dokument nie jest wyrocznią. Prawdopodobnie zawiera on jednak najbardziej aktualne informacje, jakie można znaleźć. Za to, co dzieje się z twoimi urządzeniami nie odpowiada nikt inny, jak tylko ty sam. Jeśli twój sprzęt pójdzie z dymem (...prawie niemożliwe!), nie biorę za to żadnej odpowiedzialności. Tzn. AUTOR ANI TŁUMACZ NIE SĄ ODPOWIEDZIALNI ZA JAKIEKOLWIEK USZKODZENIA POWSTAŁE W WYNIKU PODJĘCIA DZIAŁAŃ OPARTYCH NA INFORMACJI ZAWARTEJ W NINIEJSZYM DOKUMENCIE.

Prawa autorskie tego dokumentu (c) 1996 są własnością Lauri Tischlera. Tłumaczenie na polski - Paweł Olszewski (c) 1997. Udziela się pozwolenia na wykonywanie i rozprowadzanie kopii tego podręcznika przy zachowaniu jego brzmienia, pod warunkiem, że nota o prawach autorskich i niniejsze pozwolenie znajdą się w każdej kopii.

Zezwala się również na wykonywanie i rozprowadzanie zmodyfikowanych kopii tego dokumentu w nie zmienionym brzmieniu, pod warunkiem, że niniejsza nota o prawach autorskich zostanie w nich zamieszczona dokładnie tak samo jak w wersji oryginalnej, oraz że cała powstała w oparciu o ten dokument praca będzie rozprowadzana wraz z zezwoleniem identycznym do tego.

Zezwala się na kopiowanie i rozprowadzanie innych wersji językowych tego dokumentu, przy zachowaniu powyżej opisanych zasad co do wersji zmodyfikowanych.

Jeśli zamierzasz włączyć ten dokument do prac przeznaczonych do publikacji, proszę, skontaktuj się z autorem, aby mógł zapewnić, że posiadasz możliwie najbardziej aktualną informację.

Zdarzyło się kiedyś, że opublikowano nieaktualne wersje dokumentów HOWTO dotyczących Linuxa. Skutkiem tego programiści rozwijający Linuxa narażeni zostali na zbędny wysiłek z powodu zalewu pytaniami, na które udzielono już odpowiedzi w uaktualnionych wersjach dokumentów.

## 1.2 Dodatkowa Dokumentacja

Zalecane są następujące HOWTO:

- BootPrompt-HOWTO autorstwa Paula Gortmakera (`Paul.Gortmaker@anu.edu.au`). Nowe wersje tego dokumentu można uzyskać przez anonimowy FTP z sunsite.unc.edu, w katalogu `/pub/Linux/docs/HOWTO/*` oraz z rozmaitych linuxowych archiwów lustrzanych.
- kerneld-mini-HOWTO Henrika Stornera (`storner@osiris.ping.dk`). Najświeższą wydaną wersję tego dokumentu można znaleźć pod adresem `http://eolicom.olicom.dk/~storner/kerneld-mini-HOWTO.html`. Pomiędzy wydaniami nowych wersji tego mini-HOWTO, uaktualnioną listę dokonanych zmian możesz znaleźć pod adresem `http://eolicom.olicom.dk/~storner/kern.html`.

Plik `Documentation/Configure.help` udziela dość dobrej, ogólnej informacji o tym, którym częściom jądra nadawać postać modułów, a którym nie.

Również krocie rozmaitych plików README, porozsiewanych (niestety) po całym Drzewie Katalogów Źródłowych Linuxa są dobrą i pouczającą lekturą.

Najbardziej aktualną dokumentacją zawsze będzie sam Kod Źródłowy. Na przykład, jeśli chcesz się dowiedzieć, jakie parametry mogą zostać przekazane karcie ethernet smc-ultra, zaglądasz do karalogu `linux/drivers/net` i oglądasz plik `smc-ultra.c` -- zazwyczaj gdzieś pod koniec tego pliku można znaleźć procedurę zwaną `init_module`. W obrębie tej procedury lub w jej pobliżu znajdziesz definicje parametrów i ich struktury, odpowiadające parametrom modułu.

## 1.3 Linuxowe Grupy Dyskusyjne

Jeśli masz pytania dotyczące przekazywania modułom parametrów w trakcie ich ładowania, w pierwszej kolejności PRZECZYTAJ ten dokument. Jeśli nie znajdziesz odpowiedzi na swoje pytanie/pytania ani tutaj, ani we wcześniej wymienionej dokumentacji dodatkowej, możesz spróbować spytać w grupach dyskusyjnych.

Ogólne pytania na temat konfigurowania systemu należy kierować do grupy comp.os.linux.setup. Prosimy, abyś respektował tę ogólną zasadę dotyczącą treści listów i nie przesyłał swoich zapytań ogólnych do grup poświęconych konkretnym zagadnieniom.

## 1.4 Nowe Wersje Tego Dokumentu

Nowe wersje oryginału tego dokumentu pobrać można przez anonimowy FTP z sunsite.unc.edu, z katalogu `/pub/Linux/docs/HOWTO/*` i wielu linuxowych archiwów lustrzanych. Poprawki będą dokonywane w miarę pojawiania się informacji o nowych sterownikach. Jeśli kopia, którą czytasz ma więcej niż 3 miesiące, oznacza to, że jest albo nieaktualna, albo że byłem leniwy i jej nie zaktualizowałem.

Najnowsza wersja niniejszego dokumentu w wersji polskiej znajduje się w oficjalnym archiwum polskich wersji dokumentów Linux HOWTO `ftp://ftp.ippt.gov.pl/pub/Linux/JTZ/`, a także pod adresem `http://www.amg.net.pl/Linux/JTZ/`.

Ten dokument został przygotowany przy użyciu systemu SGML, specjalnie skonfigurowanego dla celów Projektu Linux Howto. Dostępne są różne formaty wyjściowe, do których zaliczyć można: postscript, dvi, ascii, html oraz wkrótce TeXinfo.

Zalecałbym oglądanie tego dokumentu w formacie html (w przeglądarce WWW) lub w formacie Postscript/dvi. Oba z nich zawierają aktywne powiązania, które nie występują w formacie ascii.

Jeśli chcesz otrzymać oficjalną kopię angielską z sunsite, oto URL:

Module-HOWTO

## 1.5 Moduły eksperymentalne (kod alpha) lub niepełna informacja.

Oto lista modułów określonych w skryptach konfiguracyjnych jako eksperymentalne, posiadających niewystarczające informacje, lub takich, których Kodów Źródłowych nie rozumiem, bo jestem zbyt ciemny. Wybór należy do ciebie.

- Obsługa formatu binarnego JAVA.
- Sterownik Frame Relay DLCI.
- Sterownik Sangoma S502A FRAD.
- Sterownik BAYCOM do AX.25.
- Most WIC Radio IP.
- Sterownik karty ethernet 3Com 3c505.
- Sterownik karty ethernet 3Com 3c507.
- Sterownik karty ethernet Allied Telesis AT1700.
- Sterownik Intel Ether Express Pro.
- Sterownik karty ethernet Fujitsu FMV-18x.
- Sterownik karty ethernet ICL EtherTeam 16i/32.
- Sterownik karty ethernet NI 5210.
- Sterownik karty ethernet Ansel Communications EISA 3200.
- System plików Amiga FSS.

## 1.6 Historia wersji.

- Wstępna wersja 1.0, 20 czerwca 1996.
- Wersja 1.1, 20 października 1996.

- Pierwsza wersja polska v.1.0, 23 lutego 1997
- Poprawiona nieco v.1.01, 10 marca 1997

## 2. Programy narzędziowe do obsługi modułów

Jest to zestaw programów niezbędnych do obsługiwania modułów. W czasie, gdy to piszę, najświeższa wersja narzędzi do obsługi modułów to `modules-2.0.0.tar.gz`. Informacje na temat bieżącej wersji można znaleźć pod adresem `http://www.pi.se/blox`

Pierwszą informację o modułach udostępnili panowie Jacques Gelinas `jacques@solucorp.qc.ca` oraz Björn Ekwall `bj0rn@blox.se` za pośrednictwem pliku `/usr/src/linux/Documentation/modules.txt`.

## 2.1 Tworzenie modułów

W pierwszym kroku powinieneś skompilować jądro, tak jak jest to opisane w pliku `linux/README`. Ogólnie rzecz biorąc robi się to tak:

- make config
- make dep
- make clean
- make zImage lub make zlilo

Przy `make config`, wybierasz, które elementy chcesz włączyć do rezydentnej części jądra, a które chcesz używać w postaci ładowalnych modułów. Zazwyczaj do części rezydentnej włączasz minimum składników koniecznych do załadowania systemu:

- System plików twojej partycji root
- Sterownik SCSI
- Obsługa zwykłych twardych dysków
- Obsługa sieci (CONFIG_NET)
- Obsługa protokołu TCP/IP (CONFIG_INET), ale bez sterowników!
- oraz wszystkie rzeczy, bez których po prostu nie da się żyć...

Liczba modułów nieustannie się zwiększa i dla wszystkich elementów, które można w danym jądrze skompilować do postaci modułów, będziesz mógł wybrać opcję `m` w `make config` .

Masz również możliwość stworzenia modułów, które są w mniejszym stopniu zależne od wersji jądra. Można tę opcję ustawić w trakcie `make config`, przez włączenie `CONFIG_MODVERSIONS`. Jest ona najbardziej przydatna w przypadku stabilnych wersji jądra, takich jak na przykład jądra serii 1.2 i 2.0. Jeśli masz moduły, które oparte są na kodach nie dołączonych do oficjalnych kodów źródłowych jądra, ta opcja z pewnością ci się spodoba...

Po skompilowaniu jądra, generujesz moduły poleceniem:

> `make modules`

Nastąpi kompilacja wszystkich modułów i uaktualnienie katalogu `linux/modules`. W tymże katalogu znajdziesz masę dołączeń symbolicznych, wskazujących rozmaite pliki obiektowe w katalogach źródłowych jądra.

Teraz, gdy już stworzyłeś wszystkie moduły, powinieneś również wydać polecenie:

> `make modules_install`

Skopiuje ono wszystkie nowo stworzone moduły do katalogów `/lib/modules/wersja_jądra/`, gdzie `wersja_jądra` to coś w rodzaju 2.0.1, zależnie od obecnie posiadanej przez ciebie wersji jądra.

Jak tylko przeładujesz nowo stworzone jądro, możesz instalować i usuwać moduły za pomocą programów narzędziowych `insmod` i `rmmod`. Jeśli przeczytasz stronę podręcznika systemowego `man` na temat `insmod`, dowiesz się również, jak łatwo jest skonfigurować moduł przy użyciu `insmod` (wskazówka: symbol=wartość).

## 2.2 Rozszerzone programy narzędziowe, `modprobe` i `depmod`.

Masz również dostęp do dwóch programów narzędziowych: `modprobe` i `depmod`. modprobe jest to wrapper lub rozszerzenie do `insmod`. Owe narzędzia wykorzystują (i utrzymują) zestaw plików, umieszczonych w katalogu `/lib/modules`, opisujących wszystkie dostępne dla danej wersji jądra moduły wraz z ich wzajemnymi zależnościami.

Przy użyciu programu modprobe, możesz załadować każdy moduł w następujący sposób:

> `/sbin/modprobe module`

bez zwracania szczególnej uwagi na wersję jądra, które aktualnie pracuje, lub na fakt, od jakich innych modułów dany moduł zależy.

Z pomocą pliku konfiguracyjnego programu modprobe: `/etc/conf.modules`, możesz na rozmaite sposoby decydować o zachowaniu tego programu, w tym również o automatycznym ustawianiu opcji programu insmod dla poszczególnych modułów. Tak, tak, wszystko to jest również udokumentowane na stronach podręcznika systemowego "man"...

Aby z skutecznie używać programu modprobe, ogólnie rzecz biorąc, należy umieścić następujące polecenie w skrypcie `/etc/rc.d/rc.S`. (Na ten temat możesz przeczytać więcej w pliku `rc.hints` z pakietu programów narzędziowych do obsługi modułów, `modules-x.y.z.tar.gz`.)

> `/sbin/depmod -a`

Zostaną znalezione zależności pomiędzy różnymi modułami. Wówczas, jeśli na przykład wpiszesz:

> `/sbin/modprobe umsdos`

automatycznie załadujesz zarówno moduł `msdos`, jak i `umsdos`, ponieważ `umsdos` jeździ na baranach `msdos`.

## 2.3 Optymalne narzędzie, `kerneld`.

No dobra, przeczytałeś wszystko powyższe i jesteś bardzo zachwycony... Teraz mówimy ci, abyś zapomniał wszystko o tym, jak ładować i usuwać moduły ładowalne.

Z pomocą demona kerneld, wszystkie te rutynowe czynności będą wykonywane automatycznie. Wystarczy, że zaznaczysz "Y" przy opcji CONFIG_KERNELD w `make config`, oraz upewnisz się, że `/sbin/kerneld` jest uruchamiany możliwie jak najszybciej po załadowaniu systemu i że `/sbin/depmod -a` był już uruchamiany dla bieżącego jądra. (Więcej informacji na ten temat znajdziesz w pakiecie narzędziowym do obsługi modułów).

Ilekroć jakiś program zażyczy sobie, aby jądro wykonało funkcję, która jest dostępna jedynie w obrębie ładowalnego modułu, a moduł ów nie jest jeszcze zainstalowany w jądrze, jądro poprosi demona kerneld o zajęcie się tą sytuacją.

Oto, co się dzieje:

- Jądro spostrzega się, że żądany element nie jest rezydentny w jądrze.
- Jądro wysyła wiadomość do kerneld, wraz z symbolicznym opisem żądanej funkcji.
- Demon kerneld zleca programowi modprobe załadowanie modułu odpowiadającego temu symbolicznemu opisowi.
- Modprobe zerka w swoją wewnętrzną tablicę translacji oznaczeń (alias), aby sprawdzić, czy jest jakieś pasujące. Tablicę te można przekonfigurować i rozszerzyć wstawiając wiersze alias do pliku `/etc/conf.modules`.
- Następnie programowi insmod zlecane jest wstawienie modułu (modułów), które na podstawie ustaleń modprobe potrzebne są w jądrze. Każdy moduł zostanie skonfigurowany zgodnie z opcjami zawartymi w wierszach `options` pliku `/etc/conf.modules`.
- Modprobe kończy działanie i kerneld informuje jądro, że żądanie zostało wykonane (lub skończyło się niepowodzeniem...)
- Jądro wykorzystuje świeżo zainstalowany element tak samo, jak gdyby był on dołączony do rezydentnej części jądra.

Śmietanką na całym naszym torcie jest to, że jeśli automatycznie zainstalowany moduł nie jest przez jakiś czas używany (zazwyczaj przez 1 minutę), jest on również automatycznie usuwany.

Powoduje to, że jądro używa minimalnego niezbędnego w danym momencie obszaru pamięci, umożliwiając jej bardziej efektywne wykorzystanie niż w charakterze pojemnika na nie używany kod.

Tak naprawdę, jest to jedynie efekt uboczny prawdziwej zalety kerneld: Musisz jedynie stworzyć jądro-minimum, mniej lub bardziej niezależne od faktycznej konfiguracji sprzętowej. Ustawienia wirtualnego jądra są natomiast nadzorowane w oparciu o plik konfiguracyjny, przy uwzlędnieniu bieżącego sposobu użytkowania komputera i jądra systemu.

Powinna to być dobra wiadomość dla osób opiekujących się wieloma komputerami, jak również dla tych, którzy opiekują się dystrybucjami.

Aby używać kerneld bez nadmiernych zmagań, będzie ci potrzebny modprobe z wersji, którą można uznać za świeżą w stosunku do twojego jądra, jak również plik konfiguracyjny dla modprobe (`/etc/conf.modules`).

Ponieważ modprobe zna większość modułów, najprostszy plik konfiguracyjny może wyglądać tak:

> `

>     alias scsi_hostadapter aha1542  # czy też jakikolwiek inny kontroler SCSI, jaki
>                                       posiadasz

>     alias eth0 3c509 # lub jakaś inna, używana przez ciebie karta ethernet

>     # dla niektórych kart sieciowych możesz potrzebować
>     # wiersza opcji - "options"
>     options 3c509 io=0x300 irq=10

>     # możesz też potrzebować wiersza opcji dla jakiegoś innego modułu
>     options cdu31a cdu31a_port=0x1f88 sony_pas_init=1

> `

Mógłbyś również dodać poniższe linie, ale są to jedynie upiększenia:

> `

>     alias net-pf-3 off      # (nadal) brak modułu ax25
>     alias net-pf-4 off      # jeśli nie używasz modułu ipx
>     alias net-pf-5 off      # jeśli nie używasz modułu appletalk

> `

Na koniec, dla pedantów: Możesz nazwać plik konfiguracyjny `/etc/conf.modules`, albo `/etc/modules.conf`, gdyż modprobe wie, jak postępować w każdym z tych przypadków.

## 3. Ogólne Ustawienia Jądra

Uwaga: nie możesz mieć obsługi a.out oraz ELF jednocześnie skompilowanych jako moduły. W przeciwnym razie nieźle się zapętlisz przy próbie uruchomienia insmod aby załadował obsługę a.out/ELF, co jest potrzebne do uruchmienia insmod ;-) Jeśli masz system w pełni ELF, ale potrzebujesz obsługę formatu a.out dla sesji Netscape od czasu do czasu, możesz obsługę a.out skonfigurować jako moduł.

W przeciwnym wypadku, prawdopodobnie powinieneś zostawić obsługę a.out w jądrze, natomiast jeśli w ogóle nie masz jeszcze ELF, możesz zignorować obsługe ELF.

## 3.1 Obsługa plików binarnych a.out (`binfmt_aout.o`).

    Polecenie ładowania:
            /sbin/modprobe binfmt_aout.o

            Brak parametrów modułu.

## 3.2 Obsługa plików binarnych ELF (`binfmt_elf.o`).

    Polecenie ładowania:
            /sbin/modprobe binfmt_elf.o

            Brak parametrów modułu.

## 3.3 Obsługa plików binarnych JAVA (`binfmt_java.o`).

JAVA jest obiektowo zorientowanym językiem programowania, rozwijanym przez firmę SUN; programy w języku JAVA kompilowane są do postaci "JAVA bytecode", która może później być interpretowana w trakcie uruchamiania na wielu różnych systemach operacyjnych. Owe pliki binarne JAVA stają się uniwersalnym formatem plików uruchamialnych. Ta opcja pozwala uruchamiać pliki binarne w Javie tak samo jak wszystkie inne programy: przez wpisanie ich nazwy.

    Polecenie ładowania:
            /sbin/modprobe binfmt_java.o

            Brak parametrów modułu.

## 4. Stacja dysków i inne urządzenia blokowe

## 4.1 Sterownik Stacji Dysków (`floppy.o`).

Jest wiele opcji sterownika stacji dysków i wszystkie z nich są wymienione w pliku `README.fd` w katalogu `linux/drivers/block`. Po szczegółowe i aktualne informacje odwołuj się bezpośrednio do tego właśnie pliku.

    Polecenie ładowania:
            /sbin/modprobe floppy.o 'floppy="<opcje>"'

            Wyjaśnienie opcji poniżej...

`mask,allowed_drive_mask` - Ustawia maskę bitową dozwolonych napędów jako `mask`. Domyślnie, dopuszczone są jedynie urządzenia 0 i 1 każdego kontrolera stacji dysków. Jest tak dlatego, że pewne niestandardowe urządzenia (płyty główne ASUS PCI) knocą klawiaturę kiedy korzysta się z urządzeń 2 lub 3. Opcja ta jest w pewnym stopniu zdezaktualizowana przez opcje CMOS.

`all_drives` - Ustawia maskę bitową dozwolonych napędów aby wszystkie były dozwolone. Użyj tego parametru jeśli do kontrolera stacji dysków podłączone masz więcej niż dwa napędy.

`asus_pci` - Ustawia maskę bitową dozwolonych napędów tak, aby dopuszczone były jedynie urządzenia 0 i 1. (Domyślne)

`daring` - Informuje sterownik stacji dysków, że masz dobrze zachowujący się kontroler napędów. Pozwala to na bardziej wydajną i płynną pracę, ale w przypadku pewnych kontrolerów może nie działać. Pewne operacje mogą być dzięki temu przyspieszone.

`0,daring` - Informuje sterownik stacji dysków, że kontroler napędów powinien być używany ostrożnie.

`one_fdc` - Informuje sterownik stacji dysków, że masz tylko jeden kontroler (domyślne).

`two_fdc` lub `adres,two_fdc` - Informuje sterownik stacji dysków, że posiadasz dwa kontrolery napędów. Uznaje się przy tym, że drugi kontroler ma adres `adres`. Owa druga opcja nie jest konieczna jeśli drugi kontroler jest pod adresem 0x370, oraz jeśli używasz opcji 'CMOS'.

`thinkpad` - Informuje sterownik stacji dysków, że posiadasz Thinkpad. Thinkpady używają odwróconą konwencję polecenia zmiany dysków.

`0,thinkpad` - Informuje sterownik stacji dysków, że nie masz Thinkpada.

`omnibook` lub `nodma` - Informuje sterownik stacji dysków, że DMA ma nie być używane w trakcie przesyłania danych. Jest to konieczne na Omnibookach HP, nie posiadają one bowiem kanału DMA, który mógłby być użyty przez sterownik stacji dysków. Opcja ta przydaje się również wtedy, gdy często otrzymujesz komunikaty "Unable to allocate DMA memory". Rzeczywiście, pamięć DMA musi być fizycznie ciągła, przez co trudniej ją przydzielić, podczas gdy bufory przeznaczone do innych celów mogą być przydzielone w pamięci wirtualnej. Jednakże odradzam tę opcję, jeśli posiadasz kontroler stacji dysków bez FIFO (8272A lub 82072). 82072A i późniejsze są OK. Aby używać nodma, potrzebujesz również co najmniej 486. Jeśli używasz trybu nodma, zalecam, abyś również ustawił próg czułości FIFO na 10 lub niższy, aby ograniczyć ilość generowanych przerwań przesyłu danych.

`dma` - Informuje sterownik stacji dysków, że dostępny jest działający kanał DMA (ustawienie domyślne).

`nofifo` - Całkowicie wyłącza FIFO. Jest to konieczne, gdy otrzymujesz komunikaty "Bus master arbitration error" od karty ethernet (lub innych urządzeń) w trakcie korzystania ze stacji dysków.

`fifo` - Włącza FIFO (domyślne)

`[próg czułości],fifo_depth` - Ustawia próg czułości FIFO. Opcja ta jest najbardziej stosowna w trybie DMA. Jeśli ten parametr jest wyższy, sterownik stacji dysków toleruje większe opóźnienia przerwań, ale generuje więcej przerwań, (tzn. w większym stopniu obciąża system). Jeśli parametr ten jest niższy, opóźnienia przerwań również powinny być mniejsze (procesor działa szybciej). Zaletą niższego progu czułości jest mniejsza ilość przerwań.

Aby wyregulować próg czułości fifo, włącz komunikaty przepełnienia/niedoboru przy użyciu komendy 'floppycontrol --messages'. Następnie skorzystaj z napędu. Jeśli otrzymasz dużo komunikatów przepełnienia/niedoboru ("Over/Underrun - retrying"), oznacza to, że próg czułości fifo jest za niski. Powinieneś podwyższać próg do momentu, w którym będziesz otrzymywać wyżej opisane komentarze tylko od czasu do czasu. Dobrze jest skompilować sterownik napędu dysków jako moduł przy okazji testowania czułości fifo. Pozwala to na testowanie różnych ustawień fifo bez konieczności przeładowywania systemu za każdym razem. Pamiętaj, że powinieneś wykonać 'floppycontrol --messages' po każdym załadowaniu modułu. Zazwyczaj regulowanie progu czułości fifo nie jest konieczne, gdyż domyślne ustawienie (0xa) jest rozsądne.

`[napęd],[typ],cmos` - Ustawia typ CMOS napędu `napęd` jako `typ`. Jest to konieczne jeśli masz więcej niż dwa napędy dysków (jedynie dwa mogą być zdefiniowane fizycznym CMOS), lub jeśli twój BIOS używa niestandardowych typów CMOS. Typy CMOS to:

                    0 - Użyj wartość fizycznego CMOS
                    1 - 5 1/4 DD
                    2 - 5 1/4 HD
                    3 - 3 1/2 DD
                    4 - 3 1/2 HD
                    5 - 3 1/2 ED
                    6 - 3 1/2 ED
                   16 - nie znany lub nie zainstalowany

(Uwaga: dla napędów ED istnieją dwa poprawne typy. Jest tak, ponieważ początkowo typ 5 wybrano dla napędów taśmowych, a 6 dla napędów ED. Było to ignorowane przez firmę AMI, która wykorzystywała typ 5 dla napędów ED. Oto dlaczego sterownik stacji dysków obsługuje oba).

`unexpected_interrupts` - Wypisanie ostrzeżenia w przypadku otrzymania nieoczekiwanego przerwania (zachowanie domyślne).

`no_unexpected_interrupts` lub `L40SX` - Nie wypisuj komunikatów w przypadku otrzymania nieoczekiwanego przerwania. Ta opcja jest potrzebna na laptopach IBM L40SX przy pewnych trybach graficznych. (Wydaje się, że jest jakaś współzależność obsługi grafiki i napędów dysków. Nieoczekiwane przerwania mają wpływ jedynie na wydajność i bezpiecznie można je pominąć).

## 4.2 Obsługa urządzenia blokowego loopback (`loop.o`).

Włączenie tej opcji umożliwi ci montowanie pliku jako system plików. Jest to przydatne, gdy chcesz sprawdzić system plików ISO9660 zanim wypalisz CD-ROM, lub jeśli chcesz używać obrazów zawartości dyskietek przed ich zapisaniem.

Opcja ta również umożliwia zamontowanie systemu szyfrowanego. Aby wykorzystać tę możliwość, potrzebujesz ostatnie uzupełnienia programów mount i innych o obsługę DES i IDEA. Możesz je znaleźć tutaj: `http://www.binary9.net/nicholas/linuxkernel/patches`.

Pamiętaj, że to pętlowe urządzenie blokowe nie ma nic wspólnego z urządzeniem loopback używanym przy połączeniach sieciowych komputera z nim samym.

    Polecenie ładowania:
            /sbin/modprobe loop.o

            Brak parametrów modułu.

## 4.3 Obsługa sterownika urządzeń wielokrotnych `[md]` (RAID).

Ten sterownik pozwala połączyć kilka partycji twardych dysków w jedno logiczne urządzenie blokowe.

Programy narzędziowe do obsługi urządzeń `md` można znaleźć pod adresem `sweet-smoke.ufr-info-p7.ibp.fr/public/Linux/md035.tar.gz`. W tym samym miejscu zamieszczono również dokument md-FAQ.

Istnieją różne poziomy RAID (Redundant Array of Inexpensive Disks - Redundantna Macierz Niedrogich Dysków).

- RAID-0, Dane rozmieszczone na dyskach połączonych w przestrzeń ciągłą. Brak kontroli błędów.
  Za

    Najlepsza przepustowość danych wśród systemów RAID. Przezroczysty dla oprogramowania.

  Przeciw

    Brak kontroli błędów i redundancji. Uszkodzenie jednego dysku w macierzy powoduje utratę wszystkich danych w całej macierzy. Wszystkie parametry MTBF koniecznie trzeba przeliczyć ponownie.

- RAID-1, Lustrzane kopie dysków.
  Za

    Brak przestojów w zapisie. 100% redundancja dysku. Uszkodzenie nie obniża wydajności.

  Przeciw

    100% nadwyżka kosztów. Wymaga podwojonej przestrzeni dyskowej i energii w porównaniu do systemu bez macierzy.

- RAID-5, Sektorowe rozmieszczenie pasmowe danych i informacji o parzystości.
  Za

    Dobra wydajność przy systemach przetwarzających transakcje. Brak nadwyżki zapisu jak w RAID-4. Nadwyżka przestrzeni dyskowej nie przekracza jednego dysku. Możliwy równoległy odczyt w całej macierzy.

  Przeciw

    Spadek wydajności przy rekonstrukcji danych.

- RAID-6, Macierz RAID-0 z kopią lustrzaną.
  Za

    Przepustowość danych porównywalna do RAID-0. 100% redundancja danych. Nie ma spadku wydajności po uszkodzeniu.

  Przeciw

    100% nadwyżka kosztów. Wymaga dwukrotnie większej przestrzeni dyskowej i zasilania w porównaniu do systemu bez macierzy.

W chwili obecnej jedynie RAID-0 jest dostępny dla Linuxa. Tryb linearny nie jest uważany za część definicji RAID. Komisja Doradcza ds RAID również nie uznaje RAID-0 jako części definicji RAID z powodu braku redundancji danych.

Trybami, które warto zastosować, są RAID-0, RAID-1, RAID-5 oraz RAID-6.

### Sterownik urządzeń wielokrotnych w trybie linearnym (addytywnym) (`linear.o`).

Jeśli wybierzesz tę opcję, sterownik urządzeń wielokrotnych będzie mógł pracować w tak zwanym trybie linearnym, tzn. połączy partycje twardych dysków po prostu dodając jedną do drugiej.

    Polecenie ładowania:
            /sbin/modprobe linear.o

            Brak parametrów ładowania.

### Urządzenia wielokrotne w trybie RAID-0 (pasmowym) (`raid0.o`).

Jeśli wybierzesz tę opcję, sterownik urządzeń wielokrotnych będzie mógł pracować w tak zwanym trybie raid0, tzn. połączy partycje twardych dysków w jedno urządzenie logiczne w taki sposób, aby zapełniane one były równomiernie, jedna porcja danych tu, jedna tam. Zwiększy to przepustowość, o ile partycje znajdują się na osobnych dyskach.

    Polecenie ładowania:
            /sbin/modprobe raid0.o

            Brak parametrów ładowania.

## 4.4 Obsługa dysku RAM (`rd.o`).

Włączenie tej opcji pozwoli ci używać część pamięci RAM jako urządzenie blokowe, tak, abyś mógł założyć na nim systemy plików, dokonywać operacje zapisu i odczytu i robić wszystkie inne rzeczy, jakie są możliwe na zwykłych urządzeniach blokowych (jak np. dysk twardy). Zazwyczaj dysk RAM używany jest do załadowania z dyskietki i przechowania minimalnego bazowego systemu plików (root filesystem) w trakcie pierwszej instalacji Linuxa.

    Polecenie ładowania:
            /sbin/modprobe rd.o

            Brak parametrów ładowania.
            Dostępne są parametry przy ładowaniu systemu, zobacz BootPrompt-HOWTO.

## 4.5 Obsługa dysków twardych XT (`xd.o`).

Bardzo stare 8-bitowe kontrolery twardych dysków używane w komputerach IBM XT. Obecność obsługi dysków twardych XT wcale nie oznacza, że możesz uruchomić Linuxa na IBM XT :).

    Polecenie ładowania:
            /sbin/modprobe xd.o

            Brak parametrów ładowania.

## 5. Ogólne Opcje Sieciowe i TCP/IP.

## 5.1 Tunelowanie IP (`ipip.o i new_tunnel.o`).

Tunelowanie oznacza enkapsulację danych jednego protokołu w obrębie innego protokołu i przesyłanie danych w takiej postaci przez kanał, który rozumie protokół enkapsulacji. Potrzebne są dwa moduły, `ipip.o`, dekoder protokołu IP/IP, oraz sterownik `new_tunnel.o` (poprzednio nazywał się on `tunnel.o` i dokumentacja nadal odnosi się do tej starszej nazwy). Dokumentacja znajduje się w `/usr/src/linux/drivers/net/README.tunnel`.

    Polecenie ładowania:
            /sbin/modprobe ipip.o
            /sbin/modprobe new_tunnel.o

            Brak parametrów ładowania.

## 5.2 Obsługa IP Aliasing (`ip_alias.o`).

Czasami wygodnie jest nadać jednemu interfejsowi sieciowemu (czyli portowi szeregowemu karty sieciowej) kilka adresów. Najczęściej jest tak w sytuacji, gdy chcesz podawać na zewnątrz różne dokumenty WWW w zależności od tego, której nazwy komputera użyto, aby się z tobą połączyć.

    Polecenie ładowania:
            /sbin/modprobe ip_alias.o

            Brak parametrów ładowania.

## 5.3 Odwrotny ARP IP (`rarp.o`).

    Polecenie ładowania:
            /sbin/modprobe rarp.o

            Brak parametrów ładowania.

## 5.4 Protokół IPX (`ipx.o`).

Jest to obsługa protokołu sieciowego Novella - IPX, powszechnie używanego w sieciach lokalnych łączących komputery pracujące pod systemami DOS i Windows.

Protokół IPX jest konieczny, gdy:

- Chcesz podłączać się pod serwisy Netware przy użyciu DOSEMU - emulatora DOSa pod Linuxem
- Chcesz podmontowywać wolumeny Netware jako systemy plików Linuxa przy użyciu klienta Novella pod Linuxem - ncpfs.
- Chcesz podłączać się do serwera Linuxowego z klienta Netware, lub podmontowywać katalogi Linuxa jako wolumeny Netware. Do tego celu służą dwa demony, linwared oraz nwserv.

Stroną domową ncpfs jest `ftp.gwdg.de/pub/linux/misc/ncpfs`, ale można ją również znaleźć na sunsite i w wielu innych archiwach lustrzanych.

Strona domowa Linware to `klokan.sh.cvut.cz/pub/linux/linware`,

Pakiet nwserv - Mars_nwe znajdziesz natomiast tutaj: `ftp.gwdg.de/pub/linux/misc/ncpfs`.

    Polecenie ładowania:
            /sbin/modprobe ipx.o

            Brak parametrów ładowania.

## 5.5 Appletalk DDP (`appletalk.o`).

Appletalk to sposób, w jaki komputery Apple rozmawiają ze sobą w sieci. EtherTalk to nazwa określająca appletalk w sieci ethernet, a Localtalk to appletalk w sieci opartej o łącza szeregowe Apple.

    Polecenie ładowania:
            /sbin/modprobe appletalk.o

            Brak parametrów ładowania.

## 6. Obsługa SCSI.

Obsługa SCSI w jądrze Linuxa może przybierać postać modułów na szereg różnych sposobów, zależnie od potrzeb użytkownika. Aby zrozumieć poszczególne opcje, zdefiniujemy na wstępie kilka pojęć.

SCSI-core zawiera rdzeń obsługi SCSI. Bez niego nic nie zrobisz z którymkolwiek innym sterownikiem SCSI. Obsługa rdzenia SCSI może mieć postać modułu (`scsi_mod.o`), lub można ją wbudować w jądro. Jeśli rdzeń jest modułem, musi on być pierwszym z ładowanych modułów obsługi SCSI, a przy usuwaniu modułów z jądra, będzie musiał być usunięty w ostatniej kolejności.

Poszczególne sterowniki wyższego lub niższego poziomu można ładować w dowolnej kolejności, o ile rdzeń obsługi SCSI znajduje się już w jądrze (jest wkompilowany lub załadowany jako moduł). Sterownik dysków (`sd_mod.o`), napędów CD-ROM (`sr_mod.o`), napędów taśmowych (`st.o`) i ogólny sterownik SCSI (`sg.o`) to sterowniki wyższego poziomu, służące do obsługi rozmaitych typów urządzeń. Dla przykładu, możesz załadować sterownik napędu taśmowego aby skorzystać z taśmy, a następnie usunąć go, gdy już nie potrzebujesz sterownika (tym samym zwalniając przydzieloną mu pamięć).

Sterowniki niższego poziomu to te, które obsługują poszczególne karty kontrolerów SCSI, kompatybilne z używaną przez ciebie konfiguracją sprzętową. Przykładem jest moduł `aha1542.o` do obsługi kontrolerów Adaptec 1542.

## 6.1 Wymagana Obsługa Rdzenia SCSI.

### Obsługa Rdzenia SCSI (`scsi_mod.o`).

    Polecenie ładowania:
            /sbin/modprobe scsi_mod.o

            Brak parametrów ładowania.

## 6.2 Obsługa sterowników SCSI wysokiego poziomu.

### Obsługa dysków SCSI (`sd_mod.o`).

    Polecenie ładowania:
            /sbin/modprobe sd_mod.o

            Brak parametrów ładowania.

### Obsługa napędów taśmowych SCSI (`st.o`).

    Polecenie ładowania:
            /sbin/modprobe st.o

            Brak parametrów ładowania.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa napędów CD-ROM SCSI (`sr_mod.o`).

    Polecenie ładowania:
            /sbin/modprobe sr_mod.o

            Brak parametrów ładowania.

### Ogólna obsługa SCSI (`sg.o`).

    Polecenie ładowania:
            /sbin/modprobe sg.o

            Brak parametrów ładowania.

## 6.3 Obsługa niskopoziomowego sterownika SCSI.

Większość sterowników kart SCSI nie przyjmuje parametrów modułów, ponieważ zazwyczaj dokonuje automatycznej detekcji ustawień karty. Koniecznie przeczytaj SCSI-HOWTO i pliki README w katalogu `/usr/src/linux/drivers/scsi`, aby dowiedzieć się więcej o swoich urządzeniach. Jeśli twoja karta ma jakiś niekonwencjonalny adres wejścia/wyjścia, musisz permanentnie włączyć sterownik w jądro i używać opcji przy ładowaniu systemu, patrz BootPrompt-HOWTO.

Możesz również pomieszać w Kodzie Źródłowym i przekompilować.

### Obsługa 7000FAST SCSI (`wd7000.o`),

    Polecenie ładowania:
            /sbin/modprobe wd7000.o

            Brak parametrów ładowania.
            Autodetekcja karty, wymaga zainstalowanego BIOSu.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa Adaptec AHA152X/2825 (`aha154x.o`).

    Polecenie ładowania:
            /sbin/modprobe aha154x.o

            Brak parametrów ładowania.
            Autodetekcja karty, wymaga zainstalowanego BIOSu.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa Adaptec AHA1542 (`aha1542.o`).

    Polecenie ładowania:
            /sbin/modprobe aha1542.o

            Brak parametrów ładowania.
            Autodetekcja jedynie dla adresów 0x330 i 0x334.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Adaptec AHA1740 EISA support (`aha1740.o`).

    Polecenie ładowania:
            /sbin/modprobe aha1740.o

            Brak parametrów ładowania.
            Autodetekcja.

### Adaptec AHA274X/284X/294X support (`aic7xxx.o`).

    Polecenie ładowania:
            /sbin/modprobe aic7xxx.o

            Brak parametrów ładowania.
            Autodetekcja, BIOS musi być włączony.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa AdvanSys SCSI (`advansys.o`).

    Polecenie ładowania:
            /sbin/modprobe advansys.o [parameters]

            asc_iopflag=1                   włącz=1, wyłącz=0 przeszukiwanie portów
            asc_ioport=0x110,0x330          porty do przeszukania
            asc_dbglvl=1                    poziom śledzenia przebiegu programu
                                               0: Wyłącznie błędy
                                               1: Śledzenie wysokopoziomowe
                                               2-N: Śledzenie opisowe

            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa Always IN2000 SCSI (`in2000.o`).

    Polecenie ładowania:
            /sbin/modprobe in2000.o

            Brak parametrów ładowania.
            Autodetekcja, BIOS nie jest wymagany.

### Obsługa BusLogic SCSI (`BusLogic.o`).

Lista obsługiwanych kart BusLogic jest długa. Aby w całości zapoznać się ze sprawą, przeczytaj `usr/src/linux/drivers/scsi/README.BusLogic`.

    Polecenie ładowania:
            /sbin/modprobe BusLogic.o

            Brak parametrów ładowania.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa DTC3180/3280 SCSI (`dtc.o`).

    Polecenie ładowania:
            /sbin/modprobe dtc.o

            Brak parametrów ładowania.
            Autodetekcja.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa EATA ISA/EISA (DPT PM2011/021/012/022/122/322) (`eata.o`).

    Polecenie ładowania:
            /sbin/modprobe eata.o

            Brak parametrów ładowania.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa EATA-DMA (DPT, NEC, AT&T, SNI, AST, Olivetti, Alphatronix) (`eata_dma.o`).

Obejmuje DPT Smartcache, Smartcache III oraz SmartRAID.

    Polecenie ładowania:
            /sbin/modprobe eata_dma.o

            Brak parametrów ładowania.
            Autodetekcja działa niezależnie od ustawień.

### Obsługa EATA-PIO (stare DPT PM2001, PM2012A) (`eata_pio.o`).

    Polecenie ładowania:
            /sbin/modprobe eata_pio.o

            Brak parametrów ładowania.

### Obsługa Future Domain 16xx SCSI (`fdomain.o`).

    Polecenie ładowania:
            /sbin/modprobe fdomain.o

            Brak parametrów ładowania.
            Autodetekcja, wymaga zainstalowanego BIOSu.

### Obsługa ogólna NCR5380/53c400 SCSI (`NCR5380.o`).

    Polecenie ładowania:
            /sbin/modprobe NCR5380.o

                    ncr_irq=xx      przerwanie
                    ncr_addr=xx     port lub adres bazowy (dla portu
                                    lub mapowania pamięci)
                    ncr_dma=xx      DMA
                    ncr_5380=1      aby ustawić kartę NCR5380
                    ncr_53c400=1    aby ustawić kartę NCR53C400

            modprobe g_NCR5380 ncr_irq=5 ncr_addr=0x350 ncr_5380=1
             - dla karty NCR5380 mapowanej na port lub

            modprobe g_NCR5380 ncr_irq=255 ncr_addr=0xc8000 ncr_53c400=1
             - dla karty NCR53C400 mapowanej w pamięci, wyłączone przerwania

            (Należy wpisać 255 przy braku przerwań lub przerwaniu DMA, 254 aby
            automatycznie testować numer IRQ, jeśli wystąpiło nadpisanie w linii
            polecenia.)

            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa NCR53c406a SCSI (`NCR53c406a.o`).

    Polecenie ładowania:
            /sbin/modprobe NCR53c406a.o

            Brak parametrów ładowania.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa NCR53c7,8xx SCSI (`53c7,8xx.o`).

    Polecenie ładowania:
            /sbin/modprobe 53c7,8xx.o

            Brak parametrów ładowania.
            Autodetekcja, wymaga zainstalowanego BIOSu.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa rodziny PCI-SCSI NCR538xx (`ncr53c8xx.o`).

    Polecenie ładowania:
            /sbin/modprobe ncr53c8xx.o

            Brak parametrów ładowania.

### Obsługa dysku IOMEGA ZIP na porcie równoległym (`ppa.o`).

Dokładniejsze informacje znajdziesz w pliku `/usr/src/linux/drivers/scsi/README.ppa`.

    Polecenie ładowania:
            /sbin/modprobe ppa.o ppa_base=0x378 ppa_nybble=1

            Oto parametry i ich funkcje:

            Zmienna         Domyślnie  Opis

            ppa_base        0x378   Adres bazowy portu równoległego PPA.
            ppa_speed_high  1       Opóźnienie we/wy w mikrosekundach, używane przy
                                    transferach danych
            ppa_speed_low   6       Opóźnienie we/wy w mikrosekundach, używane przy
                                    innych operacjach
            ppa_nybble      0       1 aby zmusić sterownik do pracy w trybie 4-bitowym.

### Obsługa PAS16 SCSI (`pas16.o`).

    Polecenie ładowania:
            /sbin/modprobe pas16.o

            Brak parametrów ładowania.
            Autodetekcja, nie wymaga BIOSu.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa Qlogic FAST SCSI (`qlogicfas.o`).

    Polecenie ładowania:
            /sbin/modprobe qlogicfas.o

            Brak parametrów ładowania.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa Qlogic ISP SCSI (`qlogicisp.o`).

Wymaga oprogramowania firmowego.

    Polecenie ładowania:
            /sbin/modprobe qlogicisp.o

            Brak parametrów ładowania.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa Seagate ST-02 i Future Domain TMC-8xx SCSI(`seagate.o`).

    Polecenie ładowania:
            /sbin/modprobe seagate.o

            Brak parametrów ładowania.
            Autodetekcja jedynie adresów, IRQ na stałe = 5.
            Wymaga zainstalowanego BIOSu.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa Trantor T128/T128F/T228 SCSI (`t128.o`).

    Polecenie ładowania:
            /sbin/modprobe t128.o

            Brak parametrów ładowania.
            Autodetekcja, wymaga zainstalowanego BIOSu.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa UltraStor 14F/34F (`u14-34f.o`).

    Polecenie ładowania:
            /sbin/modprobe u14-34f.o

            Brak parametrów ładowania.
            Autodetekcja karty, a NIE portu 0x310, BIOS nie jest wymagany.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

### Obsługa UltraStor SCSI (`ultrastor.o`).

    Polecenie ładowania:
            /sbin/modprobe ultrastor.o

            Brak parametrów ładowania.
            Dostępne są parametry przy ładowaniu systemu, patrz BootPrompt-HOWTO.

## 7. Obsługa urządzeń sieciowych

## 7.1 Wymagane i/lub opcjonalne moduły niskopoziomowe

### Opcjonalny kompresor BSD do PPP (`bsd_comp.o`).

    Polecenie ładowania:
            /sbin/modprobe bsd_comp.o

            Brak parametrów ładowania.

            Wymaga ppp.o

### Kompresor SLHC dla PPP (`slhc.o`).

Procedury kompresji i dekompresji pakietów tcp (do celów transmisji po wolnych liniach szeregowych)

Wymagany przez protokoły SLIP i PPP (również ISDN-PPP).

    Polecenie ładowania:
            /sbin/modprobe slhc.o

            Brak parametrów ładowania.

### Ogólny rdzeń sterownika ethernet NS8390 (`8390.o`).

Jest to kod dostosowany do kości, dla wielu kart ethernet opartych o układ 8390. Nie jest to kompletny sterownik, musi być połączony z kodem dostosowanym do konkretnej karty, np. `ne.o, wd.o, 3c503.o`, itd.

    Polecenie ładowania:
            /sbin/modprobe 8390.o

            Brak parametrów ładowania.

## 7.2 Obsługa sterownika sieciowego dummy (`dummy.o`).

Ogólnie rzecz biorąc jest to urządzenie typu worek bez dna (tzn. wszystko, co wysłane jest do tego urządzenia, obracane jest w nicość), z konfigurowalnym adresem IP. Najczęściej jest używane po to, aby udawać przed lokalnymi programami, że w danej chwili nieaktywny adres SLIP naprawdę istnieje.

    Polecenie ładowania:
            /sbin/modprobe dummy.o

            Brak parametrów ładowania.

## 7.3 Obsługa EQL (wyważanie obciążenia linii szeregowej) (`eql.o`).

Jeśli twój komputer ma dwa łącza szeregowe z innymi komputerami (zazwyczaj wymaga to dwóch modemów i linii telefonicznych), oraz używasz na tych łączach protokołu SLIP (protokołu do obsługi ruchu internetowego przez linie telefoniczne) lub PPP (lepszy SLIP), przy użyciu tego sterownika możesz spowodować, że będą się one zachowywać jak jedno łącze podwójnej prędkości.

    Polecenie ładowania:
            /sbin/modprobe eql.o

            Brak parametrów ładowania.

## 7.4 Obsługa Frame relay DLCI (`dlci.o`).

Jest to obsługa protokołu frame relay; frame relay to szybka i tania metoda zdalnego podłączania się do dostawcy usług internetu, lub tworzenia prywatnej sieci WAN. Na jednej fizycznej linii pomiędzy twoim komputerem a lokalnym "przełącznikiem" (tzn. punktem wejściowym do sieci frame relay) można relizować kilka logicznych połączeń punkt-punkt z innymi komputerami podłączonymi do sieci frame relay. Ogólne objaśnienie protokołu znajdziesz w WWW, pod adresem `http://frame-relay.indiana.edu/4000/4000index.html`. Aby używać frame relay, potrzebujesz urządzeń obsługi (FRAD) oraz pewnych programów z pakietu narzędzi sieciowych, tak jak objaśniono to w pliku `Documentation/networking/framerelay.txt`.

    Polecenie ładowania:
            /sbin/modprobe dlci.o

            Brak parametrów ładowania.

## 7.5 Obsługa FRAD Sangoma S502A (`sdla.o`).

Jest to sterownik dla Urządzeń Dostępu do Frame Relay (FRAD) Sangoma S502A, S502E oraz S508. Są to karty wieloprotokołowe, ale obecnie sterownik obsługuje jedynie frame relay. Przeczytaj proszę `Documentation/networking/framerelay.txt`.

    Polecenie ładowania:
            /sbin/modprobe sdla.o

            Brak parametrów ładowania.

            Wymaga dlci.o

## 7.6 Obsługa PLIP (port równoległy) (`plip.o`).

PLIP (Parallel Line Internet Protocol - Internetowy Protokół Linii Równoległych) używany jest do tworzenia miniaturowych sieci, składających się z dwóch (lub rzadko z większej ilości) lokalnych komputerów. Porty równoległe (złacza komputerowe z 25 otworami) łączone są kablami "null printer" lub "Turbo Laplink", króre mogą przesyłać 4 bity naraz, lub przy użyciu specjalnych kabli PLIP (tylko w przypadku, gdy porty równoległe są dwukierunkowe), po których przesłać naraz można 8 bitów (opis konstrukcji tych kabli znajdziesz w pliku `drivers/net/README?.plip`). Kable te mogą mieć długość do 15m. Działa to również wtedy, gdy jeden z komputerów pracuje w systemie DOS/Windows i ma zainstalowane jakieś oprogramowanie PLIP, np. sterownik pakietów PLIP Crynwr `http://sunsite.cnam.fr/packages/Telnet/PC/msdos/misc/pktdrvr.txt` oraz oprogramowanie winsock lub telnet NCSA.

    Polecenie ładowania:
            /sbin/modprobe plip.o io=0x378 irq=7

            io = 0
            irq = 0         (domyślnie, używa IRQ 5 dla portu 0x3bc,
                                              IRQ 7 dla portu 0x378,
                                         oraz IRQ 2 dla portu 0x278)
            (Detekcja na portach: 0x278, 0x378, 0x3bc)

## 7.7 Obsługa protokołu PPP (point-to-point) (`ppp.o`).

Aby używać PPP, potrzebujesz dodatkowy program, zwany pppd, zgodnie z opisem w `Documentation/networking/ppp.txt` oraz PPP-HOWTO, dostępnego pod adresem `sunsite.unc.edu:/pub/Linux/docs/HOWTO`.

    Polecenie ładowania:
            /sbin/modprobe ppp.o

            Brak parametrów ładowania.

            Wymaga slhc.o
            Wymaga również serial.o, który nie jest to automatycznie
            wykrywany, więc serial.o należy załadować ręcznie.

## 7.8 Obsługa protokołu SLIP (linia szeregowa) (`slip.o`).

SLIP (Serial Line Internet Protocol - Internetowy Protokół Linii Szeregowych) jest protokołem używanym do przesyłania ruchu internetowego po liniach telefonicznych lub kablach szeregowych (znanych również pod nazwą 'nullmodem').

    Polecenie ładowania:
            /sbin/modprobe slip.o

            slip_maxdev = 256 (domyślna wartość SL_NRUNIT z pliku slip.h)

            Wymaga slhc.o
            Wymaga również serial.o, który nie jest to automatycznie
            wykrywany, więc serial.o należy załadować ręcznie.

## 7.9 Interfejsy sieciowe Radia Amatorskiego i komunikacji bezprzewodowej

### Sterownik emulacji BAYCOM ser12 i par96 do AX.25 (`baycom.o`).

Jest to sterownik do prostych radiomodemów typu Baycom, które podłącza się do złącz szeregowych lub równoległych. Sterownik obsługuje modele ser12 i par96. Aby skonfigurować sterownik, należy użyć programu narzędziowego setbaycom dostępnego pod adresem `http://www.ife.ee.ethz.ch/~sailer/ham/ham.html#lnxbay`. Informacje o modemach znajdziesz pod adresem `http://www.baycom.de`, oraz w pliku `drivers/char/README.baycom`.

    Polecenie ładowania:
            /sbin/modprobe baycom.o modem=1 iobase=0x3f8 irq=4 options=1

            major   liczba główna, którą powinien użyć sterownik; domyślnie 60
            modem   typ modemu pierwszego kanału (liczba poboczna 0); 1=ser12,
                    2=par96/par97, jakakolwiej inna wartość jest niepoprawna

            iobase  adres bazowy portu; typowe wartości to 0x3f8,0x2f8, 0x3e8, 0x2e8
                    dla ser12, oraz 0x378, 0x278, 0x3bc dla par96/par97

            irq     numer przerwania portu; typowe wartości to 3,4 dla ser12 oraz 7 dla
                    par96/par97 options 0=use hardware DCD, 1=use software DCD

### STRIP (Metricom starmode radio IP) `strip.o`).

STRIP jest protokołem radiowym rozwijanym w związku z projektem MosquitoNet (http://mosquitonet.stanford.edu/) do celów przesyłania ruchu internetowego przy użyciu radia Metricom. Radia Metricom są to małe, zasilane bateryjnie, radiowe przekaźniki pakietowe pracujące z prędkością 100kbit/sekundę. Mają rozmiar zbliżony do telefonu komórkowego. (Mogłeś również słyszeć o nich pod nazwą "modemy Metricom", ale staramy się unikać tutaj określenia "modem", ponieważ wprowadza ono wiele osób w błąd, przez co myślą, że można podłączyć modem Metricom do linii telefonicznej i używać go jak zwykły modem). STRIP możesz używać na każdym komputerze z Linuxem i portem szeregowym, choć oczwiście najbardziej może się on przydać posiadaczom komputerów przenośnych.

    Polecenie ładowania:
            /sbin/modprobe strip.o

            Brak parametrów ładowania.

### Obsługa WaveLAN (`wavelan.o`).

Są to karty do bezprzewodowej komunikacji zbliżonej do ethernet. Obsługiwane są karty AT&T GIS i NCR WaveLAN.

    Polecenie ładowania:
            /sbin/modprobe wavelan.o

            io = 0x390      (Można ustawić, ale zmienianie nie jest zalecane)
            irq = 0         (Jeśli zmienione, nie brane pod uwagę)

### Most IP WIC Radio (`wic.o`).

Obsługa mostu radiowego WIC pracującego na porcie równoległym.

    Polecenie ładowania:
            /sbin/modprobe wic.o

            Wydaje się, że urządzenia 'wic0', 'wic1' and 'wic2' mają bezpośredni
            związek z odpowiadającymi im portami 'lpx'.

### Sterownik emulacji Z8530 SCC do AX.25 (`scc.o`).

Te karty są używane do podłączania komputera z Linuxem do amatorskiego radio w celu łączenia się z innymi komputerami. Jeśli chciałbyś ich używać, przeczytaj `Documentation/networking/z8530drv.txt` oraz HAM-HOWTO.

    Polecenie ładowania:
            /sbin/modprobe scc.o

            Brak parametrów modułu.

## 7.10 Karty ethernet 3COM.

### Obsługa 3c501 (`3c501.o`).

    Polecenie ładowania:
            /sbin/modprobe 3c501.o

            io  = 0x280     bazowy adres IO
            irq = 5         IRQ
            (Probes ports:  0x280, 0x300)

### Obsługa 3c503 (`3c503.o`).

    Polecenie ładowania:
            /sbin/modprobe 3c503.o

            io = 0          (Będzie narzekać, jeśli nie podasz "io=0xNNN")
            irq = 0         (IRQ ustawiane programowo przez sterownik, przy użyciu
                             autoIRQ)
            xcvr = 0        (Użyj xcvr=1 aby wybrać zewnętrzny transceiver)
            (Detekcja na portach: 0x300, 0x310, 0x330, 0x350, 0x250, 0x280, 0x2A0,0x2E0)

            Wymaga 8390.o

### Obsługa 3c505 (`3c505.o`).

    Polecenie ładowania:
            /sbin/modprobe 3c505.o

            io = 0x300
            irq = 0
            (Detekcja na portach: 0x300, 0x280, 0x310)

### Obsługa 3c507 (`3c507.o`).

    Polecenie ładowania:
            /sbin/modprobe 3c507.o

            io = 0x300
            irq = 0
            (Detekcja na portach: 0x300, 0x320, 0x340, 0x280)

### Obsługa 3c509/3c579 (`3c509.o`).

    Polecenie ładowania:
            /sbin/modprobe 3c509.o

            io = 0
            irq = 0
            ( Autodetekcja przez moduł w trakcie ładowania działa dobrze jedynie na
              EISA, AUTODETEKCJA ID NA ISA NIE DZIAŁA POPRAWNIE! Jeśli chesz, aby
              sterownik dokonywał poprawnej detekcji na szynie ISA, wkompiluj go
              statycznie w jądro ).

### Obsługa serii 3c590 "Vortex" (`3c59x.o`).

Zapewnia obsługę następujących kart:

- 3c590 Vortex 10Mbps.
- 3c595 Vortex 100baseTX.
- 3c595 Vortex 100baseT4.
- 3c595 Vortex 100base-MII.
- EISA Vortex 3c597.

    Polecenie ładowania:
            /sbin/modprobe 3c59x.o debug=1 options=0,,12

            Ustawia ono poziom komunikatów śledzenia aby wyświetlana była
            minimalna ilość komunikatów, ustawia pierwszą kartę na trancseiver
            10baseT, drugą na transceiver EEPROM, a trzecią aby pracowała w pełnym
            trybie duplex, przy użyciu transceivera 100baseTx.
            (Uwaga: kolejność kart ustawiana jest przez PCI BIOS).

            Możliwe ustawienia typów nośnika
                    0       10baseT
                    1       10Mbs AUI
                    2       nie zdefiniowane
                    3       10base2 (BNC)
                    4       100base-TX
                    5       100base-FX
                    6       MII (jeszcze niedostępny)
                    7       <Użyj ustawienie domyślne>

                    8       Bit pełnego trybu duplex
                    8       10baseT pełny duplex
                    12      100baseTx pełny duplex
                    16      Bit włączający Bus-master (jedynie zastosowania eksperymentalne!)

            Szczegóły na temat implementacji sterownika znajdziesz na początku pliku
            źródłowego.

## 7.11 Karty ethernet Western Digital/SMC.

### Obsługa WD80*3 (`wd.o`).

    Polecenie ładowania:
            /sbin/modprobe wd.o

            io = 0          (Będzie narzekać, jeśli nie podasz "io=0xNNN")
            irq = 0         (Wartość IRQ czytana z EEPROM, starodawne karty użwyają autoIRQ)
            mem = 0         (Wymuszenie pamięci dzielonej na adresie 0xC8000, lub innym...)
            mem_end = 0     (Wymuszenie niestandardowego rozmiaru pamięci przez
                             podanie wartości mem_end)
                            (np. dla 32k WD8003EBT, użyj mem=0xd0000 mem_end=0xd8000
            (Detekcja na portach:  0x300, 0x280, 0x380, 0x240)

            Wymaga 8390.o

### Obsługa SMC Ultra/EtherEZ (`smc-ultra.o`).

    Polecenie ładowania:
            /sbin/modprobe smc-ultra.o

            io = 0          (Będzie narzekać, jeśli nie podasz "io=0xNNN")
            irq = 0         (Wartość IRQ czytana z EEPROM)
            (Detekcja na portach:  0x200, 0x220, 0x240, 0x280, 0x300, 0x340, 0x380)

            Wymaga 8390.o

### Obsługa SMC 9194 (`smc9194.o`).

Jest to sterownik do kart ethernet SMC serii 9000.

    Polecenie ładowania:
            /sbin/modprobe smc9194.o

            io = 0          dla adres bazowego
            irq = 0         dla IRQ
            ifport = 0      dla autodetekcji, 1 dla TP, 2 dla AUI ( lub 10base2 )

            Detekcja na portach:    0x200, 0x220, 0x240, 0x260, 0x280, 0x2A0, 0x2C0, 0x2E0,
                            0x300, 0x320, 0x340, 0x360, 0x380, 0x3A0, 0x3C0, 0x3E0

            Poziom śledzenia można ustawić w kodzie źródłowym smc9194.c.

## 7.12 Inne karty Ethernet.

### Obsługa AT1700 (`at1700.o`).

    Polecenie ładowania:
            /sbin/modprobe at1700.o

            io = 0x260
            irq = 0

            (Detekcja na portach: 0x260, 0x280, 0x2A0, 0x240, 0x340, 0x320, 0x380, 0x300)

### Obsługa Cabletron E21xx (`e2100.o`).

    Polecenie ładowania:
            /sbin/modprobe e2100.o

            io = 0          (Będzie narzekać, jeśli nie podasz "io=0xNNN")
            irq = 0         (IRQ ustawiane programowo przez sterownik)
            mem = 0         (Nadpisanie domyślnego początku bloku pamięci dzielonej 0xd0000)
            xcvr = 0        (Użyj xcvr=1 aby wybrać zewnętrzny transceiver.)
            (Detekcja na portach: 0x300, 0x280, 0x380, 0x220)

            Wymaga 8390.o

### Obsługa DEPCA, DE10x, DE200, DE201, DE202, DE422 (`depca.o`).

    Polecenie ładowania:
            /sbin/modprobe depca.o

            io = 0x200
            irq = 7
            (Detekcja na portach:  ISA:  0x300, 0x200;
                            EISA: 0x0c00            )

### Obsługa EtherWORKS 3 (DE203, DE204, DE205) (`ewrk3.o`).

    Polecenie ładowania:
            /sbin/modprobe ewrk3.o

            io = 0x300
            irq = 5
            (Przy module brak autodetekcji!
             Na szynach EISA dokonywana jest detekcja EISA.
             Statycznie dołączony kod do jądra testuje porty na szynie ISA:
                    0x100, 0x120, 0x140, 0x160, 0x180, 0x1A0, 0x1C0,
                    0x200, 0x220, 0x240, 0x260, 0x280, 0x2A0, 0x2C0, 0x2E0,
                    0x300,        0x340, 0x360, 0x380, 0x3A0, 0x3C0)

### Obsługa EtherExpress 16 (`eexpress.o`).

    Polecenie ładowania:
            /sbin/modprobe eexpress.o

            io = 0x300
            irq = 0         (Wartość IRQ czytana z EEPROM)
            (Detekcja na portach: 0x300, 0x270, 0x320, 0x340)

### Obsługa EtherExpressPro (`eepro.o`).

    Polecenie ładowania:
            /sbin/modprobe eepro.o

            io = 0x200
            irq = 0
            (Detekcja na portach: 0x200, 0x240, 0x280, 0x2C0, 0x300, 0x320, 0x340, 0x360)

### Obsługa Fujitsu FMV-181/182/183/184 (`fmv18x.o`).

    Polecenie ładowania:
            /sbin/modprobe fmv18x.o

            io = 0x220      adres bazowy
            irq = 0         IRQ

            Detekcja na portach: 0x220, 0x240, 0x260, 0x280, 0x2a0, 0x2c0, 0x300, 0x340

### Obsługa HP PCLAN+ (27247B i 27252A) (`hp-plus.o`).

    Polecenie ładowania:
            /sbin/modprobe hp-plus.o

            io = 0          (Będzie narzekać, jeśli nie podasz "io=0xNNN")
            irq = 0         (IRQ czytane z rejestru konfiguracji)
            (Detekcja na portach: 0x200, 0x240, 0x280, 0x2C0, 0x300, 0x320, 0x340)

            Wymaga 8390.o

### Obsługa HP PCLAN (27245 i inne serii 27xxx) (`hp.o`).

    Polecenie ładowania:
            /sbin/modprobe hp.o

            io = 0          (Będzie narzekać, jeśli nie podasz "io=0xNNN")
            irq = 0         (IRQ ustawiane programowo przez sterownik przy użyciu autoIRQ)
            (Detekcja na portach: 0x300, 0x320, 0x340, 0x280, 0x2C0, 0x200, 0x240)

            Wymaga 8390.o

### Obsługa HP 10/100VG PCLAN (ISA, EISA, PCI) (`hp100.o`).

    Polecenie ładowania:
            /sbin/modprobe hp100.o

            hp100_port = 0 (bazowy adres IO)

            (Dokonuje detekcję EISA, jeśli jest w złączu EISA;
             Na szynie ISA dokonuje detekcji na wszystkich portach od 0x100 do 0x3E0
             krokiem 0x020)

### Obsługa ICL EtherTeam 16i/32 (`eth16i.o`).

    Polecenie ładowania:
            /sbin/modprobe eth16i.o

            io = 0x2a0      (Będzie narzekać, jeśli nie podasz "io=0xNNN")
            irq = 0         (IRQ ustawiane programowo przez sterownik przy użyciu autoIRQ)

            Testowane porty przy karcie eth16i :
            0x260, 0x280, 0x2A0, 0x240, 0x340, 0x320, 0x380, 0x300

            Testowane porty przy karcie eth32i :
            0x1000, 0x2000, 0x3000, 0x4000, 0x5000, 0x6000, 0x7000, 0x8000,
            0x9000, 0xA000, 0xB000, 0xC000, 0xD000, 0xE000, 0xF000

### Obsługa NE2000/NE1000 (`ne.o`).

    Polecenie ładowania:
            /sbin/modprobe ne.o

            io = 0          (Jawnie wymaga wartości "io=0xNNN")
            irq = 0         (Próbuje określić ustawione IRQ przez autoIRQ)
            (Detekcja na portach: 0x300, 0x280, 0x320, 0x340, 0x360)

            Wymaga 8390.o

### Obsługa NI5210 (`ni52.o`).

    Polecenie ładowania:
            /sbin/modprobe ni52.o

            io=0x360
            irq=9
            memstart=0xd0000
            memend=0xd4000

            Nie używaj autodetekcji, io=0

## 7.13 Kontrolery EISA, VLB, PCI i zintegrowane z płytą główną

### Obsługa Ansel Communications EISA 3200 (`ac3200.o`).

    Polecenie ładowania:
            /sbin/modprobe ac3200.o

            Ponieważ jest to karta EISA, autodetekcja powinna działać.

            Wymaga 8390.o

### Karta ethernet Apricot Xen-II na płycie głównej (`apricot.o`).

    Polecenie ładowania:
            /sbin/modprobe apricot.o

            io = 0x300  (Nie można zmienić!)
            irq = 10

### Obsługa DE425, DE434, DE435, DE450, DE500 (`de4x5.o`).

    Polecenie ładowania:
            /sbin/modprobe de4x5.o

            io = 0x000b
            irq = 10
            is_not_dec = 0
            Przy kartach innych producentów niż DEC, ale używających kość DEC
            21040/21041/21140, ustaw ten parametr na 1
            (Detekcja EISA i PCI)

### Obsługa DECchip Tulip (dc21x4x) PCI (`tulip.o`).

    Polecenie ładowania:
            /sbin/modprobe tulip.o

            Przeczytaj Documentation/networking/tulip.txt

### Obsługa Digi Intl. RightSwitch SE-X (`dgrs.o`).

Jest to sterownik linuxowy do kart Digi International RightSwitch SE-X EISA i PCI. Są to cztero- (EISA) lub sześcioportowe (PCI) przełączniki ethernet zintegrowane na jednej płycie z NIC.

Istnieje program narzędziowy do ustawiania filtrów pakietów wejściowych i wyjściowych na każdym porcie, zwany "dgrsfilt".

Ten program obsługi pozwala śledzić pracę graficznie, jak również ustawiać adresy IP i IPX agenta SNMP, parametry IEEE Spanning Tree i czas ekspiracji. Można je również ustawić z linii polecenia po załadowaniu sterownika.

Jest również towarzyszący program obsługi, zwany "xrightswitch".

    Polecenie ładowania:
            /sbin/modprobe dgrs.o

            debug=NNN               Poziom komunikatów śledzenia
            dma=0/1                 Wyłącz/Włącz DMA na karcie PCI
            spantree=0/1            Wyłącz/Włącz IEEE spanning tree
            hashexpire=NNN          Zmień czas ekspiracji adresu (domyślnie 300 sekund)
            ipaddr=A,B,C,D          Ustaw adres IP agenta SNMP, np. 199,86,8,221
            ipxnet=NNN              Ustaw adres IPX agenta SNMP

## 7.14 Obsługa kart PCMCIA i przenośnych

### Obsługa karty D-Link DE600 (`de600.o`).

    Polecenie ładowania:
            /sbin/modprobe de600.o

            de600_debug = 0
            (Na porcie 0x378, irq 7 -- lpt1; możliwe do ustawienia przy kompilacji)

### Obsługa karty D-Link DE620 (`de620.o`).

    Polecenie ładowania:
            /sbin/modprobe de620.o

            bnc = 0, utp = 0        <-- Wymuszenie nośnika przez ustawienie jednej z opcji
            io = 0x378              (również możliwe do ustawienia przy kompilacji)
            irq = 7

## 7.15 Obsługa Token Ring

### Obsługa kart opartych na układzie Tropic (`ibmtr.o`).

    Polecenie ładowania:
            /sbin/modprobe ibmtr.o io=0xa20 irq=0

            io = 0xa20      Nie powinieneś używać autodetekcji przy insmod.
            irq = 0

## 7.16 Obsługa ARCnet (`arcnet.o`).

Przeczytaj dobrą dokumentację pod adresem `/usr/src/linux/Documentation/networking/arcnet.txt`. W tym samym miejscu znajduje się również informacja na temat sprzętu ARCnet - `arcnet-hardware.txt`.

    Polecenie ładowania:
            /sbin/modprobe arcnet.o io=0x300 irq=2 shmem=0xd0000

            Jeśli chcesz, możesz nazwać urządzenie używając konwencji "device=arc1"
            (dla drugiej karty) lub "device=eth0" (z dziwnych powodów).

            (Podczas detekcji, sprawdza następujące możliwe adresy:
             Zalecane:
                    0x300, 0x2E0, 0x2F0, 0x2D0
             Inne:
                    0x200, 0x210, 0x220, 0x230, 0x240, 0x250, 0x260, 0x270,
                    0x280, 0x290, 0x2A0, 0x2B0, 0x2C0,
                           0x310, 0x320, 0x330, 0x340, 0x350, 0x360, 0x370,
                    0x380, 0x390, 0x3A0,                      0x3E0, 0x3F0  )

## 8. Podsystem ISDN

Konfiguracja i włączenie sieci ISDN jest zadaniem złożonym. Przeczytaj dokumentacje znajdującą się w katalogu `/usr/src/linux/Documentation/isdn`.

## 8.1 Obsługa ISDN (`isdn.o`).

    Polecenie ładowania:
            /sbin/modprobe isdn.o

            Brak parametrów modułu.

            Wymaga slhc.o

## 8.2 Obsługa ICN 2B and 4B (`icn.o`).

    Polecenie ładowania:
            /sbin/modprobe icn.o [parameters]

            portbase=p membase=m icn_id=identyfikator [icn_id2=identyfikator2]

            p = port bazowy         (default: 0x320)
            m = pamięć dzielona     (default: 0xd0000)

            Jeśli używasz podwójną kartę ICN, MUSISZ zdefiniować DWA identyfikatory
            identyfikator musi zaczynać się od litery.

            Wymaga isdn.o

## 8.3 Obsługa PCBIT-D (`pcbit.o`).

    Polecenie ładowania:
            /sbin/modprobe pcbit.o

            mem = 0         domyślnie = 0xd0000
            irq = 0         domyślnie = 5

            Wymaga isdn.o

## 8.4 Obsługa Teles/NICCY1016PC/Creatix (`teles.o`).

    Polecenie ładowania:
            /sbin/modprobe teles.o io=.....

            io=m0,i0,p0,d0[,m1,i1,p1,d1 ... ,mn,in,pn,dn] teles_id=identyfikator

            m0 = pamięć dzielona pierwszej karty    (domyślnie: 0xd0000
            i0 = IRQ pierwszej karty                (domyślnie: 15)
            p0 = port bazowy pierwszej karty        (domyślnie: 0xd80)
            d0 = protokół D-kanału pierwszej karty  1=1TR6, 2=EDSS1 (domyślnie: 2)

            p1,i1,m1,d1 = Parametry drugiej karty (ustawienia domyślne: brak)
            pn,in,mn,d1 = Parametry n-tej karty (obsługiwane jest do 16 kart)

            identyfikator = Identyfikator sterownika używany przy dostępie przez
                            programy narzędziowe i do celów identyfikacyjnych jeśli
                            używany jest program monitorujący linię. (brak ustawień
                            domyślnych). identyfikator musi zaczynać się od litery!

            Typ karty jest określany w oparciu o numer portu, przerwania i pamięć
            dzieloną:

            port == 0, pamięć dzielona != 0 -> Teles S0-8
            port != 0, pamięć dzielona != 0 -> Teles S0-16.0
            port != 0, pamięć dzielona == 0 -> Teles S0-16.3

            Wymaga isdn.o

## 9. Sterowniki CD-ROM (nie dotyczy napędów SCSI i IDE/ATAPI)

## 9.1 Obsługa Aztech/Orchid/Okano/Wearnes/TXC/CyDROM (`aztcd.o`).

    Polecenie ładowania:
            /sbin/modprobe aztcd.o aztcd=[adresbazowy]

            Pełne informacje znajdziesz w /Documentation/cdrom/aztcd/

## 9.2 Obsługa CD-ROM Goldstar R420 (`gscd.o`).

Wszystkie rodzaje informacji o napędzie CD-ROM GoldStar R420 oraz o linuxowym sterowniku do niego znaleźć można na stronie: `http://linux.rz.fh-hannover.de/~raupach`.

    Polecenie ładowania:
            /sbin/modprobe gscd.o gscd=[address]

            Domyślny adres bazowy to 0x340.
            Będzie to działać z większością programów.
            Wyboru adresów dokonuje się poprzez jumpery od PN801-1 do PN801-4
            na karcie interfejsu GoldStar.
            Stosowne ustawienia to: 0x300, 0x310, 0x320, 0x330, 0x340, 0x350,
            0x360, 0x370, 0x380, 0x390, 0x3A0, 0x3B0, 0x3C0, 0x3D0, 0x3E0, 0x3F0

## 9.3 Obsługa Matsushita/Panasonic/Creative, Longshine, TEAC (`sbpcd.o`).

    Polecenie ładowania:
            /sbin/modprobe sbpcd.o sbpcd=[adres], x

            adres   = adres IO
            x       = ustawienie SBPRO, przeczytaj Documentation/cdrom/sbpcd

## 9.6 Obsługa CD-ROM Optics Storage DOLPHIN 8000AT (`optcd.o`).

Jest ro sterownik do tak zwanego napędu 'DOLPHIN', z 34-ro pinowym złączem kompatybilnym ze złączem Sony. Dla napędu IDE Optics Storage 8001, przyda ci się sterownik CD-ROM ATAPI. Ten sterownik wydaje się również działać z Lasermate CR328A.

    Polecenie ładowania:
            /sbin/modprobe optcd.o optcd=0x340

            Parametrem jest adres bazowy karty.

## 9.7 Obsługa CD-ROM Philips/LMS CM206 (`cm206.o`).

Jest to sterownik napędu CD-ROM Philips/LMS cm260 w połączeniu z kartą adaptera cm260.

    Polecenie ładowania:
            /sbin/modprobe cm206.o cm206=0x300,11

            Parametry to port bazowy i IRQ twojej karty.
            Kolejność parametrów portu i IRQ nie ma znaczenia.
            Możesz podać tylko jeden z nich, pozostały uzyska wkompilowaną wartość
            domyślną.

## 9.8 Obsługa CD-ROM Sanyo CDR-H94A (`sjcd.o`).

    Polecenie ładowania:
            /sbin/modprobe sjcd.o sjcd_base=0x340

            Parametr jest portem bazowym twojej karty.
            Adres domyślny = 0x340, bez IRQ,  bez DMA.

## 9.9 Obsługa programowo konfigurowalnego interfejsu ISP16/MAD16/Mozart (`isp16.o`).

    Polecenie ładowania:
            /sbin/modprobe isp16.o [parameters]

            isp16_cdrom_base=<port>
            isp16_cdrom_irq=<irq>
            isp16_cdrom_dma=<dma>
            isp16_cdrom_type=<typ_napędu>

            Prawidłowe wartości to:
              port=0x340,0x320,0x330,0x360
              irq=0,3,5,7,9,10,11
              dma=0,3,5,6,7
              typ_napędu=noisp16,Sanyo,Panasonic,Sony,Mitsumi.

              Pamiętaj, że powyższe parametry są wrażliwe na wielkość liter.

## 9.10 Obsługa CD-ROM Sony CDU31A/CDU33A (`cdu31a.o`).

    Polecenie ładowania:
            /sbin/modprobe cdu31a.o [parametry]

            cdu31a_port=<adres I/O> - ustawia bazowy adres I/O.
            Musi to być określone.

            cdu31a_irq=<interrupt> - Ustawia numer przerwania.
            Nie podanie tego parametru spowoduje wyłączenie przerwań.

## 9.11 Obsługa CD-ROM Sony CDU535 (`sonycd535.o`).

    Polecenie ładowania:
            /sbin/modprobe sonycd535.o sonycd535=[adres]

            Parametr to adres bazowy twojej karty.

## 10. Systemy plików

## 10.1 Obsługa systemu plików Minix (`minix.o`).

    Polecenie ładowania:
            /sbin/modprobe minix.o

            Brak parametrów ładowania.

## 10.2 Obsługa systemu plików Extended (`ext.o`).

    Polecenie ładowania:
            /sbin/modprobe ext.o

            Brak parametrów ładowania.

## 10.3 Obsługa systemu plików Second extended (`ext2.o`).

    Polecenie ładowania:
            /sbin/modprobe ext2.o

            Brak parametrów ładowania.

## 10.4 Obsługa systemu plików xiafs (`xiafs.o`).

    Polecenie ładowania:
            /sbin/modprobe xiafs.o

            Brak parametrów ładowania.

## 10.5 Obsługa systemu plików DOS FAT (`fat.o`).

    Polecenie ładowania:
            /sbin/modprobe fat.o

            Brak parametrów ładowania.

## 10.6 Obsługa systemu plików MSDOS (`msdos.o`).

    Polecenie ładowania:
            /sbin/modprobe msdos.o

            Brak parametrów ładowania.
            Wymaga fat.o.

## 10.7 Obsługa systemu plików VFAT (Windows-95) (`vfat.o`).

    Polecenie ładowania:
            /sbin/modprobe vfat.o

            Brak parametrów ładowania.
            Wymaga fat.o.

## 10.8 UMSDOS: System plików typu unix nałożony na std. system plików MSDOS FAT(`umsdos.o`).

     Polecenie ładowania: /sbin/modprobe vfat.o

            Brak parametrów ładowania.
            Wymaga fat.o i msdos.o.

## 10.9 Obsługa systemu plików NFS (`nfs.o`).

    Polecenie ładowania:
            /sbin/modprobe nfs.o

            Brak parametrów ładowania.

## 10.10 Obsługa systemu plików SMB (używanie wolumenów WfW, itd...) (`smbfs.o`).

`smbfs` jest systemem plików, pracującym w oparciu o protokół SMB. Jest to protokół używany przez systemy Windows for Workgroups, Windows NT i Lan Manager do wzajemnego komunikowania się ze sobą. `smbfs` zrodził się dzięki programowi `samba`, napisanemu przez Andrew Tridgella. Program ten zmienia jakikolwiek komputer pracujący w systemie Unix w serwer plików dla stacji DOS lub Windows. Więcej na temat tego interesującego pakietu programów, a także informacje o używaniu SMB i NetBIOS za pośrednictwem TCP/IP przeczytać możesz tutaj: `ftp://nimbus.anu.edu.au/pub/tridge/samba/`. Znajdziesz tam również wyjaśnienie pojęć takich jak nazwa lub wolumen netbios.

Aby używać smbfs, potrzebujesz specjalny program montujący, który znajduje się w pakiecie `ksmbfs`, umieszczonym pod adresem `sunsite.unc.edu:/pub/Linux/system/Filesystems/smbfs`.

    Polecenie ładowania:
            /sbin/modprobe smbfs.o

            Brak parametrów ładowania.

## 10.11 Obsługa systemu plików NCP (podłączanie wolumenów NetWare) (`ncpfs.o`).

`ncpfs`jest systemem plików, pracującym w oparciu o protokół NCP, zaprojektowany przez Novell Corporation dla produktu NetWare(tm). NCP jest funckjonalnie zbliżony do NFS, wykorzystywanego w społeczności TCP/IP. Aby zamontować system plików Netware, potrzebny jest specjalny program montujący, który znajduje się w pakiecie `ncpfs`. Stroną domową ncpfs jest `ftp.gwdg.de/pub/linux/misc/ncpfs`, ale na sunsite i w innych archiwach lustrzanych również można go znaleźć.

Pokrewne pakiety to `linware` i `mars_nwe`, które uzupełniają Linuxa o część funkcjonalności serwerw NetWare.

Strona domowa Linware to: `klokan.sh.cvut.cz/pub/linux/linware`,

Mars_nwe można znaleźć tu: `ftp.gwdg.de/pub/linux/misc/ncpfs`.

    Polecenie ładowania:
            /sbin/modprobe ncpfs.o

            Brak parametrów ładowania.

            Wymaga ipx.o

## 10.12 Obsługa systemu plików CD-ROM ISO9660 (`isofs.o`).

    Polecenie ładowania:
            /sbin/modprobe isofs.o

            Brak parametrów ładowania.

## 10.13 Obsługa systemu plików OS/2 HPFS (tylko do odczytu) (`hpfs.o`)

    Polecenie ładowania:
            /sbin/modprobe hpfs.o

            Brak parametrów ładowania.

## 10.14 Obsługa systemu plików Systemu V/Coherent (`sysv.o`).

Jest to linuxowa implementacja systemu plików Systemu V/Coherent.

Obsługuje wszsystkie z poniższych systemów plików:

- Xenix,
- SystemV/386,
- Coherent.

    Polecenie ładowania:
            /sbin/modprobe sysv.o

            Brak parametrów ładowania.

## 10.15 Obsługa systemu plików Amiga FFS (`affs.o`).

    Polecenie ładowania:
            /sbin/modprobe affs.o

            Brak parametrów ładowania.

## 10.16 Obsługa systemu plików UFS (tylko do odczytu) (`ufs.o`).

Ewidentnie do montowania dysków z partycjami FreeBSD i/lub Sun. Nie licząc Kodu Źródłowego, nie istnieje żadna dokumentacja.

    Polecenie ładowania:
            /sbin/modprobe ufs.o

            Brak parametrów ładowania.

## 11. Urządzenia znakowe

## 11.1 Obsługa modułów sterowników użytkownika (`misc.o`).

Moduł ten jest używany przez moduły `atixlmouse, busmouse, msbusmouse, psaux, wdt` i `softdog` i jest generowany automatycznie w razie potrzeby.

    Polecenie ładowania:
            /sbin/modprobe misc.o

            Brak parametrów ładowania.

## 11.2 Standardowa/ogólna obsługa urządzeń szeregowych (`serial.o`).

UWAGA: `serial.o` jest wymagany przez inne moduły, jak ppp.o i slip.o. Również wymagany jest przez mysz szeregową i, co za tym idzie, przez gpm. Jednakże ta zależność nie jest wykrywana przez obecnie dostępne programy narzędziowe i moduł `serial.o` musi być ładowany ręcznie.

    Polecenie ładowania:
            /sbin/modprobe serial.o

            Brak parametrów ładowania.

## 11.3 Obsługa Cyclades async mux (`cyclades.o`)

    Polecenie ładowania:
            /sbin/modprobe cyclades.o

            Brak parametrów ładowania.

## 11.4 Obsługa Stallion multiport serial

Te inteligentne karty również wymagają załadowania do nich "firmowego" kodu. Robi się to z poziomu użytkownika poprzez program "stlload" dołączony do pakietu sterowników. Skompiluj ten program wpisując "make" tam, gdzie umieściłeś pliki z pakietu. W najprostszym przypadku możesz wówczas w tym katalogu wydać polecenie:

> `./stlload -i cdk.sys`

Załaduje ono kartę 0 (zakładając, że karta 0 jest kartą EasyConnection 8/64). Aby załadować do karty ONboard, Brumby lub Stallion, wpisz:

> `./stlload -i 2681.sys`

Przeczytaj plik `/usr/src/linux/drivers/char/README.stallion`.

### Obsługa Stallion EasyIO lub EC8/32 (`stallion.o`).

    Polecenie ładowania:
            /sbin/modprobe stallion.o

            Brak parametrów ładowania.

### Obsługa Stallion EC8/64, ONboard, Brumby (`istallion.o`).

    Polecenie ładowania:
            /sbin/modprobe istallion.o

            Brak parametrów ładowania.

## 11.5 Obsługa karty SDL RISCom/8 (`riscom8.o`).

    Polecenie ładowania:
            /sbin/modprobe riscom8.o [options]

            Ten sterownik może obsłużyć do 4 kart naraz.
            Opcje : iobase=0xXXX iobase1=0xXXX iobase2=...

## 11.6 Obsługa drukarki na porcie równoległym (`lp.o`).

    Polecenie ładowania:
            /sbin/modprobe lp.o io=0x378 irq=0

            io = 0
            irq = 0         przy irq=0 będzie działać w trybie zapytywania

            (Detekcja na portach: 0x278, 0x378, 0x3bc)
            Note: załadowanie lp.o bez żadnych parametrów spowoduje inicjalizacje
            wszystkich portów równoległych.

## 11.7 Obsługa myszy

### Obsługa myszy ATIXL (`atixlmouse.o`).

    Polecenie ładowania:
            /sbin/modprobe atixlmouse.o

            Brak parametrów ładowania.
            Wymaga misc.o

### Obsługa myszy Logitech (`busmouse.o`).

    Polecenie ładowania:
            /sbin/modprobe busmouse.o

            Brak parametrów ładowania.
            Wymaga misc.o

### Obsługa myszy Microsoft (`msbusmouse.o`).

    Polecenie ładowania:
            /sbin/modprobe msbusmouse.o

            Brak parametrów ładowania.
            Wymaga misc.o

### Obsługa myszy PS/2 (tzw. "urządzenie dodatkowe") (`psaux.o`).

    Polecenie ładowania:
            /sbin/modprobe psaux.o

            Brak parametrów ładowania.
            Wymaga misc.o

## 11.8 Obsługa napędów taśmowych

Informację na temat napędów taśmowych SCSI znajdziesz w rozdziale Obsługa SCSI. Obsługa napędów taśmowych QIC-02 nie ma postaci modułu.

### Obsługa Ftape (QIC-80/Travan) (`ftape.o`).

    Polecenie ładowania:
            /sbin/modprobe ftape.o tracing=3

            Parametr 'tracing' może przyjmować następujące wartości

            ustaw:          aby otrzymać:
              0             dziury w programie
              1             + błędy
              2             + ostrzeżenia
              3             + informacje            ** Domyślnie **
              4             + więcej informacji
              5             + przebieg programu
              6             + informacje o fdc/dma
              7             + przepływ danych
              8             + wszystko inne

## 11.9 Obsługa Watchdog Timer

### WDT Watchdog timer (`wdt.o`).

    Polecenie ładowania:
            /sbin/modprobe wdt.o

            Brak parametrów ładowania.
            Domyślnie io=0x240 irq=14,
            wszelkie pożądane zmiany dokonaj bezpośrednio w pliku wdt.c.
            Wymaga misc.o

### Programowy Watchdog (`softdog.o`).

    Polecenie ładowania:
            /sbin/modprobe softdog.o

            Brak parametrów ładowania.
            Wymaga misc.o

### Berkshire Products PC Watchdog (`pcwd.o`).

    Polecenie ładowania:
            /sbin/modprobe pcwd.o

            Brak parametrów ładowania.
            Wymaga misc.o

## 12. Obsługa dźwięku (`sound.o`).

Konfigurowanie dźwięku to złożone zadanie, na ten temat napisano kilka plików Readme - w katalogu `/usr/src/linux/drivers/sound`, po prostu je przeczytaj.

    Polecenie ładowania:
            /sbin/modprobe sound.o [option]

            Opcja: dma_buffsize=32768

## 13. Zakończenie

W sprawie przedawnionych informacji oraz ewentualnych błędów merytorycznych należy zgłaszać się do autora.

Dzięki,

Lauri Tischler, `ltischler@efore.fi`

## 13.1 Od tłumacza

Prawa autorskie wersji polskiej tego dokumentu (c) 1997 są własnością Pawła Olszewskiego (alder@amg.net.pl). Dystrybucja wersji polskiej objęta jest klauzulą analogiczną do zawartej w oryginale.

Jeśli znalazłeś w niniejszym dokumencie jakieś paskudne literówki, błędy ortograficzne, lub inne tego typu numery, ślij informację w pierwszej kolejności do tłumacza, w tej sytuacji autor oryginału jest najprawdopodobniej niewinny.

W kwestii merytorycznej, dokument ten nie różni się specjalnie od oryginału (nie dokonałem żadnych zmian ani poprawek).

Najnowsza wersja tego dokumentu znajduje się wraz z innymi przetłumaczonymi na polski dokumentami serii Linux-HOWTO w archiwum JTZ (Jak To Zrobić): http://www.jtz.org.pl/Html/Module-HOWTO.pl.html. Najświeższa wersja angielska znajduje się tutaj: http://sunsite.unc.edu/mdw/HOWTO/Module-HOWTO.html.

Dzięki,

Pawko Olszewski, `alder@amg.net.pl`

###

###