Linux操作系统内核实习:英文版

Linux操作系统内核实习:英文版
作 者: 加里纳特
出版社: 机械工业出版社
丛编项: 经典原版书库
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: Linux
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  GaryNuttGaryNutt撰写的教材《操作系统:现代观点》的第二版之实验更新版,是作者在长期的操作系统教学中逐渐形成和完善的。主要研究方向为操作系统。>>更多作品

内容简介

The Manual includes an expansive introduction to Linux and working in the Linux environment.Twelve exercises provide hands-on learning by allowing students to work on programs that implement key theoretical operating system conceptsThe makeup of the manual allows students to learn concepts on a modern operating system Linux-while at the same time viewing the source code.

图书目录

1. The Evolution of Linux

2. General Kernel R

2.1 Resource Abstraction

2.2 Sharing Resources

2.2.1 Managing Competition for Resources

2.2.2 Exclusive Use of a Resource

2.2.3 Managed Sharing

2.3 A Partition of OS Functions

3. Kernel Organization

3.1 Interrupts

3.2 Using Kernel Services

3.3 Serial Execution

3.4 Daemons

3.5 The Booting Procedure

3.5.1 The Boot Sector

3.5.2 Starting the Kernel

3.6 Logging In to the Machine

3.7 Control Flow in the Machine

4. Process and Resource Management

4.1 Running the Process Manager

4.1.1 System Call

4.1.2 Interrupts

4.2 Creating a New Task

4.3 The Scheduler

4.4 IPC and Synchronization

4.5 Protection Mechanism

5. Memory Management

5.1 Managing the Virtual Address Space

5.2 The Secondary Memory

5.3 Handling Missing Pages

5.4 Address Translation

6. Device Management

6.1 The Device Driver

6.2 Handling Interrupts

7. File Management

7.1 Mounting the File System

7.2 Opening a File

7.3 Reading and Writing the File

7.4 The Ext2 File System

8. Learning More about Linux

PART 2: EXERCISES

1 . Observing Linux Behavior

Introduction Problem Statement Part A

PartB PartC PartD

Attacking the Problem The /proc File System

Using argc and argv Organizing a Solution

Saving Your Work in a Shared Laboratory

2. Shell Program

Introduction Basic UNIX-Style Shell Operation

Putting a Process in the Background I/O Redirection

Shell Pipes Reading Multiple Input Steams

Problem Statement Part A Part B Part C

Attacking the Problem Organizing a Solution

Part A Parts B and C

3. Kernel Timers

Introduction How the Kernel Maintains the Time

Per Process Timers Problem Statement Part A

Part B Part C Attacking the Problem

Organization of the Linux Source Code Signals

Organizing a Solution

4. Kernel Modules

Introduction Module Organization

Module Installation and Removal Problem Statement

Attacking the Problem The read() Procedure

The End-of-File Condition Compiling a Module

Installing and Removing a Module

The Clock Resolution Question More Help

5. System Calls

Introduction The System Call Linkage

Defining the System Call Number

Generating a System Call Stub

Kernel Function Organization

Referencing User-Space Memory Locations

Problem Statement Part A Part B

Attacking the Problem The Kernel printk().Function

Organizing a Solution Rebuilding the Kernel

Leaving a Clean Environment

6. Shared Memory

Introduction The Shored Memory API

The Implementation Problem Statement

Attacking the Problem

7. Virtual Memory

Introduction The Virtual Address Space

Virtual Memory Areas Address Translation

The Page Fault Handler prirnary, Memory Allocotion

Problem Statement

Part A: Instrurnent the Virtual Memory Manager

Part B: Reporting the Performance

Attacking the Problem

8. synchronization Mechanisms

Introduction Blocking a Task Wait Queues

Using Wait Queues Problem Statement

part A Part B Attacking the Problem

9. The Schedulet

Introduction Process Management

Process States Scheduler Implementation

Fair-Share Scheduling Problem Statement

Part A Part B Attacking the Problem

Planning a Solution Comparing Scheduler Performance

l0. Device Drivers

Introduction Driver Organization

Loadable Kernel Module Drivers Example: A Disk Driver

Problem Statement Part A Part B

Attacking the Problem

11. File Systems

Introduction The Virtual File System Directories

Example: An MS-DOS File System Problem Statement

Part A Part B Part C

Attacking the Problem The MS-DOS Disk Format

The MS-DOS FAT Using the Floppy Disk API

Planning a Solution

12. File I/O

Introduction The Open and Close Operations

Read and Write Operations Block Allocation

Buffer Management Problem Statement

Part A Part B Part C Part D

Attacking the Problem The Open() Function

Caching the FAT A Solution Plan

Further Study

References

Index