BOOT.8
资源名称:os_source.zip [点击查看]
上传用户:datang2001
上传日期:2007-02-01
资源大小:53269k
文件大小:13k
源码类别:
操作系统开发
开发平台:
C/C++
- BOOT(8) Minix Programmer's Manual BOOT(8)
- NAME
- boot - from power on to the login prompt
- DESCRIPTION
- At power on the machine reads the first sector of the boot device into
- memory and executes it. This bootstrap code loads /boot, the Minix Boot
- Monitor. The monitor loads the kernel binaries from /minix, or the
- newest file in /minix if it is a directory.
- The Minix system is now running, the different tasks initialize
- themselves and control is transferred to the last one, init.
- Init is the grandparent of all Minix processes, it is responsible for
- starting login processes on each terminal, but first it runs /etc/rc.
- /etc/rc checks the state of the system and starts daemons. First it sets
- the keyboard translation to the mapping in /etc/keymap if present, then
- it reads the time zone from /etc/timeinfo followed by a call to
- readclock(8) to set Minix time from the hardware clock. Next the file
- systems are checked if necessary and the /usr file system is mounted.
- The system is now ready for multiuser startup, /etc/rc starts the
- update(8) and cron(8) daemons, and initializes the network services.
- /etc/rc finally recovers crashed editor buffers and cleans out the tmp
- directories.
- Init reads /etc/ttytab and starts a getty(8) for each enabled terminal
- line to allow a user to log in.
- BOOT ENVIRONMENT
- Many features of the drivers inside the kernel are controlled by settings
- in the boot environment. The values of these variables are usually colon
- or comma separated numbers configuring the driver. DPETH0 = 300:10 tells
- the ethernet driver to use I/O address 0x300, interrupt request 10, and
- the default memory address (0xD0000, values may be omitted) for the first
- ethernet board. (Note that IRQ 2 is redirected to IRQ 9 on AT's and
- PS/2's, so use 9 if a device is jumpered for 2.)
- Variables that are special to both the monitor and the kernel are
- described in monitor(8). This section lists extra variables or variable
- settings:
- hd = at | bios | esdi | xt
- Choose the driver that is to be used for the hard disk, in order:
- IBM/AT (classic AT or newer IDE), BIOS (generic driver), ESDI (some
- PS/2's), or IBM/XT. By default the first of these drivers that is
- enabled is used. Most drivers are present in the kernel as
- distributed, but may be taken out by modifying
- /usr/include/minix/config.h. (An XT should always use the BIOS
- driver, not the XT driver, because BIOS calls are cheap on an XT.
- 1
- BOOT(8) Minix Programmer's Manual BOOT(8)
- The XT driver can be used on AT machines with an old XT controller.)
- DPETHn = on | off
- Turn an ethernet board on or off. The driver is by default in
- "sink" mode for all boards. The sink mode allows one to use the
- driver without an ethernet board installed. The driver will play
- /dev/null for that device, i.e. nothing comes in, and anything send
- out is dropped on the floor. If the board is turned on then the
- driver will use it to send out packets, if it is turned off then the
- driver will fail for that board.
- DPETHn = I/O-addr:irq:mem_addr
- Set the I/O address (hex), IRQ (decimal) and memory address (hex) of
- the n-th ethernet board and turn it on. By default they are
- configured as 280:3:D0000 and 300:5:CC000. The memory address is
- ignored for the Novell ethernet boards, but may be explicitly set to
- zero to indicate that the board is a Novell ethernet board. You do
- not need to specify the IRQ with modern Western Digital 8013
- compatible ethernet cards, the driver asks the board what its IRQ
- is. (Note that the default IRQ conflicts with the second serial
- line, so the serial line is turned off if the ethernet board is
- configured for IRQ 3.)
- DPETHn_EA = e0:e1:e2:e3:e4:e5
- Set the ethernet address of the n-th ethernet board. The address is
- normally obtained from the ethernet board, so only in exceptional
- circumstances is this setting ever needed. (Use the address of the
- main server if you want a career change.)
- AHA0 = I/O-addr:bus-on:bus-off:tr-speed
- Configure the Adaptec 154xA SCSI host adapter to use the given I/O
- address (hex), Bus-on time (decimal), Bus-off time (decimal) and
- transfer speed (hex). The default is 330:15:1:00. The default
- transfer speed is always 5.0 Mb/s (code 00) ignoring the jumper
- settings.
- sdn = target,lun
- Program SCSI disk sdn to have the given target and logical unit
- number. The target and lun of a tape or other SCSI device may be
- changed by setting the sdn variable that would be used had it been a
- disk. So tape device st7 can be set to target 4, lun 1 with
- sd35=4,1.
- MCD = I/O-addr:irq
- I/O address (hex) and IRQ (decimal) of the Mitsumi CD-ROM driver, by
- default 300:10.
- 2
- BOOT(8) Minix Programmer's Manual BOOT(8)
- TCP/IP CONFIGURATION
- To use TCP/IP you have to compile a kernel with networking enabled, and
- unless you are running standalone you have to enable the ethernet driver.
- See the DPETHn boot variable above. The driver supports these ethernet
- cards: Western Digital 8003, Western Digital 8013, SMC Elite Ultra 16,
- Novell NE1000, Novell NE2000. Many newer variants of the WD8013, now
- under the SMC brand, are also supported.
- You are likely to use TCP/IP in one of three situations:
- Standalone with no connection to a network.
- In a small network with no support from a "big" host.
- Connected to a large network with address and name servers.
- In each situation you need a different set of configuration files.
- Standalone
- The machine is configured with a fixed IP address: 192.9.200.1. This is
- one of the addresses Sun used to give to machines without a registered
- network address. This address is normally blocked at gateways, so it can
- do no damage if used in a real net by accident. You need one file,
- /etc/hosts, that should look like this (using the name "darask" as an
- example):
- 127.0.0.1 localhost
- 192.9.200.1 darask
- Small Network
- In a network where the Minix machine can't obtain its IP address and name
- from a different host you need specify the ethernet address to host name
- translation in the /etc/ethers file for use by the RARP daemon. Suppose
- you have two machines in your network then /etc/ethers could look like
- this:
- 0:0:c0:a:77:23 darask
- 0:0:c0:a:68:ce burask
- Use hostaddr -e to find out what the six octet ethernet address of a host
- is. Use the address as printed: lowercase hex digits, no leading zeros.
- The /etc/hosts file shows their IP addresses:
- 127.0.0.1 localhost
- 192.9.200.1 darask
- 192.9.200.2 burask
- 3
- BOOT(8) Minix Programmer's Manual BOOT(8)
- Warning! Do not add ethernet addresses of diskless workstations to your
- ethers file. A Sun for instance has the stupid habit of booting from the
- first RARP server that answers, probably your Minix machine...
- Large Network
- In a network with a central network administration your machine's IP
- address and name are given by the RARP and name services of the special
- servers on the network. For a new machine you need to apply for an IP
- address and host name with your network administrator supplying the
- ethernet address of your machine. You don't need any configuration files
- now, the irdpd and nonamed daemons automatically find a router and a name
- server.
- Note that no knowledge of the IP address or hostname of the Minix machine
- itself is necessary, it all comes from the RARP and name servers. A
- series of Minix machines can therefore set up identically. Even if you
- have no RARP or name servers you can still set them up identically if you
- list all the Minix hosts in the hosts and ethers files.
- Simpler configuration tools
- The rarpd, irdpd and nonamed daemons are complex little programs that try
- to obtain information about their surroundings automatically to tell the
- machine what its place in the network is. It should come as no surprise
- that there are simpler utilities to configure a machine. On a memory
- starved machine it may even be wise to configure a machine statically to
- get rid of the daemons. The first daemon, rarpd, can be replaced by:
- ifconfig -h host-IP-address
- to set the IP address of the machine. Note that this is only necessary
- if there is no external RARP service. The second daemon irdpd can be
- replaced by setting a static route:
- add_route -g router-IP-address
- (if there is a router.) The last daemon, nonamed, can be replaced by an
- entry in /etc/resolv.conf that specifies an external name daemon:
- nameserver nameserver-IP-address
- The ifconfig and add_route calls can be placed in the file /etc/rc.net.
- The calls to the daemons will have to be edited out of /etc/rc. Note
- that these changes undo all the efforts to make Minix TCP/IP
- autoconfigurable. Make very sure that all the IP addresses are correct,
- and that the IP address of your machine is unique. (Mistakenly using the
- address of a main server will make all other machines look at your
- machine, and will make all the users of all other machines look at you.)
- 4
- BOOT(8) Minix Programmer's Manual BOOT(8)
- FILES
- /boot Minix Boot Monitor.
- /minix Kernel image, or directory containing them.
- /etc/rc First of the system initialization files.
- /etc/hosts Name to IP address mapping.
- /etc/ethers Name to ethernet address mapping.
- SEE ALSO
- monitor(8), init(8), inet(8), loadkeys(8), readclock(8), fsck(1),
- update(8), cron(8), ttytab(5), getty(8), hostaddr(1), ifconfig(8),
- irdpd(8), nonamed(8), rarpd(8), hosts(5), ethers(5), set_net_default(8).
- DIAGNOSTICS
- Checking File Systems.
- If the system has crashed then fsck is called for the root and /usr
- file systems. It is wise to reboot if the root file system must be
- fixed.
- Finish the name of device to mount as /usr: /dev/
- If the name of the /usr file system has not been set in /etc/fstab.
- You can type a device name, say fd0.
- hostaddr: unable to fetch IP address
- TCP/IP misconfiguration. The RARP may have failed because the
- ethernet address of the machine is not entered in either the remote
- or the local ethers file. Either talk to your Network
- Administrator, or make an ethers and a hosts file.
- 1.2.3.4 login:
- If you see an IP address instead of a host name then the system
- failed to translate the IP address. Either talk to your Network
- Administrator to have the reverse address translation tables fixed,
- or make a hosts file.
- NOTES
- The names "darask" and "burask" are names of cities from the Dutch
- translation of the novel "The Many-Colored Land" by Julian May. The
- author of this text likes names of hosts to be things that contain
- people, like cities and ships.
- 5
- BOOT(8) Minix Programmer's Manual BOOT(8)
- BUGS
- Indefinite hangs are possible if I/O addresses or IRQ's are wrong. A
- driver may babble about addresses and IRQ's, but that does not mean that
- what it says is true, it may just be configured that way. It is very
- difficult to find peripherals on a PC automatically, and Minix doesn't
- even try.
- AUTHOR
- Kees J. Bot (kjb@cs.vu.nl)
- 6