华信教育资源网
操作系统——精髓与设计原理(第七版)(英文版)
作   译   者:蒲晓蓉,周瑞 出 版 日 期:2013-07-01
出   版   社:电子工业出版社 维   护   人:谭海平 
书   代   号:G0206760 I S B N:9787121206764

图书简介:

本书向授课教师提供英文原版教辅(习题解答,PPT),具体申请方式请咨询te_service@phei.com.cn。本书是一本关于操作系统的概念、结构和机制的教材,其目的是尽可能清楚和全面地展示现代操作系统的本质和特点;同时,本书也是讲解操作系统的经典教材,不仅系统地讲述了操作系统的基本概念、原理和方法,而且以当代最流行的操作系统——Windows 7、UNIX和Linux为例,全面清楚地展现了当代操作系统的本质和特点。与本书配套的专用网站,为帮助教师和学生理解书中内容,提供了及时、生动的材料。
您的专属联系人更多
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源
    图书特别说明:由于成本考虑,本书不作为参考书赠送。如果确有授课教材选用的需求,可将详细情况发送给本书专属联系人,我们将进一步沟通并酌情处理。

    本书资源

    本书暂无资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书向授课教师提供英文原版教辅(习题解答,PPT),具体申请方式请咨询te_service@phei.com.cn。本书是一本关于操作系统的概念、结构和机制的教材,其目的是尽可能清楚和全面地展示现代操作系统的本质和特点;同时,本书也是讲解操作系统的经典教材,不仅系统地讲述了操作系统的基本概念、原理和方法,而且以当代最流行的操作系统——Windows 7、UNIX和Linux为例,全面清楚地展现了当代操作系统的本质和特点。与本书配套的专用网站,为帮助教师和学生理解书中内容,提供了及时、生动的材料。

    图书详情

    ISBN:9787121206764
    开 本:16开
    页 数:556
    字 数:1012

    本书目录

    Chapter 1 Operating System Overview 
    1.1 Operating System Objectives and Functions
    1.2 The Evolution of Operating Systems
    1.3 Major Achievements
    1.4 Developments Leading to Modern Operating Systems
    1.5 Virtual Machines 
    1.6 OS Design Considerations for Multiprocessor and Multicore
    1.7 Microsoft Windows Overview
    1.8 Traditional UNIX Systems
    1.9 Modern UNIX Systems
    1.10 Linux 
    1.11 Linux VServer Virtual Machine Architecture 
    1.12 Recommended Reading and Web Sites 
    1.13 Key Terms, Review Questions, and Problems 
    Chapter 2 Process Description and Control 
    2.1 What Is a Process? 
    2.2 Process States 
    2.3 Process Description 
    2.4 Process Control
    2.5 Execution of the Operating System 
    2.6 Security Issues 
    2.7 UNIX SVR4 Process Management 
    2.8 Summary 
    2.9 Recommended Reading 
    2.10 Key Terms, Review Questions, and Problems 
    Chapter 3 Threads 
    3.1 Processes and Threads 
    3.2 Types of Threads 
    3.3 Multicore and Multithreading 
    3.4 Windows 7 Thread and SMP Management 
    3.5 Solaris Thread and SMP Management 
    3.6 Linux Process and Thread Management 
    3.7 Mac OS X Grand Central Dispatch 
    3.8 Summary 
    3.9 Recommended Reading 
    3.10 Key Terms, Review Questions, and Problems 
    Chapter 4 Concurrency: Mutual Exclu- sion and Synchronization 
    4.1 Principles of Concurrency 
    4.2 Mutual Exclusion: Hardware Support 
    4.3 Semaphores 
    4.4 Monitors 
    4.5 Message Passing 
    4.6 Readers/Writers Problem 
    4.7 Summary 
    4.8 Recommended Reading 
    4.9 Key Terms, Review Questions, and Problems 
    Chapter 5 Concurrency: Deadlock and Starvation 
    5.1 Principles of Deadlock 
    5.2 Deadlock Prevention 
    5.3 Deadlock Avoidance 
    5.4 Deadlock Detection 
    5.5 An Integrated Deadlock Strategy 
    5.6 Dining Philosophers Problem 
    5.7 UNIX Concurrency Mechanisms 
    5.8 Linux Kernel Concurrency Mechanisms 
    5.9 Solaris Thread Synchronization Primitives 
    5.10 Windows 7 Concurrency Mechanisms 
    5.11 Summary 
    5.12 Recommended Reading 
    5.13 Key Terms, Review Questions, and Problems 
    Chapter 6 Memory Management 
    6.1 Memory Management Requirements 
    6.2 Memory Partitioning 
    6.3 Paging 
    6.4 Segmentation 
    6.5 Security Issues 
    6.6 Summary 
    6.7 Recommended Reading 
    6.8 Key Terms, Review Questions, and Problems 
    6A Loading and Linking 
    Chapter 7 Virtual Memory 
    7.1 Hardware and Control Structures 
    7.2 Operating System Software 
    7.3 UNIX and Solaris Memory Management 
    7.4 Linux Memory Management 
    7.5 Windows Memory Management 
    7.6 Summary 
    7.7 Recommended Reading and Web Sites 
    7.8 Key Terms, Review Questions, and Problems 
    Chapter 8 Uniprocessor Scheduling
    8.1 Types of Processor Scheduling 
    8.2 Scheduling Algorithms 
    8.3 Traditional UNIX Scheduling 
    8.4 Summary 
    8.5 Recommended Reading 
    8.6 Key Terms, Review Questions, and Problems 
    Chapter 9 Multiprocessor and Real-Time Scheduling 
    9.1 Multiprocessor Scheduling 
    9.2 Real-Time Scheduling 
    9.3 Linux Scheduling 
    9.4 UNIX SVR4 Scheduling 
    9.5 UNIX FreeBSD Scheduling 
    9.6 Windows Scheduling 
    9.7 Linux Virtual Machine Process Scheduling 
    9.8 Summary 
    9.9 Recommended Reading 
    9.10 Key Terms, Review Questions, and Problems 
    Chapter 10 I/O Management and Disk Scheduling 
    10.1 I/O Devices 
    10.2 Organization of the I/O Function 
    10.3 Operating System Design Issues 
    10.4 I/O Buffering 
    10.5 Disk Scheduling 
    10.6 RAID 
    10.7 Disk Cache 
    10.8 UNIX SVR4 I/O 
    10.9 Linux I/O 
    10.10 Windows I/O
    10.11 Summary 
    10.12 Recommended Reading 
    10.13 Key Terms, Review Questions, and Problems 
    Chapter 11 File Management 
    11.1 Overview 
    11.2 File Organization and Access 
    11.3 B-Trees 
    11.4 File Directories 
    11.5 File Sharing 
    11.6 Record Blocking 
    11.7 Secondary Storage Management 
    11.8 File System Security 
    11.9 UNIX File Management 
    11.10 Linux Virtual File System 
    11.11 Windows File System 
    11.12 Summary 
    11.13 Recommended Reading 
    11.14 Key Terms, Review Questions, and Problems 
    References
    展开

    前     言

    PREFACE
    OBJECTIVES
    This book is about the concepts, structure, and mechanisms of operating systems.Its purpose is to present, as clearly and completely as possible, the nature and characteristicsof modern-day operating systems.
    This task is challenging for several reasons. First, there is a tremendous range and variety of computer systems for which operating systems are designed. These include embedded systems, smart phones, single-user workstations and personal computers, medium-sized shared systems, large mainframe and supercomputers, and specialized machines such as real-time systems. The variety is not just in the capacity and speed of machines, but in applications and system support requirements as well. Second, the rapid pace of change that has always characterized computer systems continues with no letup. A number of key areas in operating system design are of recent origin, and research into these and other new areas continues.
    In spite of this variety and pace of change, certain fundamental concepts apply
    consistently throughout. To be sure, the application of these concepts depends on the current state of technology and the particular application requirements. The intent of this book is to provide a thorough discussion of the fundamentals of operating system design and to relate these to contemporary design issues and to current directions in the development of operating systems.
    EXAMPLE SYSTEMS
    This text is intended to acquaint the reader with the design principles and implementation issues of contemporary operating systems. Accordingly, a purely conceptual or theoretical treatment would be inadequate. To illustrate the concepts and to tie them to real-world design choices that must be made, three operating systems have been chosen as running examples:
     Windows 7: A multitasking operating system for personal computers, workstations, and servers. This operating system incorporates many of the latest developments in operating system technology. In addition, Windows is
    one of the first important commercial operating systems to rely heavily on
    object-oriented design principles. This book covers the technology used in
    the most recent version of Windows, known as Windows 7.
     UNIX: A multiuser operating system, originally intended for minicomputers,
    but implemented on a wide range of machines from powerful microcomputers
    to supercomputers. Several flavors of UNIX are included as examples.
    FreeBSD is a widely used system that incorporates many state-of-the-art features. Solaris is a widely used commercial version of UNIX.
     Linux: An open-source version of UNIX that is now widely used.
    These systems were chosen because of their relevance and representativeness.
    The discussion of the example systems is distributed throughout the text rather than assembled as a single chapter or appendix. Thus, during the discussion of concurrency, the concurrency mechanisms of each example system are described, and the motivation for the individual design choices is discussed. With this approach, the design concepts discussed in a given chapter are immediately reinforced with realworld examples.
    INTENDED AUDIENCE
    The book is intended for both an academic and a professional audience. As a textbook, it is intended as a one-semester undergraduate course in operating systems for computer science, computer engineering, and electrical engineering majors. It covers all of the core topics and most of the elective topics recommended in Computer Science Curriculum 2008 , from the Joint Task Force on Computing Curricula of the IEEE Computer Society and the ACM, for the Undergraduate Program in Computer Science. The book also covers the operating systems topics recommended in the Guidelines for Associate-Degree Curricula in Computer Science 2002 , also from the Joint Task Force on Computing Curricula of the IEEE Computer Society and the ACM. The book also serves as a basic reference volume and is suitable for self-study.
    WHAT’S NEW IN THE SEVENTH EDITION
    In the 3 years since the sixth edition of this book was published, the field has seen continued innovations and improvements. In this new edition, I try to capture these changes while maintaining a broad and comprehensive coverage of the entire field. To begin the process of revision, the sixth edition of this book was extensively reviewed by a number of professors who teach the subject and by professionals working in the field. The result is that, in many places, the narrative has been clarified and tightened, and illustrations have been improved. Also, a number of new “field-tested” homework problems have been added.
    Beyond these refinements to improve pedagogy and user friendliness, the
    technical content of the book has been updated throughout, to reflect the ongoing changes in this exciting field, and the instructor and student support has been expanded. The most noteworthy changes are as follows:
     Windows 7: Windows 7 is Microsoft’s latest OS offering for PCs, workstations, and servers. The seventh edition provides details on Windows 7
    internals in all of the key technology areas covered in this book, including
    process/thread management, scheduling, memory management, security,
    file systems, and I/O.
     Multicore operating system issues: The seventh edition now includes coverage
    of what has become the most prevalent new development in computer systems: the use of multiple processors on a single chip. At appropriate points
    in the book, operating system issues related to the use of a multicore organization are explored.
     Virtual machines: Chapter 1 now includes a section on virtual machines, which
    outlines the various approaches that have been implemented commercially.
     New scheduling examples: Chapter 9 now includes a discussion of the
    FreeBSD scheduling algorithm, designed for use with multiprocessor and
    multicore systems, and Linux VServer scheduling for a virtual machine
    environment.
    B-trees: This is a technique for organizing indexes into files and databases
    that is commonly used in OS file systems, including those supported by Mac OS X, Windows, and several Linux file systems. B-trees are now covered
    in Chapter 11.
     Student study aids: Each chapter now begins with a list of learning objectives. In addition, a chapter-by-chapter set of review outlines highlights key concepts that the student should concentrate on in each chapter.
     Sample syllabus: The text contains more material than can be conveniently covered in one semester. Accordingly, instructors are provided with several sample syllabi that guide the use of the text within limited time (e.g., 16 weeks or 12 weeks). These samples are based on real-world experience by professors with the sixth edition.
    With each new edition, it is a struggle to maintain a reasonable page count while adding new material. In part, this objective is realized by eliminating obsolete material and tightening the narrative. For this edition, chapters and appendices that are of less general interest have been moved online, as individual PDF files. This has allowed an expansion of material without the corresponding increase in size and price.
    INSTRUCTOR SUPPORT MATERIALS
    Support materials are available at the Instructor Resource Center (IRC)
    for this textbook, which can be reached through the Publisher’s Web site
    www.pearsonhighered.com/stallings or by clicking on the button labeled “Book
    Info and More Instructor Resources” at this book’s Companion Web site
    WilliamStallings.com/OS/OS7e.html. To gain access to the IRC, please contact
    your local Pearson sales representative via pearsonhighered.com/educator/replocator/
    requestSalesRep.page or call Pearson Faculty Services at 1-800-526-0485.
    To support instructors, the following materials are provided:
     Solutions manual: Solutions to end-of-chapter Review Questions and
    Problems.
     Projects manual: Suggested project assignments for all of the project categories listed in the next section.
     PowerPoint slides: A set of slides covering all chapters, suitable for use in
    lecturing.
     PDF files: Reproductions of all figures and tables from the book.
     Test bank: A chapter-by-chapter set of questions.
     Links to Web sites for other courses being taught using this book.
     An Internet mailing list has been set up so that instructors using this book can exchange information, suggestions, and questions with each other and with
    the author. As soon as typos or other errors are discovered, an errata list for
    this book will be available at WilliamStallings.com. Sign-up information for
    this Internet mailing list.
     Computer science student resource list: A list of helpful links for computer
    science students and professionals is provided at ComputerScienceStudent.com,
    which provides documents, information, and useful links for computer science
    students and professionals.
     Programming projects: Two major programming projects, one to build a
    shell (or command line interpreter) and one to build a process dispatcher,
    are described in the online portion of this textbook. The IRC provides further
    information and step-by-step exercises for developing the programs. As
    an alternative, the instructor can assign a more extensive series of projects
    that cover many of the principles in the book. The student is provided with
    detailed instructions for doing each of the projects. In addition, there is a set of homework problems, which involve questions related to each project for the student to answer.
    Projects and Other Student Exercises
    For many instructors, an important component of an OS course is a project or set of projects by which the student gets hands-on experience to reinforce concepts from the text. This book provides an unparalleled degree of support for including a projects component in the course. In the online portion of the text, two major programming projects are defined. In addition, the instructor support materials available through Pearson not only include guidance on how to assign and structure the various projects but also includes a set of user’s manuals for various project types plus specific assignments, all written especially for this book. Instructors can
    assign work in the following areas:
     OS/161 projects: Described below.
     Simulation projects: Described below.
     Programming projects: Described below.
     Research projects: A series of research assignments that instruct the student
    to research a particular topic on the Internet and write a report.
     Reading/report assignments: A list of papers that can be assigned for reading
    and writing a report, plus suggested assignment wording.
     Writing assignments: A list of writing assignments to facilitate learning the
    material.
     Discussion topics: These topics can be used in a classroom, chat room, or message board environment to explore certain areas in greater depth and to foster student collaboration.
    In addition, information is provided on a software package known as BACI that
    serves as a framework for studying concurrency mechanisms.
    This diverse set of projects and other student exercises enables the instructor to use the book as one component in a rich and varied learning experience and to tailor a course plan to meet the specific needs of the instructor and students. See Appendix B in this book for details.
    Simulations for Students and Instructors
    The IRC provides support for assigning projects based on a set of seven simulations that cover key areas of OS design. The student can use a set of simulation packages to analyze OS design features. The simulators are all written in Java and can be run either locally as a Java application or online through a browser. The IRC includes specific assignments to give to students, telling them specifically what they are to do and what results are expected.
    Animations for Students and Instructors
    This edition also incorporates animations. Animations provide a powerful tool for understanding the complex mechanisms of a modern OS. A total of 53 animations are used to illustrate key functions and algorithms in OS design. The animations are used for Chapters 2 , 4 , 5 , 6 , 7 , 8 , and 10 . For access to the animations, click on the rotating globe at this book’s Web site at WilliamStallings.com/OS/OS7e.html.
    作者William Stallings拥有美国麻省理工学院计算机科学博士学位和圣母大学电子工程学士学位,现任教于澳大利亚新南威尔士大学国防学院信息技术与电子工程系。世界知名计算机学者和畅销教材作者,已经撰写了17部著作,出版了42本书籍,内容涉及计算机安全、计算机网络和计算机体系结构等方面,曾11呲荣获美国“教材和学术专著作者协会”颁发的“年度最佳计算机科学教材”奖。
    展开

    作者简介

    本书暂无作者简介
  • 样 章 试 读
    本书暂无样章试读!
  • 图 书 评 价 我要评论
华信教育资源网