\documentclass[letterpaper]{article}
\nonstopmode
\akai
\usepackage{linuxdoc-sgml}
\usepackage{qwertz}
\usepackage{url}
\usepackage[latin1]{inputenc}
\usepackage{t1enc}
\usepackage[english]{babel}
\usepackage{epsfig}
\usepackage{null}
\def\addbibtoc{
\addcontentsline{toc}{section}{\numberline{\mbox{}}\relax\bibname}
}%end-preamble
\setcounter{page}{1}
\title{The Linux Plug-and-Play HOWTO ¤¤¤åª©}
\author{§@ªÌ: David S.Lawyer {\ttfamily \onlynameurl{bf347@lafn.org}}\\ 
Ä¶ªÌ: §ù§J¥Û {\ttfamily \onlynameurl{rock@371.net}}}
\date{v0.00, November 1998}
\abstract{À°§U§A²z¸Ñ©M¨Ï¥Î PnP ³]³Æ. ¦p¦ó¨Ï§Aªº Linux ¤ä«ù PnP. ²Ä¤@­Óª©¥»¬O¤£§¹¾ãªº,
¦ý¤]³\¹ï§A¦³¥Î.}


\begin{document}
\maketitle
\tableofcontents

\section{¤¶²Ð}


\subsection{ª©Åv, °Ó¼Ð, ¤£¾á«O, ©M «H¥Î}

¥»¤p¸`½Ð¬Ý­ì¤å




\subsubsection{ª©Åv}

 Copyright (c) 1998 by David S. Lawyer. Please freely copy and
distribute (sell or give away) this document.  You may create
derivative works and distribute them provided you:

I. For the case of minor changes and corrections where there exists a
current maintainer:\\  
Send your proposed changes to the current maintainer first.  You may
distribute (per II. below) only if the current maintainer neglects to
incorporate your changes in a timely manner.  If the changes are only
to correct typos, you need not wait for a reply from the maintainer
before you distribute.

II. In all other cases:\\ 
\begin{enumerate}
\item  Make a good faith effort to insure that a copy of the derivative
work (including any master copy) gets on the Internet at a
well-known (and mirrored) site for free downloading.\\ 
\item  If you change the license, license the work in the spirit of this
license, or use GPL (Free Software Foundation).  
\item  The major authors become the copyright owners (not to exceed 2).
Minor contributions do not make you an author.\\ 
\item  Make a good faith effort to contact the maintainer (or 
copyright owners if there is no maintainer) to let them know what you
have done.  If the changes are extensive, then you should also attempt
to make more such contacts (including prior to your project).\\ 
\item  Give full credit to significant previous authors and contributors
although the credits section need not exceed 1\% of the length of the
document.
\end{enumerate}





\subsubsection{°Ó¼Ð}

 If certain words are trademarks, the context should make it clear
to whom they belong.  For example "MS Windows" (or just "Windows")
implies that "Windows" belongs to Microsoft (Micro\$oft).




\subsubsection{¤£¾á«O}

 Much of the info in this HOWTO was obtained from 
Serial-HOWTO, the Internet, sales clerks, etc. and may be unreliable.
While I haven't intentionally tried to mislead you, there are likely a
number of errors in this document.  Please let me know about them.
Since this is free documentation, it should be obvious that neither I
nor previous authors can be held legally responsible for any errors.




\subsection{¥¼¨Ó­p¹º: §A¤]¥i¥HÀ°¦£}

½Ð§i¶D§Ú§AªººØºØ·Qªk. ¦ý­º¥ýª`·N, ¦pªG§A¤â¤¤ªºª©¥»¬O¤@­Ó¤ë¥H«eªº,
½Ð¬Ý¬O§_¦³·sª©¥». 

¦¹ HOWTO ²Ä¤@­Óª©¥», 0.00, §Ú¬Æ¦Ü¨S¦³¬Ý®Ñ: PnP Åé¨tµ²ºc, ¤]¨Ã¤£§¹¥þ²z¸Ñ PnP.
¤]¨S¦³¤ñ¸û¤G­Ó§â Linux ÅÜ¦¨ PnP ¾Þ§@¨t²Îªº¸É¤Bªº¤£¦P. §Ú¤£·|¥R¤À¸ÑÄÀ BIOS
¦p¦ó³]¸m PnP(§ó¤£­n»¡¸É¤B¦p¦ó°µ¤F). ¦¹ HOWTO
¬O¤£§¹¾ãªº¨Ã¥B¥i¯à¤£¥¿½T(°²¦p§Ú¿ù¤F, ½Ð§i¶D§Ú). ¦b¦¹ HOWTO ¤¤§Ú¨Ï¥Î ??
¨Óªí¥Ü§Ú¤£ª¾¹Dµª®×. §A·Q§ï¶i(­«¼g)©MºûÅ@¦¹ HOWTO ¶Ü? §Ú¥¿¦b§ä¤H.




\subsection{¦¹ HOWTO ªº·sª©¥»}

 
¦¹ HOWTO ªº·sª©¥»¥i¥H¦b LDP ªºÃè¹³¯¸ÂI¤W§ä¨ì. ­º¥ý¬Ý
\nameurl{http://sunsite.unc.edu/LDP/mirrors.html}{},
·í§A§ä¨ì¤@­ÓªñªºÃè¹³¯¸ÂI«á, ÂIÀ» "Linux Documentation Project" (LDP),
¦b¨ä¥¦®æ¦¡ HOWTO ¤¤§ä.
¦pªG§A¶È¶È·Qª¾¹D³Ì·sª©¥»ªº¤é´Á, §A¤£¥²¨Ï¥ÎÃè¹³¯¸ÂI, ¬Ý
\nameurl{http://sunsite.unc.edu/LDP/HOWTO/Plug-and-Play-HOWTO.html}{} §Y¥i.




\section{PnP «ç»ò°µ: ¤À°t "¸ê·½"}


\subsection{¤°»ò¬O Plug-and-Play (PnP)? }

Plug-and-Play ´N¬O¦Û°Ê°t¸m(§C¼h)­pºâ¾÷¤¤ªº´¡¥d©M¨ä¥L³]³Æ,
µM«á§i¶D¹ïÀ³ªº³]³Æ³£°µ¤F¤°»ò. Plug-and-Play
ªº¥ô°È¬O§âª«²z³]³Æ©M³n¥ó(³]³ÆÅX°Êµ{§Ç)¬Û°t¦X, ¨Ã¾Þ§@³]³Æ,
¦b¨C­Ó³]³Æ©M¥¦ªºÅX°Êµ{§Ç¤§¶¡«Ø¥ß³q«H³q¹D. ´«ºØ»¡ªk, PnP
¤À°t¤U¦C¸ê·½µ¹³]³Æ©Mµw¥ó: I/O ¦a§}, IRQ, DMA ³q¹D, ¤º¦s¬q. °²¦p§A¤£²z¸Ñ³o 4 ¶µ,
¬Ý¤U­±ªº. ¤@¥¹³o¨Ç¸ê·½³Q¤À°t, ³]³Æ(¦W¦r¦b /dev
¥Ø¿ý¤¤)´N­ã³Æ¦n³Q¨Ï¥Î(­Õ­Y³o¨Çª«²z³]³Æ¦b§Aªº PC ¤¤).

