出版時(shí)間:2003-1 出版社:人民郵電出版社 作者:[美] 瓦哈蘭 頁(yè)數(shù):601 字?jǐn)?shù):836000
Tag標(biāo)簽:無(wú)
內(nèi)容概要
本書(shū)提供了最新和最全面的UNIX系統(tǒng)技術(shù)內(nèi)幕資料。全書(shū)討論了UNIX的開(kāi)發(fā)技術(shù)和原理,考察了現(xiàn)代UNIX系統(tǒng)的最新發(fā)展,比較分析了由最重要的UNIX系統(tǒng)和變體所提供的最新特性。本書(shū)涵蓋的內(nèi)容包括體現(xiàn)了20世紀(jì)90年代UNIX系統(tǒng)結(jié)構(gòu)特色的多項(xiàng)技術(shù):多線程內(nèi)核、多處理機(jī)和實(shí)時(shí)系統(tǒng),以及分布式文件系統(tǒng)。本書(shū)還討論了內(nèi)核的幾個(gè)重要組成部分,比較了它們?cè)趲追N不同UNIX變體中的設(shè)計(jì),論述了其間的諸多權(quán)衡考慮,并且介紹了已被廣泛采用的那些特性。 本書(shū)可作為大學(xué)計(jì)算機(jī)科學(xué)系高年級(jí)本科生和研究生的教材或參考書(shū)。本書(shū)也為專(zhuān)業(yè)UNIX程序員、系統(tǒng)管理員提供了極有價(jià)值的參考資料。
作者簡(jiǎn)介
Uresh Vahalia曾為幾種UNIX變體開(kāi)發(fā)過(guò)內(nèi)核中的子系統(tǒng)。他在許多大學(xué)、企業(yè)里,以及會(huì)議上講授過(guò)UNIX內(nèi)核技術(shù)。目前他正在為EMC公司開(kāi)發(fā)高性能的文件和視頻服務(wù)器。
書(shū)籍目錄
1 INTRODUCTION 1.1 Introduction 1.2 Th Mandate for Change 1.3 Looking Back, Looking Forward 1.4 The Scope of this Book 1.5 References2 THE PROCESS AND THE KERNEL 2.1 Introduction 2.2 Mode, Space, and Context 2.3 The Process Abstraction 2.4 Executing in Kernel Mode 2.5 Synchronization 2.6 Process Scheduling 2.7 Signals 2.8 New Processes and Programs 2.9 Summary 2.10 Exercises 2.11 References3 THREADS AND LIGHTWEIGHT PROCESSES 3.1 Introduction 3.2 Fundamental Abstractions 3.3 Lightweight Process Design--Issues to Consider 3.4 User-Level Threads Libraries 3.5 Scheduler Activations 3.6 Multithreading in Solarie and SVR4 3.7 Threads in Mach 3.8 Digital UNIX 3.9 Mach 3.0 Continuations 3.10 Summary 3.11 Exercises 3.12 References4 SIGNALS AND SESSION MANAGEMENT 4.1 Introduction 4.2 Signal Generation and Handling 4.3 Unreliable Signals 4.4 Reliable Signals 4.5 Signals in SVR4 4.6 Signals Implementation 4.7 Exceptions 4.8 Mach Exception Handling 4.9 Process Groups and Terminal Management 4.10 The SVR4 Sessions Architecture 4.11 Summary 4.12 Exercises 4.13 References5 PROCESS SCHEDULING 5.1 Introduction 5.2 Clock Interrupt Handling 5.3 Scheduler Goals 5.4 Traditional UNIX Scheduling 5.5 The SVR4 Scheduler 5.6 Solaris 2.x Scheduling Enhancements 5.7 Scheduling in Mach 5.8 The Digital UNIX Real-Time Scheduler 5.9 Other Scheduling Implementations 5.10 Summary 5.11 Exercises 5.12 References6 INTERPROCESS COMMUNICATIONS 6.1 Introduction 6.2 Universal IPC Facilities 6.3 System V IPC 6.4 Mach IPC 6.5 Messages 6.6 Ports 6.7 Message Passing 6.8 Port Operations 6.9 Extensibility 6.10 Mach 3.0 Enhancements 6.11 Discussion 6.12 Summary 6.13 Exercises 6.14 References7 SYNCHRONIZATION AND MULTIPROCESSING 7.1 Introduction 7.2 Synchronization in Traditional UNIX Kernels 7.3 Multiprocessor Systems 7.4 Multiprocessor Synchronization Issues 7.5 Semaphores 7.6 Spin Locks 7.7 Condition Variables 7.8 Resd-Writs Locks 7.9 Reference Counts 7.10 Other Considerations 7.11 Case Studies 7.12 Summary 7.13 Exercises 7.14 References8 FILE SYSTEM INTERFACE AND FRAMEWORK 8.1 Introduction 8.2 The User Interface to Files 8.3 File Systems 8.4 Special Files 8.5 File System Framework 8.6 The Vnode/Vfs Architecture 8.7 Implementation Overview 8.8 File-System-Dependent Objects 8.9 Mounting a File System 8.10 Operations on Files 8.11 Analysis 8.12 Summary 8.13 Exercises 8.14 References9 FILE SYSTEM IMPLEMENTATIONS 9.1 Introduction 9.2 The System V File System (s5fs) 9.3 S5fs Kernel Organization 9.4 Analysis of s5fs 9.5 The Berkeley Fast File System 9.6 Hard Disk Structure 9.7 On-Disk Organization 9.8 FFS Functionality Enhancements 9.9 Analysis 9.10 Temporary File Systems 9.11 Special-Purpose File Systems 9.12 The Old Buffer Cache 9.13 Summary 9.14 Exercises 9.15 References10 DISTRIBUTED FILE SYSTEMS 10.1 Introduction 10.2 General Characteristics of Distributed File Systems 10.3 Network File System (NFS) 10.4 The Protocol Suite 10.5 NFS Implementation 10.6 UNIX Semantics 10.7 NFS Performance 10.8 Dedicated NFS Servers 10.9 NFS Security 10.10 NFS Version 3 10.11 Remote File Sharing (RFS) 10.12 RFS Architecture 10.13 RFS Implementation 10.14 Client-Side Caching 10.15 The Andrew File System 10.16 AFS Implementation 10.17 AFS Shortcomings 10.18 The DCE Distributed File System (DCE DFS) 10.19 Summary 10.20 Exercises 10.21 References11 ADVANCED FILE SYSTEMS 11.1 Introduction 11.2 Limitations of Traditional File Systems 11.3 File System Clustering (Sun-FFS) 11.4 The Journaling Approach 11.5 Log-Structured File Systems 1l.6 The 4.4BSD Log-Structured File System 11.7 Metedata Logging 11.8 The Episode File System 11.9 Watchdogs 11.10 The 4.4BSD Portal File System 11.11 Stackable File System Layers 11.12 The 4.4BSD File System Interface 11.13 Summary 11.14 Exercises 11.15 References12 KERNEL MEMORY ALLOCATION 12.1 Introduction 12.2 Functional Requirements 12.3 Resource Map Allocator 12.4 Simple Power-of-Two Free Lists 12.5 The McKusick-Karels Allocator 12.6 The Buddy System 12.7 The SVR4 Lazy Buddy Algorithm 12.8 The Mach-OSF/1 Zone Allocator 12.9 A Hierarchical Allocator for Multiprocessors 12.10 The Solaris 2.4 Slab Allocator 12.11 Summary 12.12 Exercises 12.13 References13 VIRTUAL MEMORY 13.1 Introduction 13.2 Demand Paging 13.3 Hardware Requirements 13.4 4.3BSD- A Case Study 13.5 4.3BSD Memory Management Operations 13.6 Analysis 13.7 Exercises 13.8 References14 THE SVR4 VM ARCHITECTURE 14.1 Motivation 14.2 Memory-Mapped Files 14.3 VM Design Principles 14.4 Fundamental Abstractions 14.5 Segment Drivers 14.6 The Swap Layer 14.7 VM Operations 14.8 Interaction with the Vnode Subsystem 14.9 Virtual Swap Space in Solaris 14.10 Analysis 14.11 Performance Improvements 14.12 Summary 14.13 Exercises 14.14 References15 MORE MEMORY MANAGEMENT TOPICS 15.1 Introduction 15.2 Mach Memory Management Design 15.3 Memory Sharing Facilities 15.4 Memory Objects and Pagers 15.5 External and Internal Pagers 15.6 Page Replacement 15.7 Analysis 15.8 Memory Management in 4.4BSD 15.9 Translation Lookaside Buffer (TLB) Consistency 15.10 TLB Shootdown in Mach 15.11 TLB Consistency in SVR4 and SVR4.2 UNIX 15.12 Other TLB Consistency Algorithms 15.13 Virtually Addressed Caches 15.14 Exercises 15.15 References16 DEVICE DRIVERS AND I/O 16.1 Introduction 16.2 Overview 16.3 Device Driver Framework 16.4 The I/O Subsystem 16.5 The poll System Call 16.6 Block I/O 16.7 The DDI/DKI Specification 16.8 Newer SVR4 Releases 16.9 Future Directions 16.10 Summary 16.11 Exercises 16.12 References17 STREAMS 17.1 Motivation 17.2 Overview 17.3 Messages and Queues 17.4 Stream I/O 17.5 Configuration and Setup 17.6 STREAMS ioctls 17.7 Memory Allocation 17.8 Multiplexing 17.9 FIFOs and Pipes 17.10 Networking Interfaces 17.11 Summary 17.12 Exercises 17.13 ReferencesIndex
媒體關(guān)注與評(píng)論
“Vahalia在本書(shū)中對(duì)各種UNIX系統(tǒng)進(jìn)行了獨(dú)到全面的對(duì)比剖析。” ——Peter H.Salus,Computing Systems雜志執(zhí)行編輯 “本書(shū)為任何需要了解UNIX操作系統(tǒng)各種變體之區(qū)別的人士所必備。” ——Margo Seltzer,哈佛大學(xué) 本書(shū)提供了最新和最全面的UNIX系統(tǒng)技術(shù)內(nèi)幕資料。本書(shū)為專(zhuān)業(yè)的UNIX程序員、系統(tǒng)管理員和計(jì)算機(jī)科學(xué)系學(xué)生編寫(xiě),它深入討論了UNIX的開(kāi)發(fā)技術(shù)和原理,而且非常易于學(xué)習(xí)參考。本書(shū)涵蓋的內(nèi)容包括體現(xiàn)了20世紀(jì)90年代UNIX系統(tǒng)結(jié)構(gòu)特色的多項(xiàng)技術(shù):多線程內(nèi)核、多處理機(jī)和實(shí)時(shí)系統(tǒng)以及分布式文件系統(tǒng)?! ”緯?shū)考察了現(xiàn)代UNIX系統(tǒng)的最新發(fā)展,比較分析了由最重要的UNIX系統(tǒng)和變體所提供的最新特性,這些系統(tǒng)包括:SVR4.x\Solaris和SunOS、Digital UNIX、4.4 BSD、 Mach和OSF/1?! ∽髡咴跁?shū)中討論了內(nèi)核的幾個(gè)重要組成部分,比較了它們?cè)趲追N不同UNIX變體中的設(shè)計(jì),論述了其間的諸多權(quán)衡考慮,并且介紹了已被廣泛采用的那些特性。本書(shū)通過(guò)突出強(qiáng)調(diào)實(shí)用性,對(duì)實(shí)現(xiàn)細(xì)節(jié)進(jìn)行了詳盡的闡述。UNIX愛(ài)好者不應(yīng)該錯(cuò)過(guò)本書(shū)?! resh Vahalia曾為幾種UNIX變體開(kāi)發(fā)過(guò)內(nèi)核中的子系統(tǒng)。他在許多大學(xué),企業(yè)里,以及會(huì)議上講授過(guò)UNIX內(nèi)核技術(shù)。目前他正在為EMC公司開(kāi)發(fā)高性能的文件和視頻服務(wù)器。
圖書(shū)封面
圖書(shū)標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版