2004 by Marc J. Rochkind. All rights reserved. Portions marked "Open Source" may be copied under license.

 

Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

Example Files from Advanced UNIX Programming, 2nd Edition


Detailed Description

Chap. 1 - Fundamental Concepts
Chap. 2 - Basic File I/O
Chap. 3 - Advanced File I/O
Chap. 4 - Terminal I/O
Chap. 5 - Processes and Threads
Chap. 6 - Basic Interprocess Communication
Chap. 7 - Advanced Interprocess Communication
Chap. 8 - Networking and Sockets
Chap. 9 - Signals and Timers

Restrictions on Redistribution/Use and Warranty
Download Example Files
How to Compile Example Files

Chap. 1
Sec. 1.4.2*  common/logf.c  Logging utility
Sec. 1.4.2*  common/logf.h  header for above
Sec. 1.4.2  common/ec.c  Error-checking support functions
Sec. 1.4.2  common/ec.h  header for above
Sec. 1.5.3  c1/suvreq.c  Asking the system what it has
Sec. 1.5.3  include/suvreq.h  Asking the system what it has (header)
Sec. 1.5.4, 2.16.2  common/options.c  Check _POSIX_SYNCHRONIZED_IO and _POSIX_ASYNCHRONOUS_IO
Sec. 1.5.4, 2.16.2  common/options.h  header for above
Sec. 1.6  include/defs.h  Common header file
Sec. 1.4  c1/errorhandling.c  Error handling examples
Sec. 1.4.1  c1/syserr.c  syserrmsg
Sec. 1.4.1  c1/syserr.h  header for above
Sec. 1.5*  c1/ckstdvers.c  Program to display POSIX and X/Open version info
Sec. 1.5*  c1/ckvers.c  Program to display POSIX and X/Open version info
Sec. 1.5.4*  c1/version.c  POSIX System Capabilities
Sec. 1.5.4  c1/opttest.c  Checking for an option.
Sec. 1.5.5  c1/sysconf.c  Using sysconf
Sec. 1.7.2  c1/time.c  timestart and timestop
Sec. 1.7.2  c1/timetst.c  Testing timestart and timestop
Chap. 2
Chap. 2  c2/x2.c  Miscellaneous examples for Chap. 2
Sec. 2.9, 2.10  c2/extio.c  writeall and readall
Sec. 2.9, 2.10  include/extio.h  writeall and readall (header)
Sec. 2.12.2  c2/bufio.c  Functions for User Buffering
Sec. 2.12.2  c2/bufio.h  header for above
Sec. 2.15*  c2/writev.c  writev test program
Sec. 2.16.2*  c2/syncio.c  Synchronized I/O test program
Sec. 2.17*  c2/trunc.c  ftruncate test program
Chap. 3
Chap. 3  c3/x3a.c  Miscellaneous examples for Chap. 3
Sec. 3.2.2  c3/inode.c  Display i-node
Sec. 3.2.3*  c2/getblksize.c  Get block size
Sec. 3.5, 3.6.5  c3/aupls.c  ls command
Sec. 3.5.1*  c3/slink.c  Symbolic-link test program (uses stat and lstat)
Sec. 3.6.4*  c3/bigdir.c  Long-pathname test program
Sec. 3.6.4  c3/cwd.c  getcwd
Sec. 3.9.8  c3/feed.c  feed (used with sio)
Sec. 3.9.8  c3/sio.c  sio (used with feed)
Chap. 4
Chap. 4  c4/x4.c  Miscellaneous examples for Chap. 4
Sec. 4.2.2  c4/setblock.c  setblock (turn blocking on or off)
Sec. 4.2.2  c4/setblock.h  header for above
Sec. 4.3.5  c4/pginfo.c  Display session- and process-group-related information
Sec. 4.5.10  c4/x4a.c  tc_setraw test program
Sec. 4.5.9, 4.5.10  c4/tc_setraw.c  Raw terminal I/O
Sec. 4.5.9, 4.5.10  c4/tc_setraw.h  header for above
Sec. 4.7  c4/auptty.c  tty command
Sec. 4.8  c4/scrapp.c  Full-screen application (ANSI/VT100)
Sec. 4.8  c4/scrappc.c  Full-screen application (Curses)
Sec. 4.9  c4/streamlist.c  Display STREAMS modules
Sec. 4.9  c4/streamlist.h  header for above
Sec. 4.10.1  c4/ptutil.c  Pseudo-Terminal Library
Sec. 4.10.1  c4/ptutil.h  header for above
Sec. 4.10.2  c4/record.c  Record and Playback Example
Chap. 5
Chap. 5  c5/x5a.c  Miscellaneous examples for Chap. 5
Sec. 5.2  c5/setenv.c  setenv, getenv, and unsetenv
Sec. 5.2  c5/setenv.h  header for above
Sec. 5.2  c5/x5.c  Environment examples
Sec. 5.4, 5.6, 5.10  c5/sh0.c  shells, version 1, 2, and 3
Sec. 5.4  c5/builtin.c  asg and set built-in commands (used in shells)
Sec. 5.4  c5/builtin.h  header for above
Sec. 5.8*  common/macrostr.c  Convert macro values to strings
Sec. 5.8*  common/macrostr.h  header for above
Sec. 5.8*  common/mkmacrostr.c  Convert macro values to strings - compiler
Sec. 5.8  c5/statuspr.c  Display exit status
Sec. 5.8  c5/statuspr.h  header for above
Sec. 5.8  c5/waitid.c  waitid example
Sec. 5.8  c5/waitpid.c  waitpid example
Sec. 5.10*  c5/fpe.c  Generates SIGFPE (used for testing shells)
Sec. 5.11  c5/uidgrp.c  Display real and effective user and group IDs
Sec. 5.15  c5/nice.c  nice command
Sec. 5.16  c5/limit.c  getrlimit and setrlimit example
Sec. 5.17*  common/pthreadstub.c  pthread stubs
Sec. 5.17*  c5/t0.c  Non-blocking input
Sec. 5.17*  c5/t1.c  Thread example
Sec. 5.17*  c5/t2-mtx.c  Thread example (background sorting; with mutexes)
Sec. 5.17*  c5/t2.c  Thread example (background sorting; no mutexes)
Sec. 5.17.1  c5/tx1.c  Thread example
Sec. 5.17.2  c5/tx2.c  Thread example (pthread_join)
Sec. 5.17.3  c5/tx3.c  Thread example (mutex)
Sec. 5.17.3  c5/tx4.c  Thread example (mutex)
Sec. 5.17.4  c5/tx5.c  Thread example (condition variable)
Sec. 5.17.5  c5/tx6.c  Thread example (cancellation)
Sec. 5.17.5  c5/tx7.c  Thread example (cleanup handler)
Sec. 5.18.2  c7/uem.c  Unified Event Manager prototype
Sec. 5.18.2  c7/uem.h  header for above
Sec. 5.18.2  c7/uemtst.c  Unified Event Manager test program
Chap. 6
Chap. 6  c6/x6.c  Miscellaneous examples for Chap. 6
Sec. 6.2, 9.2.3*  c6/pcsync.c  Synchronize processes with pipe
Sec. 6.2, 9.2.3*  c6/pcsync.h  header for above
Sec. 6.2, 9.2.3*  c6/pcsync_sig.c  Synchronize processes with signals
Sec. 6.2, 9.2.3*  c6/pcsync_sig.h  header for above
Sec. 6.2.3  c6/piperead.c  piperead (goes with pipewrite in x6.c)
Sec. 6.4  c6/sh3.c  real shell (version 4)
Sec. 6.5  c6/search0.c  editor front-end (unidirectional pipes)
Sec. 6.6  c6/search1.c  editor front-end (bidirectional pipe)
Chap. 7
Sec. 7.2.2  c7/smsg.h  Header for FIFO example
Sec. 7.2.2  c7/smsg_client.c  FIFO-based client
Sec. 7.2.2  c7/smsg_makefifoname.c  make_fifo_name
Sec. 7.2.2  c7/smsg_server.c  FIFO-based server
Sec. 7.3.2  c7/smi.h  Simple Messaging Interface
Sec. 7.3.2  c7/smsg_client_smi_a.c  SMI-based client
Sec. 7.3.2  c7/smsg_server_smi_a.c  SMI-based server
Sec. 7.3.2  c7/smsg_smi.h  Header for smsg test program
Sec. 7.3.3, 7.5.3, etc.  c7/smi_wrap_incl.h  Header to generate SMI wrappers
Sec. 7.3.3  c7/smi_fifo.c  SMI - FIFOs
Sec. 7.3.3  c7/smi_fifo.h  header for above
Sec. 7.3.3  c7/smi_fifo_wrap.c  SMI wrapper - FIFOs
Sec. 7.4*  c7/ipcobjs.c  Sys V IPC-object test program
Sec. 7.5.3  c7/smi_msg.c  SMI - System V messages
Sec. 7.5.3  c7/smi_msg.h  header for above
Sec. 7.5.3  c7/smi_msg_wrap.c  SMI wrapper - System V messages
Sec. 7.7.2  c7/smi_mq.c  SMI - POSIX messages
Sec. 7.7.2  c7/smi_mq.h  header for above
Sec. 7.7.2  c7/smi_mq_wrap.c  SMI wrapper - POSIX messages
Sec. 7.9.2, 7.10.1  c7/SimpleSem.h  Simple Semaphore Interface
Sec. 7.9.2, 7.10.1  c7/sstest.c  Simple Semaphore test program
Sec. 7.9.2  c7/SimpleSemSysV.c  Simple Semaphore Interface - System V implementation
Sec. 7.10.1  c7/SimpleSemPOSIX.c  Simple Semaphore Interface - POSIX implementation
Sec. 7.11.1  c7/f1.c  File locking (bad example)
Sec. 7.11.2  c7/f2.c  File locking (semaphore)
Sec. 7.11.3  c7/f3.c  File locking (lockf)
Sec. 7.11.5  c7/lockftest.c  lockf test program (mandatory locking)
Sec. 7.13.1  c7/shmex.c  Example using shared memory (bad example)
Sec. 7.13.2  c7/shmex2.c  Example using shared memory and semaphore (inefficient)
Sec. 7.13.2  c7/shmex3.c  Example using shared memory and two semaphores
Sec. 7.13.3  c7/smi_shm.c  SMI - System V shared memory
Sec. 7.13.3  c7/smi_shm.h  header for above
Sec. 7.13.3  c7/smi_shm_wrap.c  SMI wrapper - System V shared memory
Sec. 7.14.2  c7/smi_pshm.c  SMI - POSIX shared memory
Sec. 7.14.2  c7/smi_pshm.h  header for above
Sec. 7.14.2  c7/smi_pshm_wrap.c  SMI wrapper - POSIX shared memory
Sec. 7.15  c7/msg_time.c  IPC timing comparisons
Chap. 8
Sec. 8.1.1  c8/sktex.c  Socket example program
Sec. 8.1.3  c8/sktexm.c  Socket example program (multiple clients)
Sec. 8.1.4  c8/byteorder.c  Byte order example
Sec. 8.2.3  c8/sktcl.c  inet_addr example
Sec. 8.2.6  c8/adi.c  getaddrinfo test program
Sec. 8.3  c8/sktopt.c  Socket options example
Sec. 8.4.3*  c8/br.c  More-complete Web Browser
Sec. 8.4.3  c8/minibr.c  Mini Web Browser
Sec. 8.4.4*  c8/ws.c  More-complete Web Server
Sec. 8.4.4  c8/miniws.c  Mini Web Server
Sec. 8.4.5  c8/ssi.c  Simple Socket Interface
Sec. 8.4.5  c8/ssi.h  header for above
Sec. 8.5  c7/smi_skt.c  SMI - sockets
Sec. 8.5  c7/smi_skt.h  header for above
Sec. 8.5  c7/smi_skt_wrap.c  SMI wrapper - sockets
Sec. 8.6.2  c8/sktexdg.c  SOCK_DGRAM example program
Sec. 8.6.2  c8/sktexdgmult.c  SOCK_DGRAM example program (multiple clients)
Sec. 8.6.3  c8/sktexdgmultmsg.c  SOCK_DGRAM example program (multiple clients, recvmsg/sendmsg)
Sec. 8.7.1  c9/alarm_test.c  alarm example
Sec. 8.8  c8/ndb.c  Network database examples
Sec. 8.8.3*  c8/protoent.c  getprotoent example
Chap. 9
Sec. 9.1.1  c9/intro.c  Introductory signal example (catching)
Sec. 9.1.1  c9/intro2.c  Introductory signal example (ignoring)
Sec. 9.1.7  c9/sighandler.c  Signal-handler example
Sec. 9.1.8  c9/sigmin.c  Minimal defensive signal handling
Sec. 9.2.2  c9/sigminthr.c  Minimal defensive signal handling using sigwait (bad example)
Sec. 9.2.3  c9/prcssync.c  Process-synchronization examples
Sec. 9.5.1*  c9/ctx.c  swapcontext example
Sec. 9.5.1  c9/siginfo.c  RTS siginfo_t example
Sec. 9.5.5  c9/thrq.c  Queued-signals example using threads
Sec. 9.6  c9/jmp.c  longjmp example
Sec. 9.7.2  c9/slp-simple.c  sleep implementation using alarm (naive)
Sec. 9.7.2  c9/slp.c  sleep implementation using alarm
Sec. 9.7.4, 9.7.5  c9/tmr.c  Timer and clock examples