PnP °t¸m¸ê·½, ¦ý¶È¬O¤@©wµ{«×¤Wªº°t¸m¸ê·½. ºÉºÞ¨Ï¥Î¤F PnP, ³\¦h³]³Æ¤´¤£¬O³Q PnP
¨Ó°t¸m. ¦p½Õ¨î¸Ñ½Õ¾¹ªº°t¸m, 'init string' ³Q³q¹L I/O ¦a§}³q¹D°eµ¹½Õ¨î¸Ñ½Õ¾¹, ºÉºÞ I/O
¦a§}³q¹D¬O¥Ñ PnP ¤À°tªº, ¦ý 'init string' »P PnP µLÃö.
³]¸m¦ê¤fªº³t«×¬O¥Ñ¥Î¤á°õ¦æµ{§Ç¨Ó°µªº¦Ó¤£¥Ñ PnP. ©Ò¥H·í»¡°_ PnP ªº®É­Ô,
'¸ê·½'·N¨ýµÛ¸ê·½¤¤ªº¤@³¡¤À, '°t¸m'·N¨ýµÛ¬Y¨ÇÃþ«¬ªº°t¸m.




\subsection{­pºâ¾÷¦p¦ó§ä³]³Æ(©M ¤Ï¹L¨Ó)}

­pºâ¾÷¥]¬A CPU ¨Ó¹Bºâ, ¤º¦s¨Ó¦sÀxµ{§Ç©M¼Æ¾Ú. ÁÙ¦³¤@¨Ç³]³Æ, ¦pºÏ½LÅX°Ê¾¹, Åã¥Ü¥d,
Áä½L, ºô¥d, modem ¥d, Án¥d, ¦ê¤f©M¦}¤f, µ¥µ¥. ÁÙ¦³¹q·½´£¨Ñ¹q¯à,
¥DªO¤Wªº¦UºØÁ`½u§â³]³Æ©M CPU ³s¦b¤@°_, ¾÷½c§â¥¦­Ì¸Ë°_¨Ó.

¹L¥h, ³\¦h³]³Æ³£¬O´¡¥d(¦L¨ê½u¸ôªO). ¤µ¤Ñ, °£¤F´¡¥d¤§¥~,
³\¦h³]³Æ¤w¸g¤p¨ì¤@¶ôªä¤ù³Q°µ¦b¥Dª©¤W. ¥Dª©¤Wªº´¡¥d¤]³\¥]§t¤£¤î¤@­Ó³]³Æ.
¤º¦s¦³®É¤]³Q»{¬°¬O³]³Æ¦ý¤£¬O¦¹ HOWTO ¤¤ªº plug-and-play.

­pºâ¾÷­n¥¿±`¤u§@, ¨C­Ó³]³Æ¥²¶·¦b¥¦ªºÅX°Êµ{§Ç(¥¦¤]¬O¾Þ§@¨t²Îªº¤@³¡¤À,
¦bCPU¤W¹B¦æ)±±¨î¤U¹B¦æ. ÅX°Êµ{§Ç»P /dev ¥Ø¿ý¤Uªº¯S®í¤å¥óÁp¨t¦b¤@°_,
ºÉºÞ¥L­Ì¤£¬O¯u¥¿ªº¤å¥ó. ¥¦­Ì¦³¶H hda1, ttyS0, eth1 µ¥³o¼Ëªº¦W¦r.
³Â·Ðªº¬O¿ï¾Ü¯S®í³]³ÆªºÅX°Êµ{§Ç, ´N»¡ eth1 §a, ¨Ì¿à¤_§A¨Ï¥Îªººô¥dªºÃþ«¬. ³o¼Ë eht1
´N¤£¯à¤À°tµ¹°£¤F¥i¥H¨Ï§A¦w¸Ëªººô¥d¥¿±`¤u§@ªºÅX°Êµ{§Ç¥~ªº¨ä¥¦ÅX°Êµ{§Ç.
¬°¤F±±¨î³]³Æ, CPU (¦bÅX°Êµ{§Çªº±±¨î¤U)¦V³]³Æµo°e©R¥O©M±q³]³ÆÅª¨ú«H®§.
­n³o¼Ë°µ, ¨C­Ó³]³ÆÅX°Êµ{§Ç¥²¶·ª¾¹D³]³Æªº±µ¤f¦a§}, ¤ñ¦p¥Î¤_³q«Hªº¦a§}.
ª¾¹D³o¼Ëªº¦a§}´N¦p¦P«Ø¥ß¤F¤@±ø³q«H³q¹D, §Y¨Ï³o­Ó³q¹D¬O PC
¨½ªº³\¦h³]³Æ¦@¨Éªº¼Æ¾ÚÁ`½u.

PC ¦³ 3 Ãþ¦a§}ªÅ¶¡: ¤º¦s, I/O, ©M°t¸m(¶È­­¤_ PCI Á`½u). ¥u¦³«e¨â­Ó(¤º¦s, I/O)³Q PnP
°t¸m. ¦b PC ¨½³o3ºØÃþ«¬ªº¦a§}¦@¨É¦P¼ËªºÁ`½u. (¥t¥~: ¹ï¤_ PCI Á`½u,
¥¦¥Î¤_¶Ç¿é¼Æ¾Ú). ¦ý¬O¥Ñ¯S©w¹q¸ô¨Ó§i¶D³]³Æ¦a§}¬O¦b I/O ªÅ¶¡©Î¦b¤º¦sªÅ¶¡.(Ä¶ªÌª`:
¨ä¹ê´N¬OÁ`½u±±¨î¹q¸ô¤¤ªº¤º¦s¨Ï¯à½u, ·í¥¦¬° 0 ¹q¥­®É, ªí¥Ü·í«e¦a§}¬O¤º¦s¦a§}, ¬°
1 ¹q¥­®É, ªí¥Ü·í«e¦a§}¬O I/O ¦a§}.) ³]³Æ³q±`¨Ï¥Î I/O ¦a§}ªÅ¶¡. ¤À°t I/O
¦a§}¥D­n¦³¨â¨B.

\begin{enumerate}
\item  ³]¸m´¡¥dªº I/O ¦a§},µ¥.(´¡¥d±H¦s¾¹¦a§}¤¤ªº¤@­Ó)
\item  Åý³]³ÆÅX°Êµ{§Çª¾¹D³o¨Ç I/O ¦a§}.
\end{enumerate}
 

²Ä¤T¨B¬O¦b /dev ¥Ø¿ý¤¤µ¹³]³Æ©M¥¦ªºÅX°Êµ{§Ç¨ú¤@­Ó¦W¦r, ¦p hda, ttyS0, ©Î eth1.
«e¨â¨B´N¶H¸Ñ¨M¦b¤@±øµó¹D¤W§ä¬Y¤Hªº¦í¦v¸¹½Xªº°ÝÃD.
§A¥²¶·ª¾¹D¦í¦v¸¹½X¨Ã¥B¬Y¤H¥²¶·§â¸¹½X©ñ¦b¦í¦v«e­±, §A¤~¥i¥H§ä¨ì¥¦. ¦b­pºâ¾÷¤¤,
ÅX°Êµ{§Ç¥²¶·ª¾¹D±µ¤f¦a§}, ¨Ã¥Bµw¥ó¥²¶·³]¸m¬°¬Û¦Pªº¦a§},
·íµM³o¨Ç¦a§}À³¬O´¡¥d±H¦s¾¹¦a§}¤¤ªº¤@­Ó. ³o¨â¼Ë³£­n°µ,
¿ù»~ªº¬O¦³¨Ç¤H¶È°µ¤F¨ä¤¤¤@¼Ë, µM«á«o¹ï­pºâ¾÷§ä¤£¨ì³]³Æ·P¨ì©_©Ç.
¤U­±¸ÑÄÀ¤W­±ªº: 
\ref{interrupt_over} {(IRQ's)}, \ref{dma_} {(DMA ³q¹D)}
IRQ, DMA ³q¹D, ©M \ref{mem_} {(¤º¦s¦a§})}, ©Ò¦³³o¨Ç³£¥s"{\itshape ¸ê·½\/}".




\subsection{IRQ's -- ·§­z \label{interrupt_over} }

¬Ý¹L¤U­±ªºÂ²²¤¤¶²Ð, §A¤]³\ÁÙ·Q¬Ý§ó¸Ô²Óªº\ref{interrupt_detail} {(¤¤Â_ -- ¸Ô¸Ñ)}.
Â²­z: °£¤F¦a§}¥~, ÁÙ¦³¤¤Â_»Ý­n³B²z(¦p IRQ5). §â¥¦¥s¤¤Â_¸¹.
§Ú­Ì¦b¤W­±¤w¸g»¡¹L³]³ÆÅX°Êµ{§Ç¬°¤F¯à³q«H¥²¶·ª¾¹D´¡¥dªº¦a§}.
¨º»ò¤Ï¹L¨Ó«ç»ò¿ì©O? ³]³Æ¦p¦ó»PÅX°Êµ{§Ç³q«H©O? ©Ò¥H³]³Æ»Ý­nª¾¹DÅX°Êµ{§Çªº¦a§},
³o¼Ë³]³Æ´N¥i¥H©I¥sÅX°Êµ{§Ç¤F. ¨Ò¦p: ³]³Æ±µ¦¬¨ì¤@¨Ç»Ý­n¶Ç°e¨ì¥D¦sªº¼Æ¾Ú,
¥¦»Ý­n§i¶DÅX°Êµ{§Ç°¨¤W¨Ó®³³o¨Ç¼Æ¾Ú, ¨Ã§â¼Æ¾Ú±q³]³Æªº½w½Ä°Ï°e¨ì¥D¦s.

