Home - BSD

Product Details

Binding:

Kindle Edition

EAN:
Label:

Prentice Hall

Feature:
Publisher:

Prentice Hall

Studio:

Prentice Hall

Editorial Reviews

This is the eBook version of the printed book.

The Oracle Solaris DTrace feature revolutionizes the way you debug operating systems and applications. Using DTrace, you can dynamically instrument software and quickly answer virtually any question about its behavior. Now, for the first time, there's a comprehensive, authoritative guide to making the most of DTrace in any supported UNIX environment--from Oracle Solaris to OpenSolaris, Mac OS X, and FreeBSD.

 

Written by key contributors to the DTrace community, DTrace teaches by example, presenting scores of commands and easy-to-adapt, downloadable D scripts. These concise examples generate answers to real and useful questions, and serve as a starting point for building more complex scripts. Using them, you can start making practical use of DTrace immediately, whether you're an administrator, developer, analyst, architect, or support professional.

 

The authors fully explain the goals, techniques, and output associated with each script or command. Drawing on their extensive experience, they provide strategy suggestions, checklists, and functional diagrams, as well as a chapter of advanced tips and tricks. You'll learn how to

  • Write effective scripts using DTrace's D language
  • Use DTrace to thoroughly understand system performance
  • Expose functional areas of the operating system, including I/O, filesystems, and protocols
  • Use DTrace in the application and database development process
  • Identify and fix security problems with DTrace
  • Analyze the operating system kernel
  • Integrate DTrace into source code
  • Extend DTrace with other tools

This book will help you make the most of DTrace to solve problems more quickly and efficiently, and build systems that work faster and more reliably.

Customer Reviews

A must have for all solaris/macOS unix engineer. Compared to the manuals, the book is much more intuitive for any unix engineer to follow.
The last book I tried to use while at my computer was the first edition of the O'Reilly behemoth UNIX Power Tools, a small phone book in both page count and page quality. Working through a very large book of very many items front to back, as I did, might seem like a fool's errand. But Power Tools was, and in its third edition must still be, a tirelessly, relentlessly cross-referenced work. I was impressed by the vigor and care its contributors applied to relate so many points of information to each other. Moreover, I was struck by the implication that I could follow suit. It was a breath of encouragement I was grateful to receive, as I wanted to grow into power user status myself. It was also a gift I think about paying forward when I teach. Like when someone again runs off with my current copy, but in a way that doesn't stress the trust I place in my colleagues.

This book on DTrace, a technology for tracing process and operating system behavior, is also quite thick, and filled with many bits of information, hard-won from examining many dark areas of system and process code. The book is, in turns, a meandering journal, a breathless mash-up of contributions, a collection of clipped, man page-style narratives, and a dry series of code and output blocks the authors sometimes deem self-evident. Some clues, such as an oft-repeated warning that the fbt provider is unstable, suggest the book was built by force of compilation alone, with little interest in supporting a read-through, much less a systematic view of the content.

It is however a formidable cache, quite possibly including every DTrace program of general consequence written in the last few years. Despite protests to the contrary, it is also partly a tribute-to-self and tour de force of its lead author, and what he has done and can do with this technology. (I agree with another reviewer who found the preening on the back cover and introduction a bit too much.) The biggest benefit the reader receives from this work, then, are the products of that facility: scripts, recipes, power tools. Call them what you like.

But an 1100-page book of any construction needs some figurative handle to manage it. Unix Power Tools provided one with a display of cross-referencing heroics I doubt we will see again. After several attempts at cutting my own path, I downloaded the scripts and just started working through them, treating the book as a resource to clarify what I couldn't divine on my own. My results with that strategy so far amount to a coin-toss. To make full use of this book, I suspect most readers will have to meet the material more than half way, providing perhaps an uncommon passion, or considerable expertise. It would be better to bring both, and a continuous caffeine feed, to succeed.
Any jobbing performance analyst, system administrator or developer who wishes to move to the next level should get this book and write their name on it in thick marker - or else it will walk.
Although the book is aimed at the professional, the student and teacher of operating systems are also firmly in its sights. Expect this book to appear on CS courses, twinned with the appropriate - MacOS X, BSD or Solaris, Internals book. The latter not un-coincidentally comes from the hand of one of the co-authors of this work.
There is sufficient introductory material in here that the reader can grasp the language of Dtrace without Reading The Fine Manuals but the real value of this text lies in the examples and especially the one-liners. Anyone who has read the original AWK book - an old masterpiece that crescendos from workaday one-line tools to complete compilers and graph generators - will have the flavor of this work. Each OS subsystem is examined in turn by way of one-liner triage and then subjected to more involved analysis.
The other great strength of the book is that it dispels the myth that Dtrace is just for systems folks and not application developers. There are several chapters dealing with the inspection of running applications - both those for which you have the source and those you don't. The words "hackers bible" never passed my lips ;-)
Its evident from reading it that this book was a work of passion for its authors, distilled from their daily concerns as systems performance experts and evangelists. I am grateful they have spread the Good News.

In a nutshell, it is a very good book especially once you get beyond the narcissism embedded in the forward and introduction. From my perspective this book serves three valuable purposes - as a tutorial, as a reference, and a resource for cool tips, tricks and generally making an software engineer's life easier.

As a tutorial, this book provides one of the most cogent introductions to Dtrace I have seen including web content and prior books. The book, in a couple of chapters, provides a good overview of the purpose and architecture of Dtrace, the D language semantics to rudimentary examples including the canonical "Hello World". As a tutorial is great for both the neophyte and seasoned engineers. The rest of the book continues tutorial delving into key subsystems (e.g. CPU, Memory, IO, low-level networking, filesystems, etc.) to language to application use of Dtrace. Each section will provide a good introduction and numerous valuable examples to the engineer interested in each respective area.

Probably the weakest aspect of this book is as a pure reference book but I don't think that is its intent. The book includes several valuable appendices on Dtrace Tunable Variables, D Language Reference, Provider Arguments, etc. However it is likely that most engineers will tag key sections that are relevant to their particular interests/needs.

Also a book of cool tips and tricks, this books has a huge number examples, Tips and Tricks section, Tools, etc. with every engineer (system, middleware, end-user application development) benefiting from the specific examples and/or the ideas being conveyed. I would say that this is especially useful for even the engineers who may already be familiar with Dtrace but haven't leveraged it's capabilities to the fullest.

However on the downside this book doesn't provide a comprehensive to non-dtrace based observability nor does it cover the limitations (e.g. data flow through network stack) and consequences of using dtrace (e.g. probe effect, etc.) at least from my review of the content. However as a resource it is very useful to both new hires and seasoned engineers and
is a complementary to the slightly dated "Solaris(tm) Performance and Tools: DTrace and MDB Techniques for Solaris 10 and OpenSolaris" book by Solaris(tm) by Richard McDougall, Jim Mauro and Brendan Gregg.

Overall a definite buy!
 
Share your thoughts with other customers
Create your own review