The Linux BootPrompt-HowTo ¤¤Ä¶ª© <author>by Paul Gortmaker. <date>v1.14, 1 February 1998 <abstract> ³o¥÷¤å¥ó¬O±Ò°Ê´£¥Ü»¡©ú(BootPrompt-Howto)¡A ¥¦¾ã²z¤F©Ò¦³¥i¥H¦b±Ò°Ê®É´Á¶Çµ¹ Linux ®Ö¤ßªº±Ò°Ê®É´Á°Ñ¼Æ(arguments)¡C ¥]§t©Ò¦³®Ö¤ß»P³]³Æªº°Ñ¼Æ¡C¤]¥]§tÃö©ó®Ö¤ß¦p¦ó±Æ§Ç(sorts) ±Ò°Ê®É´Á°Ñ¼Æªº°Q½×¡A ÁÙ¦³¤@¨Ç±Ò°Ê Linux ®Ö¤ß±`¥Î³nÅé·§­z¡C </abstract> <toc> <sect>²¤¶<label id="main-intro"> <p> ®Ö¤ß¦³¯à¤O¦b±Ò°Ê®É¥H`«ü¥O¦C'¤è¦¡±µ¨ü¦³­­ªº°Ñ¼Æ¸ê°T¡A Ãþ¦ü°õ¦æµ{¦¡®É©Òµ¹¤©ªº¤@¨Ç°Ñ¼Æ(argument list)¡C ³q±`³o¬O¥Î¨Ó´£¨Ñ®Ö¤ß¤@¨Ç¥¦¨S¦³¿ìªk¦Û¤v½T©wªºµwÅé°Ñ¼Æ¸ê°T¡A ©Î¬OÁ×§K¡þÅܧó(override)®Ö¤ß¦Û¤v°»´ú©ÒÀò±oªº­È¡C µM¦Ó¡A¦pªG§Aª½±µ§â®Ö¤ß¬M¹³(kernel image)«þ¨©¨ì³nºÐ¤W¡A ¡]¨Ò¦p cp zImage /dev/fd0¡^¨º»ò§A±N¨S¦³¾÷·|«ü©w¥ô¦ó°Ñ¼Æµ¹®Ö¤ß¡C ©Ò¥H¤j³¡¥÷ªº Linux ¨Ï¥ÎªÌ³£¨Ï¥Î¹³¬O LILO ©Î¬O loadlin ¤@Ãþ¯à°÷§â³o¨Ç°Ñ¼Æ¶Çµ¹®Ö¤ß¡A µM«á±Ò°Ê¥¦ªº³nÅé¡C <em/¼Ò²Õ(MODULE)¨Ï¥ÎªÌ½Ðª`·N¡G/ ¨å«¬ªº±Ò°Ê´£¥Ü°Ñ¼Æ¥u¯à¥Î©óª½±µ½s͍ì®Ö¤ß¸ÌªºµwÅéÅX°Êµ{¦¡¡C ¥¦­Ì¹ï¨Ï¥Î¼Ò²Õ¤è¦¡¸ü¤JªºÅX°Êµ{¦¡<em/¨S¦³¼vÅT/¡C ¤j³¡¥÷ªºµo¦æ®M¥ó(distributions) ³£¨Ï¥Î¼Ò²Õ¡C ¦pªG§AµLªk½T©w¡A ¥i¥H¹ï·Ó <tt>/etc/conf.modules</tt> ªº¤º®e¬d¾\ <tt/man depmod/ ¥H¤Î <tt/man modprobe/¡C ¥Ø«e³oª©»¡©ú¤å¥ó²[»\¨ì v2.0.33 ¬°¤îªº®Ö¤ß¡C¦P®É¤]¥]§t³¡¥÷¨ì v2.1.84 ¬°¤î¡A µo®i¡þ´ú¸Õª©®Ö¤ßªº¯S©Ê¡C ³o¥÷±Ò°Ê´£¥Ü»¡©úªº§@ªÌ¬O¡G <quote> Paul Gortmaker, <tt/gpg109@rsphy1.anu.edu.au/ </quote> ¡£½Ðª`·N¡A¯S§Oµ¹«D i386 ¾÷¾¹©Î³]³Æ¡]¤×¨ä¬O Atari/Amiga¡^¥Îªº ±Ò°Ê´£¥Ü°Ñ¼Æ¥Ø«e¨Ã¨S¦³¼g¶i¨Ó¡C¡¤ <sect1>«Å¨¥»Pª©Åv<label id="copyright"> <p> ³o¥÷¤å¥ó<em/¨Ã«D/µ´¹ï¥¿½Tªº¯u²z¡CµM¦Ó¥¦¤j·§¬O§A©Ò¯à§ä¨ì³Ì·sªº¸ê°T¡C ¨S¦³¤H¥²¶·¹ï§AµwÅé©Òµo¥Íªº¨Æ­t³d¡A°£¤F§A¦Û¤v¥H¥~¡C ¦pªG§AªºµwÅé«_·Ï¿N±¼¤F¡]¡D¡D¡D³o´X¥G¤£¥i¯à¡I¡^§Ú¤]¨S¦³³d¥ô¡C ¤]´N¬O»¡®Ú¾Ú³o¥÷¤å¥ó¤¤©Ò´£¨Ñªº¸ê°T¥h¹ê¦æ¦Ó³y¦¨ªº¥ô¦ó·l®`§@ªÌ·§¤£­t³d¡C ³o¥÷¤å¥óªºª©Åv Copyright (C) 1995-1998 ÄÝ©ó Paul Gortmaker¡C ³o¥÷¤å¥ó¥i¨Ì²Ä¤Gª© GNU ³q¥Î¤½¶}±ÂÅv(General Public License)ªº±ø¥ó¡A ¥]¬A¦¹Án©ú¡A¶i¦æ«þ¨©¡C ²Ó¸`½Ð°Ñ¾\ÀHªþ©ó Linux ®Ö¤ßªº <tt>linux/COPYING</tt> ÀɮסC ¦pªG§A·Q§â³o¥÷¤å¥ó¶°µ²¥Xª©¡A½Ð»P§ÚÁpµ¸¡A§Ú·|½T»{§A¨ú±oªº¬O§_¬°³Ì·sªº¸ê°T¡C ¹L¥h´¿¸g¦³¹L®Éªº Linux »¡©ú¤å¥óª©¥»¥Xª©¡A ³y¦¨µo®iªÌ¬°¤F¦b·sª©¤å¥ó¤¤¤w¦³µª®×ªº°ÝÃD·Q¯}ÀY´ß¡C This document is <em/not/ gospel. However, it is probably the most up to date info that you will be able to find. Nobody is responsible for what happens to your hardware but yourself. If your hardware goes up in smoke (...nearly impossible!) I take no responsibility. ie. THE AUTHOR IS NOT RESPONSIBLE FOR ANY DAMAGES INCURRED DUE TO ACTIONS TAKEN BASED ON THE INFORMATION INCLUDED IN THIS DOCUMENT. This document is Copyright (C) 1995-1998 by Paul Gortmaker. This document may be copied according to the conditions of the GNU General Public License, version 2, included herein by reference. See the file <tt>linux/COPYING</tt> that comes with the Linux kernel for full details. If you are intending to incorporate this document into a published work, please contact me, and I will make an effort to ensure that you have the most up to date information available. In the past, out of date versions of the Linux howto documents have been published, which caused the developers undue grief from being plagued with questions that were already answered in the up to date versions. <sect1>¬ÛÃö¤å¥ó <p> ³Ì·sª©ªº¤å¥ó¥Ã»·¬O®Ö¤ßªº­ì©lµ{¦¡½X¥»¨­¡Cµ¥¤@¤U¡I¥ý¤£­n®`©È¡C ¾\Ū­ì©lÀɸ̪ºµù¸Ñ¤£»Ý­nÀ´¥ô¦óµ{¦¡³]­p¡C ¨Ò¦p¡A¦pªG§A­n§ä¥i¥H¶Çµ¹ AHA1542 SCSI ÅX°Êµ{¦¡ªº°Ñ¼Æ¡A ¨º´N¨ì <tt>linux/drivers/scsi</tt> ¥Ø¿ý¤U¥h¬Ý <tt/aha1542.c/ ³o­ÓÀÉ¡A ¦b«e­± 100 ¦æ¸Ì´N¥i¥H§ä¨ì¤@¬q­ì¤å»¡©ú¦¹ 1542 ÅX°Êµ{¦¡©Ò±µ¨üªº±Ò°Ê®É´Á°Ñ¼Æ¡C ¤U­Óµ´¨Îªº°Ñ¦Ò¬O®Ö¤ß¥»¨­ÀHªþªº¥ô¦ó¤å¥óÀÉ¡C¥Ø«e¨Ã¤£¦h¡A ¤j³¡¥÷¥i¥H¦b <tt>linux/Documentation</tt> ¥Ø¿ý¤Î¨ä¤Uªº¤l¥Ø¿ý¤¤§ä¨ì¡C <tt/linux/ ¥Ø¿ý³q±`¥i¥H¦b <tt>/usr/src/</tt> ¤U§ä¨ì¡C ¦³®É­Ô¤]¥i¥H¦b¬ÛÃöÅX°Êµ{¦¡¥Ø¿ý¸Ì§ä¨ì <tt/README.foo/ ÀÉ®× ¡]¨Ò¦p <tt>linux/drivers/XXX/</tt> ¡A¨ä¤¤ªº <tt/XXX/ ¥i¯à¬O <tt/scsi/, <tt/char/, or <tt/net/¡^¡C ¦pªG§A¤w¸g§ä¨ì·Q­n¨Ï¥Îªº±Ò°Ê°Ñ¼Æ¡A¦Ó²{¦b·Qª¾¹D¦p¦ó§â³o¨Ç¸ê°T¶Çµ¹®Ö¤ßªº¸Ü¡A ¨º´N¬Ý¬Ý§A¥Î¨Ó±Ò°Ê®Ö¤ßªº³nÅé¡]¨Ò¦p LILO ©ÎªÌ¬O loadlin ¡^©ÒÀHªþªº¤å¥ó¡C ¤U­±¦³Â²µuªº·§­z¡A¦ý¤£¯à´À¥N±Ò°Ê³nÅé©ÒÀHªþªº¤å¥ó¡C <sect1>Linux ·s»D¸s²Õ<label id="news"> <p> ¦pªG§A¦³Ãö©ó¶Ç»¼°Ñ¼Æµ¹®Ö¤ß³o¤è­±ªº°ÝÃD¡A½Ð¥ýŪ¤@Ū³o¥÷¤å¥ó¡C ¦pªG¥¦¥H¤Î«e­±©Ò´£¨ìªº¬ÛÃö¤å¥ó³£¨S¯à¦^µª§Aªº°ÝÃD¡A¨º»ò§A¥i¥H¸Õ¸Õ Linux ·s»D¸s²Õ¡C ·íµM¡A¦b»´²vªº¶K¥X§Aªº°ÝÃD«eÀ³¸Ó¥ý¾\Ū¸Ó·s»D¸s²Õ¡A ¦]¬°¥i¯à¤w¸g¦³¤H°Ý¹L³o­Ó°ÝÃD¡A©ÎªÌ³o¥i¯à¤w¸g¬O­Ó±`¨£°ÝÃD(a FAQ)¡C ±i¶K¤§«e¥ý§Ö³tÂsÄý linux ±`¨£°ÝÃD·|¬O­Ó<em/¦n/²ßºD¡C §AÀ³¸Ó¯à°÷¦b¾Fªñ³o¥÷¤å¥óªº¬Y³B§ä¨ì±`¨£°ÝÃD¶°¡C Ãö©ó¦p¦ó°t¸m¨t²Îªº¤@¯ë©Ê°ÝÃDÀ³¸Óª½±µ¶K¨ì comp.os.linux.setup ·s»D¸s²Õ¡C <em/½Ð/§A´L­«³o­Ó¦³Ãö±i¶K¤º®eªº¤@¯ëºD¨Ò¡A¨Ã¥B¡A ¤£­n§â§Aªº»Ý¨D¥æ¤e±i¶K(cross-post)¨ì¨ä¥¦¸s²Õ¥h¡C <sect1>·sª©¤å¥ó<label id="new-doc"> <p> ·sª©¤å¥ó¥i¥Ñ°Î¦WÀÉ®×¶Ç¿éªA°È(anonymous FTP)±q sunsite.unc.edu ³o­Ó¯¸¨ú±o¡A ¦b <tt>/pub/Linux/docs/HOWTO/</tt> ¥Ø¿ý¸Ì¡C ª`·N¡A<em/SunSITE/ ªº­t¸ü¸g±`«Ü¤j¡A ©Ò¥H«ØÄ³§A³Ì¦n§ä­Ó Linux ÀÉ®×¶Ç¿é¬M®g(mirror)¸`ÂI¨ú±o¦¹¤å¥ó¡C ¦³·sªº¸ê°T¥H¤Î¡þ©Î¬OÅX°Êµ{¦¡®É´N·|¸É¥R¸ê®Æ¡C ¦pªG§A²{¦bŪªº³o¥÷«þ¨©¤w¸g¦³´X­Ó¤ë¤§¤[¡A§A¥i¯à±o½T»{¤@¤U¬O§_¦³·sªº¡C ³o¥÷¤å¥ó«Y¨Ï¥Î¤@®M¯S§O¬° Linux »¡©ú¤å¥ó­pµe­×§ïªº SGML ¨t²Î©Ò²£¥Íªº¡A ¦³¦UºØ¤£¦Pªº¿é¥X®æ¦¡¡A¥]¬A postscript, dvi, ascii, html, ¥H¤Î±N­n¥X²{ªº Texinfo¡C §Ú«ØÄ³¥H html¡]¸g¥Ñ¥þ²y¸ê°TºôÂsÄý¾¹¡^©Î Postscript/dvi ®æ¦¡¾\Ū¡C ³o¨âªÌ³£¥]§t ascii Âà´«¹Lµ{¤¤¥¢¥hªº¥æ¤¬°Ñ¦Ò(cross-references)¡C ¦pªG§A·Q±q sunsite ¨ú±o¥¿¦¡ªº«þ¨©¡A¦ì§}(URL)¦b¦¹¡C <url url="http://sunsite.unc.edu/mdw/HOWTO/BootPrompt-HOWTO.html" name="BootPrompt-HOWTO"> <sect>±Ò°Ê´£¥Ü°Ñ¼Æ·§Æ[<label id="oview"> <p> ³o¤@¸`¤¶²Ð¤@¨Ç¥i¥H¥Î¨Ó¶Ç»¼±Ò°Ê®É´Á°Ñ¼Æµ¹®Ö¤ß¥»¨­ªº³nÅé½d¨Ò¡C ¤]µ¹§A¦³Ãö³o¨Ç°Ñ¼Æ«Y¦p¦ó³Q³B²z¡A±Ò°Ê°Ñ¼Æ¦³¤°»ò¼Ëªº­­¨î¡A ¥H¤Î¥¦­Ì¦p¦ó³QÂà°e¨ì¦U­Ó¾A·í³]³ÆªºÆ[©À¡C ¦³¤@ÂI<em/«Ü­«­n/±oª`·Nªº¬O¦b±Ò°Ê°Ñ¼Æ¤¤<em/¤£/À³¸Ó¨Ï¥ÎªÅ¥Õ¡A ¥u¦³¦b¦U§Oªº°Ñ¼Æ¤§¶¡¥i¥H¡C ³æ¤@°Ñ¼Æ¨ä­Èªº¦Cªí(A list of values)¬O¦b¦U­È¤§¶¡¥H³r¸¹®æ¶}ªº¡A¦A¤@¦¸¡A ¨S¦³¥ô¦óªÅ¥Õ¡C°Ñ¨£¤U­±ªº½d¨Ò¡C <code> ether=9,0x300,0xd0000,0xd4000,eth0 root=/dev/hda1 *RIGHT* ether = 9, 0x300, 0xd0000, 0xd4000, eth0 root = /dev/hda1 *WRONG* </code> <sect1>LILO (LInux LOader)<label id="lilo"> <p> ³Ì±`¥Îªº¬O Werner Almesberger ©Ò¼gªº LILO(LInux LOader) µ{¦¡¡C ¥¦¦³¯à¤O±Ò°Ê¤£¦Pªº®Ö¤ß¡A¦Ó¥B°t¸m¸ê°T¦s©ñ¦b¤@­Ó¯Â¤å¦rÀɸ̡C ¤j³¡¥÷ªºµo¦æ®M¥ó³£ªþ¦³ LILO §@¬°¹w³]ªº±Ò°Ê¸ü¤Jµ{¦¡(boot-loader)¡C LILO ¥i¥H¤@µø¦P¤¯¦a±Ò°Ê DOS, OS/2, Linux, FreeBSD µ¥µ¥¡A¦Ó¥B¬Û·í¦³¼u©Ê¡C ¦b§A¶}¾÷¤§«á¡A¨å«¬ªº°t¸m·|Åý LILO °±¦í¨Ã¦L¥X <tt/LILO:/¡C µM«áµ¥­Ó´X¬í¬Ý¬Ý¨Ï¥ÎªÌ¦³¨S¦³¿é¤J¥ô¦ó¿ï¶µ¡A¨S¦³ªº¸Ü´N±Ò°Ê¹w³]ªº¨t²Î¡C ¦b LILO °t¸mÀɸ̨嫬ªº¨t²Î¼ÐÅÒ¬O <tt/linux/ ¥H¤Î <tt/backup/ ©M <tt/msdos/¡C ¦pªG§A·Q­n¿é¤J±Ò°Ê°Ñ¼Æ¡A¥i¥H¥´¦b³o¡A¦b¿é¤J§A­n LILO ±Ò°Êªº¨t²Î¤§¼ÐÅÒ«á­±¡A ¹³¤U­±³o­Ó½d¨Ò©ÒÅã¥Üªº¡C <code> LILO: linux root=/dev/hda1 </code> LILO ÀHªþ¦³µ´¨Îªº¤å¥ó¡A¦Ó¥B¬°¤F³o¸Ì©Ò°Q½×ªº±Ò°Ê°Ñ¼Æ¤§¨Ï¥Î¡A ·í§A·Q­n§â±Ò°Ê®É´Á°Ñ¼Æ¥[¨ì LILO °t¸mÀɸ̥ä[¨Ï¥Î®É LILO ªº <tt/append=/ «ü¥O´N«D±`­«­n¡C ¥u­n²³æ¦a¦b <tt>/etc/lilo.conf</tt> Àɤ¤¥[¤J¹³ <tt/append = "foo=bar"/ ³o¼ËªºªFªF§Y¥i¡C ¥i¥H¥[¦b¸ÓÀɪº³Ì«e­±¡A¨Ï¥¦¹ï¨C¤@¸`°Ï(section)³£¥Í®Ä¡A ©Î¬O¥[¦b¬Y <tt/image=/ ¸`°Ï¸Ì¨Ï¥¦¹ï¸Ó¸`°Ï¥Í®Ä¡C ½Ð°Ñ¾\ LILO ¤å¥ó¸Ì§ó§¹¾ãªº»¡©ú¡C <sect1>LoadLin<label id="loadlin"> <p> ¥t¤@­Ó±`¥Îªº Linux ¸ü¤Jµ{¦¡ `LoadLin' «h¬O¤@¤ä¦³¯à¤O±q DOS ´£¥Ü²Å¸¹(prompt)¤U±Ò°Ê Linux ®Ö¤ß¡]¥i¥Hµ¹¤©±Ò°Ê°Ñ¼Æ¡^ªº DOS µ{¦¡¡A °²¦p¬Y¨Ç¨t²Î¸ê·½¥i¥Îªº¸Ü´N¦æ¡C ³o¹ï¨Ï¥Î DOS ¨Ã·Q±q DOS ¤U±Ò°Ê¶i¤J Linux ªº¤H¦Ó¨¥«Ü¦n¥Î¡C ¦pªG§A¾Ö¦³¤@¨Ç»Ý­n¨Ï¥Î¨ä©Ò´£¨Ñªº DOS ÅX°Êµ{¦¡¨Óªì¨Ï¤Æ¥H¶i¤J¥i¥Îª¬ºA (known state)ªºµwÅ騺»ò¥¦¤]«Ü¦³¥Î¡C ¤@­Ó±`¨£ªº¨Ò¤l¬O»Ý­n¨Ï¥Î DOS ÅX°Êµ{¦¡³]©w(twiddle) ´X­Ó¯«¯µªº¼È¦s¾¹¨Ï¥¦¶i¤JÁnÅQ¥d¬Û®e¼Ò¦¡ªº¡¨ÁnÅQ¥d¬Û®e¡¨­µ®Ä¥d¡C ±Ò°Ê DOS »P©ÒªþªºÅX°Êµ{¦¡¡A µM«á±q DOS ´£¥Ü²Å¸¹¤U¨Ï¥Î <tt>LOADLIN.EXE</tt> ¸ü¤J Linux ¥HÁ×§K­«·s±Ò°Ê(reboot)·|­«¸m(reset)¸Ó¥d¡C ¦p¦¹¸Ó¥dºû«ù¦bÁnÅQ¥d¬Û®e¼Ò¦¡¤]´N¯à¦b Linux ¤U¨Ï¥Î¡C ÁÙ¦³¤@¨Ç¨ä¥¦µ{¦¡¥i¥H¥Î¨Ó±Ò°Ê Linux¡C §¹¾ãªº¦Cªí½Ð§ä§ä¦b§A·í¦a Linux ÀÉ®×¶Ç¿é¬M³]¸`ÂI¸Ìªºµ{¦¡¡A ¦b <tt>system/Linux-boot/</tt> ¤U¡C <sect1>``rdev'' ¤½¥Îµ{¦¡<label id="rdev"> <p> ®Ö¤ß¥»¨­¸Ì­±ªº¼Æ­Ó¦ì¤¸²Õ¦s¦³¤Ö¼Æ´X­Ó®Ö¤ß±Ò°Ê°Ñ¼Æªº¹w³]­È¡C ¦b¤j³¡¥÷ªº¨t²Î¸Ì¦w¸Ë¦³¤@¤äºÙ¬° <tt/rdev/ ªº¤½¥Îµ{¦¡ª¾¹D³o¨Ç­È¦b¨º¸Ì¡A ¥H¤Î¦p¦ó§ïÅÜ¥¦­Ì¡C ¥¦¤]¯à§ïÅÜ¥t¥~¤@¨Ç¨S¦³¬Û¹ï¤§®Ö¤ß±Ò°Ê°Ñ¼ÆªºªF¦è¡A ¹³¬O¹w³]ªºÅã¥Ü¼Ò¦¡(video mode)¡C ¦¹ rdev ¤½¥Îµ{¦¡³q±`¤]¥tºÙ(aliased to) swapdev, ramsize, vidmode ¥H¤Î rootflags¡C¥¦¯à°÷§ïÅܤ­ºØªF¦è¡A¤À§O¬O®Ú¥Ø¿ý³]³Æ(root device)¡A ¸m´«³]³Æ(swap device)¡A°O¾ÐÅéºÏºÐ(RAM disk)¤§°Ñ¼Æ¡A¹w³]ªºÅã¥Ü¼Ò¦¡¡A ¤Î®Ú¥Ø¿ý³]³Æªº¦s¨ú³]©w(readonly/readwrite)¡C §ó¦h¦³Ãö <tt/rdev/ ªº¸ê°T¥i¥HÂǥѿé¤J <tt/rdev -h/ ©Î¬O°Ñ¾\¨ä½u¤W»¡©ú­¶ (<tt/man rdev/)Àò±o¡C <sect1>®Ö¤ß¦p¦ó±Æ¦C°Ñ¼Æ <p> ¤j³¡¥÷ªº±Ò°Ê°Ñ¼Æ®æ¦¡¬°¡G <code> name[=value_1]&lsqb,value_2]...&lsqb,value_11&rsqb </code> ¨ä¤¤ `name' ¬O¤@­Ó¥Î¨Ó°ß¤@ÃѧO(unique)¬ÛÃöªº­È¡]¦pªG¦³ªº¸Ü¡^ ¬O­nµ¹®Ö¤ßªº¨º­Ó³¡¥÷ªºÃöÁä¦r¡C ¦h­Ó±Ò°Ê°Ñ¼Æ¥u¬O¤W­z®æ¦¡¥HªÅ¥Õ¤À¹jªº¦Cªí¡C ª`·N¨º­Ó 11 ¬O¯u¹êªº­­¨î¡A ¦]¬°²{¦æªºµ{¦¡½X¹ï¨C­ÓÃöÁä¦r¥u³B²z 11 ­Ó¥H³r¸¹¤À¹jªº°Ñ¼Æ¡C ¡]µM¦Ó¡A¦b«D¤ñ´M±`½ÆÂøªº±¡ªp¤U§A¥i¥H­«ÂШϥάۦPªºÃöÁä¦r¥[¤J 11 ­Ó¥H¤Wªº°Ñ¼Æ¡A °²¦p³]©w¨ç¦¡¤ä´©³o¼Ë·dªº¸Ü¡C¡^ ¦P®É¤]­nª`·N¡A®Ö¤ß§â¦Cªí¤À¦¨(splits)³Ì¦h 10 ­Óªº¾ã¼Æ°Ñ¼Æ¡A «á­±¨Ã¸òµÛ¤@­Ó¦r¦ê¡A©Ò¥H§A¤£¯à¯uªºµ¹¥¦ 11 ­Ó¾ã¼Æ¡A °£«D§A¦Û¦æ¦bÅX°Êµ{¦¡¤¤±N²Ä 11 ­Ó°Ñ¼Æ¥Ñ¦r¦êÂà´«¦¨¾ã¼Æ¡C ¤j³¡¥÷±Æ§Çªº°Ê§@¬O¦b <tt>linux/init/main.c</tt> ¸Ì­±¡C ­º¥ý¡A®Ö¤ß¬d¬Ý°Ñ¼Æ¬O§_¬° `root=', `Ro', `Rw', or `Debug' ³o¨Ç¯S§Oªº°Ñ¼Æ¡C ³o¨Ç¯S§O°Ñ¼Æªº·N¸q¥»¤å¤¤·|¶i¤@¨B»¡©ú¡C µM«á¥¦¨«¹L(walks)¤@¨t¦Cªº³]©w¨ç¦¡¡]©ñ¦b <tt/bootsetups/ °}¦C¸Ì¡^ ¬Ý¬Ý©Ò«ü©wªº°Ñ¼Æ¦r¦ê¡]¹³¬O `foo'¡^¬O¤£¬O»P¨ä¤¤ªº¤@­Ó³]©w¨ç¦¡¡]<tt/foo_setup()/¡^¬ÛÃö¡A ¥H³]©w¯S©w³]³Æ©Î®Ö¤ßªº¤@³¡¥÷¡C ¦pªG§A¶Çµ¹®Ö¤ß <tt>foo=3,4,5,6,bar</tt> ³o¼Ë¤@¦æ¨º»ò®Ö¤ß·|·j´M <tt/bootsetups/ °}¦C¬Ý¬Ý `foo' ¬O§_¦³µù¥U¡C ¦pªG¦³¡A¨º»ò¥¦·|©I¥s»P `foo' ¬ÛÃöÁpªº³]©w¨ç¦¡¡]<tt/foo_setup()/¡^ ¨Ã¥æµ¹¥¦¦b®Ö¤ß«ü¥O¦C©Òµ¹ªº¾ã¼Æ°Ñ¼Æ 3, 4, 5, and 6¡A¨Ã¥æµ¹¥¦¦r¦ê°Ñ¼Æ <tt/bar/¡C <sect1>³]©wÀô¹ÒÅÜ¼Æ <p> ¥ô¦ó¤£³Q±µ¨ü·í§@¤W­z³]©w¨ç¦¡ªº `foo=bar' «¬¦¡¤§±Ô­z·|³Q¸Ñͬ°­n³]©wªºÀô¹ÒÅܼơC ¤@­Ó¡]¨S¥Îªº¡H¡^½d¨Ò¬O¥H `TERM=vt100' §@¬°±Ò°Ê°Ñ¼Æ¡C <sect1>¶Ç»¼°Ñ¼Æµ¹ `init' µ{¦¡ <p> ¥ô¦ó³Ñ¤Uªº¡A ®Ö¤ß¤£ºÞ¦Ó¥B¤£³Q¸Ñͦ¨Àô¹ÒÅܼƤ§°Ñ¼Æ±µ¤U¨Ó·|¶Çµ¹²Ä¤@­Óµ{§Ç(process)¡A ³q±`¬O <tt/init/ µ{¦¡¡C ³Ì±`¶Çµ¹ init µ{§Çªº°Ñ¼Æ¬O <em/single/ ³o­Ó¦r¡A «ü¥Ü <tt/init/ §â¹q¸£±Ò°Ê¦b³æ¤H¼Ò¦¡(single user mode) ¨Ã¥B¤£±Ò°Ê©Ò¦³¤@¯ëªº¾n¯dµ{¦¡(daemons) ¡C ¬d¾\§A¨t²Î¸Ì¦w¸Ëªº <tt/init/ ª©¥»¤§½u¤W¤â¥U¬Ý¬Ý¥¦±µ¨ü¨º¨Ç°Ñ¼Æ¡C <sect>¤@¯ëµLÃö³]³Æ¯S©Êªº±Ò°Ê°Ñ¼Æ<label id="general"> <p> ¦³¨Ç±Ò°Ê°Ñ¼Æ¨Ã«D»P¥ô¦ó³]³Æ©Î©PÃä¬ÛÃö¡C ¥¦­Ì¤D¬O»P¬Y­Ó®Ö¤ß¤º³¡°Ñ¼Æ¬ÛÃö¡A¹³¬O°O¾ÐÅ骺³B²z¡A°O¾ÐÅéºÏºÐªº³B²z¡A ®ÚÀɮרt²Îªº³B²z¥H¤Î¨ä¥¦ªFªF¡C <sect1>®ÚÀɮרt²Î¿ï¶µ <p> ¤U¦C¿ï¶µ¬Ò»P®Ö¤ß¦p¦ó¿ï¾Ü¤Î³B²z®ÚÀɮרt²Î¦³Ãö¡C <sect2>`root=' °Ñ¼Æ <p> ¦¹°Ñ¼Æ§i¶D®Ö¤ß±Ò°Ê®É¥H¨º­Ó³]³Æ§@¬°®ÚÀɮרt²Î¨Ï¥Î¡C ¦¹³]©wªº¹w³]­È¬°«Ø³y(bulid)®Ö¤ß®É¨t²Îªº®ÚÀɮרt²Î³]³Æ¡C ¨Ò¦p¡A¦pªG®Ö¤ß¬O¦b¤@­Ó¥H `/dev/hda1' §@¬°®ÚÀɮרt²Î¤À³Î°Ïªº¨t²Î¤W«Ø³yªº¡A ¨º»ò¹w³]ªº®ÚÀɮרt²Î³]³Æ´N¬O `dev/hda1'¡C ­nÅܧ󦹹w³]­È¡A¨Ã¿ï¾Ü²Ä¤G¥x³nºÐ¾÷§@¬°®ÚÀɮרt²Î³]³Æªº¸Ü¡A ¥i¥H¨Ï¥Î `root=/dev/fd1'¡C ¥i¥Îªº®ÚÀɮרt²Î³]³Æ¬°¤U¦C³]³Æ¨ä¤¤¤§¤@¡G (1) /dev/hdaN to /dev/hddN, ³o¬O ST-506 ¬Û®eºÏºÐ `a to d' ¤Wªº²Ä N ­Ó¤À³Î°Ï¡C (2) /dev/sdaN to /dev/sdeN, ³o¬O SCSI ¬Û®eºÏºÐ `a to e' ¤Wªº²Ä N ­Ó¤À³Î°Ï¡C (3) /dev/sdaN to /dev/xdbN, ³o¬O XT ¬Û®eºÏºÐ `a to b' ¤Wªº²Ä N ­Ó¤À³Î°Ï¡C (4) /dev/fdN, ³o¬O³nºÐ¾÷¸¹½X N¡C N=0 ¬° DOS ¤Uªº `A:' ºÏºÐ¾÷¡A¦Ó N=1 «h¬° `B:'¡C (5) /dev/nfs, ³o¨Ã«D¯uªº¬O­Ó³]³Æ¡A ¦Ó¬O¤@­Ó§i¶D®Ö¤ß¸g¥Ñºô¸ô¨ú±o®ÚÀɮרt²ÎªººX¼Ð¡C ¤W­zºÏºÐ³]³Æªº¥t¤@ºØ¼Æ¦r®æ¦¡¡A §ó¬°²Â©å¥B§ó¨S¦³¥iÄâ©Êªº¥D­n¡þ¦¸­n(major/minor) ¸¹½X¤]¯à±µ¨ü¡C ¡]¨Ò¦p /dev/sda3 ªº¥D­n¸¹½X¬° 8¡A¦¸­n¸¹½X¬° 3¡A ©Ò¥H§A¥i¥H¨Ï¥Î <tt/root=0x803/ §@¬°¥t¤@ºØ«ü©w¤è¦¡¡C¡^ ³o¬O¤Ö¼Æ´X­Ó¦b®Ö¤ß¤¤¦s¦³¹w³]­È¡A ©Ò¥H¥i¥H¥Î <tt/rdev/ ¤½¥Îµ{¦¡§ïÅܪº®Ö¤ß±Ò°Ê°Ñ¼Æ¡C <sect2>`ro' °Ñ¼Æ <p> ·í®Ö¤ß±Ò°Ê®É¥¦»Ý­n¦³­Ó®ÚÀɮרt²Î¥HŪ¨ú¤@¨Ç°ò¥»ªºªF¦è¡C ³o´N¬O±¾¦b®Ú¥Ø¿ýªº®ÚÀɮרt²Î¡C µM¦Ó¡A¦pªG®ÚÀɮרt²Î¥H¥i¥H¼g¤Jªº¤è¦¡±¾¤W¨Óªº¸Ü¡A §A´NµLªk¦b¦³ÀÉ®×¼g¨ì¤@¥bªº±¡ªp¤U½T¹ê¦aÀˬdÀɮרt²Îªº§¹¾ã©Ê¡C ¦¹ `ro' ¿ï¶µ§i¶D®Ö¤ß¥H°ßŪªº¤è¦¡±¾¤J®ÚÀɮרt²Î¡A ¦p¦¹¥ô¦óÀɮרt²Î¤@­P©ÊÀˬdµ{¦¡(fsck) ¦b°õ¦æÀˬd®É³£¥i¥H¦w¥þ¦a°²³]¨S¦³ÀÉ®×¼g¨ì¤@¥bªº±¡ªp¡C ¨S¦³¥ô¦óµ{¦¡©Îµ{§Ç¥i¥H¼g¤J¦¹Àɮרt²Îª½¨ì¥¦­«·s¥H¥iŪ¼gªº¤è¦¡±¾¤J¬°¤î¡C ³o¬O¤Ö¼Æ´X­Ó¦b®Ö¤ß¤¤¦s¦³¹w³]­È¡A ©Ò¥H¥i¥H¥Î <tt/rdev/ ¤½¥Îµ{¦¡§ïÅܪº®Ö¤ß±Ò°Ê°Ñ¼Æ¡C <sect2>`rw' °Ñ¼Æ <p> ³o»P¤W¤@­Ó§¹¥þ¬Û¤Ï¡A¥¦§i¶D®Ö¤ß¥H¥iŪ¨ú¡þ¼g¤Jªº¤è¦¡±¾¤J®ÚÀɮרt²Î¡C µL½×¦p¦ó¡A¹w³]¬O¥H¥iŪ¼g¤è¦¡±¾¤J®ÚÀɮרt²Î¡C ¤£­n¦b¥H¥iŪ¼g¤è¦¡±¾¤JªºÀɮרt²Î¤W°õ¦æ¥ô¦óªº `fsck' µ{¦¡¡C ¦¹°Ñ¼Æ¨Ï¥Îªº­È»P¤W¤@­ÓÀx¦s©ó®Ö¤ß¬M¹³ªº°Ñ¼Æ¬Û¦P¡A¥i¸g¥Ñ <tt/rdev/ ¦s¨ú¡C <sect1>»P°O¾ÐÅéºÏºÐ(RAM Disk)ºÞ²z¦³Ãöªº¿ï¶µ <p> ¤U¦C¿ï¶µ¬Ò»P®Ö¤ß¦p¦ó³B²z°O¾ÐÅéºÏºÐ³]³Æ¦³Ãö¡A ³oºØµêÀÀºÏºÐ³]³Æ³q±`¦b¦w¸Ë¶¥¬q±Ò°Ê¾÷¾¹®É¨Ï¥Î¡A ©Î°t¦X¨Ï¥Î¼Ò²Õ¤ÆÅX°Êµ{¦¡¥H¦s¨ú®ÚÀɮרt²Îªº¾÷¾¹¤W¡C <sect2>`ramdisk_start=' °Ñ¼Æ <p> ¬°¤F¨Ï®Ö¤ß¬M¹³¯à°÷»PÀ£ÁYªº°O¾ÐÅéºÏºÐ¬M¹³©ñ¦b¤@±i³nºÐ¤º¡A ©Ò¥H¥[¤J³o­Ó `ramdisk_start=<offset>' «ü¥O¡C ®Ö¤ß¤£¯à°÷©ñ¦bÀ£ÁY¹Lªº°O¾ÐÅéºÏºÐ¤§Àɮרt²Î¬M¹³¸Ì¡A ¦]¬°¥¦±o±q³Ì¶}©lªº²Ä¹sºÏ°Ï¶}©l©ñ¸m¡A ¦p¦¹°ò¥»¿é¥X¤J¨t²Î(BIOS)¤~¯à¸ü¤J±Ò°ÊºÏ°Ï¦Ó®Ö¤ß¤]¤~¯à°÷¶}©l±Ò°Ê°õ¦æ¡C ª`·N¡G¦pªG§A¨Ï¥Îªº¬O¨S¦³À£ÁYªº°O¾ÐÅéºÏºÐ¬M¹³¡A ¨º»ò®Ö¤ß¥i¥H¬O­n¸ü¤J°O¾ÐÅéºÏºÐ¤§Àɮרt²Î¬M¹³ªº¤@³¡¥÷¡A ¥B¸Ó³nºÐ¥i¥H¥Ñ LILO ±Ò°Ê¡A¨âªÌ¤]¥i¥H¦p¦PÀ£ÁY¤§¬M¹³¯ë¬°¤À¶}ªº¨â³¡¥÷¡C ¦pªG§A¨Ï¥Î±Ò°Ê¡þ®Ú(boot/root)¨â±iºÏ¤ùªº¤è¦¡¡]®Ö¤ß¤@±i¡A °O¾ÐÅéºÏºÐ¬M¹³©ñ²Ä¤G±i¡^¨º»ò°O¾ÐÅéºÏºÐ·|¥Ñ²Ä¹sºÏ°Ï¶}©l¡A ¨Ã¨Ï¥Î¹s§@¬°°¾²¾­È(offset)¡C¦]¬°³o¬O¹w³]­È¡A§A®Ú¥»¤£¥²¯uªº¥h¨Ï¥Î³o­Ó«ü¥O¡C <sect2>`load_ramdisk=' °Ñ¼Æ <p> ¦¹°Ñ¼Æ§i¶D®Ö¤ß¬O§_­n¸ü¤J¤@¥÷°O¾ÐÅéºÏºÐ¬M¹³¡C `load_ramdisk=1' «ü©w®Ö¤ß±N³nºÐ¸ü¤J¦Ü°O¾ÐÅéºÏºÐ¤¤¡C ¹w³]­È¬°¹s¡Aªí¥Ü®Ö¤ß¤£À³¸Ó¸ÕµÛ¥h¸ü¤J°O¾ÐÅéºÏºÐ¡C ½Ð°Ñ¾\ <tt>linux/Documentation/ramdisk.txt</tt> Àɮפ¤·sªº±Ò°Ê°Ñ¼Æ»P¦p¦ó¨Ï¥Î¥¦­Ìªº§¹¾ã±Ô­z¡C ¥¦¦P®É¤]»¡©ú¦p¦óÂÇ¥Ñ `rdev' ¨Ó³]©w¤ÎÀx¦s³o¨Ç­Ó°Ñ¼Æ¡C <sect2>`prompt_ramdisk=' °Ñ¼Æ <p> ¦¹°Ñ¼Æ§i¶D®Ö¤ß¬O§_­nµ¹§A­Ó´£¥Ü­n¨D´¡¤J§t°O¾ÐÅéºÏºÐ¬M¹³ªººÏ¤ù¡C ¦b¥u¥Î¤@±i³nºÐªº°t¸m¤U°O¾ÐÅéºÏºÐ¬M¹³»P­è­è¸ü¤J¡þ±Ò°Êªº®Ö¤ß¦b¬Û¦Pªº³nºÐ¤W¬G¤£»Ý­n´£¥Ü¡C ³oºØ±¡ªp¥i¥H¥Î `prompt_ramdisk=0'¡C ¦b¨Ï¥Î¨â±i³nºÐªº°t¸m¤U§A»Ý­n¦³­Ó©â´«ºÏ¤ùªº¾÷·|¡A¬G¥i¥H¨Ï¥Î `prompt_ramdisk=1'¡C ¦]¬°³o¬O¹w³]­È¡A©Ò¥H¤£¥²¯uªº¥h«ü©w¥¦¡C ¡]¶c»D¡G±q«e¤H­Ì²ßºD¨Ï¥Î `vga=ask' ³o­Ó LILO ¿ï¶µ¨Ó¼È®É°±¤î±Ò°Êµ{§Ç¥H¨ú±o©â´«±Ò°ÊºÏ¤ù¤Î®ÚºÏ¤ùªº¾÷·|¡C¡^ ½Ð°Ñ¾\ <tt>linux/Documentation/ramdisk.txt</tt> Àɮפ¤·sªº±Ò°Ê°Ñ¼Æ»P¦p¦ó¨Ï¥Î¥¦­Ìªº§¹¾ã±Ô­z¡C ¥¦¦P®É¤]»¡©ú¦p¦óÂÇ¥Ñ `rdev' ¨Ó³]©w¤ÎÀx¦s³o¨Ç­Ó°Ñ¼Æ¡C <sect2>`ramdisk_size=' °Ñ¼Æ <p> ¦]¬°°O¾ÐÅéºÏºÐ¹ê»Ú¤W·|¨Ì»Ý¨D°ÊºA¦¨ªø¡A ©Ò¥H¨ä¤j¤p¦³­Ó¤W­­¥[¥H­­¨î¥H§K¥¦¥Î¥ú©Ò¦³¥i¥Îªº°O¾ÐÅé¦ÓÃa¨Æ¡C ¹w³]­È 4096(i.e. 4MB) À³¸Ó¨¬°÷º¡¨¬¤j³¡¥÷ªº»Ý¨D¡C §A¥i¥H¥Î³o­Ó±Ò°Ê°Ñ¼ÆÅܧ󦹹w³]­È¡C ½Ð°Ñ¾\ <tt>linux/Documentation/ramdisk.txt</tt> Àɮפ¤·sªº±Ò°Ê°Ñ¼Æ»P¦p¦ó¨Ï¥Î¥¦­Ìªº§¹¾ã±Ô­z¡C ¥¦¦P®É¤]»¡©ú¦p¦óÂÇ¥Ñ `rdev' ¨Ó³]©w¤ÎÀx¦s³o¨Ç­Ó°Ñ¼Æ¡C <sect2>`ramdisk=' °Ñ¼Æ¡]¹L®ð¤F¡^ <p> ¡]ª`·N¡G³o­Ó°Ñ¼Æ¬Oªº¡A°£¤F v1.3.47 ª©¥H¤Î§óªºªº®Ö¤ß¤§¥~¤£À³¸Ó¨Ï¥Î¡C À³¸Ó¨Ï¥Îªº¬O«e­±©Ò­zªº«ü¥O¡^ ³o­Ó°Ñ¼Æ¥H¤d¦ì¤¸²Õ(kB)¬°³æ¦ì«ü©w°O¾ÐÅéºÏºÐ³]³Æªº¤j¤p¡C ¨Ò¦p¡A¦pªG·Q­n§â¦ì©ó¤@±i 1.44MB ³nºÐ¤Wªº®ÚÀɮרt²Î¸ü¤J¦Ü°O¾ÐÅéºÏºÐ³]³Æ¡A ¥i¥H¥Î¡G <code> ramdisk=1440 </code> ³o¬O¤Ö¼Æ´X­Ó¦b®Ö¤ß¤¤¦s¦³¹w³]­È¡A©Ò¥H¥i¥H¥Î <tt/rdev/ ¤½¥Îµ{¦¡§ïÅܪº®Ö¤ß±Ò°Ê°Ñ¼Æ¡C <sect2>`noinitrd'¡]±Ò©l°O¾ÐÅéºÏºÐ¡^°Ñ¼Æ <p> v2.x ¤Î§ó·sªº®Ö¤ß¦³­Ó¯S©Ê¡A®ÚÀɮרt²Î³Ìªì¬O°O¾ÐÅéºÏºÐ¡A µM«á®Ö¤ß°õ¦æ°O¾ÐÅé¬M¹³¤Wªº <tt>/linuxrc</tt>¡C ³o­Ó¯S©Ê¨å«¬«Y¥Î©ó¸ü¤J¬Y¨Ç±¾¤J¯u¥¿ªº®ÚÀɮרt²Î©Ò»Ý­nªº¼Ò²Õ ¡]¨Ò¦p¡A¸ü¤JÀx¦s©ó°O¾ÐÅéºÏºÐ¬M¹³¸Ìªº SCSI ÅX°Êµ{¦¡¡A µM«á±¾¤J¦b¬Y SCSI ºÏºÐ¸Ì¯u¥¿ªº®ÚÀɮרt²Î¡C¡^ ¹ê»Úªº `noinitrd' °Ñ¼Æ¨M©w®Ö¤ß±Ò°Ê¤§«á¦p¦ó³B²z initrd ¸ê®Æ¡C ¦pªG¦³«ü©w¡A¥¦¥i¥H¸g¥Ñ <tt>/dev/initrd</tt> ¦s¨ú¡A ¥i¥H¦b°O¾ÐÅéÄÀ©ñ¦^¨t²Î¤§«eŪ¨ú¤@¦¸¡C ¦³Ãöªì©l¤§°O¾ÐÅéºÏºÐªº§¹¾ã²Ó¸`»P¨Ï¥Î½Ð°Ñ¾\ <tt>linux/Documentation/initrd.txt</tt>¡C ¦¹¥~¡A³Ì·sª©ªº <tt/LILO/ ¤Î <tt/LOADLIN/ À³¸Ó·|¥]§t¨ä¥¦¦³¥Îªº¸ê°T¡C <sect1>»P°O¾ÐÅéºÞ²z¦³Ãöªº°Ñ¼Æ <p> ¤U¦C°Ñ¼Æ·|§ïÅÜ linux °»´ú©Î³B²z¨t²Î¹êÅé¤ÎµêÀÀ°O¾ÐÅ骺¤è¦¡¡C <sect2>`mem=' °Ñ¼Æ <p> ¡@³o­Ó°Ñ¼Æ¦³¨â­Ó¥Øªº¡G­ì¥ýªº¥Øªº¬O«ü©w¾÷¾¹©Ò¦w¸Ëªº°O¾ÐÅ鼯¶q ¡]¦pªG§A·Q­­¨î linux ¯à¨Ï¥Îªº°O¾ÐÅ鼯¶q¥i¥H«ü©w¤@­Ó¸û¤pªº­È¡^¡C ²Ä¤G­Ó¡]«Ü¤Ö¥Î¡^¥Øªº«h¬O«ü©w <tt/mem=nopentium/ ¥H«K§i¶D linux ®Ö¤ß¤£­n¨Ï¥Î 4MB ¤À­¶ªí(page table)³o­Ó®Ä¯à¯S©Ê¡C ¦b­Ó¤H¹q¸£³W®æ¤¤¡A ­ì¥ý©w¸q¦^¶Ç¦w¸Ë°O¾ÐÅ鼯¶qªº°ò¥»¿é¥X¤J©I¥s³Q³]­p¦¨³Ì¦h¥u¯à¦^³ø³Ì¦h 64MB¡C ¡]¬Oªº¡A¥t¤@­Ó¯Ê¥F»·¨£ªº³]­p¡A´N¹³ 1024 ºÏÁLªººÏºÐ­­¨î¡D¡D¡D«u¡C¡^ Linux ¦b±Ò°Ê®É·|¨Ï¥Î¦¹°ò¥»¿é¥X¤J©I¥s¥H½T©w¦w¸Ëªº°O¾ÐÅ鼯¶q¡C ¦pªG§A¦w¸Ëªº°O¾ÐÅé¶W¹L 64MB¡A¥i¥H¥Î³o­Ó±Ò°Ê°Ñ¼Æ§i¶D Linux §A¦³¦h¤Ö°O¾ÐÅé¡C ¤U­±¤Þ¥Î Linus ¹ï <tt/mem=/ °Ñ¼Æªº»¡©ú¡C ¡¨®Ö¤ß·|±µ¨ü¥ô¦ó§A©Òµ¹¤©ªº `mem=xx' °Ñ¼Æ¡A¦Ó¦pªG¥¦µo²{§AÄF¥¦¡A ¨º¥¦¿ð¦­¤@©w·|·íªº«ÜÃø¬Ý¡C ³o­Ó°Ñ¼Æ«ü¥Ü¥i¥H©w§}ªº³Ì°ª°O¾ÐÅé¦ì§}¡A©Ò¥H¡A ¨Ò¦p `mem=0x1000000' ªí¥Ü§A¦³ 16MB ªº°O¾ÐÅé¡C ¹ï¾Ö¦³ 96MB ªº¾÷¾¹¦Ó¨¥¦¹­È¬° `mem=0x6000000'¡C ª`·Nª`·Nª`·N¡G ¬Y¨Ç¾÷¾¹¥i¯à·|¨Ï¥Î³Ì¤W¼h(top)ªº°O¾ÐÅé§@¬°°ò¥»¿é¥X¤J¨t²Îªº§Ö¨úµ¥µ¥¤@Ãþ¥Î³~¡A ©Ò¥H§A¥i¯à¨Ã«D¹ê»Ú¾Ö¦³ 96MB ªº¥i©w§}ªÅ¶¡¡C¤Ï¤§¥çµM¡G ¬Y¨Ç´¹¤ù²Õ·|±N°ò¥»¿é¥X¤J¨t²Î²[»\ªº¹êÅé°O¾ÐÅé°Ï°ì¹ïÀ³(map)¨ì³Ì¤W¼h°O¾ÐÅé«á­±¡A ©Ò¥H°O¾ÐÅé³Ì¤W¼h¹ê»Ú¤W¥i¯à¬O 96MB + 384kB¡C ¦pªG§A§i¶D linux ªº°O¾ÐÅé¤ñ¥¦¹ê»Ú¤W¾Ö¦³ªºÁÙ¦h¡A¨º´N·|¥Xª¬ªp¡G¤]³\¤£·|¥ß¨è¥X¨Æ¡A ¦ý³Ì«á¤@©w·|µo¥Í¡C¡¨ ª`·N¡A¦¹°Ñ¼Æ¨Ã«D¤@©w±o¬O¤Q¤»¶i¦ì«¬ºA¡A ¦Ó¥B¥i¥H¨Ï¥Î `k' »P `M'¡]¤j¤p¼gµLÃö¡^¦r§À¤À§O«ü©w¤d¦ì¤¸²Õ¥H¤Î¦Ê¸U¦ì¤¸²Õ¡C ¡]`k' ·|§â§Aµ¹ªº­È±ÛÂà(shift) 10 ¦ì¤¸¡A¦Ó `M' ·|±ÛÂà 20 ¦ì¤¸¡C¡^ ¤W­zĵ§i¨ÌµM¨SÅÜ¡Aªu¤W¨Ò¡A ¤@¥x 96MB ªº¾÷¾¹¤]³\¥i¥H³] <tt/mem=97920k/ ¦ÓµLªk¨Ï¥Î <tt/mem=98304k/ ©Î <tt/mem=96M/¡C <sect2>`swap=' °Ñ¼Æ <p> ³o¤¹³\¨Ï¥ÎªÌ½Õ¾ã¬Y¨Ç»PºÏºÐ¸m´«(swapping)¦³ÃöªºµêÀÀ°O¾ÐÅé°Ñ¼Æ(VM)¡C ¥¦±µ¨ü¤U¦C¤K­Ó°Ñ¼Æ¡G <code> MAX_PAGE_AGE PAGE_ADVANCE PAGE_DECLINE PAGE_INITIAL_AGE AGE_CLUSTER_FRACT AGE_CLUSTER_MIN PAGEOUT_WEIGHT BUFFEROUT_WEIGHT </code> ¦³¿³½ìªºª±®a«ØÄ³§A¾\Ū <tt>linux/mm/swap.c</tt> ¨Ãª`·N <tt>/proc/sys/vm</tt> ¸Ì­±ªºªF¦è¡C <sect2>`buff=' °Ñ¼Æ <p> Ãþ¦ü `swap=' °Ñ¼Æ¡A³o¤¹³\¨Ï¥ÎªÌ½Õ¾ã¬Y¨Ç»P½w½Ä°O¾ÐÅé(buffer)¤§ºÞ²z¬ÛÃöªº°Ñ¼Æ¡C ¥¦±µ¨ü¤U¦C¤»­Ó°Ñ¼Æ¡C <code> MAX_BUFF_AGE BUFF_ADVANCE BUFF_DECLINE BUFF_INITIAL_AGE BUFFEROUT_WEIGHT BUFFERMEM_GRACE </code> ¦³¿³½ìªºª±®a«ØÄ³§A¾\Ū <tt>linux/mm/swap.c</tt> ¨Ãª`·N <tt>/proc/sys/vm</tt> ¸Ì­±ªºªF¦è¡C <sect1>¥Hºô¸ôÀɮרt²Î(NFS)§@¬°®ÚÀɮרt²Î¨Ï¥Îªº°Ñ¼Æ <p> Âǥѳz¹Lºô¸ôÀɮרt²Î(NFS: Network FileSystem) ´£¨Ñ®ÚÀɮרt²Î Linux ¤ä´©µLºÐ(diskless)¤u§@¯¸³o¼Ëªº¨t²Î¡C ³o¨Ç°Ñ¼Æ«Y¥Î¨Ó§i¶DµLºÐ¤u§@¯¸­n±q¨º¤@¥x¾÷¾¹¨ú±o¨ä¨t²Î¡C ¦P®É­nª`·N <tt>root=/dev/nfs</tt> °Ñ¼Æ¬O¥²»Ýªº¡C ¦³Ãö¨Ï¥Îºô¸ôÀɮרt²Î§@¬°®ÚÀɮרt²Î¤§²Ó¸`»¡©ú¦b <tt>linux/Documentation/nfsroot.txt</tt> Àɮ׸̡C §AÀ³¸Ó¾\Ū³o­ÓÀɮסA ¦]¬°¤U­±¥u¬O±q¨º­ÓÀɮת½±µ®³¹L¨Óªº§Ö³tºK­n¡C <sect2>`nfsroot=' °Ñ¼Æ <p> ³o­Ó°Ñ¼Æ§i¶D®Ö¤ß¥H¨º¤@¥x¾÷¾¹¡A ¨º­Ó¥Ø¿ý¥H¤Î¨º¨Ç­Óºô¸ôÀɮרt²Î¿ï¶µ§@¬°®ÚÀɮרt²Î¨Ï¥Î¡C ¦¹°Ñ¼Æªº®æ¦¡¦p¤U¡G <code> nfsroot=[<server-ip>:]<root-dir>[,<nfs-options>] </code> ¦pªG«ü¥O¦C¤W¨S¦³µ¹©w nfsroot °Ñ¼Æ¡A«h±N¨Ï¥Î `/tftpboot/%s' ¹w³]­È¡C ¨ä¥¦¿ï¶µ¦p¤U¡G <server-ip> -- «ü©wºô¸ôÀɮרt²Î¦øªAºÝªººô»Úºô¸ô¦ì§}(IP address)¡C ¦pªG¨S¦³µ¹©w¦¹Äæ¦ì¡A«h¨Ï¥Î¥Ñ nfsaddrs Åܼơ]¨£¤U­±¡^©Ò¨M©wªº­È¡C ¦¹°Ñ¼Æªº¥Î³~¤§¤@¬O¤¹³\¨Ï¥Î¤£¦P¾÷¾¹§@¬°¤Ï¦V¦ì§}¸ÑªR¨ó©w(RARP) ¤Îºô¸ôÀɮרt²Î¦øªAºÝ¡C³q±`§A¥i¥H¤£ºÞ¥¦¡]³]¬°ªÅ¥Õ¡^¡C <root-dir> -- ¦øªAºÝ¤W­n§@¬°®Ú±¾¤Jªº¥Ø¿ý¦WºÙ¡C¦pªG¦r¦ê¤¤¦³­Ó `%s' ²Å°O(token)¡A ¦¹²Å°O±N¥N´«¬°«È¤áºÝºô»Úºô¸ô¦ì§}¤§ ASCII ªí¥Üªk¡C <nfs-options> -- ¼Ð·Çªººô¸ôÀɮרt²Î¿ï¶µ¡C©Ò¦³¿ï¶µ³£¥H³r¸¹¤À¶}¡C ¦pªG¨S¦³µ¹©w¦¹¿ï¶µÄæ¦ì«h¨Ï¥Î¤U¦Cªº¹w³]­È¡G <verb> port = as given by server portmap daemon rsize = 1024 wsize = 1024 timeo = 7 retrans = 3 acregmin = 3 acregmax = 60 acdirmin = 30 acdirmax = 60 flags = hard, nointr, noposix, cto, ac </verb> <sect2>`nfsaddrs=' °Ñ¼Æ <p> ³o­Ó±Ò°Ê°Ñ¼Æ³]©wºô¸ô³q°T©Ò»Ýªº¦UºØºô¸ô¬É­±¦ì§}¡C¦pªG¨S¦³µ¹©w³o­Ó°Ñ¼Æ¡A «h®Ö¤ß·|¸ÕµÛ¨Ï¥Î¤Ï¦V¦ì§}¸ÑªR¨ó©w¥H¤Î¡þ©Î¬O±Ò°Ê¨ó©w(BOOTP)¥H§ä¥X³o¨Ç°Ñ¼Æ¡C ¨ä®æ¦¡¦p¤U¡G <code> nfsaddrs=<my-ip>:<serv-ip>:<gw-ip>:<netmask>:<name>:<dev>:<auto> </code> <my-ip> -- «È¤áºÝªººô»Úºô¸ô¦ì§}¡C¦pªG¨S³]¡A ¦¹¦ì§}±N¥Ñ¤Ï¦V¦ì§}¸ÑªR¨ó©w©Î±Ò°Ê¨ó©w¨Ó¨M©w¡C ¨Ï¥Î¦óºØ¨ó©wºÝµø°t¸m®Ö¤ß®É¥´¶}ªº¿ï¶µ¥H¤Î <auto> °Ñ¼Æ¦Ó©w¡C ¦pªG³]©w¦¹°Ñ¼Æ¡A´N¤£·|¨Ï¥Î¤Ï¦V¦ì§}¸ÑªR¨ó©w©Î±Ò°Ê¨ó©w¡C <serv-ip> -- ºô¸ôÀɮרt²Î¦øªAºÝ¤§ºô»Úºô¸ô¦ì§}¡C ¦pªG¨Ï¥Î¤Ï¦V¦ì§}¸ÑªR¨ó©w¨Ó¨M©w«È¤áºÝ¦ì§}¨Ã¥B³]©w¦¹°Ñ¼Æ¡A «h¥u±µ¨ü±q«ü©w¤§¦øªAºÝ¶Ç¨Óªº¦^À³¡C ­n¨Ï¥Î¤£¦Pªº¾÷¾¹§@¬°¤Ï¦V¦ì§}¸ÑªR»Pºô¸ôÀɮרt²Î¦øªAºÝªº¸Ü¡A ¦b¦¹«ü©w§Aªº¤Ï¦V¦ì§}¸ÑªR¨ó©w¦øªAºÝ¡]«O«ùªÅ¥Õ¡^¨Ã¦b nfsroot °Ñ¼Æ¡]¨£¤W­z¡^ ¤¤«ü©w§Aªººô¸ôÀɮרt²Î¦øªAºÝ¡C ¦pªG¦¹¶µ¥ØªÅ¥Õ«h¨Ï¥Î¦^µª¤Ï¦V¦ì§}¸ÑªR¨ó©w©Î±Ò°Ê¨ó©w¤§¦øªAºÝªº¦ì§}¡C <gw-ip> -- ¹h¹D(gateway)¤§ºô»Úºô¸ô¦ì§}¡A­Y¦øªAºÝ¦ì©ó¤£¦Pªº¤lºô¸ô¤W®É¡C ¦pªG¦¹¶µ¥ØªÅ¥Õ«h¤£¨Ï¥Î¥ô¦ó¹h¹D¨Ã°²³]¦øªAºÝ¦b¥»¦aªº(local)ºô¸ô¤W¡A °£«D¥Ñ±Ò°Ê¨ó©w±µ¦¬¨ì­È¡C <netmask> -- ¥»¦aºô¸ô¤¶­±ªººô¸ô¾B¸n¡C ¦pªG¬°ªÅ¥Õ¡A«hºô¸ô¾B¸n¥Ñ«È¤áºÝªººô»Úºô¸ô¦ì§}¾É¥X¡A°£«D¥Ñ±Ò°Ê¨ó©w±µ¦¬¨ì­È¡C <name> -- «È¤áºÝªº¦WºÙ¡C ¦pªGªÅ¥Õ¡A«h¨Ï¥Î«È¤áºÝºô»Úºô¸ô¦ì§}¤§ ASCII-¼Ð°Oªk¡A©Î¥Ñ±Ò°Ê¨ó©w±µ¦¬ªº­È¡C <dev> -- ­n¨Ï¥Îªººô¸ô³]³Æ¦WºÙ¡C ¦pªG¬°ªÅ¥Õ¡A©Ò¦³³]³Æ³£·|¥Î¨Óµo¥X¤Ï¦V¦ì§}¸ÑªR½Ð¨D¡A ±Ò°Ê¨ó©w½Ð¨D¥Ñ³Ì¥ý§ä¨ìªº³]³Æµo¥X¡C ºô¸ôÀɮרt²Î¨Ï¥Î±µ¦¬¨ì¤Ï¦V¦ì§}¸ÑªR¨ó©w©Î±Ò°Ê¨ó©w¦^À³ªº³]³Æ¡C ¦pªG§A¥u¦³¤@­Ó³]³Æ¨º§A¥i¥H¤£ºÞ¥¦¡C <auto> -- ¥Î¥H§@¬°¦Û°Ê°t¸mªº¤èªk¡C ¦pªG¬O `rarp' ©Î¬O `bootp' «h¨Ï¥Î©Ò«ü¥Üªº¨ó©w¡C ¦pªG¦¹­È¬° `both' ©ÎªÅ¥Õ¡A­Y°t¸m®Ö¤ß®É¦³¥´¶}³o¨âºØ¨ó©w«h³£¨Ï¥Î¡C `none' ªí¥Ü¤£¨Ï¥Î¦Û°Ê°t¸m¡C³oºØ±¡ªp¤U§A¥²¶·«ü©w«e­zÄæ¦ì¤¤©Ò¦³¥²­nªº­È¡C ¦¹ <auto> °Ñ¼Æ¥i¥H§@¬° nfsaddrs ªº°Ñ¼Æ³æ¿W¨Ï¥Î¡]«e­±¨S¦³¥ô¦ó `:` ¦r¤¸¡^¡A ³oºØ±¡ªp¤U·|¨Ï¥Î¦Û°Ê°t¸m¡CµM¦Ó¡A¦¹ºØ±¡ªp¤£¯à¨Ï¥Î `none'§@¬°­È¡C <sect1>¨ä¥¦¥t¥~ªº®Ö¤ß±Ò°Ê°Ñ¼Æ <p> ³o¨Ç±Ò°Ê°Ñ¼ÆÅý¨Ï¥ÎªÌ½Õ¾ã¬Y¨Ç®Ö¤ß¤º³¡ªº°Ñ¼Æ¡C <sect2>The `debug' Argument <p> ®Ö¤ß¸g¥Ñ <tt/printk()/ ¨ç¦¡¶Ç¹F­«­n¡]¥H¤Î¨S¨º»ò­«­n¡^ªº°T®§µ¹ºÞ²zªÌ(operator)¡C ¦pªG°T®§«Ü­«­n¡A <tt/printk()/ ¨ç¦¡¤]·|Åã¥Ü¨ì¥D±±¥x(console)¤W¡A ´N¦p¦P¥áµ¹ <tt/klogd()/ °O¿ý¨ìºÏºÐ¤W¤@¯ë¡C ¦p¦P°O¿ý¨ìºÏºÐ¤W¤@¯ë¦b¥D±±¥x¤WÅã¥Ü­«­n°T®§ªº­ì¦]¬O¦]¬°¦b¤£©¯ªºª¬ªp¤U ¡]¨Ò¦pºÏºÐ·lÃa¡^°T®§±NµLªk¦s¤JºÏºÐ¦Óº|¥¢¡C ¨ì©³¤°»ò­«­n¤°»ò¤£­«­n¨äªùÂeÂÇ¥Ñ <tt/console_loglevel/ ÅܼƳ]©w¡C ¹w³]¬O§â¥ô¦ó¤ñ <tt/DEBUG/¡]µ¥¯Å 7¡^­«­nªºªF¦è°O¿ý¨ì¥D±±¥x¤W¥h¡C ¡]³o¨Çµ¥¯Å©w¸q¦b <tt/kernel.h/ §t¤JÀɤ¤¡^«ü©w <tt/debug/ ±Ò°Ê°Ñ¼Æ±N¨Ï¥D±±¥xªº°O¿ýµ¥¯Å³]¬° 10¡A ©Ò¥H<em/©Ò¦³/®Ö¤ß°T®§³£·|¥X²{¦b¥D±±¥x¤W¡C ¥D±±¥x°O¿ýµ¥¯Å³q±`¤]¥i¥H¦b°õ¦æ´Á¶¡¸g¥Ñ <tt/klogd()/ µ{¦¡¿ï¶µ³]©w¡C ¬d¬Ý§A¨t²Î¤§¦w¸Ëª©¥»ªº½u¤W»¡©ú­¶¬Ý¬Ý¸Ó«ç»ò°µ¡C <sect2>`init=' °Ñ¼Æ <p> ®Ö¤ß±Ò°Ê®É¹w³]°õ¦æ `init' µ{¦¡¡A³o¤äµ{¦¡±µ¤U¨Ó¸g¥Ñ°õ¦æ getty µ{¦¡¡A ¶] `rc' «ü¥O½Z(scripts)¥H¤Î½Ñ¦p¦¹ÃþªºªFªF¬°¨Ï¥ÎªÌ³]©w¹q¸£¡C ®Ö¤ß­º¥ý´M§ä <tt>/sbin/init</tt> ¡AµM«á¬O <tt>/etc/init</tt> (depreciated)¡A ¦Ó³Ì«á¥¦·|¥h¸Õ <tt>/bin/sh</tt> ¡]¥i¯à¦b <tt>/etc/rc</tt> ¡^¡C ¦pªG»¡¡A¨Ò¦p¡A¦pªG§Aªº init µ{¦¡Ãa±¼¤F¡A¥u­n¨Ï¥Î <tt>init=/bin/sh</tt> ³o­Ó±Ò°Ê°Ñ¼Æ´N¯àÅý§A¦b±Ò°Ê®Éª½±µ¸õ¨ì¸ÑĶÀô¹Ò(shell)¡A¨Ï§A¯à°÷´«±¼Ãa±¼ªºµ{¦¡¡C <sect2>`no387' °Ñ¼Æ <p> ¬Y¨Ç i387 ¨ó¦P³B²z¾¹´¹¤ù¦³¯äÂÎ(bugs)¡A¦b 32 ¦ì¤¸«OÅ@¼Ò¦¡¤U·|¥X²{¡C ¨Ò¦p¡A³¡¥÷¦­´Áªº ULSI-387 ´¹¤ù¦b°õ¦æ¯BÂI¹Bºâ®É·|¦º·í¡A ³o¦ü¥G¬O¦]¬° FRSAV/FRRESTOR «ü¥Oªº¤@°¦ÂΡC ¨Ï¥Î `no387' ±Ò°Ê°Ñ¼Æ¨Ï Linux ´Nºâ§A¯uªº¦³¼Æ­È»²§U³B²z¾¹¤]©¿²¤¥¦ªº¦s¦b¡C ·íµM½s֤ͮ߮ɧA¥²¶·¥[¤J¼Æ­È¼ÒÀÀ¤ä´©¡I ¦pªG§A¦³¬Y¨Ç¯à°÷¨Ï¥Î 80287 ¯BÂI³B²z³æ¤¸(FPU)ªº<em/¥j¸³¯Å/ 386 ¾÷¾¹¨º³o¤]«Ü¦³¥Î¡A ¦]¬° linux µLªk¨Ï¥Î 80287¡C <sect2>`no-hlt' °Ñ¼Æ <p> i386¡]¤Î¨ä«áÄ~ªÌ¡^ ®a±Úªº¤¤¥¡³B²z¾¹¦³­Ó `hlt' «ü¥O¥Î¨Ó§i¶D¤¤¥¡³B²z¾¹²{¦b¶¢¶¢¨S¨Æ°µ¡A ª½¨ì¬Y­Ó¥~³¡³]³Æ¡]Áä½L¡A¼Æ¾Ú¾÷¡AºÏºÐµ¥µ¥¡^©I¥s¤¤¥¡³B²z¾¹°õ¦æ¥ô°È¬°¤î¡C ³o­Ó«ü¥O·|¨Ï¤¤¥¡³B²z¾¹¶i¤J¡¥¬Ù¹q¡¦¼Ò¦¡¡A ¹³­Ó¦º¤H(zombie)¯ë§¤¦b¨º¸Ìª½¨ì¦³­Ó¥~³¡³]³Æ¥s¥¦°_¨Ó ¡]¸g¥Ñ¤¤Â_(interrupt) ¡A³q±`¬O¡^¡C ³¡¥÷¦­´Áªº i486DX-100 ´¹¤ù³B²z³o­Ó `hlt' «ü¥O¦³°ÝÃD¡A ¨Ï¥Î¹L³o­Ó«ü¥O«á¥¦­Ì¤£¯à¥i¾a¦a¦^¨ì¹B§@¼Ò¦¡¡C ¨Ï¥Î `no-hlt' ³o­Ó«ü¥O§i¶D Linux·íµL¨Æ¥i°µ®É¶]­ÓµL½a°j°é¦Ó<em/¤£/°±¦í§Aªº¤¤¥¡³B²z¾¹¡C Åý¦³³o¨Ç´¹¤ùªº¤H­Ì¯à°÷¨Ï¥Î Linux¡AµM¦ÓÁÙ¬O«ØÄ³¦³¥i¯àªº¸Ü´N´«±¼³o¨Ç´¹¤ù¡C <sect2>`no-scroll' °Ñ¼Æ <p> ±Ò°Ê®É¨Ï¥Î³o­Ó°Ñ¼Æ¥i¥HÃö³¬±²­¶(scrolling)¯S©Ê¡A³o­Ó¯S©Ê¨Ï±o Braille ²×ºÝ¾÷Ãø¥H¨Ï¥Î¡C <sect2>`panic=' °Ñ¼Æ <p> ¦b¤£¤Ó¥i¯àµo¥Íªº®Ö¤ß²§±`(kernel panic)¨Æ¥ó¤U¡]¹³¬O®Ö¤ß°»´ú¨ì¤º³¡¿ù»~¡A ¨Ã»{¬°³o¼Ëªº¿ù»~ÄY­«¨ìÀ³¸Óµo¥Xĵ°T¨Ã°±¤î¥ô¦ó§@·~¡^¡A ¹w³]ªº³B²z¤è¦¡¬O´N°±¦b¨º¨àª½¨ì¦³¤H¹L¨Ó¨Ãª`·N¨ì¿Ã¹õ¤Wªº²§±`ĵ°TµM«á­«·s±Ò°Ê¾÷¾¹¡C µM¦Ó¦pªG¾÷¾¹¬O¦bµLªkIJ¤Î¡A¹jÂ÷ªº¦a¤è¶]ªº¸Ü¤]³\·|§Æ±æ¥¦¯à¦Û°Ê­«¸m¦Û¤vµM«á¦^¨ì½u¤W¡C ¨Ò¦p¡A±Ò°Ê®É¨Ï¥Î <tt/panic=30/ ·|¨Ï®Ö¤ß¦bµo¥Í®Ö¤ß²§±` 30 ¬í«á¸ÕµÛ­«·s±Ò°Ê¦Û¤v¡C ­Y¦¹­È¬°¹s«h¨Ï¥Î¹w³]ªº³B²z¤è¦¡¡A´N¬O¤@ª½¦b¨º¨àµ¥¡C ª`·N¡A³o­Ó¹O®É(timeout)³]©w¤]¥i¸g¥Ñ <tt>/proc/sys/kernel/panic</tt> ¨t²Î±±¨î (sysctl)¤¶­±Åª¨ú»P³]©w¡C <sect2>`profile=' °Ñ¼Æ <p> ®Ö¤ßµo®iªÌ­Ì¥i¥H¥´¶}¬Y­Ó¿ï¶µ¥H±oª¾®Ö¤ß¦p¦ó¨Ï¥Î¤¤¥¡³B²z¾¹®É¶¡¥H¤Î¥Î¦b¨ºùØ¡A ¥H«K³Ì¤j¤Æ®Ä²v(efficiency)»P®Ä¯à(performance)¡C ³o­Ó¿ï¶µÅý§A¦b±Ò°Ê®É³]©wÆ[¹îÅܤƪº­p¼Æ(the profile shift count)¡C ¦¹­È¤@¯ë³]¬°¤G¡C§A¤]¥i¥H¦b½s֤ͮ߮ɥ´¶}¦¹¥\¯à¡CµL½×¨ººØ±¡ªp¡A§A³£»Ý­n¹³ <tt/readprofile.c/ ³oÃþ¥i¥H³B²z <tt>/proc/profile</tt> ¿é¥Xªº¤u¨ã¡C <sect2>`reboot=' ¿ï¶µ <p> ³o­Ó¿ï¶µ±±¨î­«¸m¹q¸£®É ¡]¨å«¬¬O¸g¥Ñ <tt>/sbin/init</tt> ³B²zªº Control-Alt-Delete °Ê§@¡^ Linux ©Ò°µªº­«·s±Ò°Ê¤§ºØÃþ¡C ·sªº v2.0 ®Ö¤ß¹w³]ªº°Ê§@¬O°µ¡¥§N¡¦¶}¾÷ ¡]§¹¥þ­«¸m¡A°ò¥»¿é¥X¤J¨t²Î°õ¦æ°O¾ÐÅéÀˬdµ¥µ¥¡^¥H¥N´À¡¥·x¡¦¶}¾÷ ¡]¨S¦³§¹¥þ­«¸m¡A¨S¦³°O¾ÐÅéÀˬd¡^¡C §ï¬°¹w³]§N¶}¾÷¬O¬°¤F­n¦b«K©yªº¡þÄêÄꪺ¡A·x¶}¾÷½Ð¨D¨S¿ìªk­«·s±Ò°ÊªºµwÅé¤W¤u§@¡C ¥i¥H¨Ï¥Î <tt/reboot=w/ ³]¬°­ì¥ýªº¤è¦¡¡]·x¶}¾÷¡^¡A¨ä¹ê¥i¥H¥Î¥ô¦ó¥H <tt/w/ ¶}ÀYªº¦r¨Ó³]©w¡C ¬°¤°»ò³o·|³y¦¨§xÂZ¡H ¬Y¨Ç¨ã¦³°O¾ÐÅé§Ö¨úªººÏºÐ±±¨î¾¹¯à°÷·P´ú¨ì·x¶}¾÷¡A ¨Ã¥B§â©Ò¦³¼È¦sªº¸ê®Æ¼g¨ìºÏºÐ¤W¡C §N¶}¾÷¥i¯à·|­«³]¸Ó¥d¡A¦b§Ö¨ú¥d°O¾ÐÅé¸Ì­±ªº¦^¼g(write-back)¸ê®Æ´N·|º|¥¢¡C ¤w¸g¦³¤H¦^³ø¨t²Î°O¾ÐÅéÀˬd«Üªá®É¶¡¥H¤Î¡þ©Î¬O¤p«¬¹q¸£´¼¼z¤¶­±°ò¥»¿é¥X¤J¨t²Î (SCSI BIOSes)§N¶}¾÷®Éªá¸û¤[ªº®É¶¡ªì©l¤Æ¬O¨Ï¥Î·x¶}¾÷ªº¦n²z¥Ñ¡C <sect2>`reserve=' °Ñ¼Æ <p> ³o¬O¥Î¨Ó<em/«OÅ@/¿é¥X¤J°ð°Ï°ì¤£­n°»´ú¡C³o­Ó«ü¥Oªº®æ¦¡¬O¡G <tscreen> reserve=iobase,extent[,iobase,extent]... </tscreen> ¦b¬Y¨Ç¾÷¾¹¤W¤]³\¥²¶·Á×§K³]³ÆÅX°Êµ{¦¡¥hÀˬd¡]¦Û°Ê°»´ú¡^¦b¬Y¨Ç¯S®í°Ï°ìªº³]³Æ¡C ³o¥i¯à¬O¦]¬°µwÅé³]­pªº¤£¨}¦Ó·|¨Ï±o±Ò°Ê<em/²×¤î/¡]¹³¬O¬Y¨Ç¤A¤Óºô¸ô¥d¡^¡A ·|³Q»~»{ªºµwÅé¡Aª¬ºA·|¦]¬°¸û«e­±ªº°»´ú¦Ó§ïÅܪºµwÅé¡A ©ÎªÌ¥u¬O§A¤£·QÅý®Ö¤ßªì©l¤ÆªºµwÅé¡C ¦¹ <tt/reserve/ ±Ò°Ê®É´Á°Ñ¼ÆÂǥѫü©w¤@¬q¤£­n°»´úªº¿é¥X¤J°ð½d³ò¥H¸Ñ¨M¦¹°ÝÃD¡C ¦¹¬q°Ï°ì¦b®Ö¤ßªº¿é¥X¤J°ðµù¥Uªí®æ·í¤¤³Qµø¬°¤w¸g¦b¸Ó³B§ä¨ì³]³Æ ¡]¦WºÙ¬° <tt/reserved/ ¡^¦Ó«O¯d¡Cª`·N¡Aµ´¤j³¡¥÷ªº¾÷¾¹³£¤£»Ý­n¦¹¾÷¨î¡C ¥u¦³¯uªº¦³°ÝÃD©Î¯S®í±¡ªp¤~·|»Ý­n¥Î¨ì³oªFªF¡C ¦ì©ó«ü©w¤§°Ï°ì¤¤ªº¿é¥X¤J°ð¤D¬O¾aµÛ¦b°»´ú¤@¬q¿é¥X¤J°Ï°ì¤§«e¥ý°õ¦æ <tt/check_region()/ ¥HÁ×§K³]³Æ°»´ú¡C ³o¥Î©ó¬Y¨Ç¹J¤W NE2000 ·|±¾±¼©ÎªÌ·|»~»{¨ä¥¦³]³ÆªºÅX°Êµ{¦¡¡C ¥¿½Tªº³]³ÆÅX°Êµ{¦¡¤£À³¸Ó¥h°»´ú«O¯d°Ï°ì¡A°£«D¥t¤@­Ó±Ò°Ê°Ñ¼Æ©ú½T¦a«ü¥Ü¥¦³o¼Ë°µ¡C ³o·N¿×µÛ <tt/reserve/ ¸g±`»P¨ä¥¦±Ò°Ê°Ñ¼Æ¤@°_¨Ï¥Î¡C ¦pªG§A«ü©w¤@¬q<tt/«O¯d/°Ï°ì¥H«OÅ@¬Y¯S©w³]³Æªº¸Ü¡A §A¥²¶·©ú½T¦a«ü©w¦¹³]³Æªº°»´ú½d³ò¡A ¤j³¡¥÷ªºÅX°Êµ{¦¡¦pªG¦³µ¹¥¦­Ì©ú½Tªº¦ì§}´N·|©¿²¤¿é¥X¤J°ðµù¥Uªí¡C ¨Ò¦p¡A¦¹±Ò°Ê¦C <code> reserve=0x300,32 blah=0x300 </code> «O¯d <tt>0x300-0x31f</tt> ¤£Åý°£¤F `blah' ªº³]³ÆÅX°Êµ{¦¡¥~ªº©Ò¦³ÅX°Êµ{¦¡¥h°»°¼¡C ¦p¦P¤@¯ë±Ò°Ê®É´Á©Ò¥Îªº®æ¦¡¡A¥¦¤]¦³ 11 ­Ó°Ñ¼Æ¤§­­¨î¡A ¦]¦¹¨C­Ó <tt/reserve/ ÃöÁä¦r¥u¯à«ü©w 5 ­Ó«O¯d°Ï°ì¡C ¦pªG§A¦³²§±`½ÆÂøªº»Ý¨D¡A¥i¥H¨Ï¥Î¦h­« <tt/reserve/ «ü©w¡C <sect2> `vga=' °Ñ¼Æ <p> ª`·N¡A³o¨Ã¤£¯uªº¬O­Ó±Ò°Ê°Ñ¼Æ¡C¥¦¬O¥Ñ LILO ¸ÑĶªº¿ï¶µ¡A »P©Ò¦³¨ä¥¦¥Ñ®Ö¤ß³B²zªº±Ò°Ê°Ñ¼Æ¨Ã¤£¬Û¦P¡C µM¦Ó¦]¬°¥¦ªº¨Ï¥ÎÅܱo¦p¦¹´¶¹M¬G­È±o¦b¦¹¥[¤W¤@µ§¡C ³o­Ó¿ï¶µ¤]¥i¥H¸g¥Ñ¨Ï¥Î <tt/rdev -v/ ©Î¬Û¦Pªº <tt/vidmode/ «ü¥O¹ï vmlinuz ÀÉ®×§@³]©w¡C ³o¨Ï±o³]©wµ{¦¡½X¯à°÷¦b¯uªº±Ò°Ê Linux ®Ö¤ß¤§«e¨Ï¥Îµø°T(video)°ò¥»¿é¥X¤J¨t²Î§ïÅܹw³]ªºÅã¥Ü¼Ò¦¡¡C ¨å«¬ªº¼Ò¦¡¬O 80x50, 132x44 µ¥µ¥¡C ¨Ï¥Î¦¹¿ï¶µ³Ì¦nªº¤è¦¡¬O¥H <tt/vga=ask/ ±Ò°Ê¡A ¦p¦¹¦b±Ò°Ê®Ö¤ß«e·|¦³­Ó¦Cªí´£¥Ü§AªºÅã¥Ü¥d¥i¥H¨Ï¥Îªº¦UºØ¼Ò¦¡¡C ¤@¥¹§A±q¤W­z¦Cªí±oª¾§A·Q¨Ï¥Îªº¸¹½X¡A¥H«á´N¥i¥H§â¥¦©ñ¦b `ask' ªº¦ì¸m¡C §ó¶i¤@¨Bªº¸ê°T½Ð°Ñ¾\ÀHªþ©ó©Ò¦³·sª©®Ö¤ßªº <tt>linux/Documentation/svga.txt</tt> ÀɮסC ª`·N¡A·sªº®Ö¤ß¡]2.1 ª©¥H¤W¡^¦³§ïÅÜÅã¥Ü¼Ò¦¡ªº³]©wµ{¦¡½X¿ï¶µ <em/Video mode selection support/¡A ©Ò¥H¦pªG§A·Q¨Ï¥Î³o­Ó¯S©Ê¨º»ò§A´N±o¥´¶}³o­Ó¿ï¶µ¡C <sect>¤p«¬¹q¸£´¼¼z¤¶­±(SCSI)©PÃ䪺±Ò°Ê°Ñ¼Æ <p> ³o¤@¸`¥]§t¥Î¨Ó¶Ç»¼¦³Ãö¤p«¬¹q¸£´¼¼z¤¶­±(SCSI)¥d(host adapters)¤Î SCSI ³]³Æ¤§¸ê°Tªº±Ò°Ê°Ñ¼Æ»¡©ú¡C <sect1>¤¤¼hÅX°Êµ{¦¡ªº°Ñ¼Æ <p> ¤¤¼hÅX°Êµ{¦¡³B²z¹³ºÏºÐ¡A¥úºÐ¤ÎºÏ±aµ¥µ¥¦Ó¤£²`¤J¤¶­±¥dªº¯S©Ê¡C <sect2>³Ì¤j°»´úÅ޿踹½X(LUN)¼Æ(`max_scsi_luns=') <p> ¨C­Ó SCSI ³]³Æ¥»¨­¸Ì­±³£¥i¥H¥]§t¤@­Ó¡¥¤l³]³Æ¡¦¸¹½X¡C ³Ì±`¨£ªº¨Ò¤l¬O¨º¨Ç¤@¦¸¥i¥H©ñ¦n´X±i¤ù¤lªº·s«¬ SCSI ¥úºÐ¾÷¡C ¨C±i¥úºÐ¥Ñ«ü©w¤§³]³Æªº¡¥Å޿踹½X(Logical Unit Number: LUN)¡¦©w§}¡C ¦ý¤j³¡¥÷ªº³]³Æ¡A¹³µwºÐ¾÷¡AºÏ±a¾÷µ¥µ¥³£¬O³æ¤@­Óªº³]³Æ¡A ¦ÓÅ޿踹½X³]¬°¹s¡C ¥u¦³¤@­ÓÅÞ¿è½s¸¹ªº³]³Æ­Y°bÅé¼g±o¤£¦n´N·|¥X°ÝÃD¡C ¬Y¨Ç³]­p¤£¨}ªº SCSI ³]³Æ¡]ªº¥H¤Î´N¨º»ò¥©³Q§A¸I¤Wªº·s³]³Æ¡^µLªk±µ¨ü¤£¬°¹sªºÅÞ¿è½s¸¹°»´ú¡C ¥¦­Ì·|±¾¦b¨º¡A¦Ó¥B¦³¥i¯à§â¾ã­Ó SCSI ¶×¬y±Æ(bus)³£±aµÛ¤@°_³­¸®¡C ¸û·sªº®Ö¤ß¦³¤@­Ó°t¸m¿ï¶µ¥i¥HÅý§A³]©w©Ò­n°»´ú¤§³Ì¤jÅÞ¿è½s¸¹¡C ¹w³]¥u°»´ú¨ìÅÞ¿è½s¸¹¹s¥H¥²§K¤W­z°ÝÃD¡C ¦b±Ò°Ê®É«ü©w­n°»´úªºÅ޿踹½X¥i¥HÁä¤J `max_scsi_luns=n' §@¬°±Ò°Ê°Ñ¼Æ¡A ¨ä¤¤ n ¬O¤¶©ó³ü¨ì®Ãªº¼Æ¦r¡C ­nÁ×§K¤W­z°ÝÃD¥i¥H¨Ï¥Î n=1 ¥HÁ×§K³o¨Ç­ÓÄê³]³Æ¤£°ª¿³¡C <sect2>SCSI ºÏ±aÅX°Êµ{¦¡ªº°Ñ¼Æ(`st=') <p> SCSI ºÏ±aÅX°Êµ{¦¡ªº¬Y¨Ç±Ò°Ê®É´Á°t¸m¥i¥HÂǥѨϥΤU¦C°Ñ¼Æ¹F¦¨¡G <code> st=buf_size[,write_threshold[,max_bufs]] </code> «e­±¨â­Ó¼Æ¦rªº³æ¦ì¬O¤d¦ì¤¸²Õ¡C¹w³]ªº <tt/buf_size/ ¬O 32kB¡C ³Ì¦h¥i¥H«ü©w¬° 16384kB¡A¤jªº¯îÂÕ¡C <tt/write_threshold/ ½w½Ä°Ï½T»{°e¦ÜºÏ±aªº­È¡A¹w³]¬° 30kB¡C ³Ì¤j½w½Ä°Ï­Ó¼Æµø°»´ú¨ìªº¸Ë¸m¼Æ¶q¦Ó©w¡A¹w³]­È¬°¤G¡C¨Ï¥Î½d¨Ò¦p¡G <code> st=32,30,2 </code> §¹¾ãªº²Ó¸`¥i¥H¦b <tt/README.st/ Àɮפ¤§ä¨ì¡A ¦ì©ó®Ö¤ß­ì©lµ{¦¡½Xµ²ºc(tree)ªº <tt/scsi/ ¥Ø¿ý¸Ì¡C <sect1>SCSI ¥dªº°Ñ¼Æ <p> ¥»¸`ªº±`¨£¼Ð°O¡G <tt/iobase/ -- SCSI ¥d¶i¾nªº²Ä¤@­Ó¿é¥X¤J°ð¡C ¥H¤Q¤»¶i¨îªí¥Üªk«ü©w¡A¦Ó¥B³q±`¸¨¦b <tt/0x200/ ¨ì <tt/0x3ff/ ¤§¶¡¡C <tt/irq/ -- ¤¶­±¥d³]©w¨Ï¥ÎªºµwÅ餤Â_¡C ¨ä¥i¥Îªº­È»P¤¶­±¥d¦³Ãö¡A ¦ý³q±`¬O 5, 7, 9, 10, 11, 12, ¥H¤Î 15¡C¨ä¥¦­È³q±`¥Ñ¤@¯ëªº©PÃä³]³Æ¨Ï¥Î¡A ¹³¬O IDE µwºÐ¡A³nºÐ¡A¦ê¦C°ðµ¥µ¥¡C <tt/dma/ -- ¤¶­±¥d¨Ï¥Îªºª½±µ°O¾ÐÅé¦s¨ú(Direct Memory Access:DMA)³q¹D¡C ¨å«¬¥u¥Î©ó¨ã¶×¬y±Æ¥D±±(bus-mastering)¯à¤Oªº¥d¡C PCI ¤Î VLB ¤¶­±¥d¥»§Y¨ã¶×¬y±Æ¥D±±¡A¥B¤£»Ý­n¥ô¦ó ISA ª½±µ°O¾ÐÅé¦s¨ú³q¹D¡C <tt/scsi-id/ -- ¦b SCSI ¶×¬y±Æ¤W¡A¤¶­±¥d¥Î¨ÓÃѧO¥¦¥»¨­ªºÃѧO¸¹½X¡C ¥u¦³¬Y¨Ç¤¶­±¥d¤¹³\§A§ïÅܳo­Ó­È¡A¤j³¡¥÷«h³£¤º©w¥B¥Ã¤[¤£ÅÜ¡C ³q±`¹w³]­È¬O¤C¡A¦ý¦è±¶(Seagate)¥H¤Î Future Domain TMC-950 ¥d¨Ï¥Î¤»¡C <tt/parity/ -- SCSI ¤¶­±¥d¬O§_´Á±æ©Ò³s±µªº³]³Æ¥æ´«¸ê°T®É´£¨Ñ¦P¦ìÀˬd½X¡C «ü©w¤@ªí¥Ü¥´¶}¦P¦ìÀˬd¡A¹s«h¬°Ãö³¬¡C ¦P¼Ë¦a¡A¨Ã«D©Ò¦³ªº¤¶­±¥d³£¤ä´©¿ï¥Î¦P¦ìÀˬd³o­Ó±Ò°Ê°Ñ¼Æ¡C <sect2>Adaptec aha151x, aha152x, aic6260, aic6360, SB16-SCSI (`aha152x=') <p> aha ½s¸¹¹ï·Ó¥d¦Ó aic ½s¸¹¹ï·Ó³o¨Ç¥d¤W¹ê»Úªº SCSI ´¹¤ù¡A ¥]§t Soundblaster-16 SCSI¡C °»´ú³o¨Ç SCSI ¥dªºµ{¦¡½X´M§ä±q¥d¤W¦w¸Ë¶i¨Óªº°ò¥»¿é¥X¤J¨t²Î¡A ¦pªG¨S¦³¡A´N§ä¤£¨ì§Aªº¥d¡CµM«á§A´N±o¨Ï¥Î³oºØ«¬¦¡ªº±Ò°Ê°Ñ¼Æ¡G <code> aha152x=iobase[,irq[,scsi-id[,reconnect[,parity]]]] </code> ª`·N¡A¦pªG¦¹ÅX°Êµ{¦¡½sͮɦ³¥´¶}¿ù»~°»´ú¡A«h¥i¥H«ü©w²Ä¤»­Ó­È¥H³]©w°»¿ù¼h¯Å¡C ©Ò¦³°Ñ¼Æ³£¦p¥»¸`³Ì«e­±©Ò­z¡A¦Ó <tt/reconnect/ ­È¦pªG¤£¬°¹s«h¤¹³\³]³ÆÂ÷½u¡þ­«·s³s½u¡C ¨Ï¥Î½d¨Ò¦p¤U¡G <code> aha152x=0x340,11,7,1 </code> ª`·N¡A°Ñ¼Æ¥²¶·¨Ì§Ç«ü©w¡A·N¿×¦pªG§A·Q«ü©w¦P¦ìÀˬd¡A ¨º»ò§A¤]±o«ü©w iobase, irq, scsi-id ¥H¤Î reconnect ­È¡C <sect2>Adaptec aha154x (`aha1542=') <p> ³o¨Ç¬O aha154x ¨t¦Cªº¥d¡C aha1542 ¨t¦Cªº¥dªO¤l¤W¦³¤@­Ó i82077 ³nºÐ±±¨î¾¹¡A¦Ó aha1540 ¨t¦Cªº¥d¨S¦³¡C ³o¨Ç¥d¬O¶×¬y±Æ¥D±±¥d¡A¦Ó¥B¦³¥i¥H³]©w¡¨¤½¥­©Ê¡¨ªº°Ñ¼Æ¡A¥Î¨Ó»P¨ä¥¦³]³Æ¦@¥Î¶×¬y±Æ¡C ¨ä±Ò°Ê°Ñ¼Æ¬Ý°_¨Ó¹³¤U­±³o¼Ë¡C <code> aha1542=iobase[,buson,busoff[,dmaspeed]] </code> ¥i¥Îªº <tt/iobase/ ­È³q±`¬O¡G <tt/0x130, 0x134, 0x230, 0x234, 0x330, 0x334/ ¨ä¤¤¤§¤@¡C ¥é(Clone)¥d¥i¯à¤¹³\¨Ï¥Î¨ä¥¦­È¡C <tt/buson, busoff/ ªº­È¬O¸Ó¥d¦û¥Î¤u·~¼Ð·Ç¬[ºc(ISA)¶×¬y±Æªº²@¬í¼Æ(microsecond)¡C ¹w³]­È¬O 11us on, and 4us off¡A¦p¦¹¨ä¥¦ªº¥d ¡]¹³¬O¤u·~¼Ð·Ç¬[ºc¤¶­±ªº LANCE ¤A¤Óºô¸ô¥d¡^´N¦³¾÷·|¦s¨ú¤u·~¼Ð·Ç¬[ºc¶×¬y±Æ¡C <tt/dmaspeed/ ªº­È¬O¶i¦æª½±µ°O¾ÐÅé¦s¨úªº³t²v¡]¥H¦Ê¸U¦ì¤¸²Õ¨C¬í¬°³æ¦ì¡^¡C ¹w³]¬° 5MB/s¡C ·sª©ªº¥d¥i¥HÅý§A±q³nÅé°t¸m(soft-configuration)¤¤¿ï¾Ü³o­Ó­È¡A ¸ûªº¥d«h¨Ï¥Î¸õ±µ(jumpers)¡C°²³]§Aªº¥D¾÷ªO°÷¤Oªº¸Ü¥i¥H¨Ï¥Î 10MB/s¡C ¦pªG¨Ï¥Î 5MB/s ¥H¤Wªº­È½Ð¤p¤ß¸ÕÅç¡C <sect2>Adaptec aha274x, aha284x, aic7xxx (`aic7xxx=') <p> ³o¨Ç¥d¥i¥H±µ¨ü¦¹ºØ®æ¦¡ªº°Ñ¼Æ¡C <code> aic7xxx=extended,no_reset </code> ¦pªG <tt/extended/ ªº­È¤£¬°¹s«hªí¥Ü¥´¶}¹ï¤j®e¶qºÏºÐªº©µ¦ùÂà´«(extended translation)¡C <tt/no_reset/ ­È¦pªG¤£¬°¹s«h¬O§i¶DÅX°Êµ{¦¡±Ò°Ê®É¡A ³]©w¤¶­±¥dªº®É­Ô¤£­n­«¸m SCSI ¶×¬y±Æ¡C <sect2>AdvanSys SCSI Host Adaptors (`advansys=') <p> AdvanSys ÅX°Êµ{¦¡³Ì¦h¯à±µ¨ü¥|­Ó¿é¥X¤J¦ì§}¥H°»´ú AdvanSys SCSI ¥d¡Cª`·N¡A³o¨Ç­È¡]­Y¨Ï¥Îªº¸Ü¡^§¹¥þ¤£·|¼vÅT EISA ©Î¬O PCI ªº °»´ú¡C¥¦­Ì¶È¥Î¨Ó°»´ú ISA ¥H¤Î VLB ¤¶­±¥d¡CÁÙ¦³¡A¦pªG¦¹ÅX°Ê µ{¦¡½sͮɦ³¥´¶}¿ù»~°»´úªº¸Ü¡A¨º»ò¿ù»~°»´úªº¿é¥X¿é¥X¼h¯Å¥i¥H Âǥѥ[¤J 0xdeb[0-f] °Ñ¼Æ¨Ó³]©w¡C <sect2>Always IN2000 ¤¶­±¥d (`in2000=') <p> ¸ò¨ä¥¦ SCSI ¥dªº±Ò°Ê°Ñ¼Æ¤£¦P¡A IN2000 ÅX°Êµ{¦¡¨Ï¥Î¥Ñ¬ü°ê¼Ð·Ç¥æ´«½X(ASCII) ©Ò²Õ¦¨ªº«e¸m(prefix)¦r¦ê¥Nªí¤j³¡¥÷ªº¾ã¼Æ°Ñ¼Æ¡C ³o¬O¤@¥÷¤ä´©¦Cªí¡G ioport:addr -- ¨ä¤¤ addr ¬O¥d¡]³q±`¨S¦³°ßŪ°O¾ÐÅé¡^ªº¿é¥X¤J¦ì§}¡C noreset -- ¨S¦³¿ï¥Îªº°Ñ¼Æ¡C³oÁ×§K±Ò°Ê®É´Áªº SCSI ¶×¬y±Æ­«¸m°Ê§@¡C nosync:x -- x ¬O­Ó¦ì¤¸¾B¸n(bitmask)¡A¨ä¤¤«e­±¤C­Ó¦ì¤¸¹ïÀ³¨ì¤C­Ó SCSI ³]³Æ ¡]²Ä¹s­Ó¦ì¤¸¬O²Ä¹s¸¹³]³Æ¡A¾lÃþ±À¡^¡C ³]©w¨ä¤¤ªº¦ì¤¸¥HÁ×§K¹ï¸Ó³]³Æ¶i¦æ¦P¨B(sync)¨ó°Ó(negotiation)¡C ÅX°Êµ{¦¡¹w³]¬OÃö³¬©Ò¦³³]³Æ¤§¦P¨B¡C period:ns -- ns ¬O¥H©`¬í(nanoseconds)¬°³æ¦ì¤§³Ì¤p SCSI ¸ê®Æ¶Ç¿é®É¶¡°Ï¬q (period)¡C¹w³]¬° 500; ¥i±µ¨üªº­È¬O 250 ¨ì 1000¡C disconnect:x -- x = 0 §Yµ´¤£¤¹³\Â÷½u¡A2 §Y¤@©w¥i¥HÂ÷½u¡C x = 1 «h¬°¡¦¾A·í¡¦®É¥iÂ÷½u¡A³o¬O¹w³]­È¡A ¦Ó¥B¬O¤@¯ë±¡ªpªº³Ì¨Î¿ï¾Ü¡C debug:x ¦pªG©w¸q¤F `DEBUGGING_ON' «h x ´N¬O³]©w¤£¦P¿ù»~°»´ú¿é¥Xªº¦ì¤¸¾B¸n ¡Ð°Ñ¨£ in2000.h ¤¤©w¸qªº DB_xxx¡C proc:x -- ¦pªG©w¸q¤F `PROC_INTERFACE' «h x ´N¬O¨M©w /proc ¤¶­±¹B§@¤è¦¡¤Î¥\¯àªº¦ì¤¸¾B¸n¡Ð°Ñ¨£ in2000.h ¤¤©w¸qªº PR_xxx¡C ¤U­±¦C¥X¤@¨Ç¨Ï¥Î½d¨Ò¡G <code> in2000=ioport:0x220,noreset in2000=period:250,disconnect:2,nosync:0x03 in2000=debug:0x1e in2000=proc:3 </code> <sect2>¨Ï¥Î AMD AM53C974 ªºµwÅé (`AM53C974=') <p> »P¨ä¥¦ÅX°Êµ{¦¡¤£¦P¡A³o¤@­Ó¤£¨Ï¥Î±Ò°Ê°Ñ¼Æ¨Ó¶Ç¹F¿é¥X¤J°ð¡A µwÅ餤Â_©Îª½±µ°O¾ÐÅé¦s¨ú³q¹D¡C ¡]¬JµM AMD53C974 ¬O­Ó PCI ³]³Æ¡A¨ä¹ê¤]¤£»Ý­n§@³o¨Ç³]©w¡C¡^ ¨ú¦Ó¥N¤§ªº¬O¥Î¨Ó¶Ç¹F¤¶­±¥d»P³]³Æ¶¡¶Ç¿é¼Ò¦¡»P¶Ç¿é²vªº°Ñ¼Æ¡C ³o³Ì¦n¥Î½d¨Ò¨Ó¸ÑÄÀ¡G <code> AM53C974=7,2,8,15 </code> ³o·|³Q¸ÑÄÀ¦¨³o¼Ë¡G¡¥¹ï©ó SCSI-ID 7 ªº±±¨î¾¹»P SCSI-ID 2 ªº³]³Æ¶¡¤§³q°T¡A ¨Ï¥Î³Ì¤j 8MHz ¤§¦P¨B¼Ò¦¡¶Ç¿é²v¡CÀ³¨ó°Ó 15 ¦ì¤¸²Õªº°¾²¾­È¡C¡¦ ¸Ô²Ó¸ê®Æ¥i¦b <tt>linux/drivers/scsi/README.AM53C974</tt> Àɮ׸̧ä¨ì¡C <sect2>BusLogic SCSI ¤¶­±¥d»P v1.2 ªº®Ö¤ß (`buslogic=') <p> ¦bª©ªº®Ö¤ß¤¤¡A buslogic ÅX°Êµ{¦¡¥u±µ¨ü¤@­Ó°Ñ¼Æ¡A´N¬O¿é¥X¤J¦ì§}¡C ¥¦¯à±µ¨ü¤U¦C­È¡G<tt/0x130, 0x140, 0x230, 0x234, 0x330, 0x334/¡C <sect2>BusLogic SCSI ¤¶­±¥d»P v2.x ªº®Ö¤ß (`BusLogic=') <p> ¦b v2.x ®Ö¤ß¤¤¡ABusLogic ÅX°Êµ{¦¡±µ¨ü³\¦h°Ñ¼Æ¡C ¡]ª`·N¤W­±ªº¤j¤p¼g¡F¬O¤j¼gªº B ¥H¤Î L!!! ¡^¡C ¤U­±ªº²Ó¸`¬Oª½±µ±q v2.0 ®Ö¤ß¤¤ªº Leonard N. Zubkoff's ÅX°Êµ{¦¡®³¹L¨Óªº¡C ³o­Ó BusLogic ÅX°Êµ{¦¡ªº®Ö¤ß©R¥O¦C¬O¥Ñ "BusLogic" ÅX°Êµ{¦¡ÃѧO¦r¡A ¥[¤W¦U­Ó¥H³r¸¹®æ¶}ªº¿ï¥Î©Ê¾ã¼Æ§Ç¦C¡A«á­±¸òµÛ¦U­Ó¿ï¥Î©Êªº¦r¦ê§Ç¦C©Ò²Õ¦¨¡C ¨C¦æ©R¥O¦C³£¥Î©ó¤@±i BusLogic ¥d¡A ¦b¨Ï¥Î¦h±i BusLogic ¥dªº¨t²Î¤W¥i¥H¨Ï¥Î¦h­Ó©R¥O¦C¨Ó³]©w¡C ²Ä¤@­Ó¾ã¼Æ«ü©w¤¶­±¥d©Ò¦bªº I/O ¦ì§}¡C¦pªG¤£«ü©w«h¹w³]­È¬°¹s¡A ªí¥Ü§â³o­Ó°Ñ¼Æ³]¬°¹w³]°»´ú¶¶§Ç¤¤§ä¨ìªº²Ä¤@±i BusLogic ¥d¡C ¦pªG¦b©R¥O¦C¤W«ü©w¤F¥ô¦óªº I/O ¦ì§}°Ñ¼Æ¡A¹w³]°»´ú¶¶§Ç´N·|³Q©¿²¤¡C ²Ä¤G­Ó¾ã¼Æ«ü©w¥Î©ó¤ä´©¦î¦C¹B§@(Tagged Queuing)ªº¥Ø¼Ð³]³Æ¤§¦î¦C²`«×¡C ¦î¦C²`«×¬O®e³\¦P®É°e¥Xªº SCSI «ü¥O¼Æ¡C¦pªG¨S¦³«ü©w«h¹w³]­È¬°¹s¡A ªí¥Ü¨Ï¥Î®Ú¾Ú¤¶­±¥dªºÁ`¦î¦C²`«×¤Î¼Æ¥Ø¡AºØÃþ¡A³t«×¡A ¥H¤Î°»´ú¥Ø¼Ð³]³Æªº¯à¤O©Ò¦Û°Ê§PÂ_ªº­È¡C ¹ï©ó»Ý­n¨Ï¥Î ISA ¿ù»~½w½Ä°Ï(Bounce Buffers)ªº¤¶­±¥d¡A ¦î¦C²`«×¦Û°Ê³]¬° BusLogic_TaggedQueueDepth_BB ¥HÁ×§K DMA ¿ù»~½w½Ä°O¾ÐÅ骺¹L¸ü¡C ¤£¤ä´©¦î¦C¹B§@ªº¥Ø¼Ð³]³Æ¨Ï¥Î BusLogic_UntaggedQueueDepth ©w¸qªº¦î¦C²`«×¡C ²Ä¤T­Ó¾ã¼Æ«ü©w¶×¬y±Æ°±¸m(Settle)®É¶¡¡A¥H¬í¬°³æ¦ì¡C ³o¤D¬O­«¸m¤¶­±¥d¨Ï SCSI ¶×¬y±Æ­«¸m¨ìµo¥X SCSI «ü¥O¤§¶¡ªº®É¶¡¡C ¦pªG¨S¦³«ü©w«h¹w³]­È¬°¹s¡Aªí¥Ü¨Ï¥Î BusLogic_DefaultBusSettleTime ªº­È¡C ²Ä¥|­Ó¾ã¼Æ«ü©w°Ï°ì¿ï¶µ¡C¦pªG¨S¦³«ü©w«h¹w³]­È¬°¹s¡C ª`·N¡A°Ï°ì¿ï¶µ¥u¥Î©ó¯S©wªº¤¶­±¥d¡C ²Ä¤­­Ó¾ã¼Æ«ü©w¥þ°ì¿ï¶µ¡C¦pªG¨S¦³«ü©w¡A¹w³]­È¬°¹s¡C ª`·N¡A¥þ°ì¿ï¶µÀ³¥Î©ó©Ò¦³ªº¤¶­±¥d¡C ¦r¦ê¿ï¶µ¥Î¨Ó´£¨Ñ¹ï¦î¦C¹B§@¡A¿ù»~¦^´_¡A¥H¤Î¤¶­±¥d°»´ú¤§±±¨î¡C ¦î¦C¹B§@ªº«ü©w¥H "TQ:" ¶}ÀY¡A ¥i¥H©ú½T¦a«ü©w¬O§_¤¹³\¦³¦¹¤ä´©ªº¥Ø¼Ð³]³Æ¨Ï¥Î¦î¦C¹B§@¡C ¤U­±¬O¥i¥Îªº«ü©w¿ï¶µ¡G TQ:Default -- ¦î¦C¹B§@ªº¤¹³\»P§_¥H BusLogic ¥dªº°bÅ骩¥»¥H¤Î¦î¦C²`«×ªº­È¬O§_¤¹³\¦h­««ü¥O§@¬°§PÂ_°ò¦¡C TQ:Enable -- ¹ï©Ò¦³±µ¦b³o±i¥d¤Wªº¥Ø¼Ð³]³Æ¥´¶}¦î¦C¹B§@¡A©¿²¤¤¶­±¥d°bÅ骩¥»©Ò¥[½Ñªº­­¨î¡C TQ:Disable -- ¹ï©Ò¦³±µ¦b³o±i¥d¤Wªº¥Ø¼Ð³]³ÆÃö³¬¦î¦C¹B§@¡C TQ:<¨C­Ó¥Ø¼Ðªº³]©w> -- ¦U§O±±¸m¹ï¨C­Ó¥Ø¼Ð³]³Æªº¦î¦C¹B§@¡C <¨C­Ó¥Ø¼Ðªº³]©w>¬O¥Ñ "Y", "N", and "X" ¦r¤¸²Õ¦¨ªº¦ê¦C¡C "Y" ¥´¶}¦î¦C¹B§@¡A"N" Ãö³¬¦î¦C¹B§@¡A¦Ó "X" ±µ¨ü¥H°bÅ骩¥»¬°°ò¦ªº¹w³]­È¡C ²Ä¤@­Ó¦r¤¸¥Nªí¥Ø¼Ð³]³Æ 0¡A²Ä¤G­Ó¥Nªí³]³Æ 1¡A¨Ì¦¹Ãþ±À¡F ¦pªG "Y", "N" and "X" ¦r¤¸¦ê¦C¨Ã¥¼²[»\©Ò¦³ªº¥Ø¼Ð³]³Æ¡A ¥¼«ü©wªº¦r¤¸±N³Q°²³]¬° "X"¡C ª`·N¡A©ú½T¦a«ü©w­n¨Ï¥Î¦î¦C¹B§@¥i¯à·|¥X°ÝÃD¡F ³o¥D­n¬O¤è«K¥Î¨ÓÃö³¬¹ï¬Y¨Ç¨S¯à¥¿½T¹ê§@¦¹¥\¯à¤§¥Ø¼Ð³]³Æªº¦î¦C¹B§@¡C ¿ù»~¦^´_µ¦²¤ªº«ü©w¥H "ER:" ¶}ÀY¡A¥i¥H©ú½T¦a«ü©w¦] SCSI «ü¥O¥¢±Ñ¡A µLªk¦¨¥\§¹¦¨¦Ó©I¥s ResetCommand ®É°õ¦æªº¿ù»~¦^´_°Ê§@¡C ¤U­±¬O¥i¥Îªº«ü©w¿ï¶µ¡C ER:Default -- ¿ù»~¦^´_¨Ì SCSI ¤l¨t²Îªº«ØÄ³¿ï¾Ü±j¨î­«¸m(Hard Reset)»P¶×¬y±Æ³]³Æ­«¸m¨ä¤¤¤§¤@¡C ER:HardReset -- ¿ù»~¦^´_±N·|±Ò©l¤¶­±¥dªº±j¨î­«¸m¡A³o¤]·|¤Þ°_ SCSI ¶×¬y±Æªº­«¸m¡C ER:BusDeviceReset -- ¿ù»~¦^´_±N°e¥X¶×¬y±Æ³]³Æ­«¸m°T®§µ¹¤Þ°_¿ù»~ªº¥Ø¼Ð³]³Æ¡C ¦pªG¸Ó¥Ø¼Ð³]³Æ¦A¦¸³y¦¨¿ù»~¦^´_¦Ó¥B°e¥X¶×¬y±Æ³]³Æ­«¸m°T®§¤§«á¸Ó¥Ø¼Ð³]³Æ¨S¦³¤@¦¸¦¨¥\§¹¦¨ SCSI «ü¥Oªº¸Ü¡A «h¹Á¸Õ¶i¦æ±j¸m­«¸m¡C ER:None -- ¿ù»~¦^´_±N³Q­áµ²¡C ³o­Ó¿ï¶µÀ³¸Ó¥u¥Î©ó SCSI ¶×¬y±Æ­«¸m©Î¶×¬y±Æ³]³Æ­«¸m·|¨Ï¥Ø¼Ð³]³ÆµLªk¦^´_ªº±¡ªp¡C ER:<¨C­Ó¥Ø¼Ðªº³]©w> -- ¿ù»~¦^´_±N¹ï¨C­Ó¥Ø¼Ð³]³Æ¶i¦æ¦U§O±±¨î¡C <¨C­Ó¥Ø¼Ðªº³]©w>¬O¥Ñ "D", "H", "B", and "N" ¦r¤¸©Ò²Õ¦¨ªº¦ê¦C¡C "D" ¿ï¾Ü¹w³]­È¡A"H" ¿ï¾Ü±j¸m­«¸m¡A"B" ¿ï¾Ü¶×¬y±Æ³]³Æ­«¸m¡A¦Ó "N"¿ï¾Ü¤£­«¸m¡C ²Ä¤@­Ó¦r¤¸¥Nªí¥Ø¼Ð³]³Æ 0¡A²Ä¤G­Ó¥Nªí³]³Æ 1¡A¨Ì¦¹Ãþ±À¡F ¦pªG "D", "H" , "B" and "N" ¦r¤¸¦ê¦C¨Ã¥¼²[»\©Ò¦³ªº¥Ø¼Ð³]³Æ¡A ¥¼«ü©wªº¦r¤¸±N³Q°²³]¬° "X"¡C ¤¶­±¥d°»´úªº«ü©w¥]§t¤U¦C¦r¦ê¡G NoProbe -- ¤£°õ¦æ¥ô¦ó¤@ºØ°»´ú¡A¦]¦¹¤£·|°»´ú¨ì BusLogic ¤¶­±¥d¡C NoProbeISA -- ¤£°»´ú¼Ð·Ç ISA I/O ¦ì§}¡A¦]¦¹¥u·|°»´ú¨ì PCI ¤¶­±¥d¡C NoSortPCI -- ¨Ì PCI BIOS ©Ò´£¨Ñªº¶¶§Ç¦CÁ| PCI ¤¶­±¥d¡A ©¿²¤¥ô¦ó AutoSCSI "Use Bus And Device # For PCI Scanning Seq." ¿ï¶µªº³]©w¡C <sect2>EATA SCSI ¤¶­±¥d (`eata=') <p> ·sªº v2.0 ®Ö¤ß¤§ EATA ÅX°Êµ{¦¡¯à±µ¨ü¤@­Ó±Ò°Ê°Ñ¼Æ«ü©w©Ò­n°»´úªº¿é¥X¤J¦ì§}¡C ®æ¦¡¬°¡G <code> eata=iobase1[,iobase2][,iobase3]...[,iobaseN] </code> ¦¹ÅX°Êµ{¦¡·|¨Ì©Ò¦C¶¶§Ç°»´ú³o¨Ç¦ì§}¡C <sect2>Future Domain TMC-8xx, TMC-950 (`tmc8xx=') <p> °»´ú³o¨Ç SCSI ¥dªºµ{¦¡½X´M§ä±q¥d¤W¦w¸Ë¶i¨Óªº°ò¥»¿é¥X¤J¨t²Î¡A ¦pªG¨S¦³¡A´N§ä¤£¨ì§Aªº¥d¡C ©ÎªÌ¡A¦pªG BIOS ªºÃ±³¹(signature)¦r¦ê¤£³Q»{¥i¨º»ò¤]·|§ä¤£¨ì¡C ¤£ºÞ¬O¨º¤@ºØ±¡ªp¡A§A³£±o¨Ï¥Î³oºØ«¬¦¡ªº±Ò°Ê°Ñ¼Æ¡G <code> tmc8xx=mem_base,irq </code> <tt/mem_base/ ªº­È¬O¬É­±¥d¨Ï¥Îªº°O¾ÐÅé¹ï¬M(memory mapped)¿é¥X¤J°Ï°ìªº­È¡C ¦¹­È³q±`·|¬O¤U¦C¨ä¤¤¤§¤@¡G <tt/0xc8000, 0xca000, 0xcc000, 0xce000, 0xdc000, 0xde000/¡C <sect2>Future Domain TMC-16xx, TMC-3260, AHA-2920 (`fdomain=') <p> ³o­ÓÅX°Êµ{¦¡®Ú¾Ú¤@¥÷¤wª¾°ò¥»¿é¥X¤J¨t²Î°ßŪ°O¾ÐÅéñ³¹¦Cªí°»´ú³o¨Ç¤¶­±¥d¡C §¹¾ãªº¦Cªí½Ð°Ñ¨£ <tt>linux/drivers/scsi/fdomain.c</tt>¡A ¸ÓÀÉ«e­±¦³³\¦h¸ê°T¡C ¦pªG¦¹ÅX°Êµ{¦¡¤£»{±o§Aªº°ò¥»¿é¥X¤J¨t²Î¡A§A¥i¥H¨Ï¥Î³oºØ®æ¦¡Åܧó¡G <code> fdomain=iobase,irq[,scsi_id] </code> <sect2>IOMEGA Parallel Port / ZIP drive (`ppa=') <p> ³o­ÓÅX°Êµ{¦¡¥Î©ó IOMEGA ZIP ºÏºÐªþªº IOMEGA ¨Ã¦C°ð SCSI ¥d¡C ¥¦¤]¥i¥H°t¦X­ì¥ýªº IOMEGA PPA3 ³]³Æ¨Ï¥Î¡C ¦¹ÅX°Êµ{¦¡ªº±Ò°Ê°Ñ¼Æ®æ¦¡¬°¡G <code> ppa=iobase,speed_high,speed_low,nybble </code> °£¤F iobase ¤§¥~¨ä¾l¬Ò¬°¿ï¥Î­È¡C¦pªG§A·Q§ïÅܳo¤T­Ó¿ï¥Î°Ñ¼Æ¤¤ªº¥ô¦ó¤@­Ó¡A «ØÄ³§AŪŪ <tt>linux/drivers/scsi/README.ppa</tt> ¤¤¦³Ãö¥¦­Ì±±¨î¨Ç¤°»òªº²Ó¸`¡C <sect2>NCR5380 based controllers (`ncr5380=') <p> ¸ò§Aªº¤¶­±¥d¦³Ãö¡A 5380 ªº«¬¦¡¥i¥H¬O¿é¥X¤J¹ïÀ³©Î°O¾ÐÅé¹ïÀ³¡C ¡]§C©ó 0x400 ªº¦ì§}·N¿×µÛ¿é¥X¤J¹ïÀ³¡A ¦ý PCI ¥H¤Î EISA µwÅé¨Ï¥Î 0x3ff ¥H¤Wªº¿é¥X¤J¦ì§}¡C¡^¤£ºÞ¬O¨º¤@ºØ±¡ªp¡A §A³£¬O«ü©w¦ì§}¡AµwÅ餤Â_¥H¤Îª½±µ°O¾ÐÅé¦s¨ú³q¹Dªº­È¡C ¿é¥X¤J¹ïÀ³¤¶­±¥dªº½d¨Ò¹³¬O¡G <tt/ncr5380=0x350,5,3/¡C ¦pªG¸Ó¥d¤£¨Ï¥Î¤¤Â_¡A¨º»ò 255(<tt/0xff/)³o­ÓµwÅ餤Â_­È·|Ãö³¬¤¤Â_ªº¨Ï¥Î¡C 254 ³o­ÓÀ³Å餤Â_­Èªí¦Û°Ê°»´ú¡C §ó²Ó¸`ªº¸ê°T¥i¥H¦b <tt>linux/drivers/scsi/README.g_NCR5380</tt> ³o­ÓÀɮ׸̧ä¨ì¡C <sect2>NCR53c400 based controllers (`ncr53c400=') <p> ¼Ð·Ç 53c400 ªº¤ä´©¬O¥Ñ»P¤W­z¼Ð·Ç 5380 ¤§¤ä´©¬Û¦PªºÅX°Êµ{¦¡©Ò´£¨Ñ¡C ±Ò°Ê°Ñ¼Æ»P¤W­z§¹¥þ¬Û¦P¡A°£¤F 53c400 ¤£¨Ï¥Îª½±µ°O¾ÐÅé¦s¨ú¤§¥~¡C <sect2>NCR53c406a based controllers (`ncr53c406a=') <p> ¦¹ÅX°Êµ{¦¡¨Ï¥Î³oºØ®æ¦¡ªº±Ò°Ê°Ñ¼Æ¡G <code> ncr53c406a=PORTBASE,IRQ,FASTPIO </code> ¨ä¤¤ IRQ ¥H¤Î FASTPIO °Ñ¼Æ¬°¿ï¥Î¶µ¡C¤¤Â_­È¹sÃö³¬¤¤Â_¤§¨Ï¥Î¡C ¨Ï¥Î¤@»P FASTPIO °Ñ¼Æ±Ò¥Î <tt/insl/ ¥H¤Î <tt/outsl/ «ü¥O¥H¨ú¥N¤@­Ó¦ì¤¸²Õªº <tt/inb/ ¥H¤Î <tt/outb/ «ü¥O¡C ¦¹ÅX°Êµ{¦¡¤]¥i¥H¥Ñ½sͮɴÁ¿ï¶µ³]©w¨Ï¥Îª½±µ°O¾ÐÅé¦s¨ú¡C <sect2>Pro Audio Spectrum (`pas16=') <p> PAS16 ¨Ï¥Î NCR5380 SCSI ´¹¤ù¡A·s´ÚÁ٤䴩µL¸õ±µ°t¸m¡C±Ò°Ê°Ñ¼Æªº®æ¦¡¬°¡G <code> pas16=iobase,irq </code> °ß¤@ªº¤£¦P¬O§A¥i¥H«ü©w 255 ³o­ÓµwÅ餤Â_­È¡A ³o·|§i¶DÅX°Êµ{¦¡¤£­n¨Ï¥Î¤¤Â_¡AµM®Ä¯à·|­°§C¡C <tt/iobase/ ³q±`¬O <tt/0x388/¡C <sect2>Seagate ST-0x (`st0x=') <p> °»´ú³o¨Ç SCSI ¥dªºµ{¦¡½X´M§ä±q¥d¤W¦w¸Ë¶i¨Óªº°ò¥»¿é¥X¤J¨t²Î¡A ¦pªG¨S¦³¡A´N§ä¤£¨ì§Aªº¥d¡C©ÎªÌ¡A¦pªG BIOS ªºÃ±³¹¦r¦ê¤£³Q»{¥i¨º»ò¤]·|§ä¤£¨ì¡C ¤£ºÞ¬O¨º¤@ºØ±¡ªp¡A§A³£±o¨Ï¥Î³oºØ«¬¦¡ªº±Ò°Ê°Ñ¼Æ¡G <code> st0x=mem_base,irq </code> <tt/mem_base/ ªº­È¬O¬É­±¥d¨Ï¥Îªº°O¾ÐÅé¹ï¬M(memory mapped)¿é¥X¤J°Ï°ìªº­È¡C ¦¹­È³q±`·|¬O¤U¦C¨ä¤¤¤§¤@¡G <tt/0xc8000, 0xca000, 0xcc000, 0xce000, 0xdc000, 0xde000/¡C <sect2>Trantor T128 (`t128=') <p> ³o¨Ç¤¶­±¥d¤]¬O¥H NCR5380 ´¹¤ù¬°°ò¦¡A±µ¨ü¤U¦C¿ï¶µ¡G <code> t128=mem_base,irq </code> The valid values for <tt/mem_base/ are as follows: <tt/0xcc000, 0xc8000, 0xdc000, 0xd8000/. ¥i¥Î©ó <tt/mem_base/ ªº­È¦p¤U¡G <tt/0xcc000, 0xc8000, 0xdc000, 0xd8000/¡C <sect2>Ultrastor SCSI cards (`u14-34f=') <p> ª`·N¡A¦¹¥d¦³¨â­Ó¤¬¬Û¿W¥ßªºÅX°Êµ{¦¡¡A¦W¬° <tt/CONFIG_SCSI_U14_34F/ ªÌ¨Ï¥Î <tt/u14-34f.c/ ¦Ó <tt/CONFIG_SCSI_ULTRASTORE/ ¨Ï¥Î <tt/ultrastor.c/¡C u14-34f ³o¤@­Ó¡]·sªº v2.0 ®Ö¤ß¥Î¥¦¡^±µ¨ü¤@­Ó®æ¦¡¦p¤Uªº±Ò°Ê°Ñ¼Æ¡G <code> u14-34f=iobase1[,iobase2][,iobase3]...[,iobaseN] </code> ¦¹ÅX°Êµ{¦¡·|¨Ì©Ò¦C¶¶§Ç°»´ú³o¨Ç¦ì§}¡C <sect2>Western Digital WD7000 cards (`wd7000=') <p> ³o­ÓÅX°Êµ{¦¡´M§ä¥¦©Òª¾¹Dªº°ò¥»¿é¥X¤J¨t²Î°ßŪ°O¾ÐÅé¦r¦ê¨Ó°»´ú wd7000 ¨Ã¥Bª¾¹D¼Æ­Ó¼Ð·Çªº°t¸m³]©w¡C ¦pªG¥¦¨S¯à¥Î¥¿½Tªº­È°Ê°_¨Ó¡A©Î¤£»{±o§Aªº°ò¥»¿é¥X¤J¨t²Îª©¥»¡A ¨º»ò§A¥i¥H¨Ï¥Î³oºØ®æ¦¡ªº±Ò°Ê°Ñ¼Æ¡C <code> wd7000=irq,dma,iobase </code> <sect1>¤£±µ¨ü±Ò°Ê°Ñ¼Æªº SCSI ¥d <p> ¥Ø«e¬°¤î¡A¤U¦C SCSI ¤¶­±¥d¤£¨Ï¥Î¥ô¦ó±Ò°Ê®É´Á°Ñ¼Æ¡C¦b¬Y¨Ç±¡ªp¤U¡A §A¥i¥Hª½±µ½s¿èÅX°Êµ{¦¡¥»¨­§â­È<em/¼g¦º(hard-wire)/¶i¥h¡A¦pªG¯uªº¥²­nªº¸Ü¡C <verb> Adaptec aha1740 (EISA probing), NCR53c7xx,8xx (PCI, both drivers) Qlogic Fast (0x230, 0x330) Qlogic ISP (PCI) </verb> <sect>µwºÐ¾÷ <p> ³o¤@¸`¦C¥X©Ò¦³»P¼Ð·Ç MFM/RLL, ST-506, XT, ¥H¤Î IDE ºÏºÐ¾÷¬ÛÃöªº±Ò°Ê°Ñ¼Æ¡C ª`·N¡AIDE ¥H¤Î¥ý«eªº ST-506 µwºÐÅX°Êµ{¦¡³£±µ¨ü `hd=' ¿ï¶µ¡C <sect1>IDE ºÏºÐ¡þ¥úºÐÅX°Êµ{¦¡°Ñ¼Æ <p> IDE ÅX°Êµ{¦¡±µ¨ü´X­Ó°Ñ¼Æ¡A ²[»\½d³ò±qºÏºÐ³W®æ(geometry)¨ì¥ý¶i©Î¤£¨}¤§±±¨î¾¹ªº¤ä´©¡C ©³¤U¬O©Ò¦³¥i¥Î¤§±Ò°Ê°Ñ¼ÆªººK­n¡C ­nª¾¹D§¹¾ãªº²Ó¸`¡A §A<em/¯uªº/À³¸Ó¥h¬d¾\¦b <tt>linux/Documentation</tt> ¥Ø¿ý¤Uªº <tt/ide.txt/ ÀÉ¡A ³o­ÓºK­n¬O±q¤¤ºK¿ý¥X¨Óªº¡C <code> "hdx=" ±q "a" ¨ì "h" ©Ò¦³ªº "x" ³£©Ó»{¡A¹³¬O "hdc" ¡C "idex=" ±q "0" ¨ì "3" ©Ò¦³ªº "x" ³£©Ó»{¡A¹³¬O "ide1"¡C "hdx=noprobe" : ¤]³\ªº½T¦³­ÓºÏºÐ¦b¨º¨à¡A¦ý¤£­n¥h°»´ú "hdx=none" : ³o¸Ì¨S¦³ºÏºÐ¡A©¿²¤ cmos ¥B¤£­n¥h°»´ú "hdx=nowerr" : ©¿²¤³o­ÓºÏºÐªº WRERR_STAT ¦ì¤¸ "hdx=cdrom" : ³o¸Ì¦³­ÓºÏºÐ¡A¦Ó¥B¬O­Ó¥úºÐ¾÷ "hdx=cyl,head,sect" : ³o¸Ì¦³­ÓºÏºÐ¡A¨Ã«ü©wºÏºÐ³W®æ "hdx=autotune" : ÅX°Êµ{¦¡±N¸ÕµÛ§â¤¶­±³t«×½Õ¨ì¤ä´©¤§ ³Ì§Ö¥iµ{¦¡¤Æ¿é¥X¤J(PIO) ¼Ò¦¡ ¡A¦¹ºÏºÐ¯à±µ¨ü¤~¦æ¡C¨Ã«D©Ò¦³ ´¹¤ù²ÕºØÃþ³£¦³§¹¾ã¤ä´©¡A¨Ã¥B «Ü¥i¯à¨Ïªº¡þ©_©Çªº IDE ºÏ ºÐ¥X°ÝÃD¡C "idex=noprobe" : ¤£­n¹Á¸Õ¦s¨ú¡þ¨Ï¥Î³o­Ó¤¶­± "idex=base" : ¦b«ü©wªº¦ì§}°»´ú¤¶­±¡A¨ä¤¤ "base" ³q±`¬O 0x1f0 ©Î¬O 0x170 ¥B °²³] "ctl" ¬O "base"+0x206 "idex=base,ctl" : «ü©w base ¥H¤Î ctl "idex=base,ctl,irq" : «ü©w base, ctl, ¥H¤Î irq ¼Æ­È "idex=autotune" : ÅX°Êµ{¦¡±N¸ÕµÛ§â¤¶­±³t«×½Õ¨ì¤ä´©¤§ ³Ì§Ö¥iµ{¦¡¤Æ¿é¥X¤J(PIO) ¼Ò¦¡ ¡A¦¹ºÏºÐ¯à±µ¨ü¤~¦æ¡C¨Ã«D©Ò¦³ ´¹¤ù²ÕºØÃþ³£¦³§¹¾ã¤ä´©¡A¨Ã¥B «Ü¥i¯à¨Ïªº¡þ©_©Çªº IDE ºÏ ºÐ¥X°ÝÃD¡C "idex=noautotune" : ÅX°Êµ{¦¡±N¤£·|¸ÕµÛ½Õ¾ã¤¶­±³t«×¡C°£ ¤F cmd640 ¤§¥~¡A³o¬O¤j³¡¥÷´¹ ¤ù²Õªº¹w³]­È¡C "idex=serialize" : ¤£­«Å|¹ï(overlap) idex ¤Î ide(x^1) ªº¾Þ§@ </code> ¤U¦C°Ñ¼Æ¥u¤¹³\¥Î©ó ide0¡A ¥B¹w³]ªº base, ctl ¥H¤Î ports ¤£¯à­×§ï¡C <code> "ide0=dtc2278" : °»´ú¡þ¤ä´© DTC2278 ¤¶­± "ide0=ht6560b" : °»´ú¡þ¤ä´© HT6560B ¤¶­± "ide0=cmd640_vlb" : ¨Ï¥Î CMD640 ´¹¤ùªº VLB ¤¶­±¥d ¡¯¥²¶·¡¯¥[¤J³o­Ó°Ñ¼Æ¡]PCI ªº«h ¤£¥² -- ¦Û°Ê°»´ú¡^ "ide0=qd6580" : °»´ú¡þ¤ä´© qd580 ¤¶­± "ide0=ali14xx" : °»´ú¡þ¤ä´© ali14xx ´¹¤ù²Õ (ALI M1439/M1445) "ide0=umc8672" : °»´ú¡þ¤ä´© umc8672 ´¹¤ù²Õ </code> ¨Ï¥Î¥ô¦ó¨ä¥¦ªºªFªF³£·|³Q©Úµ´¨Ã±o¨ì¤@­Ó "BAD OPTION" °T®§¡C <sect1>¼Ð·Ç ST-506 ºÏºÐÅX°Êµ{¦¡¿ï¶µ(`hd=') <p> ¼Ð·ÇºÏºÐÅX°Êµ{¦¡¥i¥H±µ¨üºÏºÐÅÞ¿è³W®æ°Ñ¼Æ¡A ³o»P IDE ÅX°Êµ{¦¡¬Û¦ü¡Cª`·N¡A µL½×¦p¦ó¥¦¥u§Æ±æ±µ¨ü¤T­Ó­È (C/H/S) -- ¹L¦h©Î¹L¤Ö¥¦³£·|ÀqÀq¦a©¿²¤±¼¡C ¦P®É¥¦¥u±µ¨ü `hd=' °Ñ¼Æ¡A¹³ `hda', `hdb=' ³oÃþªº¦b¦¹³£¤£³Q¤¹³\¡C ¨ä®æ¦¡¦p¤U¡G <code> hd=cyls,heads,sects </code> ¦pªG¸Ë¦³¨â­ÓºÏºÐ¡A´N¨Ï¥Î²Ä¤GÁûºÏºÐªº³W®æ­«ÂФW­z«ü¥O¡C <sect1>XT Disk Driver Options (`xd=') <p> ¦pªG§A¤£©¯¨ì±o­n¨Ï¥Î³o¨Çªº¡B8 ¦ì¤¸¡B ¥HÅå¤Hªº 125kb/s ³t«×·h²¾¸ê®Æªº¤¶­±¥d¨º»ò³o¸`¬O§Aªº¿Wªù¸ÑÃÄ¡C °»´ú³o¨Ç¥dªºµ{¦¡½X´M§ä±q¥d¤W¦w¸Ë¶i¨Óªº°ò¥»¿é¥X¤J¨t²Î¡A ¦pªG¨S¦³¡A´N§ä¤£¨ì§Aªº¥d¡C©ÎªÌ¡A¦pªG BIOS ªºÃ±³¹¦r¦ê¤£³Q»{¥i¨º»ò¤]·|§ä¤£¨ì¡C ¤£ºÞ¬O¨º¤@ºØ±¡ªp¡A§A³£±o¨Ï¥Î³oºØ«¬¦¡ªº±Ò°Ê°Ñ¼Æ¡G <code> xd=type,irq,iobase,dma_chan </code> ¨ä¤¤ <tt/type/ ­È«ü¥Ü¸Ó¤¶­±¥dªº»s³y°Ó¡A ¦p¤U¡G 0=generic; 1=DTC; 2,3,4=Western Digital, 5,6,7=Seagate; 8=OMTI¡C ¦P¤@®a»s³y°ÓºØÃþ¤§¶¡ªº¤£¦P¶È¤î©ó¥Î¨Ó°»´úªº°ò¥»¿é¥X¤J¨t²Î¦r¦ê¡A ³o­ÓªFªF­Y«ü©w type ´N·|¤£¨Ï¥Î¡C ³o¨Ç­È <tt/xd_setup()/ ¨ç¦¡¤£·|¥hÀˬd¡A¨Ã¥B°²³]§A¿é¤J©Ò¦³¦@¥|­Ó­È¡C §OÅý¥¦¥¢±æ¡C³o¨à¦³­Ó½d¨Ò¨Ï¥Î WD1002 ±±¨î¾¹¨ÃÃö³¬¡þ©Þ±¼°ò¥»¿é¥X¤J¨t²Î¡A ¨Ï¥Î¡¥¹w³]ªº¡¦XT ±±¨î¾¹°Ñ¼Æ¡G <code> xd=2,5,0x320,3 </code> <sect>¥úºÐ¾÷ (Non-SCSI/ATAPI/IDE) <p> ³o¤@¸`¦C¥XÄÝ©ó¥úºÐ³]³Æ©Ò¦³¥i¯àªº±Ò°Ê°Ñ¼Æ¡C ª`·N¡A³o¤£¥]§t SCSI ©Î¬O IDE/ATAPI ¥úºÐ¾÷¡C ³o¨Ç¥úºÐ¾÷½Ð°Ñ¾\¨ä¥¦¾A·íªº³¹¸`¡C ª`·N¡A¤j³¡¥÷¥úºÐ¾÷³£¦³¨Ç¤å¥óÀÉ<em/­È±o/¤@Ū¡A ¦Ó¥B¥¦­Ì³£©ñ¦b¤@­Ó«Ü®e©ö¨ú±oªº¦a¤è¡G<tt>linux/Documentation/cdrom</tt>¡C <sect1>Aztech ¤¶­± (`aztcd=') <p> ³oºØ¤¶­±¥dªº»yªk¬O¡G <code> aztcd=iobase[,magic_number] </code> ¦pªG§A±N <tt/magic_number/ ³]¬° <tt/0x79/ ¨º»ò¦¹ÅX°Êµ{¦¡¤£ºÞ¤T¤C¤G¤Q¤@³£·|¸ÕµÛ¦b¥¼ª¾ªº°bÅ骩¥»¤W¶]¡C ©Ò¦³¨ä¥¦ªº­È³£·|³Q©¿²¤¡C <sect1>CDU-31A ¥H¤Î CDU-33A Sony ¤¶­± (`cdu31a=') <p> ¦¹¥úºÐ¾÷¤¶­±¥X²{¦b³¡¥÷ Pro Audio Spectrum ­µ®Ä¥d¥H¤Î¨ä¥¦ Sony ¥X²£ªº¤¶­±¥d¤W¡C»yªk¦p¤U¡G <code> cdu31a=iobase,[irq[,is_pas_card]] </code> «ü©w¹s§@¬° IRQ ­È§i¶D¦¹ÅX°Êµ{¦¡¤£¤ä´©µwÅ餤Â_¡]¬Y¨Ç PAS ªº¥d¡^¡C ¦pªG§Aªº¥d¤ä´©¤¤Â_¡AÀ³¸Ó¨Ï¥Î¤§¥H­°§C¦¹ÅX°Êµ{¦¡ªº¤¤¥¡³B²z¾¹¨Ï¥Î²v¡C ¦pªG¨Ï¥Î Pro Audio Spectrum ªº¤¶­±¥d«h `is_pas_card' ÄæÀ³¸Ó¿é¤J `PAS'¡A ­Y§_´N¤£À³¸Ó¨Ï¥Î¡C <sect1>CDU-535 Sony ¤¶­± (`sonycd535=') <p> ³oºØ¥úºÐ¾÷¤¶­±¥dªº»yªk¬O¡G <code> sonycd535=iobase[,irq] </code> ¦pªG§A·Q«ü©w IRQ ­È¡A¿é¥X¤J¦ì§}¥i¥H¶ñ¤J¹s¨Ó¦û¦ì¸m(placeholder)¡C <sect1>GoldStar ¤¶­± (`gscd=') <p> ³oºØ¥úºÐ¾÷¤¶­±¥dªº»yªk¬O¡G <code> gscd=iobase </code> <sect1>ISP16 ¤¶­± (`isp16=') <p> ³oºØ¥úºÐ¾÷¤¶­±¥dªº»yªk¬O¡G <code> isp16=[port[,irq[,dma]]][[,]drive_type] </code> ¨Ï¥Î¹s§@¬° <tt/irq/ or <tt/dma/ ªí¥Ü¤£¨Ï¥Î¸Ó¥\¯à¡C ¥i¥Î©ó <tt/drive_type/ ªº­È¬O <tt/noisp16, Sanyo, Pansonic, Sony,/ and <tt/Mitsumi/¡C¨Ï¥Î <tt/noisp16/ ·|¹ý©³Ãö±¼³o­ÓÅX°Êµ{¦¡¡C <sect1>Mitsumi ¼Ð·Ç¤¶­± (`mcd=') <p> ³oºØ¥úºÐ¾÷¤¶­±¥dªº»yªk¬O¡G <code> mcd=iobase,[irq[,wait_value]] </code> ¨ä¤¤ <tt/wait_value/ ¬O§@¬°¤º³¡ªº¹O®É³]©w¡A¥Î¦b¨º¨Ç¤£Å¥¸Üªº¾÷¤l¤W¡A ³o­Ó¥\¯à¬O§_¦³¹ê§@¬O¨Ì½sͮɴÁªº<tt/©w¸q­È/¦Ó©w¡C <sect1>Mitsumi XA/MultiSession ¤¶­± (`mcdx=') <p> ¥Ø«e¬°¤î¡A¦¹¡¥¹êÅç©Ê¡¦ªºÅX°Êµ{¦¡¦³­Ó³]©w¨ç¦¡¡A ¦ý¨Ã¥¼¹ê§@¥ô¦ó°Ñ¼Æ(as of 1.3.15)¡C¥¦¥Î©ó»P¤W­zÅX°Êµ{¦¡¬Û¦PªºµwÅé¡A ¦ý¦¹ÅX°Êµ{¦¡¨ã¦³§ó¦h¥\¯à¡C <sect1>Optics Storage ¤¶­± (`optcd=') <p> ³oºØ¤¶­±¥dªº»yªk¬O¡G <code> optcd=iobase </code> <sect1>Phillips CM206 ¤¶­± (`cm206=') <p> ³oºØ¤¶­±¥dªº»yªk¬O¡G <code> cm206=[iobase][,irq] </code> ³o­ÓÅX°Êµ{¦¡°²³]¤¶©ó 3 ¨ì 11 ¤§¶¡¼Æ¦r¬O IRQ ­È¡A ¦Ó <tt/0x300/ ¨ì <tt/0x370/ ¤§¶¡ªº¼Æ¦r«h¬O¿é¥X¤J°ð¡A ©Ò¥H§A¥i¥H¥u«ü©w¤@­Ó­È©Î¤G­Ó³£«ü©w¡A¶¶§ÇÀH·N¡C ¥¦¤]±µ¨ü `cm206=auto' ¥H¥´¶}¦Û°Ê°»´ú¡C <sect1>Sanyo ¤¶­± (`sjcd=') <p> ³oºØ¤¶­±¥dªº»yªk¬O¡G <code> sjcd=iobase[,irq[,dma_channel]] </code> <sect1>SoundBlaster Pro ¤¶­± (`sbpcd=') <p> ³oºØ¤¶­±¥dªº»yªk¬O¡G <code> sbpcd=iobase,type </code> ¨ä¤¤ªº <tt/type/ ¬O¤U¦C¤§¦r¦ê¤@¡]¤j¤p¼g¦³®t¡^¡G `SoundBlaster', `LaserMate', or `SPEA'¡C ¿é¥X¤J¦ì§}¬O¥úºÐ¾÷ªº¿é¥X¤J¦ì§}¡A¤£¬O¸Ó¥d­µ®Ä³¡¥÷ªº¿é¥X¤J¦ì§}¡C <sect>¨ä¥¦µwÅé³]³Æ <p> ¨ä¥¦¥ô¦ó¤£¾A¦X©ñ¦b¤W­±¤ÀÃþ¤¤ªº³]³Æ³£°ï¦b³o¸Ì¡C <sect1>¤A¤Óºô¸ô³]³Æ (`ether=') <p> ¤£¦PªºÅX°Êµ{¦¡¨Ï¥Î¤£¦Pªº°Ñ¼Æ¡A ¦ý¥¦­Ì¦Ü¤Ö³£¦@¥Î IRQ, I/O °ð¦ì§}­È¥H¤Î¦WºÙ¡C³Ì¼Ð·Çªº®æ¦¡¬Ý°_¨Ó¹³¡G <code> ether=irq,iobase[,param_1[,param_2,...param_8]]],name </code> ²Ä¤@­Ó¤£¬O¼Æ¦rªº°Ñ¼Æ³Q·í§@¦WºÙ¡C<tt/param_n/ ªº­È¡]¦pªG°t±o°_¨Ó¡^¹ï¨C±i¤£¦Pªº¤¶­±¥d¡þÅX°Êµ{¦¡³q±`³£¥Nªí¤£¦Pªº·N¸q¡C ¨å«¬ªº <tt/param_n/ ­È¬O¥Î¨Ó«ü©w¹³¦@¨É°O¾ÐÅé¦ì§}¡A¤¶­±ªº¿ï¾Ü¡A DMA ³q¹Dµ¥µ¥½Ñ¦p¦¹ÃþªºªFªF¡C ¦¹°Ñ¼Æ³Ì±`¨£ªº¥Îªk¬O¦b¹w³]­È¶È°»´ú¨ì¤@±iºô¸ô¥dªº®É­Ô±j¨î°»´ú²Ä¤G±i¤A¤Óºô¸ô¥d¡C ¥i¥H¥Î³o­Ó²³æªº«ü¥O¹F¦¨¡G <code> ether=0,0,eth1 </code> ª`·N¡A¤W­z½d¨Ò¤¤ IRQ »P I/O ¦ì§}¹s§i¶DÅX°Êµ{¦¡¦Û°Ê¥h°»´ú¡C ¼Ò²Õ¨Ï¥ÎªÌªÌ½Ðª`·N¡G ¦pªGÅX°Êµ{¦¡§@¬°°õ¦æ´Á¶¡¥i¸ü¤J¼Ò²Õ¡]¤£½s͍ì®Ö¤ß¸Ì¡^ ¨Ï¥Î«h¤W­z«ü¥O<em/¤£·|/±j¨î°»´ú²Ä¤G±i¤¶­±¥d¡C ¤j³¡¥÷ªº Linux µo¦æ®M¥ó³£¨Ï¥Î¤@­Ó°ò¥»ªº®Ö¤ß°t¦X³\³\¦h¦h°µ¦¨¼Ò²ÕªºÅX°Êµ{¦¡¡C ¦¹ <tt/ether=/ °Ñ¼Æ¥u¹ïª½±µ½sͦb®Ö¤ß¸ÌªºÅX°Êµ{¦¡¦³®Ä¡C ¦b¤A¤Óºô¸ô»¡©ú(Ethernet-HowTo)¤¤¹ï¨Ï¥Î¦h±iºô¸ô¥d¥H¤Î <tt/param_n/ ­Èªº¨Ï¥Î³õ¦X¡Aºô¸ô¥d¡þÅX°Êµ{¦¡¹ï³o¨Ç­Èªº¹ê§@µ¥µ¥¦³§ó§¹¾ã¡B§ó¼sªxªº¤å¥ó¡C ¦³¿³½ìªºÅªªÌÀ³¸Ó°Ñ¦Ò¸Ó¤å¥ó¤¤¦³Ãö¦Û¤vºô¸ô¥dªº³¹¸`¡C <url url="http://sunsite.unc.edu/mdw/HOWTO/Ethernet-HOWTO.html" name="Ethernet-HowTo"> <sect1>³nºÐÅX°Êµ{¦¡ (`floppy=') <p> ³nºÐÅX°Êµ{¦¡¦³³\¦h¿ï¶µ¡A ¥þ³¡³£¦C¦b <tt>linux/drivers/block</tt> ¸Ìªº <tt/README.fd/ ¤¤¡C ³o¬Oª½±µ±q¸ÓÀɨú±oªº¸ê°T¡C floppy=mask,allowed_drive_mask ³]©w¤¹³\¨Ï¥Î¤§ºÏºÐ¾÷¦ì¤¸¾B¸n¬° <tt/mask/ ¡C ¨Ì¹w³]¡A¥u¤¹³\¨C­Ó³nºÐ±±¨î¾¹ªº²Ä¹s¤Î²Ä¤@­Ó³æ¤¸¡C ³o¼Ë°µ¬O¦]¬°¦³¨Ç«D¼Ð·ÇªºµwÅé¡]µØºÓªº PCI ¥D¾÷ªO¡^ ¦b¦s¨ú²Ä¤G©Î²Ä¤T­Ó³æ¤¸®É·|·í±¼Áä½L¡C¦¹¿ï¶µ®t¤£¦h¤w¸g³Q cmos ¿ï¶µµ¹¨ú¥N¤F¡C floppy=all_drives ³]©w¤¹³\¨Ï¥Î¤§ºÏºÐ¾÷¦ì¤¸¾B¸n¬°©Ò¦³ºÏºÐ¾÷¡C ¦pªG§A¦b³nºÐ±±¨î¾¹¤W±µ¤F¨â­Ó¥H¤WªººÏºÐ¾÷ªº¸Ü¥i¥H¨Ï¥Î¡C floppy=asus_pci ³]©w¦ì¤¸¾B¸n¬°¥u¤¹³\²Ä¹s¤Î²Ä¤@­Ó³æ¤¸¡C¡]¹w³]­È¡^ floppy=daring §i¶D³nºÐÅX°Êµ{¦¡§A¦³­Ó¦æ¬°¨}¦nªº³nºÐ±±¨î¾¹¡C ³o¼Ë¹B§@¤W·|¤ñ¸û¦³®Ä²v¡B¤ñ¸û¥­¶¶¡A¦ý¦³¨Ç±±¨î¾¹¥i¯àµLªk¨Ï¥Î¡C ³o¥i¥H¥[³t¬Y¨Ç³¡¥÷ªº¹B§@¡C floppy=0,daring §i¶D³nºÐÅX°Êµ{¦¡§Aªº³nºÐ±±¨î¾¹±o¤p¤ß¬ÝºÞ¡C floppy=one_fdc §i¶D³nºÐÅX°Êµ{¦¡§A¥u¦³¤@­Ó³nºÐ±±¨î¾¹¡C¡]¹w³]­È¡^ floppy=two_fdc <em/or/ floppy=address,two_fdc §i¶D³nºÐÅX°Êµ{¦¡§A¦³¨â­Ó³nºÐ±±¨î¾¹¡C ²Ä¤G­Ó³nºÐ±±¨î¾¹°²³]¦ì©ó address «ü©wªº¦a¤è¡C ¦pªG¨S¦³µ¹ address¡A°²³]¬° 0x370 ¡C floppy=thinkpad §i¶D³nºÐÅX°Êµ{¦¡§A¦³¤@¥x Thinkpad¡C Thinkpads ªººÏºÐÅܧ󰻴ú½u¸ô(disk change line)¤§¨Ï¥Î»P¤@¯ë¬Û¤Ï¡C floppy=0,thinkpad §i¶D³nºÐÅX°Êµ{¦¡§A¨S¦³ Thinkpad¡C floppy=drive,type,cmos ³]©w <tt/drive/ ªº cmos Ãþ«¬¬° <tt/type/¡C ±ø¥ó¬O¡A³o­ÓºÏºÐ¾÷¦b¦ì¤¸¾B¸n¤¤¥²¶·¬O¥i¥Îªº¡C ¦pªG§A¦³¨â­Ó¥H¤WªººÏºÐ¾÷¡]¹êÅé cmos ¥u¯à«ü©w¨â­Ó¡^ ©Î¬O§Aªº°ò¥»¿é¥X¤J¨t²Î¨Ï¥Î«D¼Ð·Çªº CMOS Ãþ«¬¨º³o´N¦³¥Î¤F¡C §â«e¨â­ÓºÏºÐ¾÷ªº cmos ³]¬° 0¡]¹w³]­È¡^ ·|¨Ï±o³nºÐÅX°Êµ{¦¡¬°³o¨ÇºÏºÐ¾÷Ū¨ú¹êÅé cmos¡C floppy=unexpected_interrupts ±µ¦¬¨ì«D¹w´Á¤§¤¤Â_®É¦L¥Xĵ§i°T®§¡]¹w³]¡^ floppy=no_unexpected_interrupts <em/or/ floppy=L40SX ±µ¦¬¨ì«D¹w´Á¤§¤¤Â_®É¤£¦L¥Xĵ§i°T®§¡C IBM L40SX ½¥¤W«¬¹q¸£¦b¬Y¨ÇÅã¥Ü¼Ò¦¡¤U»Ý­n¥¦¡C ¡]³o¬Ý¨Ó¬O¼v¹³»P³nºÐ¤§¶¡ªº¬YºØ¬Û¤¬Ãö«Y¡C ¦¹«D¹w´Á¤§¤¤Â_¥u·|¼vÅT®Ä¯à¡A¥i¥H¦w¥þ¦a©¿²¤¡C¡^ <sect1>­µ®ÄÅX°Êµ{¦¡ (`sound=') <p> ­µ®ÄÅX°Êµ{¦¡¤]¥i¥H±µ¨ü±Ò°Ê°Ñ¼Æ¥HÅܧó½sĶ®Éªº­È¡C ¤£¹L¨Ã¤£«ØÄ³³o¼Ë°µ¡A¦]¬°³o¼Ë·|§ó½ÆÂø¡C ¬ÛÃö»¡©ú©ñ¦b¡]´¿¸g¡H¡^Readme.Linux ¤¤¡A ¦ì©ó <tt>linux/drivers/sound</tt> ¸Ì¡C¥¦±µ¨ü³oºØ«¬¦¡ªº°Ñ¼Æ¡G <code> sound=device1[,device2[,device3...[,device11]]] </code> ¨ä¤¤¨C­Ó <tt/deviceN/ ­Èªº®æ¦¡¬°¤U¦Cªº <tt/0xTaaaId/ ¦Ó¨C­Ó¦ì¤¸²Õªº¨Ï¥Î¦p¤U¡G T - ³]³ÆºØÃþ: 1=FM, 2=SB, 3=PAS, 4=GUS, 5=MPU401, 6=SB16, 7=SB16-MPU401 aaa - ¤Q¤»¶i¦ìªº¿é¥X¤J¦ì§}¡C I - ¤Q¤»¶i¦ì¤§¤¤Â_½u (i.e 10=a, 11=b, ...) d - °O¾ÐÅ骽±µ¦s¨ú³q¹D¡C ¦p§A©Ò¨£¡A³o¬Û·íÂø¶Ã¡A«ØÄ³§A³Ì¦n§â¦Û¤v³]³Æªº­È½sͶi¥h¡C ¨Ï¥Î±Ò°Ê°Ñ¼Æ `sound=0' ±N·|ª±¥þÃö³¬­µ®ÄÅX°Êµ{¦¡¡C <sect1>¶×¬y±Æ·Æ¹«ÅX°Êµ{¦¡ (`bmouse=') <p> ¶×¬y±Æ·Æ¹«ÅX°Êµ{¦¡¥u±µ¨ü¤@­Ó°Ñ¼Æ¡A´N¬OµwÅé©Ò¨Ï¥Îªº IRQ ­È¡C <sect1>·L³n¶×¬y±Æ·Æ¹«ÅX°Êµ{¦¡ (`msmouse=') <p> ·L³n·Æ¹«ÅX°Êµ{¦¡¥u±µ¨ü¤@­Ó°Ñ¼Æ¡A´N¬OµwÅé©Ò¨Ï¥Îªº IRQ ­È¡C <sect1>¦Lªí¾÷ÅX°Êµ{¦¡ (`lp=') <p> ¦b°ª©ó 1.3.75 ¥H¤Wªº®Ö¤ß¤W§A¥i¥H§i¶D¦Lªí¾÷ÅX°Êµ{¦¡¨Ï¥Î¨º­Ó°ð¥H¤Î<em/¤£/¨Ï¥Î¨º­Ó°ð¡C ¦pªG§A¤£·QÅý¦Lªí¾÷ÅX°Êµ{¦¡®³¨ì©Ò¦³¥i¥Îªº¨Ã¦C°ð¨º»ò«áªÌ«Ü¤è«K¡A ³o¼Ë¨ä¥¦ªºÅX°Êµ{¦¡(e.g. PLIP, PPA)´N¥i¥H¨Ï¥Î¥¦­Ì¡C ³o­Ó°Ñ¼Æªº®æ¦¡¬O¦h­Ó i/o, IRQ ªº²Õ¦X¡C ¨Ò¦p¡A <tt/lp=0x3bc,0,0x378,7/ ·|¥H¤£»Ý IRQ(polling) ªº¼Ò¦¡¨Ï¥Î¦ì©ó 0x3bc ªº°ð¡A ¨Ã¥B¹ï¦ì©ó 0x378 ªº°ð¨Ï¥Î IRQ 7¡C ¦ì©ó 0x278 ªº°ð¡]¦pªG¦³ªº¸Ü¡^±N¤£·|³Q°»´ú¨ì¡A ¦]¬°¦Û°Ê°»´ú¥u¥Î©ó¨S¦³ `lp=' °Ñ¼Æªº±¡ªp¤U¡C ¥i¥H¨Ï¥Î <tt/lp=0/ Ãö³¬¾ã­Ó¦Lªí¾÷ÅX°Êµ{¦¡¡C <sect1>ICN ¾ãÅéªA°È¼Æ¦ìºô¸ô(ISDN)ÅX°Êµ{¦¡ (`icn=') <p> ³o­Ó¾ãÅéªA°È¼Æ¦ìºô¸ôÅX°Ê°Ñ¼Æªº±Ò°Ê°Ñ¼Æ®æ¦¡¬°¡G <code> icn=iobase,membase,icn_id1,icn_id2 </code> ¨ä¤¤ <tt/iobase/ ¬O¸Ó¥dªº¿é¥X¤J°ð¦ì§}¡A <tt/membase/ ¬O¸Ó¥dªº¦@¨É°O¾ÐÅé°ò©³¦ì§}¡A ¦Ó¨º¨â­Ó <tt/icn_id/ ¬O°ß¤@ÃѧOªº ASCII ¿ëÃѦr¦ê¡C <sect1>PCBIT ISDN ÅX°Êµ{¦¡ (`pcbit=') <p> ³o­Ó±Ò°Ê°Ñ¼Æ®æ¦¡¨Ï¥Î¤@¹ï¾ã¼Æ°Ñ¼Æ¡G <code> pcbit=membase1,irq1[,membase2,irq2] </code> ¨ä¤¤ <tt/membaseN/ ¬O²Ä N ±i¥dªº¦@¨É°O¾ÐÅé°ò©³¡A ¦Ó <tt/irqN/ ¬O²Ä N ±i¥dªº¤¤Â_³]©w¡C ¹w³]­È¬O IRQ 5 ¥H¤Î membase <tt/0xD000/¡C <sect1>Teles ISDN ÅX°Êµ{¦¡ (`teles=') <p> ³o­Ó ISDN ÅX°Êµ{¦¡ªº±Ò°Ê°Ñ¼Æ®æ¦¡¬°¡G <code> teles=iobase,irq,membase,protocol,teles_id </code> ¨ä¤¤ <tt/iobase/ ¬O¸Ó¥dªº i/o °ð¦ì§}¡A <tt/membase/ ¬O¸Ó¥dªº¦@¨É°O¾ÐÅé°ò©³¦ì§}¡A<tt/irq/ ¬O¸Ó¥d¨Ï¥Îªº¤¤Â_¡A ¦Ó <tt/teles_id/ ¬O°ß¤@ÃѧOªº ASCII ¿ëÃѦr¦ê¡C <sect1>DigiBoard ÅX°Êµ{¦¡ (`digi=') <p> DigiBoard ÅX°Êµ{¦¡±µ¨ü¥Ñ¤»­Ó³r¸¹¹j¶}¤§ªº¿ëÃѦr¦ê©Î¾ã¼Æ¡C ¤»­Ó­È¨Ì§Ç¬°¡G <verb> ¥´¶}¡þÃö³¬¸Ó¥d ¥dªººØÃþ¡G PC/Xi(0), PC/Xe(1), PC/Xeve(2), PC/Xem(3) ¥´¶}¡þÃö³¬¨ä¥¦°w¸}±Æ¦C(alternate pin arrangement) ¸Ó¥d¤Wªº°ð¼Æ ¸Ó¥d³]©wªº¿é¥X¤J°ð¡]¦pªG¥H¦r¦ê«ü©w«h¬°¤Q¤»¶i¦ì¡^ °O¾Ðµ¡ªº°ò©³¡]¦pªG¥H¦r¦ê«ü©w«h¬°¤Q¤»¶i¦ì¡^ </verb> ¥¿½Tªº±Ò°Ê°Ñ¼Æ¤§½d¨Ò¡]¦r¦ê¥H¤Î¾ã¼Æ®æ¦¡¡^¦p¡G <code> digi=E,PC/Xi,D,16,200,D0000 digi=1,0,0,16,512,851968 </code> ª`·N¡A³o­ÓÅX°Êµ{¦¡­YµL <tt/digi=/ ±Ò°Ê°Ñ¼Æ¨ä¹w³]¿é¥X¤J¬° <tt/0x200/ ¡A ¦@¨É°O¾ÐÅé°ò©³¬° <tt/0xD0000/ ¡C¤£°õ¦æ¦Û°Ê°»´ú¡C §ó¶i¤@¨Bªº²Ó¸`¥i¥H¦b <tt>linux/Documentation/digiboard.txt</tt> Àɮ׸̧ä¨ì¡C <sect1>RISCom/8 ¦h°ð¦ê¦C¥dÅX°Êµ{¦¡ (`riscom8=') <p> Up to four boards can be supported by supplying four unique i/o port values for each individual board installed. Other details can be found in the file <tt>linux/Documentation/riscom8.txt</tt>. ¥i¥H¤ä´©¹F¥|±i¥d¡A¶·´£¨Ñ¥|­Ó°ß¤@ªº¿é¥X¤J°ðµ¹¨C±i¥d¡C ¨ä¾l²Ó¸`¥i¥H¦b <tt>linux/Documentation/riscom8.txt</tt> Àɮ׸̧ä¨ì¡C <sect1>Baycom ¦ê¦C¡þ¨Ã¦CµL½u¼Æ¾Ú¾÷ (`baycom=') <p> ³o¨Ç³]³Æªº±Ò°Ê°Ñ¼Æ®æ¦¡¦p¤U¡C <code> baycom=modem,io,irq,options[,modem,io,irq,options] </code> ¨Ï¥Î modem=1 ªí¥Ü§A¦³ ser12 ³]³Æ¡Amodem=2 ªí¥Ü§A¦³ par96 ³]³Æ¡C ¨Ï¥Î options=0 ªí¥Ü¨Ï¥ÎµwÅé DCD¡Aoptions=1 «hªí¥Ü¨Ï¥Î³nÅé DCD¡C <tt/io/ ¥H¤Î <tt/irq/ ¸ò©¹±`¤@¼Ë¬O¿é¥X¤J°ð¥H¤Î¤¤Â_³]©w¡C ¦b <tt>/linux/drivers/char/</tt> ¥Ø¿ý¤Uªº <tt/README.baycom/ Àɮ׸̦³§ó¦hªº²Ó¸`¡C <sect>µ²§ô <p> ¦pªG§Aµo²{³o¥÷¤å¥ó¸Ì¦³¥ô¦ó¿ô¥Øªº¥´¦r¿ù»~¡A©Î¹L®Éªº¸ê°T¡A½ÐÅý §Úª¾¹D¡C³o«Ü®e©ö´N·|¬Ýº|¤F¡C ÁÂÁ¡A Paul Gortmaker, <tt/gpg109@rsphy1.anu.edu.au/ </article>