ACCU Home page ACCU Conference Page
Search Contact us ACCU at Flickr ACCU at GitHib ACCU at Facebook ACCU at Linked-in ACCU at Twitter Skip Navigation

Search in Book Reviews

The ACCU passes on review copies of computer books to its members for them to review. The result is a large, high quality collection of book reviews by programmers, for programmers. Currently there are 1949 reviews in the database and more every month.
Search is a simple string search in either book title or book author. The full text search is a search of the text of the review.
    View all alphabetically
Title:
Unix System Programming
Author:
Keith Haviland, Dina Gray, Ben Salama
ISBN:
0 201 87758 9
Publisher:
Addison-Wesley
Pages:
350pp
Price:
£27-95
Reviewer:
Brian Bramer
Subject:
unix
Appeared in:
11-3
This book is aimed at programmers working in C writing applications for the Unix operating system.

Chapter one is a five-page review of the Unix file system, processes and what is meant by the term system call. The following three chapters discuss files and directories and their use, e.g.

open(), close(), read(), 
write()
, sequential and random access, ownership,
chmod()
, etc. plus introducing stdio.h and errno.h. The next four chapters discuss processes and IPC, e.g.
fork()
and
exec()
, signals, pipes, record locking, message passing, semaphores and shared memory. Chapter nine deals with terminal handling and chapter ten is a brief introduction to network programming, i.e. IP addresses, ports and the socket interface for connection oriented (TCP virtual circuit) and connectionless oriented (UDP datagram) models. Chapter 11 covers the C standard I/O library stdio.h in detail and chapter 12 miscellaneous routines. Each chapter has plenty of relevant examples programs with associated discussion.

A comprehensive book for programmers who need to call the facilities of the Unix kernel. More comprehensive in this area thanThe Unix Programming Environmentby Kernighan and Pike (which also covers shell commands and programming). Well worth considering for undergraduate courses where Unix is used in operating systems and networks modules (I must admit I now tend to use Java for much of this teaching - though verbose, the APIs are a lot easier to use than Unix system calls). The reader will need a working knowledge of basic UNIX commands, using the file system, an editor, the C compiler and implementing and debugging C programs. Recommended!