|
|
1.1 root 1: .\" @(#)u5 6.1 (Berkeley) 5/22/86
2: .\"
3: .SH
4: V. UNIX READING LIST
5: .SH
6: General:
7: .LP
8: K. L. Thompson and D. M. Ritchie,
9: .IT The
10: .ul
11: .UC UNIX
12: .ul
13: Programmer's Manual,
14: Bell Laboratories, 1978 (PS2:3)\(dd
15: Lists commands,
16: system routines and interfaces, file formats,
17: and some of the maintenance procedures.
18: You can't live without this,
19: although you will probably only need to read section 1.
20: .LP
21: D. M. Ritchie and K. L. Thompson,
22: ``The
23: .UC UNIX
24: Time-sharing System,''
25: CACM, July 1974. (PS2:1)\(dd
26: .FS
27: \(dg These documents (previously in Volume 2 of the Bell Labs
28: Unix distribution) are provided among the "User Supplementary"
29: Documents for 4.3BSD, available from the Usenix Association.
30: .FE
31: .FS
32: \(dd These are among the "Programmer Supplementary" Documents for 4.3BSD.
33: PS1 is Volume 1, PS2 is Volume 2.
34: .FE
35: An overview of the system,
36: for people interested in operating systems.
37: Worth reading by anyone who programs.
38: Contains a remarkable number of one-sentence observations
39: on how to do things right.
40: .LP
41: The Bell System Technical Journal
42: (BSTJ)
43: Special Issue on
44: .UC UNIX ,
45: July/August, 1978,
46: contains many papers describing recent developments,
47: and some retrospective material.
48: .LP
49: The 2nd International Conference on Software Engineering
50: (October, 1976)
51: contains several
52: papers describing the use of the
53: Programmer's Workbench
54: .UC PWB ) (
55: version of
56: .UC UNIX .
57: .SH
58: Document Preparation:
59: .LP
60: B. W. Kernighan,
61: ``A Tutorial Introduction to the
62: .UC UNIX
63: Text Editor'' (USD:12)
64: and
65: ``Advanced Editing on
66: .UC UNIX ,''
67: (USD:13) Bell Laboratories, 1978.\(dg
68: Beginners need the introduction;
69: the advanced material will help you get the most
70: out of the editor.
71: .LP
72: M. E. Lesk,
73: ``Typing Documents on
74: .UC UNIX ,''
75: Bell Laboratories, 1978. (USD:20)\(dg
76: Describes the
77: .UL \-ms
78: macro package, which isolates the novice
79: from the vagaries of
80: .UL nroff
81: and
82: .UL troff ,
83: and takes care of most formatting situations.
84: If this specific package isn't available on your system,
85: something similar probably is.
86: The most likely alternative is the
87: .UC PWB/UNIX
88: macro package
89: .UL \-mm ;
90: see your local guru if you use
91: .UC PWB/UNIX .*
92: .FS
93: *The macro package -me is additionally available on Berkeley Unix Systems.
94: -mm is typically not available.
95: .FE
96: .LP
97: B. W. Kernighan and L. L. Cherry,
98: ``A System for Typesetting Mathematics,''
99: Bell Laboratories Computing Science Tech. Rep. 17. (USD:26)\(dg
100: .LP
101: M. E. Lesk,
102: ``Tbl \(em A Program to Format Tables,''
103: Bell Laboratories CSTR 49, 1976. (USD:28)\(dg
104: .LP
105: J. F. Ossanna, Jr.,
106: ``NROFF/TROFF User's Manual,''
107: Bell Laboratories CSTR 54, 1976. (USD:24)\(dg
108: .UL troff
109: is the basic formatter used by
110: .UL \-ms ,
111: .UL eqn
112: and
113: .UL tbl .
114: The reference manual is indispensable
115: if you are going to write or maintain these
116: or similar programs.
117: But start with:
118: .LP
119: B. W. Kernighan,
120: ``A TROFF Tutorial,''
121: Bell Laboratories, 1976. (USD:25)\(dg
122: An attempt to unravel the intricacies of
123: .UL troff .
124: .SH
125: Programming:
126: .LP
127: B. W. Kernighan and D. M. Ritchie,
128: .ul
129: The C Programming Language,
130: Prentice-Hall, 1978.
131: Contains a tutorial introduction,
132: complete discussions of all language features,
133: and the reference manual.
134: .LP
135: B. W. Kernighan and R. Pike,
136: .ul
137: The Unix Programming Environment,
138: Prentice-Hall, 1984.
139: Contains many examples of C programs which use the system
140: interfaces, and explanations of ``why''.
141: .LP
142: B. W. Kernighan and D. M. Ritchie,
143: .UC UNIX \& ``
144: Programming,''
145: Bell Laboratories, 1978. (PS2:3)\(dd
146: Describes how to interface with the system from C programs:
147: I/O calls, signals, processes.
148: .LP
149: S. R. Bourne,
150: ``An Introduction to the
151: .UC UNIX
152: Shell,''
153: Bell Laboratories, 1978. (USD:3)\(dg
154: An introduction and reference manual for the Version 7 shell.
155: Mandatory reading if you intend to make effective use
156: of the programming power
157: of this shell.
158: .LP
159: S. C. Johnson,
160: ``Yacc \(em Yet Another Compiler-Compiler,''
161: Bell Laboratories CSTR 32, 1978. (PS1:15)\(dd
162: .LP
163: M. E. Lesk,
164: ``Lex \(em A Lexical Analyzer Generator,''
165: Bell Laboratories CSTR 39, 1975. (PS1:16)\(dd
166: .LP
167: S. C. Johnson,
168: ``Lint, a C Program Checker,''
169: Bell Laboratories CSTR 65, 1977. (PS1:9)\(dd
170: .LP
171: S. I. Feldman,
172: ``MAKE \(em A Program for Maintaining Computer Programs,''
173: Bell Laboratories CSTR 57, 1977. (PS1:12)\(dd
174: .LP
175: J. F. Maranzano and S. R. Bourne,
176: ``A Tutorial Introduction to ADB,''
177: Bell Laboratories CSTR 62, 1977. (PS1:10)\(dd
178: An introduction to a powerful but complex debugging tool.
179: .LP
180: S. I. Feldman and P. J. Weinberger,
181: ``A Portable Fortran 77 Compiler,''
182: Bell Laboratories, 1978. (PS1:2)\(dd
183: A full Fortran 77 for
184: .UC UNIX
185: systems.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.