Author: Syed Mansoor Sarwar, Robert M. Koretsky
Pub Date: 2016
Size: 52 Mb
UNIX: The Textbook, Third Edition provides a comprehensive introduction to the modern, twenty-first-century UNIX operating system. The book deploys PC-BSD and Solaris, representative systems of the major branches of the UNIX family, to illustrate the key concepts. It covers many topics not covered in older, more traditional textbook approaches, such as Python, UNIX System Programming from basics to socket-based network programming using the client-server paradigm, the Zettabyte File System (ZFS), and the highly developed X Windows-based KDE and Gnome GUI desktop environments.
The third edition has been fully updated and expanded, with extensive revisions throughout. It features a new tutorial chapter on the Python programming language and its use in UNIX, as well as a complete tutorial on the git command with Github. It includes four new chapters on UNIX system programming and the UNIX API, which describe the use of the UNIX system call interface for file processing, process management, signal handling, interprocess communication (using pipes, FIFOs, and sockets), extensive coverage of internetworking with UNIX TCP/IP using the client-server software, and considerations for the design and implementation of production-quality client-server software using iterative and concurrent servers. It also includes new chapters on UNIX system administration, ZFS, and container virtualization methodologies using iocage, Solaris Jails, and VirtualBox.
Utilizing the authors’ almost 65 years of practical teaching experience at the college level, this textbook presents well-thought-out sequencing of old and new topics, well-developed and timely lessons, a Github site containing all of the code in the book plus exercise solutions, and homework exercises/problems synchronized with the didactic sequencing of chapters in the book. With the exception of four chapters on system programming, the book can be used very successfully by a complete novice, as well as by an experienced UNIX system user, in both an informal and formal learning environment.
The book may be used in several computer science and information technology courses, including UNIX for beginners and advanced users, shell and Python scripting, UNIX system programming, UNIX network programming, and UNIX system administration. It may also be used as a companion to the undergraduate and graduate level courses on operating system concepts and principles.
Table of Contents
1: Overview of Operating Systems
2: A “Quick Start” into the UNIX Operating System
3: Editing Text Files
4: Files and File System Structure
5: File Security
6: Basic File Processing
7: Advanced File Processing
8: File Sharing
9: Redirection and Piping
11: Networking and Internetworking
12: Introductory Bourne Shell Programming
13: Advanced Bourne Shell Programming
14: Introductory C Shell Programming
15: Advanced C Shell Programming
17: UNIX Tools for Software Development
18: System Programming I: File System Management
19: System Programming II: Process Management and Signal Processing
20: System Programming III: Interprocess Communication
21: System Programming IV: Practical Considerations
22: UNIX X Window System GUI Basics
23: UNIX System Administration Fundamentals
24: ZFS Administration and Use
25: Virtualization Methodologies