% Linux Installation and Getting Started    -*- TeX -*-
% conflicts.tex
% Copyright (c) 1992-1994 by Matt Welsh <mdw@metalab.unc.edu>
%
% This file is freely redistributable, but you must preserve this copyright 
% notice on all copies, and it must be distributed only as part of "Linux 
% Installation and Getting Started". This file's use is covered by the 
% copyright for the entire document, in the file "copyright.tex".
%
% Copyright (c) 1998 by Specialized Systems Consultants Inc. 
% <ligs@ssc.com>

\subparagraph*{Osamitev strojnih problemov}
% \namedlabel{sec-install-probs-hardware-conflicts}
\label{sec-install-probs-hardware-conflicts}
\index{strojna oprema!konflikti|(}

Če izkusite problem, za katerega verjamete, da je povezan s strojno
opremo, je prva stvar, ki bi jo morali narediti, poskus osamitve
problema.  To pomeni odstranitev vseh možnih spremenljivk in (navadno)
razstavljanje sistema, kos za kosom, dokler strojni krivec ni točno
določen.

To ni tako strašljivo, kot se morda sliši.  Pravzaprav morate
odstraniti vso nebistveno strojno opremo iz vašega sistema in
ugotoviti, katera naprava povzroča težave -- najbrž tako, da ponovno
vstavite vsako napravo, po eno naenkrat.  To pomeni, da morate
odstraniti vso strojno opremo, razen disketnika in krmilnikov videa in
seveda tipkovnice.  Celo naprave, ki izgledajo nedolžno, kot so
krmilniki mišk, lahko vnesejo precejšnje opustošenje v vaš duševni
mir, če jih imate za nebistvene.

Denimo na primer, da se sistem obesi med zagonom ob zaznavanju plošče
Ethernet.  Predpostavite lahko, da gre za konflikt ali problem s
ploščo Ethernet v vašem stroju.  Hitra in preprosta pot za ugotovitev
tega je, da izpulite ploščo Ethernet in ponovno skušate zagnati
računalnik.  Če gre vse v redu, potem veste, da (a) plošča Ethernet ni
podprta v Linuxu (glejte stran~\pageref{sec-intro-hardware}) ali (b)
obstaja konflikt z naslovom ali z IRQ-jem plošče.

\index{IRQ}
>>Konflikt z naslovom ali z IRQ-jem?<< Kaj na svetu pa to pomeni?  Vse
naprave v vašem stroju uporabljajo \textbf{IRQ} ali \emph{prekinitveno
linijo za zahteve} (angl.\ interrupt request line, IRQ), za sporočanje
sistemu, da potrebujejo, da ta nekaj opravi namesto njih.  IRQ si
lahko predstavljate kot vrv, ki jo naprava potegne, ko mora sistem
poskrbeti za nekakšno nerešeno zahtevo.  Če več kot ena naprava vleče
isto vrv, jedro ne bo moglo ugotoviti, katera naprava potrebuje
postrežbo.  In zmeda je tu.

Torej, prepričajte se, da vse vaše nameščene naprave uporabljajo vsaka
svojo linijo za IRQ.  V splošnem se IRQ za napravo lahko nastavi s
skakači (angl.\ jumpers) na kartici; glejte dokumentacijo za določeno
napravo za podrobnosti.  Nekatere naprave sploh ne potrebujejo uporabe
IRQ-ja, a priporočeno je, da jih nastavite tako, da ga uporabljajo, če
je to mogoče (krmilnika SCSI Seagate ST01 in ST02 sta dobra primera).

V nekaterih primerih je jedro na vaših namestitvenih medijih
nastavljeno za uporabo določenih IRQ-jev za določene naprave.  Na
primer, na nekaterih distribucijah Linuxa je jedro vnaprej nastavljeno
za uporabo IRQ 5 za krmilnik SCSI TMC-950, krmilnik Mitsumi za CD-ROM
in gonilnik miške, priključene na vodilo.  Če želite uporabljati dve
ali več od teh naprav, boste morali najprej namestiti Linux z
omogočeno le eno od teh naprav, potem spet prevesti jedro, da boste
spremenili privzeti IRQ za eno od njih.  (Glejte
poglavja~\ref{chap-sysadm-num} za informacije o prevajanju jedra.)

Še eno področje, kjer se lahko pojavijo strojni konflikti, je pri
kanalih DMA (angl.\ direct memory access, neposredni dostop do
pomnilnika), V/I naslovih in naslovih deljenega pomnilnika.  Vsi od
teh izrazov opisujejo mehanizme, skozi katere sistem komunicira s
strojnimi napravami.  Nekatere omrežne kartice, na primer, uporabljajo
deljen pomnilniški naslov kot tudi IRQ za vmesnik do sistema.  Če je
katerakoli od njih v sporu z drugimi napravami, se sistem lahko obnaša
nepredvidljivo.  Morali bi imeti možnost spremeniti kanal DMA (angl.\
DMA channel), naslove za V/I ali deljene pomnilniške naslove za vaše
različne naprave z nastavitvami skakačev.  (Žal nekatere naprave ne
dopuščajo spremembe teh nastavitev.)

Dokumentacija za različne strojne naprave bi morala določati IRQ,
kanal DMA, V/I-naslov (angl.\ I/O address) ali naslov deljenega
pomnilnika (angl.\ shared memory address), ki ga naprave uporabljajo,
in vsebovati opise, kako jih nastaviti.  Spet je preprost način, da se
izognete tem problemom, da začasno onemogočite sporne naprave, dokler
nimate časa ugotoviti vzroka problema.

Tabela~\ref{table-dev-settings} vsebuje seznam IRQ-jev in kanalov DMA,
ki jih uporabljajo različne >>standardne<< naprave na večini sistemov.
Skoraj vsi sistemi imajo katero od teh naprav, zato se morate
izogibati nastavitvi IRQ-ja ali DMA-ja drugih naprav tako, da so v
konfliktu s temi vrednostmi.

\begin{table}
\begin{center}
\small
\begin{tabular}{|l|l|l|l|}
\hline
Naprava                  &   V/I naslov  & IRQ & DMA \\
\hline
\texttt{ttyS0} (\texttt{COM1})   &   3f8	    &  4  &  n/a \\
\texttt{ttyS1} (\texttt{COM2})   &   2f8	    &  3  &  n/a \\
\texttt{ttyS2} (\texttt{COM3})   &   3e8	    &  4  &  n/a \\
\texttt{ttyS3} (\texttt{COM4})   &   2e8	    &  3  &  n/a \\

\texttt{lp0} (\texttt{LPT1})	   &   378 -- 37f    &  7  &  n/a \\
\texttt{lp1} (\texttt{LPT2})	   &   278 -- 27f    &  5  &  n/a \\

\texttt{fd0}, \texttt{fd1} (disketnika 1 in 2) & 3f0 -- 3f7 & 6 & 2 \\
\texttt{fd2}, \texttt{fd3} (disketnika 3 in 4) & 370 -- 377 & 10 & 3 \\
\hline
\end{tabular}
\caption{Pogoste nastavitve naprav}
\label{table-dev-settings}
\end{center}
\end{table}

\index{strojna oprema!konflikti|)}