³]³Æ©I¥sÅX°Êµ{§Ç¥Î§â¤@­Ó¤¤Â_¹q¸ô³s½u(Á`½uªº¤@³¡¤À)ªº¹q¥­©ï°ªªº¤èªk.
¦³16­Ó³o¼Ëªº³s½u, ¨C­Ó³s½u»P¤@­Ó¯S©wªº³]³ÆÅX°Êµ{§ÇÃöÁp. ¨C®Ú³s½u¦³¤@­Ó¯S©wªº
IRQ(Interrupt ReQuest) ¸¹. ³]³Æ»Ý­n§â¤¤Â_©ñ¨ì«ê·íªº³s½u¤W,
¦}¥BÅX°Êµ{§Ç¥²¶·°»Å¥¦P¤@³s½u. ¨s³º¨Ï¥Î­þ®Ú³s½u¨ú¨M¤_¦s¶J¦b³]³Æ¤¤ªº¤¤Â_¸¹,
¦¹¤¤Â_¸¹¥²¶·³QÅX°Êµ{§Çª¾¹D, ³o¼Ë¥¦¤~ª¾¹D»Ý­n°»Å¥¨º®Ú¤¤Â_½u.




\subsection{DMA ³q¹D \label{dma_}}

DMA ¥Nªí 'Direct Memory Access'(ª½±µ¤º¦s³X°Ý). ´N¬O¤¹³\³]³Æ±q CPU
¤â¤¤±µºÞ¨t²ÎÁ`½u, ¦}ª½±µ§â¼Æ¾Ú¶Ç°e¨ì¥D¤º¦s. ³q±` CPU ¤À¨â¨B¨Ó¶Ç°e¼Æ¾Ú: 1.
±q³]³Æªº I/O ¦sÀxªÅ¶¡Åª¼Æ¾Ú, §â¼Æ¾Ú©ñ¦b CPU ¤º³¡. 2. CPU
§â¼Æ¾Ú±q¨ä¤º³¡°e¨ì¥D¤º¦s. DMA ¤è¦¡³q±`¥Î¤@¨B´N¥i§â¼Æ¾Ú±q³]³Æª½±µ°e¨ì¥D¤º¦s.
³]³Æµw¥ó¥²¶·¤º¸m¦³³oºØ¯à¤O¦}¤£¬O©Ò¦³ªº³]³Æ³£¥i¥H¨Ï¥Î DMA ªº. ±q DMA
¶Ç¿é¥e¥Î¨t²ÎÁ`½u¶}©lªº¶Ç¿é¹Lµ{¤¤ CPU ´N¤£°µ¤°»ò¤F.

·í¤@­Ó³]³Æ¸Õ¹Ï¶i¦æ DMA ®É, ¥¦·|µo¥X¤@­Ó½Ð¨D(¥Î§ïÅÜÁ`½uªº DMA
½Ð¨D³s½uªº¹q¥­ªº¤è¦¡). DMA ½Ð¨D¤]¥i¥H¥Î¤¤Â_ªº¤è¦¡¨Ó¹ê²{, ¦ý·|¦³¤@©wªº©µ®É,
©Ò¥H¬°¤F§Ö³t, ´N¥Î¤@ºØ¯S®íÃþ«¬ªº¤¤Â_ 'DMA-½Ð¨D' ¨Ó¹ê²{. ¶H¤¤Â_¤@¼Ë, §â
'DMA-½Ð¨D½u' ½s¸¹¨ÓÃÑ§O¬O­þ­Ó³]³Æµo¥Xªº½Ð¨D. ³o¨Ç½s¸¹´N¥s DMA-³q¹D. ¦]¬° DMA
¶Ç¿é¨Ï¥Î¨t²ÎÁ`½u(¦P¤@®É¶¡¥u¯à¦³¤@­Ó¨Ï¥Î), ©Ò¥H¥¦­Ì¹ê»Ú¤W¥Î¦P¤@­Ó³q¹D,
½s¸¹¥D­n¥Î¨ÓÃÑ§O½Ö¦b¨Ï¥Î³q¹D. ¥DªO¤Wªºµw¥ó±H¦s¾¹¬ö¿ý¦U³q¹Dªº·í«eª¬ºA.
­nµo¥X¤@­Ó DMA ½Ð¨D, ³]³Æ¥²¶·ª¾¹D¦Û¤vªº DMA ³q¹D¸¹,
³q¹D¸¹¥Ñª«²z³]³Æ¦sÀx¦b¦Û¤v¤º³¡.




\subsection{Memory ¬q \label{mem_}}

¹³ I/O ¦a§}¤@¼Ë, ¤@¨Ç³]³Æ¦b¥D¤º¦s¤¤¤À°t¦³¦a§}. ·í§A´¡³o¼Ëªº¥d®É,
§A¹ê»Ú¤W¤]´¡¤F¤@¶ô¤º¦s¼Ò¶ô(¥D¤º¦s, ¤£¬O I/O ¤º¦s). ³o¬q¤º¦s³Q³]³Æ©M CPU
¦@¨É(¹B¦æ³]³ÆÅX°Êµ{§Ç«á). ³o¶ô¤º¦s·N¨ýµÛ³]³Æ©M¥D¤º¦s¤§¶¡'ª½±µ'¶Ç¿é¼Æ¾Ú.
¨ä¹ê¤£¬O¯u¥¿ªº¶Ç¿é, ³]³Æ§â¼Æ¾Ú©ñ¨ì¥¦¦Û¤vªº¤º¦s¤¤¦P®É¤]´N©ñ¨ì¤F¥D¤º¦s¤¤.
´¡¥d©M³]³ÆÅX°Êµ{§Ç¥²¶·ª¾¹D¤º¦s¶ôªº¦a§}.




\subsection{¨âºØ "¸ê·½"}

¥²¶·§â³]³ÆÅX°Êµ{§Ç©M¥L­Ì±±¨îªºµw¥óÁp¨t°_¨Ó. ³o¥Ñ¦V¥L­Ì´£¨Ñ¬Û¦Pªº¸ê·½¨Ó¸Ñ¨M.
¨Ò¦p: ¦ê¦æ¤f¨Ï¥Î¨â­Ó¸ê·½: ¤@­Ó IRQ ©M ¤@­Ó I/O ¦a§}.
³o¨Ç¸ê·½¥²¶·´£¨Ñµ¹³]³ÆÅX°Êµ{§Ç©Mª«²z³]³Æ¨âªÌ. ÅX°Êµ{§Ç(©M¥¦ªº³]³Æ)³Q©R¦W(¦p
ttlyS1). ¦a§}©M IRQ ¸¹³Q´¡¥d¦sÀx¦b¦Û¤vªº°O¾ÐÅé¤¤(©Î¥DªOªº¤@­Óªä¤ù¤¤). 




\subsection{°ÝÃD}

PC Åé¨t¥u´£¨Ñ¦³­­ªº IRQ, DMA ³q¹D, I/O ¦a§},µ¥.
°²¦p¥u¦³´XºØ³]³Æ¨Ã¥B³]³Æ³£¨Ï¥Î¼Ð·Çªº¸ê·½,
§âÅX°Êµ{§Ç©M³]³ÆÁp¨t¦b¤@°_¨S¤°»ò°ÝÃD.
¨C­Ó³]³Æ¦³¤@­Ó©T©wªº¸ê·½¨Ã¥B¤£»P¾÷¾¹¤¤ªº¨ä¥L³]³Æ½Ä¬ð. ¨S¦³¨â­Ó³]³Æ¨Ï¥Î¬Û¦Pªº
I/O ¦a§}, IRQ, µ¥. ½s¼gÅX°Êµ{§Ç®É§â³o¨Ç¸ê·½¼g¶i¥h§Y¥i. ³o¼Ë¨Æ±¡´NÂ²³æ¤F.

¦ý¹ê»Ú±¡ªp¤£¬O³o¼Ë. ¤µ¤Ñ¤£¶È¦³³\¦h¤£¦Pªº³]³Æ¥B¥¦­Ì·¥¦³¥i¯àµo¥Í½Ä¬ð,
¦Ó¥B¦P®É¤S­n¨Ï¥Î¤£¥u¤@­Ó¦PºØÃþ«¬ªº³]³Æ.
¨Ò¦p¤@­Ó¤H¥i¯à·Q¨Ï¥Î´X­Ó¤£¦PªººÏ½LÅX°Ê¾¹, ´X­Ó¦ê¤f, µ¥µ¥.
©Ò¥H³]³Æ¥²¶·¦³¤@©wªºÆF¬¡©Ê³o¼Ë¥i¥H§â¥¦­Ì³]¸m¬°¥ô·Nªº¦a§}, IRQ, µ¥µ¥.
¦]¬°­nÁ×¶}¸ê·½½Ä¬ð. ¦ý¬O¤@¨Ç IRQ ©M ¦a§}¬O¬Û·í¼Ð·Çªº¦p®ÉÄÁ©MÁä½L.
¥¦­Ì¤£»Ý­n³o¼ËªºÆF¬¡©Ê. 

°£¤F¸ê·½½Ä¬ð¤§¥~, ÁÙ¦³¤@­Ó°ÝÃD¬O§i¶DÅX°Êµ{§Ç¿ù»~ªº¸ê·½«H®§. ¨Ò¦p:
§A®Ú¾Ú²q·Q¦b°t¸m¤å¥ó¤¤¿é¤J IRQ4, ¥i³]³Æ¹ê»Ú¨Ï¥Îªº¬O IRQ5.
³o¬O¸ê·½¤À°tªº¥t¤@ºØ¿ù»~.

¸ê·½¤À°t, ¦pªG°µªº¥¿½T, ¥i¥H¦bµw¥ó©M¥¦­ÌªºÅX°Êµ{§Ç¤§¶¡«Ø¥ß³q«H³q¹D. ¨Ò¦p,
¤@­Ó¯S©wªº I/O ¦a§}½d³ò¤À°tµ¹¤@­Ó³]³ÆÅX°Êµ{§Ç©M¤@¶ôµw¥ó,
¨º»ò´N¥i¦b¥¦­Ì¤§¶¡«Ø¥ß³q«H³q¹D. ÅX°Êµ{§Ç¥i¥H¦V³]³Æ°e©R¥O©M«H®§.
¹ê»Ú¤W¤£¥u¤@±ø³q¹D, ¦]¬°ÅX°Êµ{§Ç¥i¥ÎÅª³]³Æ±H¦s¾¹ªº¤è¦¡±o¨ì«H®§.
¦ý¬O³]³Æ¤£¯à¥Î³oºØ¤è¦¡³q«H. ¤À°t¤@­Ó IRQ,
§â¥¦§@¬°ÅX°Êµ{§Ç©M³]³Æ¥i¥H¥æ¤¬ªº¥t¤@±ø³q«H³q¹D. 




\section{Plug-and-Play (PnP) ¸Ñ¨M¤è®×}


\subsection{¤¶²Ð}

PnP §â PnP ¸ê·½¦Û°Ê¤À°tµ¹µw¥ó©M¹ïÀ³ªº³n¥ó. ´N¬O,
§â³]³Æ©M¥¦­ÌªºÅX°Êµ{§Ç°t¹ï¦}«Ø¥ß³q«H³q¹D. ¦b¨Ï¥Î PnP ¤§«e, µw¥ó¾a¸õ½u,
³n¥ó¾a°t¸m¤å¥ó(©ÎÃþ¦üªº¤èªk)©Î²q´úµw¥ó¨Ï¥Îªº¸ê·½¨Ó¤À°t¸ê·½.
³o¼Ë¨Ã¤£¯àÁ`¬O¥¿±`¤u§@. 

§¹¥þªº PnP (¤]¤£¯àÁ`¬O¥¿±`¤u§@), »Ý­n PnP BIOS ©M¾Þ§@¨t²Îªº°t¦X.
·í­pºâ¾÷¶}¾÷®É BIOS ·|¹B¦æ¨Ó±Ò°Ê. °²¦p¾Þ§@¨t²Î¦sÀx¦bµw½L¤W(³q±`¬O³o¼Ë), ¨º»ò
BIOS ¥²¶·¤F¸Ñ³o­Óµw½L. ¦pªGµw½L¬O PnP ªº¨º»ò BIOS ·|¨Ï¥Î PnP ¤è¦¡§ä¨ì¥¦. ¦P¼Ë,
·í­pºâ¾÷±Ò°Ê®É¬°¤F°t¸m BIOS, Åã¥Ü¥d©MÁä½L®É¥²¶·ªº, ©Ò¥H¦pªG»Ý­nªº¸Ü BIOS
¥²¶·°t¸m³o¨Ç³]³Æ.

