<< >> ^

SFT3001

UNIX system call programming

J Boutland

6 points
* 3 hours per week
* Second semester
* Caulfield
* Prerequisites: SFT1102 or SFT2121
* Prohibitions: CFR3111, RDT2141

Objectives At the completion of this subject students should have some understanding of the design and implementation of the UNIX operating system; be proficient in using the system call interface provided by the UNIX kernel; and be able to write concurrent cooperating programs in a multi-user environment.

Synopsis Introduction: the UNIX philosophy of simplicity; the broad design of the UNIX system. Basic concepts: the file; directories and pathnames; ownerships and permissions; processes; inter-process communication; system calls. The file in detail: UNIX file access primitives. The file in context: files in a multi-user environment; files with multiple names; obtaining file information; directories, file systems and special files. Directories: the implementation of a directory; programming with directories; UNIX file systems; UNIX special files. The process: creating processes; synchronising processes; process attributes; example of a command processor. Interprocess communications using the system V features: recording locking; system V IPC facilities; semaphores; message queues, shared memory. The terminal: changing terminal characteristics.

Assessment Examinations: 40%
* Assignment: 40%
* Tutorial papers: 20%

Recommended texts

Haviland K and Salama B UNIX system programming Addison-Wesley, 1988

Stevens W R Advanced programming in the UNIX environment Addison-Wesley, 1993


<< >> ^
Handbook Contents | Faculty Handbooks | Monash University
Published by Monash University, Clayton, Victoria 3168
Copyright © Monash University 1996 - All Rights Reserved - Caution
Authorised by the Academic Registrar December 1996