.4 Berkeley Software Distribution
June, 1993
This volume contains documents which supplement the manual pages in The UNIXProgrammer's Reference Manual for the FreeBSD system as distributed by the FreeBSD Project. Documents ``(encumbered)'' are not distributed for legal reasons.
Dennis Ritchie and Ken Thompson's original paper about UNIX, reprinted from Communications of the ACM. (encumbered)
- Unix Implementation PSD:2
Ken Thompson's description of the implementation of the Version 7 kernel and file system. (encumbered)
- The Unix I/O System PSD:3
Dennis Ritchie's overview of the I/O System of Version 7; still helpful for those writing device drivers. (encumbered)
- Unix Programming - Second Edition PSD:4
Describes the programming interface to the UNIX version 7 operating system and the standard I/O library. Should be supplemented by Kernighan and Pike, ``The UNIX Programming Environment'', Prentice-Hall, 1984 and especially by the Programmer Reference Manual section 2 (system calls) and 3 (library routines). (encumbered)
- Berkeley Software Architecture Manual (4.4 Edition) PSD:5
A concise and terse description of the system call interface provided in Berkeley Unix, as revised for 4.4BSD. This will never be a best seller.
Official statement of the syntax of C. Should be supplemented by ``The C Programming Language,'' B.W. Kernighan and D.M. Ritchie, Prentice-Hall, 1978, that contains a tutorial introduction and many examples. (encumbered)
An implementation of this language popular for learning to program. (Not provided in FreeBSD.)
- A Portable Fortran 77 Compiler PSD:8
A revised version of the document which originally appeared in Volume 2b of the Bell Labs documentation; this version reflects the work done at Berkeley. (encumbered)
- Introduction to the f77 I/O Library PSD:9
A description of the revised input/output library for Fortran 77, reflecting work carried out at Berkeley. (Not provided in FreeBSD.)
How to debug programs using the source level gdb debugger (or how to debug programs without having to know much about machine language). (A TeXinfo version is provided separately.)
- A Tutorial Introduction to ADB PSD:11
How to debug programs using the assembly-language level adb debugger. (encumbered)
- Make - A Program for Maintaining Computer Programs PSD:12
Indispensable tool for making sure large programs are properly compiled with minimal effort.
- An Introduction to the Revision Control System PSD:13
RCS is a user-contributed tool for working together with other people without stepping on each other's toes. An alternative to sccs for controlling software changes.
- An Introduction to the Source Code Control System PSD:14
A useful introductory article for those users with installations licensed for SCCS. (encumbered)
- YACC: Yet Another Compiler-Compiler PSD:15
Converts a BNF specification of a language and semantic actions written in C into a compiler for that language. (encumbered)
- LEX - A Lexical Analyzer Generator PSD:16
Creates a recognizer for a set of regular expressions: each regular expression can be followed by arbitrary C code to be executed upon finding the regular expression. (encumbered)
- The M4 Macro Processor PSD:17
M4 is a macro processor useful in its own right and as a front-end for C, Ratfor, and Cobol.
- gprof: a Call Graph Execution Profiler PSD:18
A program to show the call graph and execution time of a program. Indispensable aid for improving the running time of almost everything.
Describes the curses package, an aid for writing screen-oriented, terminal-independent programs.
How to write programs that use the Interprocess Communication Facilities of 4.4BSD.
- An Advanced 4.4BSD Interprocess Communication Tutorial PSD:21
The reference document (with some examples) for the Interprocess Communication Facilities of 4.4BSD.
- RPCGEN Programming Guide PSD:22
Manual for the ONC RPC stub-generating program, provided by Sun Microsystems.
- Remote Procedure Call Programming Guide PSD:23
A tutorial introduction to programming the ONC RPC system, provided by Sun Microsystems.
- External Data Representation: Sun Technical Notes PSD:24
Technical details about the design of the XDR component of ONC RPC, provided by Sun Microsystems.
- External Data Representation Standard: Protocol Specification PSD:25
The Internet RFC specifying ONC XDR, provided by Sun Microsystems.
- Remote Procedure Calls: Protocol Specification PSD:26
The Internet RFC specifying ONC RPC, RFC 1050, as provided by Sun Microsystems.
- Network File System: Version 2 Protocol Specification PSD:27
The Internet RFC specifying NFS, as provided by Sun Microsystems. Note that the NFS-compatible filesystem itself, while compliant with this specification, was not provided by Sun.
- CVS II: Parallelizing Software Development PSD:28
CVS (Concurrent Versions System) is a front end to the RCS revision control system which extends the notion of revision control from a collection of files in a single directory to a hierarchical collection of directories each containing revision controlled files.