¤@¥¹ BIOS ÃÑ§O¤Fµw½L, Åã¥Ü¥d, ©MÁä½L, ¥¦´N·Ç³Æ 'boot'(±qµw½L½Õ¤J¾Þ§@¨t²Î).
°²¦p§A¤w¸g§i¶D BIOS §A¦³¤@­Ó PnP ªº¾Þ§@¨t²Î,
¥¦±N°µ³o»ò¦h¨ÃÅý¾Þ§@¨t²Î§¹¦¨¨ä¾lªº PnP °t¸m. §_«h, PnP-BIOS ±N§¹¦¨³Ñ¾lªº PnP
°t¸m.




\subsection{Linux »Ý­n PnP }

Wintel(Microsoft ©M Intel) ³Ð³y¤F PnP. ¥Ñ¤_ºØºØ­ì¦], Linux ªÀ°Ï¦³¤H¤£³ßÅw PnP.
¦ý¤£ºÞ³ßÅw»P§_, ¤µ¤Ñªºµw¥ó¤j³¡¤À¬O PnP ªº, °£¤F¦³®Äªº³B²z PnP ¥~, Linux §OµL¿ï¾Ü.




\subsection{Á`½u°ÝÃD}

PnP ¥´ºâ¦b¥ô¦óÁ`½u¤W¹B¦æ¦p ISA,PCI. ISA ¬O IBM PC ¤WªºÂÂÁ`½uµ²ºc, PCI ¬O Intel
³Ð³yªº·sªº§Ö³tªºÁ`½uµ²ºc. ³Ì²×, ISA Á`½u±N®ø¤`. PCI
Á`½uµ²ºc¦bÁ`½u¤W«O¯d¤F³\¦h¦a§}¥Î¤_ PnP °t¸m. Linux ¨Ï¥Î³o¨Ç¦a§}¨Ó§ä¥X§A¦³¤°»ò
PnP PCI ³]³Æ¨Ã§â¥¦­Ìªº«H®§©ñ¦b /proc/pci '¤å¥ó'¤¤. (Ãö¤_PCIÁ`½u¤Wªº«D PnP ³]³Æ,
§Ú¤£©ú¥Õ).

¹ï¤_ ISA Á`½u, ¥Ñ¤_¥¦¤£¬O¬° PnP ³]­pªº, ³]­p ISA ®É¨S¦³¥ô¦ó PnP ·§©À,
©Ò¥H¥¦¤W­±¨S¦³¥Î¤_ PnP ªº I/O ¦a§}. µ²ªG, ¦b ISA ¤W¹ê²{ PnP ¬Û·í´_Âø,¥¦»Ý­n PnP
³]³Æ³Q«ü©w¤@­ÓÁ{®Éªº'handle'(¥y¬`)¥Î¤_ PnP °t¸m. ¤À°t³o¨Ç 'handles' ¤]¥s°µ 'isolation'.
½Ð¬Ýªþ¿ý¤¤Ãö©ó \ref{isolation_} {(Isolation)} ªº½ÆÂø´y­z.




\subsection{³]¸m PnP BIOS \label{conf_pnp_bios}}

·í¶}¾÷®É, BIOS ¤ñ¾Þ§@¨t²Î¥ý¦æ½Õ¤J¹B¦æ. ·sªº BIOS ¤ä«ù PnP, ¥¦±N³]¸m³¡¤À©Î©Ò¦³ªº
PnP ³]³Æ. ¹ï¤_¤j¦h¼Æ PnP BIOS ¨S¦³¿ìªk§í¨î PnP ¥\¯à, §A¤£±o¤£¨Ï¥Î¥¦.
³o¨àªº¤@¨Ç¿ï¶µ,¦b§Aªº BIOS µæ³æ¤¤¤]³\¤]¦³:

\begin{itemize}
\item  \ref{bios_pnp_os} {(§A¦³¤@­Ó PnP ¾Þ§@¨t²Î¶Ü?)}
\item  \ref{bios_resources} {(¦p¦ó¤À°t¸ê·½? )}
\item  \ref{bios_reset} {(­«¸m°t¸m? )}
\end{itemize}





\subsubsection{§A¦³¤@­Ó PnP ¾Þ§@¨t²Î¶Ü? \label{bios_pnp_os}}

°²¦p§A»¡'¬O', PnP BIOS ±N¥Î PnP ³]¸mµw½L, µ¥. ¦ýÅý¾Þ§@¨t²Î§¹¦¨³Ì²×°t¸m¥ô°È. BIOS
¤]³\¦b ISA Á`½u¤W°µ \ref{isolation_} {(Isolation)},
µM«áÅý¾Þ§@¨t²Î¨Ó§¹¦¨³o¨Ç³]³Æªº°t¸m.
°²¦p§Aªº¾Þ§@¨t²Î¤£°µ³o¨Ç°t¸m¤u§@(¤@¨Ç Linux ªº¸É¤Bª©¥»), ¥Ñ¤_ BIOS ¤]³\·|§â³o¨Ç
ISA ³]³Æ¸m¬°¸T¤îª¬ºA(??), §A¤j·§¤£·|»¡'¬O'.

