forked from RetroBSD/2.11BSD
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
486 lines (371 loc) · 18.2 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
This release incorporates all fixes and changes made since the
release of 2.10.1BSD in January 1989 as well as several missing
pieces of 4.3BSD (the namei cache, tmscp driver, long filenames,
etc.)
Bug reports, technical questions:
Report bugs using the standard sendbug format (see bugfiler(1))
WITH AN INDEX LINE OF "2.11BSD".
General questions can be directed to Steven Schultz at
[email protected]. At this time, contact by phone is not
available due to a high degree of travel. If you're really desperate,
print out a hardcopy example of the problem, and carefully mark your
place with a picture of your favorite president, preferably a large
denomination. Send it to me.
Bug fixes will be posted to comp.bugs.2bsd.
Archives may be requested from Steven Schultz by electronic mail.
For an explanation of how unsupported this release is, read the
the remainder of this and the "changes" document, and keep
in mind that this activity is not what pays the mortgage each month.
Credit where it's due:
Paul Taylor of SUNY Oswego for volunteering to put 2.11BSD on
his 11/73's back when it was known as 2.10.2SMS and fighting the
beta test problems, proofreading and critiqueing the documentation.
Terry Kennedy of St. Peter's College for final testing on a 11/70 and
for putting together an 11/73 for me. Bob Karlicek of AT&T for
loaning me his 11/73 (on the basis of an Internet developed
acquaintance) to develop the TMSCP driver and related standalone
support.
Steven Schultz [email protected]
Paul Taylor [email protected]
Terry Kennedy [email protected]
Bob Karlicek [email protected]
In general:
- The system hasn't been fit onto a non-separate I&D or machine
without a floating point processor in a long time. Lots of overlay
schemes need to be worked out; the floating point simulator in
the kernel hasn't been tested; sendmail won't run on a non-separate
machine, so bin/mail and ucb/Mail have to auto-configure not to
use sendmail; csh is overlaid now even on a separate I&D machine,
/lib/cpp is pushing the limit to handle all the #define'ing that
is required to compile the kernel...
It is not anticipated the split I&D restriction will ever be lifted.
The historical trend is for systems and programs to increase in
size, not decrease.
Kernel:
- Profiling hasn't been looked at in years. It won't work as it is
because the supervisor mode has been allocated to the networking code.
- The networking is very stable. The DEQNA, DEUNA, DELUA, Interlan,
3Com, PRONET, ACC LH/DH-11 drivers are known to work; others will
require some work. Diffs are provided in /sys/OTHERS for the
VAX Excelan EXOS 204 driver. The XNS code is ported, but has
to my knowledge never been compiled or tested. The residual PUP
support has been removed (as it was in 4.3BSD). SL/IP works but
can hang and not restart when you run out of CLISTs. It would
probably be a good idea to increase CLISTs to the maximum when
running SL/IP.
The DEQNA driver is a fresh port from 4.3BSD and is more stable
and much less susceptible to hanging than the old version.
Don't even THINK of using TRAILERS on *ANY* of the machines in your
LAN. In many cases the trailer code has been ifdef'd/commented out
from 2.11BSD drivers, in other cases the trailer code has simply
been ripped out. In any case, the current drivers drop trailer
packets and increment the input packet error count.
- The rtp call is wrong, any superuser call to turn off rtp will
turn it off, even if it's not the process itself requesting to
have its special status revoked. The whole 'rtp' call should
probably go away. As far as i know it has never been tested with
the present kernel and probably doesn't work.
- There should be some way to monitor which overlays you're
switching between to aid in determining the best overlay scheme
for your kernel.
- 2.10.X has not been made to run on the PRO series machines. See
sys/OTHERS/PRO for more details and some helpful diffs. The
OTHERS directory is quite useful, as it contains many other
versions of various drivers and such things.
- The directory /sys/vaxif contains the source for the VAX networking
drivers. This is an excellent reference for adding new drivers and
fixing current ones.
Applications:
In some of the major source subdirectories you'll see, variously,
subdirectories named OLD and PORT. The OLD directories contain
old 2.9BSD versions of software which were kept around for
porting purposes. The PORT directories contain 4.3BSD code that
we didn't have time to port, but felt should be ported eventually.
Due to the amount of software ported from 4.3BSD (and the Internet)
the number of PORT directories has been cut down in order to fit
the distribution on two 1600bpi tapes. Many of the sources not included
are available from INTERNET archive sites, others will have to be
acquired from a friendly 4.3BSD site.
There are only four OLD directories present in the system:
/usr/include/OLD, /usr/src/include/OLD (two .h files for support of
'ps'), /sys/pdpstand/OLD (unused standalone programs) and
/usr/src/new/OLD where the 2.9BSD remnants are kept.
- User level gprof profiling has not been implemented. It should
be doable, just hasn't been time to do it. Regular profiling
seems to be working fine however.
- Lint hasn't been ported yet; the old version is in an unknown
state. (it doesn't work)
- Ucb/sysline compiles but doesn't run. not a big loss really
unless you have a 25 line terminal.
- Ucb/systat hasn't been ported. but should be pretty easy EXCEPT
for the '-vmstat' display, much of the information there is simply
not applicable.
- The acucntrl program in the usr.bin/uucp directory doesn't work.
It sets flags properly in the kernel, but the tty drivers don't
pay any attention to them. See /sys/OTHERS/acucntrl for a fix
and comments. The temptation was to simply adopt the 4.3BSD
soft-carrier mechanism and modify autoconfig to pass flags to
the driver. For now the old method has been left in place.
- The PDP-11 lisp hasn't been converted over to the new system
calling protocol; it's a fairly straightforward, mechanical
process, though. You can find it in /usr/src/new/OLD/lisp11.tar.Z
- Most of the applications under /usr/src/new have been tested
and work properly. However, a large number of the 4.3BSD new
directory remains to be ported ...
- Only some of the games have been tested. Most compile, but ...
Man pages:
The 4.3BSD-tahoe manual page system remains inplace from 2.10.1BSD.
Manual page source is generally contained under /usr/src/man. Only
preformatted manual pages are stored under /usr/man. The script
/usr/man/manroff is used to help format manual pages. Man(1) has been
modified accordingly. I'm not happy with this setup, it broke a
symmetry i liked, but ...
Because the 14 character limit on file name lengths has been lifted
there are no manual page files whose names required truncation.
The man program will automatically truncate any names over MAXNAMLEN-2, but
since MAXNAMLEN is now 63 this should never be a problem unless manual
page filename lengths take on the attribute of a novella.
The following manual pages are NOT in 2.10BSD but ARE in 4.3BSD:
dbx.1 gprof.1 symorder.1 vlp.1
fp.1 liszt.1 systat.1
ad.4 dn.4 kg.4 uda.4
autoconf.4 drum.4 mt.4 up.4
crl.4 ex.4 np.4 ut.4
ct.4 fl.4 pcl.4 uu.4
ddn.4 hdh.4 ps.4 va.4
dmf.4 ik.4 vp.4 dmz.4
ix.4 tu.4
stab.5
config.8 fasthalt.8 restore.8
The following manual pages are NOT in 4.3BSD but ARE in 2.10BSD:
mkdep.1 nslookup.1
fetchi.2 gldav.2 nostk.2 rtp.2
fperr.2 lock.2 phys.2 ucall.2
l3tol.3 loadav.3 strcasecmp(3)
ldfps.3 ltol3.3 strncasecmp(3)
(since block numbers of files are no longer 3 bytes long, the l3tol and ltol3
routines are historical dregs)
br.4 ram.4 rp.4 xp.4
dr.4 rk.4 si.4
dvhp.4 rl.4 sri.4
ra.4 rm.4 swap.4
dtab.5 stack.5 tzfile.5
bj.6 ttt.6 warp.6 words.6
moo.6
hostname.7
autoconfig.8 restor.8
The following manual pages DIFFER between 2.10BSD and 4.3BSD:
adb.1 f77.1 man.1 px.1
nm.1 pxp.1 as.1 ld.1
pi.1 pxref.1 cc.1 lisp.1
pix.1 make.1 ps.1
adjtime.2 ptrace.2 sigpause.2 write.2
getitimer.2 read.2 sigreturn.2
getrusage.2 setitimer.2 sigsetmask.2
profil.2 sigblock.2 sigvec.2
(differences in the sig* man pages consist of substituting 'long' for 'int')
bstring.3 gethostbyname.3 resolver.3 usleep.3
compat-sys5.3 inet.3 setjmp.3 vlimit.3
ctime.3 mktemp.3 signal.3 vtimes.3
execl.3 printf.3 string.3
rand.3 ualarm.3
acc.4 dz.4 inet.4f null.4
arp.4p ec.4 intro.4 pty.4
bk.4 en.4 intro.4n qe.4
cons.4 hk.4 lo.4 rx.4
css.4 hp.4 lp.4 tb.4
de.4 ht.4 mem.4 tm.4
dh.4 hy.4 mtio.4 ts.4
dhu.4 il.4 ns.4f tty.4
dmc.4 imp.4 nsip.4 vv.4
tmscp.4
a.out.5 core.5 dump.5 resolver.5
fs.5
bcd.6 chess.6
mailaddr.7
bad144.8 dump.8 icheck.8 quot.8
badsect.8 dumpdir.8 mkfs.8 reboot.8
clri.8 fastboot.8 named.8 rxformat.8
crash.8 fsck.8 ncheck.8 savecore.8
dcheck.8 halt.8 newfs.8
=======================================================================
The original README file as distributed with 2.10.1BSD
=======================================================================
Please see the file /ERRATA for distribution errata notices.
Bug reports, technical questions:
Please, if possible, report bugs using the standard sendbug format
(see bugfiler(1)) WITH AN INDEX LINE OF "2.10BSD" and e-mail it to
uunet!ucbvax!bugs or [email protected]. General questions
can be directed to Keith Bostic at one of the e-mail addresses below;
if that's not possible, he may be contacted at 415-642-4948. If
you're really desperate, print out a hardcopy example of the problem,
and carefully mark your place with a picture of your favorite
president, preferably in a large denomination. Send it to us. All
bug fixes will be posted to comp.bugs.2bsd; archives may be requested
from Keith Bostic by electronic mail. For a detailed explanation
of how unsupported this release is, read the kernel changes document.
Credit where it's due:
Cyrus Rahman, of Duke University, is responsible for much of the
work done on various applications for 2.10.1, as well as for making
us do select(2) and adjtime(2) correctly. Steven Schultz, of
Contel Federal Systems, did the original port of the supervisor
space networking, as well as much of the debugging.
Keith Bostic {uunet!bostic, [email protected]}
Casey Leedom {uunet!ucbvax!vangogh!casey, [email protected]}
Cyrus Rahman {[email protected]}
Steven Schultz {[email protected]}
In general:
- The system hasn't been fit onto a non-separate I&D or machine
without a floating point processor in a long time. Lots of overlay
schemes need to be worked out; the floating point simulator in
the kernel hasn't been tested; sendmail won't run on a non-separate
machine, so bin/mail and ucb/Mail have to auto-configure not to
use sendmail; -DNONSEP needs to be passed up and down the make
files (or better yet, the new environment inheritance feature of
make should be used to pull out the environment variable MACHDEFS
and SEPFLAG);
...
The reason this hasn't been done now is, as always, lack of
time.
Kernel:
- Profiling hasn't been looked at in well over a year. It
probably doesn't work.
- The networking is stable. The DEQNA, DEUNA, DELUA, Interlan
and 3Com drivers are known to work; the PRONET and others will
require some work. Diffs are provided in /sys/OTHERS for the
VAX Excelan EXOS 204 driver. TCP/IP is in place and working;
XNS has been ported, but will contain more bugs than the mainstream
networking. PUP hasn't even been looked at. SLIP works, but
can hang and not restart when you run out of CLISTs. DON'T EVEN
THINK OF USING TRAILERS on *ANY* of the machines in your LAN.
- The rtp call is wrong, any superuser call to turn off rtp will
turn it off, even if it's not the process itself requesting to
have its special status revoked. Probably need 3 defines:
#define RTP_ON 1 /* turn it on */
#define RTP_OFF 2 /* turn it off if I set it */
#define RTP_FORCE_OFF 3 /* turn off everyone's */
If rtp(2) gets RPT_FORCE_OFF, it should find the process and
turn off the stuff, if necessary; question is if rtpp is the
flag that everyone checks for the existence of a run-time
process.
- There should be some way to monitor which overlays you're
switching between to aid in determining the best overlay scheme
for your kernel. Alternatively, and more correctly, gprof
should be implemented for the kernel.
- The device number is not currently included in the buffer
hashing function, and probably should be.
- 2.10 has not been made to run on the PRO series machines. See
sys/OTHERS/PRO for more details and some helpful diffs. The
OTHERS directory is quite useful, as it contains many other
versions of various drivers and such things.
- A new directory has been added, /sys/vaxif, which contains the
source for the VAX networking drivers. This is an excellent
reference for adding new drivers and fixing current ones.
Applications:
In each of the major source subdirectories you'll see, variously,
subdirectories named OLD and PORT. The OLD directories contain
old 2.9BSD versions of software which were kept around for
porting purposes. The PORT directories contain 4.3BSD code that
we didn't have time to port, but felt should be ported eventually.
- User level gprof profiling has not been implemented. It should
be doable, we just haven't had time to do it. Regular profiling
seems to be working fine however.
- Lint hasn't been ported yet; the old version is in an unknown
state.
- Ucb/sysline compiles but doesn't run.
- Ucb/systat hasn't been ported, but should be pretty easy.
- The acucntrl program in the usr.bin/uucp directory doesn't work.
It sets flags properly in the kernel, but the tty drivers don't
pay any attention to them. See /sys/OTHERS/acucntrl for a fix
and our comments on it.
- The PDP-11 lisp hasn't been converted over to the new system
calling protocol; it's a fairly straightforward, mechanical
process, though. You can find it in new/PORT/lisp11.
- Most of the applications under /usr/src/new have been tested
and work properly. However, a large number of the 4.3BSD new
directory remains to be ported ...
- Only some of the games have been tested. Most compile, but ...
Man pages:
The new 4.3BSD-tahoe manual page system has been set up. Manual page
source is generally contained under /usr/src/man. Only preformatted
manual pages are stored under /usr/man. The script /usr/man/manroff is
used to help format manual pages. Man(1) has been modified accordingly
...
Because of the 14 character limit on file name lengths, the names of the
following manual pages have been changed:
Old name New name
-------- --------
getdtablesize(2) getdtabsize(2)
getdiskbyname(3) getdiskbynam(3)
gethostbyaddr(3) gethostbyadd(3)
gethostbyname(3) gethostbynam(3)
getprotobyname(3) getprotobyna(3)
getprotobynumber(3) getprotobynu(3)
getservbyname(3) getservbynam(3)
getservbyport(3) getservbypor(3)
inet_makeaddr(3) inet_makeadd(3)
miscellaneous(7) miscellaneou(7)
The man program will automatically truncate any names over MAXNAMLEN-2
(leaving room for the ".x" extension), so this should be transparent (at
least until we run into names which aren't unique within the first 12
characters ...
The following manual pages are NOT in 2.10BSD but ARE in 4.3BSD:
dbx.1 gprof.1 symorder.1 vlp.1
fp.1 liszt.1 systat.1
ad.4 dn.4 kg.4 uda.4
autoconf.4 drum.4 mt.4 up.4
crl.4 ex.4 np.4 ut.4
ct.4 fl.4 pcl.4 uu.4
ddn.4 hdh.4 ps.4 va.4
dmf.4 ik.4 tmscp.4 vp.4
dmz.4 ix.4 tu.4
stab.5
config.8 fasthalt.8 mklost+found.8 restore.8
The following manual pages are NOT in 4.3BSD but ARE in 2.10BSD:
mkdep.1 nslookup.1
fetchi.2 gldav.2 nostk.2 rtp.2
fperr.2 lock.2 phys.2 ucall.2
l3tol.3 loadav.3 strcasecmp(3)
ldfps.3 ltol3.3 strncasecmp(3)
br.4 ram.4 rp.4 xp.4
dr.4 rk.4 si.4
dvhp.4 rl.4 sri.4
ra.4 rm.4 swap.4
dtab.5 stack.5 tzfile.5
bj.6 ttt.6 warp.6 words.6
moo.6
hostname.7
autoconfig.8 mklost.8 restor.8
The following manual pages DIFFER between 2.10BSD and 4.3BSD:
adb.1 f77.1 man.1 px.1
ar.1 file.1 nm.1 pxp.1
as.1 ld.1 pi.1 pxref.1
cc.1 lisp.1 pix.1 ranlib.1
date.1 make.1 ps.1 w.1
adjtime.2 ptrace.2 sigpause.2 write.2
getitimer.2 read.2 sigreturn.2
getrusage.2 setitimer.2 sigsetmask.2
profil.2 sigblock.2 sigvec.2
bstring.3 gethostbyname.3 resolver.3 usleep.3
compat-sys5.3 inet.3 setjmp.3 vlimit.3
ctime.3 mktemp.3 signal.3 vtimes.3
execl.3 printf.3 string.3
getenv.3 rand.3 ualarm.3
acc.4 dz.4 inet.4f null.4
arp.4p ec.4 intro.4 pty.4
bk.4 en.4 intro.4n qe.4
cons.4 hk.4 lo.4 rx.4
css.4 hp.4 lp.4 tb.4
de.4 ht.4 mem.4 tm.4
dh.4 hy.4 mtio.4 ts.4
dhu.4 il.4 ns.4f tty.4
dmc.4 imp.4 nsip.4 vv.4
a.out.5 core.5 dump.5 resolver.5
ar.5 dir.5 fs.5
bcd.6 chess.6
mailaddr.7
bad144.8 dump.8 icheck.8 quot.8
badsect.8 dumpdir.8 mkfs.8 reboot.8
clri.8 fastboot.8 named.8 rxformat.8
crash.8 fsck.8 ncheck.8 savecore.8
dcheck.8 halt.8 newfs.8