*Code does not appear in the book.


Files

file  adi.c
 getaddrinfo test program [Sec. 8.2.6]

file  alarm_test.c
 alarm example [Sec. 8.7.1]

file  aupls.c
 ls command [Sec. 3.5, 3.6.5]

file  auptty.c
 tty command [Sec. 4.7]

file  bigdir.c
 Long-pathname test program [Sec. 3.6.4 (not in book)].

file  br.c
 More-complete Web Browser [Sec. 8.4.3 (not in book)].

file  bufio.c
 Functions for User Buffering [Sec. 2.12.2].

file  bufio.h
 header for above [Sec. 2.12.2]

file  builtin.c
 asg and set built-in commands (used in shells) [Sec. 5.4]

file  builtin.h
 header for above [Sec. 5.4]

file  byteorder.c
 Byte order example [Sec. 8.1.4].

file  ckstdvers.c
 Program to display POSIX and X/Open version info [Sec. 1.5 (not in book)].

file  ckvers.c
 Program to display POSIX and X/Open version info [Sec. 1.5 (not in book)].

file  ctx.c
 swapcontext example [Sec. 9.5.1 (not in book)]

file  cwd.c
 getcwd [Sec. 3.6.4]

file  defs.h
 Common header file [Sec. 1.6].

file  ec.c
 Error-checking support functions [Sec. 1.4.2].

