|
|
1.1 ! root 1: .\" Copyright (c) 1983 Regents of the University of California. ! 2: .\" All rights reserved. The Berkeley software License Agreement ! 3: .\" specifies the terms and conditions for redistribution. ! 4: .\" ! 5: .\" @(#)2.t 6.2 (Berkeley) 6/3/86 ! 6: .\" ! 7: .\".ds RH "Configuration File Contents ! 8: .ne 2i ! 9: .NH ! 10: CONFIGURATION FILE CONTENTS ! 11: .PP ! 12: A system configuration must include at least the following ! 13: pieces of information: ! 14: .IP \(bu 3 ! 15: machine type ! 16: .IP \(bu 3 ! 17: cpu type ! 18: .IP \(bu 3 ! 19: system identification ! 20: .IP \(bu 3 ! 21: timezone ! 22: .IP \(bu 3 ! 23: maximum number of users ! 24: .IP \(bu 3 ! 25: location of the root file system ! 26: .IP \(bu 3 ! 27: available hardware ! 28: .PP ! 29: .I Config ! 30: allows multiple system images to be generated from a single ! 31: configuration description. Each system image is configured ! 32: for identical hardware, but may have different locations for the root ! 33: file system and, possibly, other system devices. ! 34: .NH 2 ! 35: Machine type ! 36: .PP ! 37: The ! 38: .I "machine type" ! 39: indicates if the system is going to operate on a DEC VAX-11\(dg computer, ! 40: .FS ! 41: \(dg DEC, VAX, UNIBUS, MASSBUS and MicroVAX are trademarks of Digital ! 42: Equipment Corporation. ! 43: .FE ! 44: or some other machine on which 4.3BSD operates. The machine type ! 45: is used to locate certain data files which are machine specific, and ! 46: also to select rules used in constructing the resultant ! 47: configuration files. ! 48: .NH 2 ! 49: Cpu type ! 50: .PP ! 51: The ! 52: .I "cpu type" ! 53: indicates which, of possibly many, cpu's the system is to operate on. ! 54: For example, if the system is being configured for a VAX-11, it could ! 55: be running on a VAX 8600, VAX-11/780, VAX-11/750, VAX-11/730 or MicroVAX II. ! 56: (Other VAX cpu types, including the 8650, 785 and 725, are configured using ! 57: the cpu designation for compatible machines introduced earlier.) ! 58: Specifying ! 59: more than one cpu type implies that the system should be configured to run ! 60: on any of the cpu's specified. For some types of machines this is not ! 61: possible and ! 62: .I config ! 63: will print a diagnostic indicating such. ! 64: .NH 2 ! 65: System identification ! 66: .PP ! 67: The ! 68: .I "system identification" ! 69: is a moniker attached to the system, and often the machine on which the ! 70: system is to run. For example, at Berkeley we have machines named Ernie ! 71: (Co-VAX), Kim (No-VAX), and so on. The system identifier selected is used to ! 72: create a global C ``#define'' which may be used to isolate system dependent ! 73: pieces of code in the kernel. For example, Ernie's Varian driver used ! 74: to be special cased because its interrupt vectors were wired together. The ! 75: code in the driver which understood how to handle this non-standard hardware ! 76: configuration was conditionally compiled in only if the system ! 77: was for Ernie. ! 78: .PP ! 79: The system identifier ``GENERIC'' is given to a system which ! 80: will run on any cpu of a particular machine type; it should not ! 81: otherwise be used for a system identifier. ! 82: .NH 2 ! 83: Timezone ! 84: .PP ! 85: The timezone in which the system is to run is used to define the ! 86: information returned by the \fIgettimeofday\fP\|(2) ! 87: system call. This value is specified as the number of hours east ! 88: or west of GMT. Negative numbers indicate a value east of GMT. ! 89: The timezone specification may also indicate the ! 90: type of daylight savings time rules to be applied. ! 91: .NH 2 ! 92: Maximum number of users ! 93: .PP ! 94: The system allocates many system data structures at boot time ! 95: based on the maximum number of users the system will support. ! 96: This number is normally between 8 and 40, depending ! 97: on the hardware and expected job mix. The rules ! 98: used to calculate system data structures are discussed in ! 99: Appendix D. ! 100: .NH 2 ! 101: Root file system location ! 102: .PP ! 103: When the system boots it must know the location of ! 104: the root of the file system ! 105: tree. This location and the part(s) of the disk(s) to be used ! 106: for paging and swapping must be specified in order to create ! 107: a complete configuration description. ! 108: .I Config ! 109: uses many rules to calculate default locations for these items; ! 110: these are described in Appendix B. ! 111: .PP ! 112: When a generic system is configured, the root file system is left ! 113: undefined until the system is booted. In this case, the root file ! 114: system need not be specified, only that the system is a generic system. ! 115: .NH 2 ! 116: Hardware devices ! 117: .PP ! 118: When the system boots it goes through an ! 119: .I autoconfiguration ! 120: phase. During this period, the system searches for all ! 121: those hardware devices ! 122: which the system builder has indicated might be present. This probing ! 123: sequence requires certain pieces of information such as register ! 124: addresses, bus interconnects, etc. A system's hardware may be configured ! 125: in a very flexible manner or be specified without any flexibility ! 126: whatsoever. Most people do not configure hardware devices into the ! 127: system unless they are currently present on the machine, expect ! 128: them to be present in the near future, or are simply guarding ! 129: against a hardware ! 130: failure somewhere else at the site (it is often wise to configure in ! 131: extra disks in case an emergency requires moving one off a machine which ! 132: has hardware problems). ! 133: .PP ! 134: The specification of hardware devices usually occupies the majority of ! 135: the configuration file. As such, a large portion of this document will ! 136: be spent understanding it. Section 6.3 contains a description of ! 137: the autoconfiguration process, as it applies to those planning to ! 138: write, or modify existing, device drivers. ! 139: .NH 2 ! 140: Pseudo devices ! 141: .PP ! 142: Several system facilities are configured in a manner like that used ! 143: for hardware devices although they are not associated with specific hardware. ! 144: These system options are configured as ! 145: .IR pseudo-devices . ! 146: Some pseudo devices allow an optional parameter that sets the limit ! 147: on the number of instances of the device that are active simultaneously. ! 148: .NH 2 ! 149: System options ! 150: .PP ! 151: Other than the mandatory pieces of information described above, it ! 152: is also possible to include various optional system facilities ! 153: or to modify system behavior and/or limits. ! 154: For example, 4.3BSD can be configured to support binary compatibility for ! 155: programs built under 4.1BSD. Also, optional support is provided ! 156: for disk quotas and tracing the performance of the virtual memory ! 157: subsystem. Any optional facilities to be configured into ! 158: the system are specified in the configuration file. The resultant ! 159: files generated by ! 160: .I config ! 161: will automatically include the necessary pieces of the system.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.