did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780201702453

The Design and Implementation of the FreeBSD Operating System

by ;
  • ISBN13:

    9780201702453

  • ISBN10:

    0201702452

  • Edition: 1st
  • Format: Hardcover
  • Copyright: 2004-08-02
  • Publisher: Addison-Wesley Professional
  • View Upgraded Edition
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $79.99

Summary

FreeBSD - Comprehensive, up-to-date, and authoritative - truly the latest and greatest from the source!

Author Biography

Marshall Kirk McKusick writes books and articles, consults, and teaches classes on UNIX- and BSD-related subjects. While at the University of California at Berkeley, he implemented the 4.2BSD fast file system, and was the research computer scientist at the Berkeley Computer Systems Research Group (CSRG) overseeing the development and release of 4.3BSD and 4.4BSD. He has twice served as the president of the board of the Usenix Association.

George V. Neville-Neil works on network and operating system code for fun and profit and teaches programming. He also serves on the editorial board of Queue magazine and is a member of the Usenix Association, ACM, and IEEE.



Table of Contents

Preface
About the Authors
Overview
History and Goals
History of the UNIX System
BSD and Other Systems
The Transition of BSD to Open Source
The FreeBSD Development Model
References
Design Overview of FreeBSD
FreeBSD Facilities and the Kernel
Kernel Organization
Kernel Services
Process Management
Memory Management
I/O System
Devices
Filesystems
Network Filesystem
Terminals
Interprocess Communication
Network Communication
Network Implementation
System Operation
Exercises
References
Kernel Services
Kernel Organization
System Calls
Traps and Interrupts
Clock Interrupts
Memory-Management Services
Timing Services
User, Group, and Other Identifiers
Resource Services
System-Operation Services
Accounting
Exercises
References
Processes
Process Management
Introduction to Process Management
Process State
Context Switching
Thread Scheduling
Process Creation
Process Termination
Signals
Process Groups and Sessions
Jails
Process Debugging
Exercises
References
Memory Management
Terminology
Overview of the FreeBSD Virtual-Memory System
Kernel Memory Management
Per-Process Resources
Shared Memory
Creation of a New Process
Execution of a File
Process Manipulation of Its Address Space
Termination of a Process
The Pager Interface
Paging
Page Replacement
Portability
Exercises
References
I/O System
I/O System Overview
I/O Mapping from User to Device
Character Devices
Disk Devices
Descriptor Management and Services
The Virtual-Filesystem Interface
Filesystem-Independent Services
Stackable Filesystems
Exercises
References
Devices
Device Overview
The GEOM Layer
The CAM Layer
The ATA Layer
Device Configuration
Exercises
References
Local Filesystems
Hierarchical Filesystem Management
Structure of an Inode
Naming
Quotas
File Locking
Soft Updates
Filesystem Snapshots
The Local Filestore
The Berkeley Fast Filesystem
Exercises
References
The Network Filesystem
History and Overview
NFS Structure and Operation
Techniques for Improving Performance
Exercises
References
Terminal Handling
Terminal-Processing Modes
Line Disciplines
User Interface
The tty Structure
Process Groups, Sessions, and Terminal Control
C-lists
RS-232 and Modem Control
Terminal Operations
Other Line Disciplines
Exercises
References
Inter Process Communication
Interprocess Communication
Interprocess-Communication Model
Implementation Structure and Overview
Memory Management
Data Structures
Connection Setup
Data Transfer
Socket Shutdown
Local Interprocess-Communication
Exercises
References
Network Communication.
Table of Contents provided by Publisher. All Rights Reserved.

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Excerpts

This book follows the earlier authoritative and full-length descriptions of the design and implementation of the 4.3BSD and 4.4BSD versions of the UNIX system developed at the University of California at Berkeley. Since the final Berkeley release in 1994, several groups have continued development of BSD. This book details FreeBSD, the system with the largest set of developers and the most widely distributed releases. Although the FreeBSD distribution includes nearly 1000 utility programs in its base system and nearly 10,000 optional utilities in its ports collection, this book concentrates almost exclusively on the kernel. UNIX-like Systems UNIX-like systems include the traditional vendor systems such as Solaris and HP-UX; the Linux-based distributions such as Red Hat, Debian, Suse, and Slackware; and the BSD-based distributions such as FreeBSD, NetBSD, OpenBSD, and Darwin. They run on computers ranging from laptops to the largest supercomputers. They are the operating system of choice for most multiprocessor, graphics, and vector-processing systems, and are widely used for the original purpose of timesharing. The most common platform for providing network services (from FTP to WWW) on the Internet, they are collectively the most portable operating system ever dev eloped. This portability is due partly to their implementation language, C Kernighan & Ritchie, 1989 (which is itself a widely ported language), and partly to the elegant design of the system. Since its inception in 1969 Ritchie & Thompson, 1978, the UNIX system has developed in several divergent and rejoining streams. The original developers continued to advance the state of the art with their Ninth and Tenth Edition UNIX inside AT&T Bell Laboratories, and then their Plan 9 successor to UNIX. Meanwhile, AT&T licensed UNIX System V as a product before selling it to Novell. Novell passed the UNIX trademark to X/OPEN and sold the source code and distribution rights to Santa Cruz Operation (SCO). Both System V and Ninth Edition UNIX were strongly influenced by the Berkeley Software Distributions produced by the Computer Systems Research Group (CSRG) of the University of California at Berkeley. The Linux operating system, although developed independently of the other UNIX variants, implements the UNIX interface. Thus, applications developed to run on other UNIX-based platforms can be easily ported to run on Linux. Berkeley Software Distributions The distributions from Berkeley were the first UNIX-based systems to introduce many important features including the following: Demand-paged virtual-memory support Automatic configuration of the hardware and I/O system A fast and recoverable filesystem The socket-based interprocess-communication (IPC) primitives The reference implementation of TCP/IP The Berkeley releases found their way into the UNIX systems of many vendors and were used internally by the development groups of many other vendors. The implementation of the TCP/IP networking protocol suite in 4.2BSD and 4.3BSD, and the availability of those systems, played a key role in making the TCP/IP networking protocol suite a world standard. Even the non-UNIX vendors such as Microsoft have adopted the Berkeley socket design in their Winsock IPC interface. The BSD releases have also been a strong influence on the POSIX (IEEE Std 1003.1) operating-system interface standard, and on related standards. Several featuressuch as reliable signals, job control, multiple access groups per process, and the routines for directory operationshave been adapted from BSD for POSIX. Early BSD releases contained licensed UNIX code, thus requiring recipients to have an AT&T source license to be able to obtain and use BSD. In 1988, Berkeley separated its distribution into AT&T licensed and freely redistributable code. The freely redistributable code was licensed se

Rewards Program