°²¦p§A»¡¨S¦³, BIOS ·|¦Û¤v°µ°t¸m¤u§@. °£§A¼W¥[·sªº PnP ³]³Æ¥~,
¥¦±N¨Ï¥Î¥¦¥ý«e¦sÀx¦b«D´§µo¦sÀx¾¹¤¤ªº°t¸m. °²¦p¨Ï¥Îªº¬O Linux,
°t¸m¤£·|¦³¤°»òÅÜ¤Æ. °²¦p¨Ï¥Îªº¬O Windows 95/98 (¥L­Ì¬O PnP ªº),
¥¦­Ì¥i¯à·|³]¸m°t¸m¤£¦P¤_§A¦b Linux ¤Uªº°t¸m. ³q±`, §A¥i¥H¦b Linux ±Ò°Ê®É¹B¦æ
isapnp ¤u¨ã§â ISA ³]³Æ³]¸m¬°§A·Q­nªº°t¸m. ¦ý³o¹ï PCI ¥d¨S¦³À°§U, ¤£¹L§A¯à¥Î¬Ý
/proc/pci ¤å¥óªº¤èªk¨ÓÀË¬d¥¦­Ì¬O³Q¦p¦ó°t¸mªº. µM«á§AÀ³½T«O Linux
¤¤ÅX°Êµ{§Ç¨Ï¥Îªº°t¸m¤å¥ó("setserial", lilo.conf , µ¥)»P¦¹¬Û²Å.
¬Ý \ref{bios_conf} {(BIOS °t¸m PnP)} ±o¨ì§ó¦hªº«H®§.




\subsubsection{¦p¦ó¤À°t¸ê·½? \label{bios_resources}}

³o¨ú¨M¤_§A¨M©w¦p¦ó¤À°t IRQ ©M DMA. ³]¬° "auto"(¦Û°Ê), BIOS ±N¤À°t¸ê·½.
¦pªG³]¬° "manual"(¤â¤u), §A¥i¥H¶i¤J¥t¤@­Óµæ³æ¨Ã¯à¬° "legacy" (non-pnp)¥d¹w¯d¸ê·½.
²{¦b BIOS ¤]³\©Î¤£·|ª¾¹D§Aªº legacy ¥d. °²¦pª¾¹D¥dªº¸Ü, ·|¸Õ¹Ï¨Ï¥Î "auto".
¦pªG¤£ª¾¹Dªº¸Ü, »Ý­n¤â¤u¬° legacy ¥d¹w¯d»Ý­nªº IRQ, Åý BIOS PnP
°t¸m®É¤£¨Ï¥Î³o¨Ç¸ê·½. °²¦p§A¦b Windows ¤U¹B¦æ ICU §i¶D BIOS Ãö¤_§Aªº legacy
¥dªº±¡ªp, BIOS ¤~·|ª¾¹D§Aªº legacy ¥dªº±¡ªp. BIOS
·|§â³o¨Ç«H®§¦s¦b¥¦ªº«D´§µo¦sÀx¾¹¤¤.




\subsubsection{­«¸m°t¸m? \label{bios_reset}}

³o·|À¿°£±¼ BIOS ¦sÀx¦b«D´§µo¦s¶J¾¹¤¤ªº PnP ³]³Æ©M¤W­±Á¿ªº legacy ¥dªº°t¸m«H®§.
°£«D§A½T«H³o¨Ç¼Æ¾Ú¦³»~»Ý­n­«¼g, §_«h¨S¦³¥²­n³o¼Ë°µ.
¥u¦³§Aªº¾÷¾¹¤£¯à±Ò°Ê®É¤~»Ý­n³o¼Ë°µ. °²¦p§Aªº BIOS ¥á¥¢¤F legacy ³]³Æªº«H®§,
§A»Ý­n¦b Windows ¤U¹B¦æ ICA ¨Ó­««Ø³o¨Ç«H®§.




\section{¦p¦ó¹ï¥I PnP ¥d}


\subsection{¤¶²Ð}

¤µ¤Ñ, ¤j³¡¤À·sªº¤º¸m´¡¥d¬O PnP ªº. ¨ä¤¤ªº¤@¨Ç¥d¦³¸õ½u(©ÎÃþ¦üªº)¥i¥H§â¥d³]¸m¬°«D
PnP. ¦]¬°³\¦h Linux (©M Dos/Windows)µ{§Ç¥i¥H³B²z PnP, ³Ì¦n«O¯d¥dªº PnP ¥\¯à.
°²¦p§A§â¤º®Ö¤É¯Å¬°¤ä«ù PnP,
¥¦¤£¶È·|°t¸mµw¥ó¦Ó¥B·|§âµw¥ó°t¸m«H®§´£¨Ñµ¹ÅX°Êµ{§Ç, ³o¼Ë§A´N¤£»Ý­n°t¸m¥¦­Ì¤F.
¨Ò¦p, ¹ï¤_¦ê¤f§A´N¤£¥²¨Ï¥Î "setserial" ¤F.

°²¦p§A¦³¤@¶ô PnP ¥d, §A·|¦³¤U­±¤@­Ó©Î¦h­Ó¿ï¶µ¨Ó°t¸m¥¦:

\begin{itemize}
\item  \ref{disable_pnp} {(¸T¥Î PnP)}
¥Î¸õ½uªº¤èªk(¦ý³\¦h¥d¤£¯à)©Î¯S®íªº³n¥ó. 
\item   \ref{bios_conf} {(BIOS °t¸m PnP)} (¶È¥Î¤_§A¦³¤@­Ó PnP BIOS)
\item  \ref{isapnp_} {(Isapnp)}
¤@­Ó¥Î¤_°t¸m ISA Á`½u¤W PnP ³]³Æªº³n¥ó(¦ý¤£¯à¥Î¤_ PCI Á`½u³]³Æ)
\item  \ref{patch_kernel} {(­×¸É Kernel)} §â Linux ÂàÅÜ¬°¤@­Ó PnP ªº¾Þ§@¨t²Î 
\end{itemize}





\subsection{¸T¥Î PnP ? \label{disable_pnp}}

³\¦h¥dªº PnP ¥\¯àµLªk§í¨î±¼. §Y¨Ï§A¦³¾÷·|³o¼Ë°µ,
¥Ñ¤_¤U­±ªº­ì¦]§A¤]³\¤£·|³o¼Ë°µ.

\begin{enumerate}
\item  °²¦p¦b¦P¥x¾÷¾¹¤W¦³ MS Windows, §A¤]³\§Æ±æ¦b MS Windows ¤U¥i¥H¥Î PnP ¨Ó°µ¤£¦Pªº°t¸m.
\item  IRQ µ¥¸ê·½¦³­­, °£«D¨Ï¥Î PnP, §_«h«ÜÃø°t¸m. 
\item  °²¦p»Ý­n¨Ï¥Î Dos/Windows ¤Uªº³n¥ó³]¸m¬°«D PnP ¤è¦¡,
¥i¦³¤@¤Ñ§A¤£¯à¨Ï¥Î Dos/Windows ¤F, ¦]¦¹«ÜÃø¦A§ïÅÜ°t¸m. 
\item  §A¦³(©Î±N¦³)¨ä¥¦ PnP ³]°t»Ý­n°t¸m, ©Ò¥H§A­nµL½×¦p¦ó³£»Ý­n PnP ¥\¯à. 
\end{enumerate}

³]³Æ¤@¥¹³Q³]¸m¬°«D PnP °t¸m¤è¦¡, ¥¦­Ì±N¤£¯à³Q PnP ³n¥ó©Î BIOS
°t¸m. (°£«D²¾¥h¸õ½u©Î¨Ï¥Î°t¸m³n¥ó¥´¶} PnP ¥\¯à)




\subsection{BIOS °t¸m PnP \label{bios_conf}}

·Q³o¼Ë°µ, §Aªº BIOS ¥²¶·¤ä«ù PnP. ±o¨ìÃö¤_§Aªº BIOS §ó¦hªº«H®§, ¬Ý¦³Ãöªº Web
¯¸ÂI. ¤@¨Ç BIOS ¥u¦³³Ì¤Öªº PnP ¥\¯à, ¥¦·|¸Õ¹Ï§â§xÃøªº°t¸m¤u§@¥æµ¹ Windows
¤u¨ã(¦b Linux ¤U¤£¥i¯à). ¦b³oºØ±¡ªp¤U¦pªG BIOS ºûÅ@¤@­Ó°t¸m¼Æ¾Ú®wªº¸Ü,
§A¤]»Ý­n¥Î DOS/Windows ¤Uªº ICU ¨Ó³]¸m³o¼Æ¾Ú®w.

­º¥ý³]¸m§Aªº BIOS ¬° ""Not a PnP Operating System"(¨S¦³ PnP ªº¾Þ§@¨t²Î).
¬Ý \ref{conf_pnp_bios} {(°t¸m PnP BIOS)}.
³o·|¨Ï BIOS §¹¦¨¥þ³¡°t¸m¤u§@, ¦Ó¤£¬O§â³Ñ¾lªº¥æµ¹¾Þ§@¨t²Î.

BIOS ªº«D´§µo¼Æ¾Ú®w¥s ESCD (Extended System Configuration Data).
¥¦¤£¶È¦sÀx PnP ³]³Æªº°t¸m¨Ã¥B¦sÀx«D PnP ³]³Æªº«H®§¥Î¤_Á×¶}½Ä¬ð.
·í§A¦w¸Ë·sªº«D PnP ³]³ÆÀ³¦b¦w¸Ë«e¥ÎICU(Intel Configuration
Utility)§i¶D ESCD Ãö¤_³]³Æªº«H®§.
§A¤]»Ý­n¹B¦æ ICU §i¶D ESCD Ãö¤_¤w¸g¦s¦b¾÷¾¹¤¤ªº«D PnP ³]³Æªº«H®§(°£«D¦³¤H¤w¸g°µ¹L¤F).

ESCD ³q±`«O¦s¦bªä¤ù¤¤, ¦ý¦³®É·|«O¦s¦bµw½L¤W?? (Ä¶ªÌ·Q: COMPAQ
ªº°t¸m«H®§¦³¨Ç¬O§_«O¦s¦bµw½L¤W) ¨Ï¥Î Linux ¾Þ§@¨t²Îªº¾÷¾¹ªº BIOS
¨C¦¸±Ò°Ê®É¬O³o¼Ë°t¸m. §A¤]³\·Q¬ö¿ý ICU (©M BIOS)¬O¦p¦ó°t¸mªº(©Î¥´¦L¥X¨Ó). µM¦Ó,
°²¦p§A¼W¥[¤@­Ó·sªº«D PnP ³]³Æ´N»Ý­n¦A¦¸¹B¦æ ICU.
°²¦p¥¦¬O PnP ªº, BIOS ·|¦Û°Ê°t¸m¥¦, ¨ÃºÉ¶q¤£§ïÅÜ¾÷¾¹¤¤¤w¸g¦s¦bªº³]³Æªº°t¸m.
¦ý¬°¤Fµ¹·s³]³Æ¤À°t¥¦»Ý¨Dªº¸ê·½, ¦³®É¤£±o¤£§ïÅÜ¤w¦³³]³Æªº°t¸m. °²¦p³oµo¥Í¤F,
§A»Ý­n§ä¨ì¤°»ò§ïÅÜ¤F(¬Ý /proc/pci ©M¨Ï¥Î "pnpdump"©R¥O)¨Ã¥B°µ¥X¬ÛÀ³§ïÅÜ.

