idled 介绍 (二)设定说明

  •   2009-07-28/15:32
  • 说明 

    第一部份: 开始到options设定之前

    第二部份: 大部分的options 设定(除了SMP之外)

    第三部份: SMP、软碟、主机板及IDE介面 设定

    第四部份: SCSI装置 设定

    第五部份: RAID、滑鼠、键盘、显示卡、电源管理、浮点运算、console 设定

    第六部份: PCMICA、COM port、平行埠 设定

    第七部份: PCI 及ISA 网卡 设定

    第八部份: 虚拟装置、封包过滤器、USB的装置 设定


    ----------------------------------------------------------------------------
    [第一部份] 开始到options设定之前
    ----------------------------------------------------------------------------
      
      machine         i386
      // 机器的内部结构,除了i386 还有 alpha 及pc98我们现今看到的多是i386                               
      
      #cpu            I386_CPU   
      #cpu            I486_CPU   
      #cpu            I586_CPU   
      cpu             I686_CPU 
      // CPU的型态...若您不知道您的CPU型态为何.. >_< 
         it's ok ...FreeBSD will help you ...^^  
         用 dmesg | more 指令(此指令显示开机资讯),可以看到您的CPU型态
         这是我从dmesg中看到的讯息....
         CPU:Pentium II / Pentium II Xeon / Celeron (350.80-MHz 686-class CPU) 
         所以我将其他的3个型态#掉,只留下I686_CPU
          
      ident           OHAHA
      // kernel的识别,通常我们用host name的大写..所以我的是OHAHA
      
      maxusers        64   
      // 这个数值大约等於你希望同时能够登入机器的人数
         在正常的情况下,如果您要跑X-Window的话,最小值是4
         正确的说,此代表process的最大值有关maximum=20+16*maxusers
         正常来说,用64已经足够
      // 注意:maxusers不是能够login的限制。   
    ----------------------------------------------------------------------------
    [第二部份]大部分的options 设定(除了SMP之外)
    ----------------------------------------------------------------------------
    #makeoptions    DEBUG=-g           #Build kernel with gdb(1) debug symbols

    #options         MATH_EMULATE            #Support for x87 emulation
    // 模拟数学浮点运算器 除非您的机器是386或486SX之前的型号,不然您可以将此行 # 掉
       因为FreeBSD在这方面的模拟并不很精确,若您要求精确度的话..
       将 MATH_EMULATE 改成 GPL_MATH_EMULATION 改用GNU 的模拟数学浮点运算器
       
    options         INET                    #InterNETworking-
    // Networking support ,即使您没有打算要连上网路也请保留,因为有些程式会用到loop

    #options        INET6                   #IPv6 communications protocols
    // IPv6 的通讯协定 (因为尚未启用所以disable)

    options         FFS                     #Berkeley Fast Filesystem
    options         FFS_ROOT                #FFS usable as root device [keep this!]
    // 以上两项,是基本的硬碟档案系统。若您要用硬碟开机...keep this !!

    options         MFS                     #Memory Filesystem
    options         MD_ROOT                 #MD is a potential root device
    // memory-mapped档案系统,如果您有很大的swap空间,您想要好好的利用的话...keep this
       如果要使用的话,通常我们会将他挂在(mount)在/tmp 这个地方,
       因为这里有许多程式将暂存资料存放在此。
       要如此的话...请在/etc/fstab中的swap部分加入(或者说更新):
       # Device     Mountpoint      FStype  Options    Dump    Pass#
       /dev/ad0s1b  /tmp              mfs      rw        0       0
       
    options         NFS                     #Network Filesystem
    options         NFS_ROOT                #NFS usable as root device, NFS required
    // 网路档案系统,除非您想经由TCP/IP的方式,将UNIX的系统分割区挂上,否则 # 掉
       因为本网站之後有讲到NFS方面...所以留着...^^
      
    options         MSDOSFS                 #MSDOS Filesystem
    // MSDOS档案系统,除非您要在开机时就挂上此分割区,否则您可以 # 掉

    options         CD9660                  #ISO 9660 Filesystem
    options         CD9660_ROOT             #CD-ROM usable as root, CD9660 required
    // ISO9660档案系统,若您没有光碟机,或者不常mount光碟机,则可以 # 掉
       
    options         PROCFS                  #Process filesystem
    // the process 档案系统,为假想的档案系统,挂(mount)在/proc,
       此允许 ps 指令显示process的资讯

    options         COMPAT_43               #Compatible with BSD 4.3 [KEEP THIS!]
    // 与4.3BSD的相容性[keep this!]
     
    options         SCSI_DELAY=15000        #Delay (in ms) before probing SCSI
    // 使kernel暂停15秒,去搜寻您机器上的SCSI装置。
       这个您应该看过吧...就是开机时令你觉得很烦很慢的那个...
       您可以将此数值减少..以加快开机速度。

    options         UCONSOLE                #Allow users to grab the console
    // 让您能够抓取console的画面...这个对 X 的使用者比较有用...

    options         USERCONFIG              #boot -c editor
    // 允许您从开机选单中启动组态编辑器(configuration editor) 几乎用不到 

    options         VISUAL_USERCONFIG       #visual boot -c editor
    // 同上...只不过是视觉化的...几乎用不到

    options         KTRACE                  #ktrace(1) support
    // 启动kernel process tracing(追踪系统程序),在debug时很有用...一般人还是用不到...@@"

    options         SYSVSHM                 #SYSV-style shared memory
    // 此选项提供给System V 型态的shared memory ...,最常用此选项功能的是 X 中的XSHM
       若您要使用 X 请务必加上,此外许多有关图形的程式也会因此选项功能而加速。
       又者...big5con(中文console)也需要此选项。

    options         SYSVSEM                 #SYSV-style semaphores
    // 支援System V 的信号(semsphores),只占用少量的kernel大小   

    options         SYSVMSG                 #SYSV-style message queues
    // 支援System V 的讯息(messages),只占用少量的kernel大小,BBS会用到此选项功能。

    // 通常我们会将以上三种全部加上.....-__-||

    options         P1003_1B                #Posix P1003_1B real-time extensions
    options         _KPOSIX_PRIORITY_SCHEDULING
    // Real-time extensions added in the POSIX,某些应用程式会用到(star office)。

    options         ICMP_BANDLIM            #Rate limit bad replies
    // 启动反应频宽限制的ICMP error,对於帮助拒绝packet攻击有所助益。 
    ----------------------------------------------------------------------------    
    [第三部份] SMP、软碟、主机板及IDE介面 设定
    ----------------------------------------------------------------------------
    # To make an SMP kernel, the next two are needed
    // 多CPU的支援 ....
    #options        SMP# Symmetric MultiProcessor Kernel
    #options        APIC_IO                 # Symmetric (APIC) I/O
    // 新版本的只要将此两项打开,系统会自动抓到...^^

    device          isa
    // 每个被FreeBSD支援的PC都有这一个....

    device          eisa
    // 若您有EISA的主机板..加上它,会自动侦测及设定所有EISA装置

    device          pci
    // 若您有PCI的主机板..加上它,会自动侦测PCI的卡,及在PCI及ISA介面做一区隔 

    # Floppy drives
    // 软碟
    device          fdc0    at isa? port IO_FD1 irq 6 drq 2
    device          fd0     at fdc0 drive 0
    #device         fd1     at fdc0 drive 1
    // 软碟的控制卡,fd0是A:,fd1是B:(因为我没有第二个软碟机,所以 # 掉fd1)

    # ATA and ATAPI devices
    device          ata0    at isa? port IO_WD1 irq 14
    device          ata1    at isa? port IO_WD2 irq 15
    // 以上这两个,是给那些没有PCI的系统使用

    device          ata
    // kernel侦测PCI/ATA/ATAPI的选项

    device          atadisk                 # ATA disk drives
    // IDE介面的硬碟机

    device          atapicd                 # ATAPI CDROM drives
    // IDE介面的光碟机

    #device         atapifd                 # ATAPI floppy drives
    // IDE介面的软碟机 (我没有..所以 # 掉)

    #device         atapist                 # ATAPI tape drives
    // IDE介面的磁带机 (这....我更没有...所以 # 掉)

    options         ATA_STATIC_ID           #Static device numbering
    // 让控制卡的数值固定,否则,则使用动态产生

    options         ATA_ENABLE_ATAPI_DMA    #Enable DMA on ATAPI devices
    // 启动DMA(动态记忆体存取),预设是#掉..因大多数硬碟都支援,所以我将#拿掉 
    ----------------------------------------------------------------------------
    [第四部份] SCSI装置 设定
    ----------------------------------------------------------------------------
    # SCSI Controllers
    #device         ahb             # EISA AHA1742 family
    #device         ahc             # AHA2940 and onboard AIC7xxx devices
    #device         amd             # AMD 53C974 (Teckram DC-390(T))
    #device         isp             # Qlogic family
    #device         ncr             # NCR/Symbios Logic
    #device         sym             # NCR/Symbios Logic (newer chipsets)
    #options                SYM_SETUP_LP_PROBE_MAP=0x40
                                    # Allow ncr to attach legacy NCR devices when
                                    # both sym and ncr are configured
    #device         adv0    at isa?
    #device         adw
    #device         bt0     at isa?
    #device         aha0    at isa?
    #device         aic0    at isa?
    // SCSI控制卡...#掉你没有的装置,若您像我只有IDE介面,您可以#掉以上。
       请参照 LINT 说明...找找您的卡是属於哪一种...

    # SCSI peripherals
    #device         scbus           # SCSI bus (required)
    // 若您有SCSI介面...please keep this ...
    #device         da              # Direct Access (disks)
    // SCSI硬碟机
    #device         sa              # Sequential Access (tape etc)
    // SCSI磁带机
    #device         cd              # CD
    // SCSI光碟机
    #device         pass            # Passthrough device (direct SCSI access)
    // SCSI周边装置...#掉你没有的装置,若您像我只有IDE介面,您可以#掉以上。
       同样若您有疑问,请参照 LINT 说明 
    ----------------------------------------------------------------------------   
     [第五部份] RAID、滑鼠、键盘、显示卡、电源管理、浮点运算、console 设定
    ----------------------------------------------------------------------------   
    # RAID controllers interfaced to the SCSI subsystem
    #device         asr             # DPT SmartRAID V, VI and Adaptec SCSI RAID
    #device         dpt             # DPT Smartcache - See LINT for options!
    // 多磁碟阵列接SCSI控制卡
       请参照 LINT 说明...找找您的卡是属於哪一种...(我很穷..所以这..更不用说了..# 掉吧)
       
    # RAID controllers
    #device         ida             # Compaq Smart RAID
    #device         amr             # AMI MegaRAID
    #device         mlx             # Mylex DAC960 family
    #device         twe             # 3ware Escalade
    // 多磁碟阵列卡
       请参照 LINT 说明...找找您的卡是属於哪一种...(我很穷..所以这..更不用说了..# 掉吧)
       
    # atkbdc0 controls both the keyboard and the PS/2 mouse
    device          atkbdc0 at isa? port IO_KBD
    // AT及PS/2的装置
       这个被atkbd及psm所需要...也就是有atkbd就要有atkbdc0,psm亦然
       
    device          atkbd0  at atkbdc? irq 1 flags 0x1
    // AT 84 键盘

    device          psm0    at atkbdc? irq 12
    // PS/2的滑鼠

    device          vga0    at isa?
    // 显示卡驱动程式

    # splash screen/screen saver
    pseudo-device   splash
    // 引人注目的启动萤幕(like microsoft windows),以及萤幕保护程式。

    # syscons is the default console driver, resembling an SCO console
    device          sc0     at isa? flags 0x100
    // FreeBSD预设的console驱动程式,类似SCO console ...

    # Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
    #device         vt0     at isa?
    #options        XSERVER                 # support for X server on a vt console
    #options        FAT_CURSOR              # start with block cursor
    # If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines
    #options        PCVT_SCANSET=2          # IBM keyboards are non-std
    // VT220相容的console驱动程式,与VT100/102相容。
       当您无法使用sc0时使用之(某些笔记型电脑),
       在任何平台上VT100都可以执行。不过较少人使用... export TERM=vt100

    # Floating point support - do not disable.
    device          npx0    at nexus? port IO_NPX irq 13
    // npx0是FreeBSD上的数学浮点运算单位,包括实体的或是软体模拟的

    # Power management support (see LINT for more options)
    #device         apm0    at nexus? disable flags 0x20 # Advanced Power Management
    // 支援进阶的电源管理,对笔记型电脑很有助益。 
    ----------------------------------------------------------------------------     
    [第六部份]PCMICA、COM port、平行埠 设定
    ----------------------------------------------------------------------------   
    # PCCARD (PCMCIA) support
    #device         card
    #device         pcic0   at isa? irq 0 port 0x3e0 iomem 0xd0000
    #device         pcic1   at isa? irq 0 port 0x3e2 iomem 0xd4000 disable
    // PCMCIA支援...针对於笔记型电脑

    # Serial (COM) ports
    device          sio0    at isa? port IO_COM1 flags 0x10 irq 4
    device          sio1    at isa? port IO_COM2 irq 3
    #device         sio2    at isa? disable port IO_COM3 irq 5
    #device         sio3    at isa? disable port IO_COM4 irq 9
    // COM1~COM4,预设COM3、COM4不会用到所以#掉

    # Parallel port
    // 平行埠
    device          ppc0    at isa? irq 7
    // ISA-bus的平行埠介面
    device          ppbus           # Parallel port bus (required)
    // 平行埠bus支援
    #device         lpt             # Printer
    // 平行埠的印表机支援 (我没有印表机..so # 掉)
    device          plip            # TCP/IP over parallel
    // 平行埠的网路介面
    #device         ppi             # Parallel port interface device
    // 平行埠的介面装置   (我也没有任何有关的介面..so # 掉)
    #device         vpo             # Requires scbus and da
    // 这是专门给Iomega Zip的支援 (我更没有ZIP)  
    ----------------------------------------------------------------------------
    [第七部份]PCI 及ISA 网卡 设定
    ----------------------------------------------------------------------------   
    # PCI Ethernet NICs.
    #device         de              # DEC/Intel DC21x4x (``Tulip'')
    #device         fxp             # Intel EtherExpress PRO/100B (82557, 82558)
    #device         tx              # SMC 9432TX (83c170 ``EPIC'')
    #device         vx              # 3Com 3c590, 3c595 (``Vortex'')
    #device         wx              # Intel Gigabit Ethernet Card (``Wiseman'')
    // PCI的网路卡..选择您的网卡...其馀的# 掉

    # PCI Ethernet NICs that use the common MII bus controller code.
    device          miibus          # MII bus support
    #device         dc              # DEC/Intel 21143 and various workalikes
    #device         pcn             # AMD Am79C79x PCI 10/100 NICs
    #device         rl              # RealTek 8129/8139
    #device         sf              # Adaptec AIC-6915 (``Starfire'')
    #device         sis             # Silicon Integrated Systems SiS 900/SiS 7016
    #device         ste             # Sundance ST201 (D-Link DFE-550TX)
    #device         tl              # Texas Instruments ThunderLAN
    device          vr              # VIA Rhine, Rhine II
    #device         wb              # Winbond W89C840F
    #device         xl              # 3Com 3c90x (``Boomerang'', ``Cyclone'')
    // PCI的网路卡..选择您的网卡...其馀的# 掉
       若您的网卡是这第二部份的..别忘了要将第一个miibus支援加上,像我一样。
       
    // 网卡的型号可以从dmesg中看出...否则您也可以从 LINT 中参考

    # ISA Ethernet NICs.
    #device      ed0     at isa? port 0x280 irq 10 iomem 0xd8000
    #device      ex
    #device      ep
    #device      fe0     at isa? port 0x300
    # WaveLAN/IEEE 802.11 wireless NICs. Note: the WaveLAN/IEEE really
    # exists only as a PCMCIA device, so there is no ISA attatement needed
    # and resources will always be dynamically assigned by the pccard code.
    #device      wi
    # Aironet 4500/4800 802.11 wireless NICs. Note: the declaration below will
    # work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP
    # mode (the factory default). If you set the switches on your ISA
    # card for a manually chosen I/O address and IRQ, you must specify
    # those paremeters here.
    #device      an
    # Xircom Ethernet
    #device      xe

    # The probe order of these is presently determined by i386/isa/isa_compat.c.
    #device      ie0     at isa? port 0x300 irq 10 iomem 0xd0000
    #device      le0     at isa? port 0x300 irq 5 iomem 0xd0000
    #device      lnc0    at isa? port 0x280 irq 10 drq 0
    #device      cs0     at isa? port 0x300
    #device      sn0     at isa? port 0x300 irq 10
    // ISA的网卡...同样的选择您有的...没有的#掉 ...
       同样的..您也可以参考/sur/src/sys/i386/conf/LINT 有详细的说明
    ----------------------------------------------------------------------------
    [第八部份]虚拟装置、封包过滤器、USB的装置 设定
    ----------------------------------------------------------------------------   
    # Pseudo devices - the number indicates how many units to allocated.
    pseudo-device   loop            # Network loopback
    // 通常的loop装置,当您用telnet或ftp localhost它就是经由此装置
       此为必需的。
    pseudo-device   ether           # Ethernet support
    // 当您有网路卡时才需要,它也包含基本的网路协定码

    #pseudo-device  sl      1       # Kernel SLIP
    // 支援SLIP,不过他以快要被PPP取代,s1後的数字表示,同时有多少SLIP session被支援

    #pseudo-device  ppp     1       # Kernel PPP
    // 对拨接的PPP支援,ppp後的数字表示,同时有多少PPP连结被支援

    #pseudo-device  tun             # Packet tunnel.
    // 被PPP所使用,tun後的数字表示,同时有多少PPP session被支援

    pseudo-device   pty             # Pseudo-ttys (telnet etc)
    // 虚拟终端机装置,预设是16,最高可以达到256 (login port)

    pseudo-device  md              # Memory "disks"
    // memory disk 虚拟装置 与之前的(第二部份)MFS相呼应,不可单独存在

    #pseudo-device  gif     4       # IPv6 and IPv4 tunneling
    // IPv4及IPv6间的工具

    #pseudo-device  faith   1       # IPv6-to-IPv4 relaying (translation)
    // 抓取封包并使之转向到IPv4/IPv6间的转化daemon
     
    # The `bpf' pseudo-device enables the Berkeley Packet Filter.
    # Be aware of the administrative consequences of enabling this!
    pseudo-device   bpf             #Berkeley packet filter
    // Berkeley的封包过滤器。(这是必要的)
       他允许网路介面即使被放置在一个杂乱的模式,它也能在broadcast上抓取每一封包。
       这些封包能被抓取到磁碟或经由tcpdump程式解释。
       
    # USB support
    #device         uhci            # UHCI PCI->USB interface
    #device         ohci            # OHCI PCI->USB interface
    #device         usb             # USB Bus (required)
    #device         ugen            # Generic
    #device         uhid            # "Human Interface Devices"
    #device         ukbd            # Keyboard
    #device         ulpt            # Printer
    #device         umass           # Disks/Mass storage - Requires scbus and da
    #device         ums             # Mouse
    # USB Ethernet, requires mii
    #device         aue             # ADMtek USB ethernet
    #device         cue             # CATC USB ethernet
    #device         kue             # Kawasaki LSI USB ethernet
    // USB装置的支援

    终於...把文字叙述档给修正完成了....现在已经完成编译的一大步了...
    让我们一鼓作气完成他...继续编译


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多