file  ec.h
 header for above [Sec. 1.4.2]

file  errorhandling.c
 Error handling examples [Sec. 1.4].

file  extio.c
 writeall and readall [Sec. 2.9, 2.10]

file  extio.h
 writeall and readall (header) [Sec. 2.9, 2.10]

file  f1.c
 File locking (bad example) [Sec. 7.11.1].

file  f2.c
 File locking (semaphore) [Sec. 7.11.2].

file  f3.c
 File locking (lockf) [Sec. 7.11.3].

file  feed.c
 feed (used with sio) [Sec. 3.9.8]

file  fpe.c
 Generates SIGFPE (used for testing shells) [Sec. 5.10 (not in book)].

file  getblksize.c
 Get block size [Sec. 3.2.3 (not in book)].

file  inode.c
 Display i-node [Sec. 3.2.2].

file  intro.c
 Introductory signal example (catching) [Sec. 9.1.1].

file  intro2.c
 Introductory signal example (ignoring) [Sec. 9.1.1].

file  ipcobjs.c
 Sys V IPC-object test program [Sec. 7.4 (not in book)].

file  jmp.c
 longjmp example [Sec. 9.6]

file  limit.c
 getrlimit and setrlimit example [Sec. 5.16]

file  lockftest.c
 lockf test program (mandatory locking) [Sec. 7.11.5]

