Mercurial > hg > Members > kono > nitros9-code
annotate docs/nitros9guide/chap6.chapter @ 2187:dc01b8d40ee0
created new dw3.bl bootlist file, renamed mb to mb.floppy and created mb.dw3
author | boisy |
---|---|
date | Wed, 11 Mar 2009 02:07:19 +0000 |
parents | b00cf13c9f61 |
children |
rev | line source |
---|---|
1093 | 1 <chapter id="sec6"> |
146 | 2 <title>Use of the System Disk</title> |
3 <para> | |
1500 | 4 Disk-based NitrOS-9 systems use a system disk to load many parts of |
146 | 5 the operating system during the system startup and to provide files |
6 frequently used during normal system operations. Therefore, the | |
7 system disk is generally kept in disk drive zero ("/D0") when the | |
8 system is running. | |
9 </para> | |
10 <para> | |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
11 Two files used during the system startup operation, <filename>OS9Boot</filename> and |
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
12 <filename>startup</filename> <emphasis>must</emphasis> |
146 | 13 reside in the system disk's root directory. Other |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
14 files are organized into three directories: |
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
15 <filename class="directory">CMDS</filename> (commands), |
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
16 <filename class="directory">DEFS</filename> (system-wide definitions), |
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
17 and <filename class="directory">SYS</filename> (other system files). Other files |
146 | 18 and directories created by the system manager and/or users may also |
19 reside on the system disk. These frequently include each user s | |
20 initial data directory. | |
21 </para> | |
22 | |
1093 | 23 <section id="sec6.1"> |
1011 | 24 <title>The OS9Boot File</title> |
146 | 25 |
26 <para> | |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
27 The file called <filename>OS9Boot</filename> loaded into RAM memory by the |
1500 | 28 "bootstrap" routine located in the NitrOS-9 firmware. It includes file |
146 | 29 managers, device drivers and descriptors, and any other modules |
1500 | 30 which are permanently resident in memory. The NitrOS-9 |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
31 distribution disk's <filename>OS9Boot</filename> file contains the following modules: |
146 | 32 </para> |
33 <informaltable frame="none"> | |
34 <tgroup cols="2"> | |
646 | 35 <colspec colwidth="1.5in"/> |
36 <colspec colwidth="3.5in"/> | |
146 | 37 <tbody> |
38 <row> | |
1500 | 39 <entry>KernelP2</entry> |
40 <entry>NitrOS-9 Kernel, Part 2</entry> | |
1011 | 41 </row> |
42 <row> | |
43 <entry>IOMan</entry> | |
1500 | 44 <entry>NitrOS-9 Input/Output Manager</entry> |
146 | 45 </row> |
46 <row> | |
1011 | 47 <entry>Init</entry> |
48 <entry>Initialization Data Module</entry> | |
49 </row> | |
50 <row> | |
146 | 51 <entry>RBF</entry> |
52 <entry>Random Block (disk) File Manager</entry> | |
53 </row> | |
54 <row> | |
55 <entry>SCF</entry> | |
56 <entry>Sequential Character (terminal) File Manager</entry> | |
57 </row> | |
58 <row> | |
1011 | 59 <entry>PipeMan</entry> |
60 <entry>Pipe File Manager</entry> | |
146 | 61 </row> |
62 <row> | |
63 <entry>Piper</entry> | |
1011 | 64 <entry>Pipe Driver</entry> |
146 | 65 </row> |
66 <row> | |
67 <entry>Pipe</entry> | |
1011 | 68 <entry>Pipe Device Descriptor</entry> |
69 </row> | |
70 <row> | |
71 <entry>CC3IO</entry> | |
72 <entry>CoCo 3 Keyboard/Video Device Driver</entry> | |
73 </row> | |
74 <row> | |
75 <entry>WindInt</entry> | |
76 <entry>CoCo 3 Graphics Co-Module</entry> | |
146 | 77 </row> |
78 <row> | |
1011 | 79 <entry>VDGInt</entry> |
80 <entry>CoCo 2 Compatible Graphics Co-Module</entry> | |
81 </row> | |
82 <row> | |
83 <entry>Term</entry> | |
84 <entry>Terminal Device Descriptor</entry> | |
146 | 85 </row> |
86 <row> | |
1011 | 87 <entry>CC3Disk</entry> |
88 <entry>CoCo 3 Disk Driver</entry> | |
89 </row> | |
90 <row> | |
91 <entry>DD, D0, D1</entry> | |
92 <entry>Disk Device Descriptors</entry> | |
93 </row> | |
94 <row> | |
95 <entry>Printer</entry> | |
146 | 96 <entry>Printer Device Driver</entry> |
97 </row> | |
98 <row> | |
1011 | 99 <entry>p</entry> |
146 | 100 <entry>Printer Device Descriptor</entry> |
101 </row> | |
102 <row> | |
1011 | 103 <entry>Clock</entry> |
146 | 104 <entry>Real-Time Clock Module</entry> |
105 </row> | |
106 <row> | |
1500 | 107 <entry>Clock2</entry> |
108 <entry>Second Part of Real-Time Clock Module</entry> | |
109 </row> | |
110 <row> | |
111 <entry>SysGo</entry> | |
146 | 112 <entry>System Startup Process</entry> |
113 </row> | |
114 </tbody> | |
115 </tgroup> | |
116 </informaltable> | |
117 | |
118 <para> | |
119 Users may create new bootstrap files which may include additional | |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
120 modules (see <command>OS9Gen</command> command). Any module loaded as part of the |
146 | 121 bootstrap cannot be unlinked and is stored in memory with a minimum |
122 of fragmentation. It may be advantageous to include in the OS9Boot | |
123 file any module used constantly during normal system operation. | |
124 This can be done with the OS9GEN command. | |
125 </para> | |
126 </section> | |
127 | |
1093 | 128 <section id="sec6.2"> |
146 | 129 <title>The SYS Directory</title> |
130 | |
131 <para> | |
1500 | 132 The directory <filename>/d0/SYS</filename> contains several important files: |
146 | 133 </para> |
134 <informaltable frame="none"> | |
135 <tgroup cols="2"> | |
646 | 136 <colspec colwidth="1in"/> |
137 <colspec colwidth="4in"/> | |
146 | 138 <tbody> |
139 <row> | |
140 <entry>password</entry> | |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
141 <entry>the system password file (see <command>login</command> command)</entry> |
146 | 142 </row> |
143 <row> | |
144 <entry>errmsg</entry> | |
1011 | 145 <entry>the error message file</entry> |
146 | 146 </row> |
1500 | 147 <row> |
148 <entry>helpmsg</entry> | |
149 <entry>the help database file</entry> | |
150 </row> | |
146 | 151 </tbody> |
152 </tgroup> | |
153 </informaltable> | |
154 <para> | |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
155 These files (and the <filename class="directory">SYS</filename> directory itself) are not absolutely |
1500 | 156 required to boot NitrOS-9, they are needed if <command>login</command>, <command>tsmon</command>, or |
157 <command>help</command> will be used. Users may add other system-wide files of | |
146 | 158 similar nature if desired. |
159 </para> | |
160 </section> | |
161 | |
1093 | 162 <section id="sec6.3"> |
146 | 163 <title>The Startup File</title> |
164 | |
165 <para> | |
1500 | 166 The file <filename>startup</filename> in the root directory is a shell procedure file which |
146 | 167 is automatically processed immediately after system startup. The |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
168 user may include in <filename>startup</filename> any legal shell command line. Often |
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
169 this will include <command>setime</command> to start the system clock. If this file |
146 | 170 is not present the system will still start correctly but the user |
171 must run the SETIME command manually. | |
172 </para> | |
173 </section> | |
174 | |
1093 | 175 <section id="sec6.4"> |
146 | 176 <title>The CMDS Directory</title> |
177 | |
178 <para> | |
1500 | 179 The directory <filename class="directory">CMDS</filename> is the system-wide command object code |
146 | 180 directory, which is normally shared by all users as their working |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
181 execution directory. If <command>shell</command> is not part of the |
1500 | 182 <filename>OS9Boot</filename> file (and it shouldn't be in a Level 2 system), it must be present in this directory. The system |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
183 startup process "sysgo" makes <filename class="directory">CMDS</filename> the initial execution directory. |
146 | 184 </para> |
185 </section> | |
186 | |
1093 | 187 <section id="sec6.5"> |
146 | 188 <title>The DEFS Directory</title> |
189 | |
190 <para> | |
1500 | 191 The directory <filename class="directory">DEFS</filename> is a directory that contains assembly |
146 | 192 language source code files which contain common system-wide symbolic |
193 definitions, and are normally included in assembly language programs | |
1500 | 194 by means of the NitrOS-9 Assembler "use" directive. The presence and |
146 | 195 use of this directory is optional, but highly recommended for any |
196 system used for assembly language programs. The files commonly | |
197 contained in this directory are: | |
198 </para> | |
199 <informaltable frame="none"> | |
200 <tgroup cols="2"> | |
646 | 201 <colspec colwidth="1in"/> |
202 <colspec colwidth="4in"/> | |
146 | 203 <tbody> |
204 <row> | |
205 <entry>OS9Defs</entry> | |
206 <entry>main system-wide definition file</entry> | |
207 </row> | |
208 <row> | |
209 <entry>RBFDefs</entry> | |
210 <entry>RBF file manager definition file</entry> | |
211 </row> | |
212 <row> | |
213 <entry>SCFDefs</entry> | |
214 <entry>SCF file manager definition file</entry> | |
215 </row> | |
216 <row> | |
217 <entry>Systype</entry> | |
218 <entry>System types definition file</entry> | |
219 </row> | |
220 </tbody> | |
221 </tgroup> | |
222 </informaltable> | |
223 | |
224 </section> | |
225 | |
1093 | 226 <section id="sec6.6"> |
146 | 227 <title>Changing System Disks</title> |
228 | |
229 <para> | |
230 The system disk is not usually removed while the system is running, especially | |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
231 on multiuser systems. If it is, the <command>chx</command> and |
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
232 <command>chd</command> (if the working data directory was on the system disk) |
146 | 233 commands should be executed to reset the working directory pointers |
234 because the directories may be at different addresses on the new | |
235 disk, for example: | |
236 </para> | |
237 | |
238 <screen> | |
239 chx /d0/cmds | |
240 chd /d0 | |
241 </screen> | |
242 | |
243 <para> | |
244 In general, it is unwise to remove a disk and replace it with | |
245 another if any paths are open to files resident on the disk. It is | |
246 <emphasis>dangerous</emphasis> to exchange <emphasis>any</emphasis> | |
247 disk if any files on it are open in WRITE or UPDATE modes. | |
248 </para> | |
249 | |
250 | |
251 </section> | |
252 | |
1093 | 253 <section id="sec6.7"> |
146 | 254 <title>Making New System Disks</title> |
255 | |
256 <para> | |
257 To make a system disk, the following steps must be performed: | |
258 | |
259 <orderedlist numeration="arabic"> | |
260 <listitem><para> | |
261 The new disk must be formatted. | |
262 </para></listitem> | |
263 | |
264 <listitem><para> | |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
265 The <filename>OS9Boot</filename> file must be created and linked by the <command>OS9Gen</command> or |
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
266 <command>Cobbler</command> commands. |
146 | 267 </para></listitem> |
268 | |
269 <listitem><para> | |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
270 The <filename>startup</filename> file must be created or copied. |
146 | 271 </para></listitem> |
272 | |
273 <listitem><para> | |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
274 The <filename class="directory">CMDS</filename> and |
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
275 <filename class="directory">SYS</filename> directories and the files they contain must be |
146 | 276 copied. |
277 </para></listitem> | |
1500 | 278 |
279 <listitem><para> | |
280 For Level 2, the <filename>sysgo</filename> file in the root directory must be | |
281 copied. | |
282 </para></listitem> | |
146 | 283 </orderedlist> |
284 | |
1500 | 285 Steps 2 through 5 may be performed manually, or automatically by any |
146 | 286 of the following methods: |
287 <orderedlist numeration="arabic"> | |
288 <listitem><para> | |
289 By a shell procedure file created by the user. | |
290 </para></listitem> | |
291 | |
292 <listitem><para> | |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
293 By a shell procedure file generated by the <command>dsave</command> command |
146 | 294 </para></listitem> |
295 | |
296 <listitem><para> | |
1053
b5ff125a1d60
Since this book was only typeset in fixed width, single-font, they used
roug
parents:
1011
diff
changeset
|
297 By the <command>backup</command> command |
146 | 298 </para></listitem> |
299 </orderedlist> | |
300 </para> | |
301 </section> | |
302 </chapter> |