ª`·N:
¦b Dos/Windows ¤U°t¸m«H®§ÁÙ·|©ñ¦bµw½L¤WªºWindows¤å¥ó¤¤,
³o¼Ë¾Þ§@¨t²Îª¾¹D¨C­Ó³]³Æªº±¡ªp. ¹ï¤_¦Û°ÊÀË´ú³]³Æªº Linux ¤£·|µo¥Í³oºØ¨Æ±¡.




\subsection{Isapnp \label{isapnp_}}

¶È¥Î¤_ ISA Á`½u¤Wªº PnP ³]³Æ. ¦b±Ò°Ê®É¹B¦æ¦¹µ{§Ç±N«ö·Ó§A¦b /etc/isapnp.conf
ªº³]©w¨Ó°t¸m³o¨Ç³]³Æ.§A»Ý­n isapnptools ¥], ¥]§t¦b³\¦hµo¦æª©¥»¤¤. ¿é¤J "locate
pnp" ¨Ó¬d§ä§A¬O§_¾Ö¦³ isapnp. °²¦p§Aªº Linux ¦Û°Ê¦w¸Ë¤F isatools,
isapnp ¤]³\¦b±Ò°Ê®É¤w¸g¹B¦æ. ¹ï¤_³oºØ±¡ªp, §A»Ý­n°µªº´N¬O½s¿è /etc/isapnp.conf
(¥Î {\ttfamily man isapnp.conf} ±o¨ì¦³Ãö«H®§). ¦]¬°§A³q¹L½s¿è°t¸m¤å¥ó¨Ó¨M©w¦p¦ó³]¸m³]³Æ,
³o¼Ë°µ¦³ÂI¶H¤â¤u°t¸m PnP. °²¦p³o¼Ë¨Ï¥Î "isapnp" ¨Ã¥B¦³¤@­Ó PnP BIOS,
§A±N§i¶D BIOS §A¦³¤@­Ó PnP ªº¾Þ§@¨t²Î¶Ü?? (Â½Ä¶ªÌ»{¬°: ¦pªG§Aªº Linux ¤º®Ö¤£¤ä«ù
PnP, ¦^µª¨S¦³ PnP ¾Þ§@¨t²Î, Åý BIOS §¹¦¨©Ò¦³ªº PnP ³]¸m¤u§@,
¦ý§A¤£­n¸Õ¹Ï¥h­×§ï³]³Æªº¸ê·½, ­×§ï¦Û¤vªº°t¸m¤å¥ó§Y¥i.)