file  logf.c
 Logging utility [Sec. 1.4.2 (not in book)].

file  logf.h
 header for above [Sec. 1.4.2 (not in book)]

file  macrostr.c
 Convert macro values to strings [Sec. 5.8 (not in book)].

file  macrostr.h
 header for above [Sec. 5.8 (not in book)]

file  minibr.c
 Mini Web Browser [Sec. 8.4.3].

file  miniws.c
 Mini Web Server [Sec. 8.4.4].

file  mkmacrostr.c
 Convert macro values to strings - compiler [Sec. 5.8 (not in book)].

file  msg_time.c
 IPC timing comparisons [Sec. 7.15].

file  ndb.c
 Network database examples [Sec. 8.8].

file  nice.c
 nice command [Sec. 5.15]

file  options.c
 Check _POSIX_SYNCHRONIZED_IO and _POSIX_ASYNCHRONOUS_IO [Sec. 1.5.4, 2.16.2].

file  options.h
 header for above [Sec. 1.5.4, 2.16.2]

file  opttest.c
 Checking for an option. [Sec. 1.5.4].

file  pcsync.c
 Synchronize processes with pipe [Sec. 6.2, 9.2.3 (not in book)].

file  pcsync.h
 header for above [Sec. 6.2, 9.2.3 (not in book)]

