基本信息
- 原书名:Solaris Internals:Solaris 10 and OpenSolaris Kernel Architecture (2nd Edition)
- 原出版社: Prentice Hall
- 作者: (美)Richard McDougall, Jim Mauro
- 丛书名: 经典原版书库
- 出版社:机械工业出版社
- ISBN:9787111204183
- 上架时间:2006-12-19
- 出版日期:2007 年1月
- 开本:16开
- 页码:1020
- 版次:2-1
- 所属分类:计算机 > 操作系统 > Sun solaris

编辑推荐
本书介绍Solaris操作系统的内核,提供了内核结构以及该操作系统中使用的主要数据结构和算法的大量信息。主要内容包括:Solaris内核概述、Solaris存储系统线程、进程和IPC、文件和文件系统。本书还讲解了该系统的实际应用,用大量实例阐述了应用方法和技巧。本书对于使用Solaris操作系统的各类技术人员来讲是一本极具参考价值的专著。
内容简介
作译者
Jim Mauro Sun公司高级工程师,从事性能、体系结构和应用工程小组方面的研究。最近,他的研究重点是Opteron平台上的Solaris性能。...
目录
Preface.
About the Authors
Acknowledgments
Part One: Introduction to Solaris Internals 1
Chapter 1: Introduction 3
1.1 Key Features of Solaris 10, Solaris 9, and Solaris 8 4
1.2 Key Differentiators 12
1.3 Kernel Overview 15
1.4 Processes, Threads, and Scheduling 18
1.5 Interprocess Communication 23
1.6 Signals 25
1.7 Memory Management 26
1.8 Files and File Systems 29
1.9 Resource Management 30
Part Two: The Process Model 41
Chapter 2: The Solaris Process Model 43
2.1 Components of a Process 44
2.2 Process Model Evolution 48
2.3 Executable Objects 52
前言
About These Books
These books are about the internals of Sun's Solaris Operating System--specifically, the SunOS kernel. Other components of Solaris, such as windowing systems for desktops, are not covered. The first edition of SolarisTM Internals covered Solaris releases 2.5.1, 2.6, and Solaris 7. These volumes focus on Solaris 10, with updated information for Solaris 8 and 9.
In the first edition, we wanted not only to describe the internal components that make the Solaris kernel tick, but also to provide guidance on putting the information to practical use. These same goals apply to this work, with further emphasis on the use of bundled (and in some cases unbundled) tools and utilities that can be used to examine and probe a running system. Our ability to illustrate more of the kernel's inner workings with observability tools is facilitated in no small part by the inclusion of some revolutionary and innovative technology in Solaris 10--DTrace, a dynamic kernel tracing framework. DTrace is one of many new technologies in Solaris 10, and is used extensively throughout this text.
In working on the second edition, we enlisted the help of several friends and colleagues, many of whom are part of Solaris kernel engineering. Their expertise and guidance contributed significantly to the quality and content of these books. We also found ourselves expanding topics along the way, demonstrating the use of dtrace (1), mdb(1), kstat (1), and other bundled tools. So much so that we decided early on that some specific coverage of these tools was necessary, and chapters were written to provide readers with the required background information on the tools and utilities. From this, an entire chapter on using the tools for performance and behavior analysis evolved.
As we neared completion of the work, and began building the entire manuscript, we ran into a bit of a problem--the size. The book had grown to over 1,500 pages. This, we discovered, presented some problems in the publishing and production of the book. After some discussion with the publisher, it was decided we should break the work up into two volumes.
Solaris Internals. This represents an update to the first edition, including a significant amount of new material. All major kernel subsystems are included: the virtual memory (VM) system, processes and threads, the kernel dispatcher and scheduling classes, file systems and the virtual file system (VFS) framework, and core kernel facilities. New Solaris facilities for resource management are covered as well, along with a new chapter on networking. New features in Solaris 8 and Solaris 9 are called out as appropriate throughout the text. Examples of Solaris utilities and tools for performance and analysis work, described in the companion volume, are used throughout the text.
Solaris Performance and Tools. This book contains chapters on the tools and utilities bundled with Solaris 10: dtrace (1), mdb (1), kstat (1), etc. There are also extensive chapters on using the tools to analyze the performance and behavior of a Solaris system.
The two texts are designed as companion volumes, and can be used in conjunction with access to the Solaris source code on
http://www. opensolaris. org
Readers interested in specific releases before Solaris 8 should continue to use the first edition as a reference.
Intended Audience
We believe that these books will serve as a useful reference for a variety of technical staff members working with the Solaris Operating System. ..
Application developers can find information in these books about how Solaris OS implements functions behind the application programming interfaces. This information helps developers understand performance, scalability, and implementation specifics of each interface when they develop Solaris applications. The system overview section and sections on scheduling, interprocess communication, and file system behavior should be the most useful sections.
Device driver and kernel module developers of drivers, STREAMS modules, loadable system calls, etc., can find herein the general architecture and implementation theory of the Solaris OS. The Solaris kernel framework and facilities portions of the books (especially the locking and synchronization primitives chapters) are particularly relevant.
Systems administrators, systems analysts, database administrators, and Enterprise Resource Planning (ERP) managers responsible for performance tuning and capacity planning can learn about the behavioral characteristics of the major Solaris subsystems. The file system caching and memory management chapters provide a great deal of information about how Solaris behaves in real-world environments. The algorithms behind Solaris tunable parameters are covered in depth throughout the books.
Technical support staff responsible for the diagnosis, debugging, and support of Solaris will find a wealth of information about implementation details of Solaris. Major data structures and data flow diagrams are provided in each chapter to aid debugging and navigation of Solaris systems.
System users who just want to know more about how the Solaris kernel works will find high-level overviews at the start of each chapter.
Beyond the technical user community, those in academia studying operating systems will find that this text will work well as a reference. Solaris OS is a robust, feature-rich, volume production operating system, well suited to a variety of workloads, ranging from uniprocessor desktops to very large multiprocessor systems with large memory and input/output (I/O) configurations. The robustness and scalability of Solaris OS for commercial data processing, Web services, network applications, and scientific workloads is without peer in the industry. Much can be learned from studying such an operating system.
OpenSolaris
序言
This was the state of Solaris circa 2000, and it was indeed not well understood. Its internals were publicly described only in arcane block comments or old USENIX papers, its behavior was opaque to existing tools, and its source code was cloistered in chambers unknown. Starting in 2000, this began to change (if slowly)—heralded in part by the first edition of the volume that you now hold in your hands: Jim Mauro and Richard McDougall's Solaris Internals. Jim and Richard had taken on an extraordinary challenge—to describe the inner workings of a system so complicated that no one person actually understands all of it. Over the course of working on their book, Jim and Richard presumably realized that no one book could contain it either. Despite scaling back their ambition to (for example) not include networking, the first edition of SolarisTM Internals still weighed in at over six hundred pages.
The publishing of Solaris Internals marked the beginning of change that accelerated through-the first half of the decade, as the barriers to using and understanding Solaris were broken down. Solaris became free, its engineers began to talk about its implementation extensively through new media like blogs, and, most importantly, Solaris itself became open source in June 2005, becoming the first operating system to leap the chasm from proprietary to open. At the same time, the mechanics of Solaris became much more interesting as several revolutionary new technologies made their debut in Solaris 10. These technologies have swayed many a naysayer, and have proved that operating systems are alive after all. Furthermore, there are still hard, important problems to be solved. ..
If 2000 is viewed as the beginning of the changes in Solaris, 2005 may well be viewed as the end of the beginning. By the end of 2005, what was a seemingly finished, proprietary product had been transformed into an exciting, open source system, alive with potential and possibility. It is especially fitting that these changes are welcomed with this second edition of SolarisTM Internals. Faced with the impossible task of reflecting a half-decade of massive engineering change, Jim and Richard made an important decision—they enlisted the explicit help of the engineers that designed the subsystems and wrote the code. In several cases these engineers have wholly authored the chapter on their "baby." The result is a second edition that is both dramatically expanded and highly authoritativc and very much in keeping with the new Solaris zeitgeist of community development and authorship.
On a personal note, it has been rewarding to see Jim and Richard use DTrace, the technology that Mike Shapiro, Adam Leventhal, and I developed in Solaris 10. Mike, Adam, and I were all teaching assistants for our university operating systems course, and an unspoken goal of ours was to develop a pedagogical tool that would revolutionize the way that operating systems are taught. I therefore encourage you not just to read Solaris Internals, but to download Solaris, run it on your desktop or laptop or under a virtual machine, and use DTrace yourself to see the concepts that Jim and Richard describe—live, and on your own machine!
Be you student or professional, reading for a course, for work, or for curiosity, it is my pleasure to welcome you to your guides through the internals of Solaris. Enjoy your tour, and remember that Solaris is not a finished work, but rather a living, evolving technology. If you're interested in accelerating that evolution—or even if you just have questions on using or understanding Solaris—please join us in the many communities at http://www.opensolaris. org. Welcome!...
Bryan Cantrill
San Francisco, California
June 2006