°²¦p§A´¿¸g¹B¦æ isapnp °t¸m ISA-PnP
³]³Æ,¦ý¨C¦¸±Ò°Ê®É¹B¦æisapnp¥¢±Ñ, ¨º»ò°²¦p§A¦b¦P¥x¾÷¾¹¤W¦³ Windows 95/98
ªº¸Ü¥i¯à·|µo¥Í: ·í¨Ï¥Î Windows 95/98 ®É, Windows ¤]³\·|¥H¤£¦Pªº¤è¦¡°t¸m§Aªº
PnP¥d, ·í§Aªð¦^¨Ï¥Î Linux ®É, ¥d´N¤£·|¥¿±`¤u§@. 




\subsection{­×¸É®Ö¤ßÅý Linux ¤ä«ù PnP \label{patch_kernel}}

¦³¤@­Ó¥¨¤jªº¸É¤B¨Ó°µ³o¨Ç. ·sªº®Ö¤ß¬OÃ­©wªº¨Ã¥B¥]§t¤åÀÉ: serial.txt
»¡©ú¦p¦ó³B²z¦ê¦æ¤f. ¥¦¦b /proc ¥Ø¿ý¤¤´£¨Ñ"¤å¥ó",
©Ò¥H§A¥i¥Hª¾¹D³o¨Ç¬O¦p¦ó¶i¦æªº¨Ã¯à¥Î echo ©R¥O¨Ó³]¸m°t¸m.
¤@­Ó°ÝÃD¬O³\¦hÅX°Êµ{§Ç¤£ª¾¹D³o¨Ç, §AÁÙ»Ý­n¨Ï¥Î¶Ç²Îªº°t¸m¤å¥ó, µ¥. ¦p¦ó°t¸m,
½Ð¬Ý \nameurl{http://lucifer.hemmet.s-hem.chalmers.se/~dwh}{}




\subsection{PnP ³n¥ó©M¤åÀÉ}

\begin{itemize}
\item  ¬Ý \nameurl{http://www.redhat.com/linux-info/pnp/}{} Ãö¤_ PnP ªº³n¥ó©M¤åÀÉ.
\item  ¬Ý \nameurl{http://www.microsoft.com/hwdev/respec/pnpspecs.htm}{} Ãö¤_ PnP ªº¯S©Ê.
\end{itemize}





\section{ªþ¿ý}


\subsection{¦a§} \label{addresses_}}

¦³¤TÃþ¦a§}: ¥D¤º¦s¦a§}, I/O ¦a§}©M°t¸m¦a§}(¶È­­¤_ PCI Á`½u).
"¦a§}"¦b¥»¤åÀÉ¤¤¦³®Éªí¥Ü¤@­Ó³sÄòªº¦a§}­S³ò. ¦]¬°¦a§}¬O¥H¦r¸`¤è¦¡µ¹¥Xªº,
¤@­Ó³æ¤@¦a§}¥u¥]§t¤@­Ó¦r¸`, ¦ý I/O(©M¥D¤º¦s)¦a§}¥]§tªº¤ñ³o¦h.
·í¤À°tµ¹³]³Æªº¦a§}¸û¦h®É, ±`¥Î¤@­Ó¦a§}¨Óªí¥ÜI/O³]³Æªº¥þ³¡³sÄò¦a§}­S³ò. ¦p:
¹ï¤_¦ê¦æ¤f(¤@­Ó I/O ³]³Æ)¥uµ¹¥X¥¦¥e¥Îªº¤K­Ó¦a§}ªº°_©l¦a§},
¦]¬°¤j®a³£ª¾¹D¦¹³]³Æ¥Î¤K­Ó¦r¸`ªº¦a§}. °_©l¦a§}¥s"°ò¥»¦a§}". (Â½Ä¶ªÌ:
¤W­±Â½Ä¶ªºªF¦è§Ú¦^ÀY¬Ý¬Ý³£¤£¤Q¤À©ú¤F, µ¹¤j®aÁ|­Ó¨Ò¤l§a.
§Ú­Ì»¡¬Y­Ó¦ê¤fªº¦a§}¬° 3f8, ¨ä¹ê¬O»¡¥¦ªº¦a§}¬O±q 3f8 ¶}©lªº¤K­Ó¦a§},
¦]¬°Àq»{ªº³]³Æ¦a§}½d³ò¬O¤K­Ó¦a§}.)

³X°ÝI/O©M(¥D¤º¦s)¦a§}ªÅ¶¡¨Ï¥Îªº¬O¬Û¦Pªºª«²z¦a§}Á`½u(¦b PC ¾÷¤¤, ¥¦­Ìªº¦a§}Á`½u¦bµw¥ó¤W¬O¦@¨Éªº).
¨º»ò³]³Æ¦p¦óª¾¹D¦a§}Á`½u¤Wªº¼Æ¾Úªí¥Üªº¬O I/O ¦a§}ÁÙ¬O¤º¦s¦a§}©O? ¨ä¹ê,
¦bÁ`½u¤W¦³¥|­Ó±M¥Î³s½u¨Ó°Ï¤À¦a§}¼Æ¾Úªº§t¸q. °²¦p³o¥|­Ó³s½u¤¤ªº¬Y­Ó°_§@¥Î,
´Nªí¥Ü CPU ·Q³X°Ý I/O ¦a§}, ¨º»ò¤º¦s´N·|©¿²¤Á`½u¤Wªº¦a§}«H®§.
¨ä¥¦¤T­Ó³s½uÃþ¦ü¥Îªk. 

³q±`, ¤j¦h¼Æ I/O ³]³Æ¶È¨Ï¥Î I/O ¦sÀx¾¹»P CPU ³q«H. ¨Ò¦p, ¦ê¦æ¤f´N¬O³o¼Ë.
³]³ÆÅX°Êµ{§Ç±q I/O ¦a§}¤¤Åª¼g¼Æ¾Ú¨Ã¥B³q±`±¡ªp¤U§â¼Æ¾Ú©ñ¨ì¥D¤º¦s.
§Ö¤@ÂIªº¤èªk¬O³]³Æ§â¼Æ¾Úª½±µ°e¨ì¥D¤º¦s.
³o¼Ë°µªº¤@ºØ¤èªk¬O¨Ï¥Î \ref{dma_} {(DMA ³q¹D)}.
¥t¤@ºØ¤èªk¬O¦b¥D¤º¦s¤¤¤À°t¤@©wªÅ¶¡µ¹³]³Æ.
³oºØ¤èªk¤£»Ý­É§U DMA «K¥i¥Hª½±µÅª¼g¥D¤º¦s. ³o¼Ëªº³]³Æ³q±`¦³
I/O ¦a§}©M¥D¤º¦s¦a§}.