file  pcsync_sig.c
 Synchronize processes with signals [Sec. 6.2, 9.2.3 (not in book)].

file  pcsync_sig.h
 header for above [Sec. 6.2, 9.2.3 (not in book)]

file  pginfo.c
 Display session- and process-group-related information [Sec. 4.3.5].

file  piperead.c
 piperead (goes with pipewrite in x6.c) [Sec. 6.2.3]

file  prcssync.c
 Process-synchronization examples [Sec. 9.2.3].

file  protoent.c
 getprotoent example [Sec. 8.8.3 (not in book)]

file  pthreadstub.c
 pthread stubs [Sec. 5.17 (not in book)]

file  ptutil.c
 Pseudo-Terminal Library [Sec. 4.10.1].

file  ptutil.h
 header for above [Sec. 4.10.1]

file  record.c
 Record and Playback Example [Sec. 4.10.2].

file  scrapp.c
 Full-screen application (ANSI/VT100) [Sec. 4.8].

file  scrappc.c
 Full-screen application (Curses) [Sec. 4.8].

file  search0.c
 editor front-end (unidirectional pipes) [Sec. 6.5]

file  search1.c
 editor front-end (bidirectional pipe) [Sec. 6.6]

file  setblock.c
 setblock (turn blocking on or off) [Sec. 4.2.2]

file  setblock.h
 header for above [Sec. 4.2.2]

file  setenv.c
 setenv, getenv, and unsetenv [Sec. 5.2]

file  setenv.h
 header for above [Sec. 5.2]

file  sh0.c
 shells, version 1, 2, and 3 [Sec. 5.4, 5.6, 5.10]

file  sh3.c
 real shell (version 4) [Sec. 6.4]

file  shmex.c
 Example using shared memory (bad example) [Sec. 7.13.1].

file  shmex2.c
 Example using shared memory and semaphore (inefficient) [Sec. 7.13.2].

file  shmex3.c
 Example using shared memory and two semaphores [Sec. 7.13.2].

