








      UNIX Programmer's Supplementary Documents (PSD)

             4.4 Berkeley Software Distribution

                         June, 1993



     This  volume  contains  documents  which supplement the
manual pages in The UNIX(R)  Programmer's  Reference  Manual
for the 4.4BSD system as distributed by U.C. Berkeley.

Documents of Historical Interest

The Unix Time-Sharing System                           PSD:1

     Dennis  Ritchie  and Ken Thompson's original paper
     about UNIX, reprinted from Communications  of  the
     ACM.


Unix Implementation                                    PSD:2

     Ken  Thompson's  description of the implementation
     of the Version 7 kernel and file system.


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.


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'', Pren-
     tice-Hall, 1984 and especially by  the  Programmer
     Reference  Manual  section  2 (system calls) and 3
     (library routines).


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.










PSD Contents


Languages in common use

The C Programming Language - Reference Manual          PSD:6

     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.


Berkeley Pascal User's Manual                          PSD:7

     An implementation of  this  language  popular  for
     learning to program.


A Portable Fortran 77 Compiler                         PSD:8

     A revised version of the document which originally
     appeared in Volume 2b of the Bell Labs  documenta-
     tion;  this  version  reflects  the  work  done at
     Berkeley.


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.


Programming Tools

Debugging with GDB: The GNU Source-Level Debugger     PSD:10

     How to debug programs using the source  level  gdb
     debugger  (or how to debug programs without having
     to know much about machine language).


A Tutorial Introduction to ADB                        PSD:11

     How to debug programs using the  assembly-language
     level adb debugger.


Make - A Program for Maintaining Computer Programs    PSD:12

     Indispensable  tool for making sure large programs
     are properly compiled with minimal effort.












                                                PSD Contents


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.


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.


LEX - A Lexical Analyzer Generator                    PSD:16

     Creates a recognizer for a set of regular  expres-
     sions:  each regular expression can be followed by
     arbitrary C code to be executed upon  finding  the
     regular expression.


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 improv-
     ing the running time of almost everything.


Programming Libraries

Screen Updating and Cursor Movement Optimization      PSD:19

     Describes the curses package, an aid  for  writing
     screen-oriented, terminal-independent programs.


General Reference

An Introductory 4.4BSD Interprocess Communication TutoPSD:20










PSD Contents


     How  to  write  programs that use the Interprocess
     Communication Facilities of 4.4BSD.


An Advanced 4.4BSD Interprocess Communication TutorialPSD:21

     The reference document (with  some  examples)  for
     the   Interprocess   Communication  Facilities  of
     4.4BSD.



















