\subsection{¤¤Â_ -- ¸Ô­z \label{interrupt_detail}}

¤¤Â_¥Î¶¡±µªº¤è¦¡¶Ç°e«H®§.
¤¤Â_«H¸¹(½u¸ô¤Wªº¤@­Ó¹q¥­)§i¶D¤¤Â_±±¨î¾¹¤@­Ó¯S©wªº³]³Æ¦³¸Ü­n»¡.
¤¤Â_±±¨î¾¹¦A³qª¾ CPU. CPU ·|±Ò°Ê"¤¤Â_ªA°È¨Òµ{"¨Ó³B²z.
"¨Òµ{"·|¸Õ¹Ï§ä¥Xµo¥Í¤°»ò¤F¨Æ±¡¨Ã³B²z¶H»Ý­n¶Ç¿éµ¥°ÝÃD.
"¨Òµ{"¯à®e©öªº§ä¥Xµo¥Í¤°»ò¤F¨Æ±¡, ¦]¬°ÅX°Êµ{§Çª¾¹D³]³Æªº±H¦s¾¹¦a§}.
³o¨Ç±H¦s¾¹¥]§tÃö¤_³]³Æªº«H®§. ³n¥óÅª³o¨Ç±H¦s¾¹¤¤ªº¤º®e¨Ã¤ÀªR¥¦­Ì,
§ä¥Xµo¥Í¤F¤°»ò, ¨Ãªö¨ú¾A·íªº¦æ°Ê.




\subsection{Isolation \label{isolation_}}

¶È¥Î¤_ ISA Á`½u. Isolation ¬Oµ¹ ISA Á`½u¤Wªº PnP ³]³Æ¤À°t¥y¬`(id ¸¹)ªº´_Âøªº¤èªk.
ºÉºÞ¦³§ó¦³®Äªº¤èªk(¤]§ó´_Âø)¨Ó°µ³o¥ó¨Æ, ¦ý¦³¨Ç¤H»{¬°Â²³æ¤@ÂI¦n.
¥u¦³¤@­Ó¥i¥H¼g©Ò¦³ PnP ³]³Æªº¼g¦a§},
©Ò¥H¼g³o­Ó¦a§}´N¥i¥H§i¶D©Ò¦³¥¿¦b°»Å¥ªºPnP³]³Æ.
³o­Ó¼g¦a§}¥Î¤_¦V¦U­Ó PnP ³]³Æ°e¤@­Ó°ß¤@ªº¥y¬`.
¤À°t¥y¬`­n¨D¥y¬`°e¨ì¤½¥Î¦a§}®É¥u¦³¤@­Ó³]³Æ¦b°»Å¥. isolation ¦³¨Ç¹³¤@­Ó"´åÀ¸".
¥Î¤@­Ó¤½¥ÎÁ`½u³s½u³s±µ©Ò¦³ PnP ³]³Æ©M isolation µ{§Ç. 

"´åÀ¸"ªº­º¦¸´`Àô, ©Ò¦³ªº PnP ³]³ÆºÊÅ¥Á`½uªº¦P®É¨Ã¦VÁ`½u¤Wµo°e¼Æ¾Ú¦ì¬y.
¼Æ¾Ú¦ì¤£¬O1´N¬O0. ¨C­Ó PnP ³]³Æµo°e¦Û¤vªº½s¸¹, ±q°ª¦ì¶}©l, ¤@¦ì±µ¤@¦ì.
°²¦p¤@­Ó³]³Æµo°e¤@­Ó1, 1·|³Q¨ä¥¦©Ò¦³ªº³]³ÆÅ¥¨ì.
°²¦p©Ò¦³ªº³]³Æµo°e 0 ¨º»òÁ`½u¤W´N¤°»ò¤]Å¥¤£¨ì. ¦b­º¦¸´`Àôªº³Ì«á,
°£¤F³Ì°ª½s¸¹ªº³]³Æ¥~¨ä¥¦³]³Æ³£³Q±Æ°£±¼¤F.(©Ò¦³ªº½s¸¹ªø«×³£¤@¼Ë.)

­º¥ý¦Ò¼{ªº¬O³Ì°ª¦ì. °²¦p¤@­Ó PnP ³]³Æµo°e 0, ¥iºÊÅ¥¨ìªº¬O 1, ´Nªí¥Ü¦³§ó°ª½s¸¹ªº
PnP ³]³Æ¦s¦b,
¥¦±NÁ{®É°h¥X´`Àô¤£¦A°»Å¥ª½¨ì¦¹´`Àôµ²§ô(·í³Ì¤j½s¸¹³]³Æ³Q½á¤©¤@­Ó¥y¬`®É).
²{¦b«O¯d¤U¨Óªº³]³Æ¦³¬Û¦Pªº«e¾É¦ì(¤@­Ó 1),
§Ú­Ì¦b¥¼¨Óªº³B²z¤¤§â«e¾É¦ì¥h±¼¥u¦Ò¼{³Ñ¾lªº³¡¤À.
­«·s¶}©l´`Àôª½¨ì¥þ³¡½s¸¹(©Ò¦³³]³Æ)³£³Q³B²z(³£¬O 0 ªº±¡ªp¬Ý¤U­±).

°²¦p«e¾É¦ì³£¬O 0 ·|µo¥Í¤°»ò? ©Ò¦³ªº³]³Æ¯d¦b´åÀ¸¤¤. 0 ·|³Q¶H 1 ¤@¼Ë«Ì½ª±¼,
¶}©l¤U¤@½ü´`Àô.

¦b´`Àôµ²§ô®É¥u¦³³Ì°ª½s¸¹ªº PnP ³]³Æ·|«O¯d¤U¨Ó. ¥¦·|±o¨ì¤@­Ó¥y¬`¨Ã°h¥X´åÀ¸.
¤W¦¸´`Àô¤¤³Q²^¨O¥X§½ªº³]³Æ·|¦A¦¸¶i¤J´åÀ¸¶}©l¤@­Ó·sªº´`Àô.
ª½¨ì©Ò¦³³]³Æ³£¦³¤@­Ó¥y¬`. ³o¼Ë°µ¬O«ÜÂ²³æªº.

³]³Æ¦³¤F¥y¬`, ´N¦³¤F¦V PnP ³]³Æµo°e©MÅª¨ú°t¸m«H®§ªº¦a§}.
»Ý­nª`·Nªº¬O³o¨Ç¥y¬`¥u¥Î¤_°t¸m PnP ³]³Æ¤£¯à¥Î¤_¥¿±`ªº³q«H. ·í¾÷¾¹±Ò°Ê«á,
©Ò¦³ªº¥y¬`³£·|¥á¥¢, ©Ò¥H¨C¦¸§A±Ò°Ê¾÷¾¹ BIOS ³£·|°µ¤@¦¸³o¼Ëªº¤u§@.



\end{document}