file  sighandler.c
 Signal-handler example [Sec. 9.1.7].

file  siginfo.c
 RTS siginfo_t example [Sec. 9.5.1].

file  sigmin.c
 Minimal defensive signal handling [Sec. 9.1.8].

file  sigminthr.c
 Minimal defensive signal handling using sigwait (bad example) [Sec. 9.2.2].

file  SimpleSem.h
 Simple Semaphore Interface [Sec. 7.9.2, 7.10.1].

file  SimpleSemPOSIX.c
 Simple Semaphore Interface - POSIX implementation [Sec. 7.10.1].

file  SimpleSemSysV.c
 Simple Semaphore Interface - System V implementation [Sec. 7.9.2].

file  sio.c
 sio (used with feed) [Sec. 3.9.8]

file  sktcl.c
 inet_addr example [Sec. 8.2.3]

file  sktex.c
 Socket example program [Sec. 8.1.1].

file  sktexdg.c
 SOCK_DGRAM example program [Sec. 8.6.2].

file  sktexdgmult.c
 SOCK_DGRAM example program (multiple clients) [Sec. 8.6.2].

file  sktexdgmultmsg.c
 SOCK_DGRAM example program (multiple clients, recvmsg/sendmsg) [Sec. 8.6.3].

file  sktexm.c
 Socket example program (multiple clients) [Sec. 8.1.3].

file  sktopt.c
 Socket options example [Sec. 8.3].

file  slink.c
 Symbolic-link test program (uses stat and lstat) [Sec. 3.5.1 (not in book)].

file  slp-simple.c
 sleep implementation using alarm (naive) [Sec. 9.7.2]

file  slp.c
 sleep implementation using alarm [Sec. 9.7.2]

file  smi.h
 Simple Messaging Interface [Sec. 7.3.2].

file  smi_fifo.c
 SMI - FIFOs [Sec. 7.3.3].

file  smi_fifo.h
 header for above [Sec. 7.3.3]

file  smi_fifo_wrap.c
 SMI wrapper - FIFOs [Sec. 7.3.3].

file  smi_mq.c
 SMI - POSIX messages [Sec. 7.7.2].

file  smi_mq.h
 header for above [Sec. 7.7.2]

file  smi_mq_wrap.c
 SMI wrapper - POSIX messages [Sec. 7.7.2].

file  smi_msg.c
 SMI - System V messages [Sec. 7.5.3].

file  smi_msg.h
 header for above [Sec. 7.5.3]

file  smi_msg_wrap.c
 SMI wrapper - System V messages [Sec. 7.5.3].

file  smi_pshm.c
 SMI - POSIX shared memory [Sec. 7.14.2].

file  smi_pshm.h
 header for above [Sec. 7.14.2]

file  smi_pshm_wrap.c
 SMI wrapper - POSIX shared memory [Sec. 7.14.2].

file  smi_shm.c
 SMI - System V shared memory [Sec. 7.13.3].

file  smi_shm.h
 header for above [Sec. 7.13.3]

file  smi_shm_wrap.c
 SMI wrapper - System V shared memory [Sec. 7.13.3].

file  smi_skt.c
 SMI - sockets [Sec. 8.5].

file  smi_skt.h
 header for above [Sec. 8.5]

file  smi_skt_wrap.c
 SMI wrapper - sockets [Sec. 8.5].

file  smi_wrap_incl.h
 Header to generate SMI wrappers [Sec. 7.3.3, 7.5.3, etc.].

file  smsg.h
 Header for FIFO example [Sec. 7.2.2].

file  smsg_client.c
 FIFO-based client [Sec. 7.2.2].

file  smsg_client_smi_a.c
 SMI-based client [Sec. 7.3.2].

file  smsg_makefifoname.c
 make_fifo_name [Sec. 7.2.2]

file  smsg_server.c
 FIFO-based server [Sec. 7.2.2].

file  smsg_server_smi_a.c
 SMI-based server [Sec. 7.3.2].

