06CS62 - Unix Systems Programming |
PART – A |
UNIT 1 |
INTRODUCTION: UNIX and ANSI Standards: The ANSI C Standard, The
ANSI/ISO C++ Standards, Difference between ANSI C and C++, The
POSIX Standards, The POSIX.1 FIPS Standard, The X/Open Standards.
UNIX and POSIX APIs: The POSIX APIs, The UNIX and POSIX
Development Environment, API Common Characteristics. |
UNIT 2 |
UNIX FILES: File Types, The UNIX and POSIX File System, The UNIX
and POSIX File Attributes, Inodes in UNIX System V, Application Program
Interface to Files, UNIX Kernel Support for Files, Relationship of C Stream
Pointers and File Descriptors, Directory Files, Hard and Symbolic Links. |
UNIT 3 |
UNIX File APIs: General File APIs, File and Record Locking, Directory
File APIs, Device File APIs, FIFO File APIs, Symbolic Link File APIs,
General File Class, regfile Class for Regular Files, dirfile Class for Directory
Files, FIFO File Class, Device File Class, Symbolic Link File Class, File
Listing Program. |
UNIT 4 |
UNIX PROCESSES: The Environment of a UNIX Process: Introduction,
main function, Process Termination, Command-Line Arguments,
Environment List, Memory Layout of a C Program, Shared Libraries,
Memory Allocation, Environment Variables, setjmp and longjmp Functions,
getrlimit, setrlimit Functions, UNIX Kernel Support for Processes. |
PART – B |
UNIT 5 |
PROCESS CONTROL: Introduction, Process Identifiers, fork, vfork, exit,
wait, waitpid, waited, wait3, wait4 Functions, Race Conditions, exec
Functions, Changing User IDs and Group IDs, Interpreter Files, system
Function, Process Accounting, User Identification, Process Times.
Process Relationships: Introduction, Terminal Logins, Network Logins,
Process Groups, Sessions, Controlling Terminal, tcgetpgrp, tcsetpgrp, and
tcgetsid Functions, Job Control, Shell Execution of Programs, Orphaned
Process Groups. |
UNIT 6 |
SIGNALS AND DAEMON PROCESSES: Signals: The UNIX Kernel
Support for Signals, signal, Signal Mask, sigaction, The SIGCHLD Signal
and the waitpid Function, The sigsetjmp and siglongjmp Functions, Kill,
Alarm, Interval Timers, POSIX.lb Timers. Daemon Processes: Introduction,
Daemon Characteristics, Coding Rules, Error Logging, Single-instance
daemons; Daemon conventions; Client-Server Model. |
UNIT 7 |
INTERPROCESS COMMUNICATION: Introduction; Pipes, popen,
pclose Functions; Coprocesses; FIFOs; XSI IPC; Message Queues;
Semaphores. |
UNIT 8 |
NETWORK IPC: SOCKETS: Introduction; Socket Descriptors; Addressing; Connection establishment;
Data transfer; Socket options; Out-of-band data; Nonblocking and
asynchronous I/O. |
REFERENCE |
TEXT BOOKS: |
1. Unix System Programming Using C++ – Terrence Chan - Prentice
Hall India, 1999.
2. Stephen A. Rago: Advanced Programming in the UNIX
Environment – W.Richard Stevens, 2nd Edition, Pearson Education
/ PHI, 2005.
|
Reference Books |
1. Advanced Unix Programming – Marc J. Rochkind:, 2nd Edition,
Pearson Education, 2005.
2. The Design of the UNIX Operating System – Maurice.J.Bach:,
Pearson Education / PHI, 1987.
3. Unix Internals – Uresh Vahalia:, Pearson Education, 2001. |
|