file  smsg_smi.h
 Header for smsg test program [Sec. 7.3.2].

file  ssi.c
 Simple Socket Interface [Sec. 8.4.5].

file  ssi.h
 header for above [Sec. 8.4.5]

file  sstest.c
 Simple Semaphore test program [Sec. 7.9.2, 7.10.1].

file  statuspr.c
 Display exit status [Sec. 5.8].

file  statuspr.h
 header for above [Sec. 5.8]

file  streamlist.c
 Display STREAMS modules [Sec. 4.9].

file  streamlist.h
 header for above [Sec. 4.9]

file  suvreq.c
 Asking the system what it has [Sec. 1.5.3].

file  suvreq.h
 Asking the system what it has (header) [Sec. 1.5.3].

file  syncio.c
 Synchronized I/O test program [Sec. 2.16.2 (not in book)].

file  sysconf.c
 Using sysconf [Sec. 1.5.5].

file  syserr.c
 syserrmsg [Sec. 1.4.1]

file  syserr.h
 header for above [Sec. 1.4.1]

file  t0.c
 Non-blocking input [Sec. 5.17 (not in book)].

file  t1.c
 Thread example [Sec. 5.17 (not in book)].

file  t2-mtx.c
 Thread example (background sorting; with mutexes) [Sec. 5.17 (not in book)].

file  t2.c
 Thread example (background sorting; no mutexes) [Sec. 5.17 (not in book)].

file  tc_setraw.c
 Raw terminal I/O [Sec. 4.5.9, 4.5.10].

file  tc_setraw.h
 header for above [Sec. 4.5.9, 4.5.10]

file  thrq.c
 Queued-signals example using threads [Sec. 9.5.5].

file  time.c
 timestart and timestop [Sec. 1.7.2]

file  timetst.c
 Testing timestart and timestop [Sec. 1.7.2].

file  tmr.c
 Timer and clock examples [Sec. 9.7.4, 9.7.5].

file  trunc.c
 ftruncate test program [Sec. 2.17 (not in book)]

file  tx1.c
 Thread example [Sec. 5.17.1].

file  tx2.c
 Thread example (pthread_join) [Sec. 5.17.2].

file  tx3.c
 Thread example (mutex) [Sec. 5.17.3].

file  tx4.c
 Thread example (mutex) [Sec. 5.17.3].

file  tx5.c
 Thread example (condition variable) [Sec. 5.17.4].

file  tx6.c
 Thread example (cancellation) [Sec. 5.17.5].

file  tx7.c
 Thread example (cleanup handler) [Sec. 5.17.5].

file  uem.c
 Unified Event Manager prototype [Sec. 5.18.2].

file  uem.h
 header for above [Sec. 5.18.2]

file  uemtst.c
 Unified Event Manager test program [Sec. 5.18.2].

file  uidgrp.c
 Display real and effective user and group IDs [Sec. 5.11].

file  version.c
 POSIX System Capabilities [Sec. 1.5.4 (not in book)].

file  waitid.c
 waitid example [Sec. 5.8]

file  waitpid.c
 waitpid example [Sec. 5.8]

file  writev.c
 writev test program [Sec. 2.15 (not in book)]

file  ws.c
 More-complete Web Server [Sec. 8.4.4 (not in book)].

file  x2.c
 Miscellaneous examples for Chap. 2 [Chap. 2].

file  x3a.c
 Miscellaneous examples for Chap. 3 [Chap. 3].

file  x4.c
 Miscellaneous examples for Chap. 4 [Chap. 4].

file  x4a.c
 tc_setraw test program [Sec. 4.5.10]

file  x5.c
 Environment examples [Sec. 5.2].

file  x5a.c
 Miscellaneous examples for Chap. 5 [Chap. 5].

file  x6.c
 Miscellaneous examples for Chap. 6 [Chap. 6].


Generated on Fri Apr 23 10:57:16 2004 for AUP2 Example Source by doxygen 1.3.1