Flylib.com

Books Software

 
 
 

Copyright


Copyright

1995 Sun Microsystems, Inc

2550 Garcia Avenue, Mountain View, California 94043-1100 U.S.A.

All rights reserved. This product and related documentation are protected by copyright and distributed under licenses restricting its use, copying, distribution, and decompilation. No part of this product or related documentation may be reproduced in any form by any means without prior written authorization of Sun and its licensors, if any.

RESTRICTED RIGHTS LEGEND: Use, duplication, or disclosure by the United States Government is subject to the restrictions set forth in DFARS 252.227-7013 (c)(1)(ii) and FAR 52.227-19.

The products described may be protected by one or more U.S. patents, foreign patents, or pending applications.

TRADEMARKS ”Sun, Sun Microsystems, SunSoft, the Sun logo, Solaris, SunOS, Sun-2, Sun-4, OpenWindows, SunSolve, SunService, and NFS are trademarks or registered trademarks of Sun Microsystems, Inc. UNIX is a registered trademark in the United States and other countries exclusively licensed through X/Open Company, Ltd. OPEN LOOK is a registered trademark of Novell, Inc. Adobe, PostScript, and Display PostScript are registered trademarks of Adobe Systems Incorporated. FrameMaker is a registered trademark of Frame Technology Corporation. Intel is a registered trademark of Intel Corporation. MS-DOS is a trademark of Microsoft Corporation. All other product names mentioned herein are the trademarks of their respective owners .

All SPARC trademarks are trademarks or registered trademarks of SPARC International, Inc. SPARCenter and SPARCstation are licensed exclusively to Sun Microsystems, Inc. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc.

The OPEN LOOK and Sun Graphical User Interfaces were developed by Sun Microsystems, Inc. for its users and licensees. Sun acknowledges the pioneering efforts of Xerox in researching and developing the concept of visual or graphical user interfaces for the computer industry. Sun holds a non-exclusive license from Xerox to the Xerox Graphical User Interface, which license also covers Sun's licensees who implement OPEN LOOK GUIs and otherwise comply with Sun's written license agreements.

The publisher offers discounts on this book when ordered in bulk quantities . For more information, contact: Corporate Sales Department, Prentice Hall PTR, One Lake Street, Upper Saddle River, NJ 07458, Phone: 800-382-3419 or 201-236-7156, Fax 201-236-7141, e-mail: corpsales@prenhall.com

Editorial/production supervision:

Lisa Iarkowski

Cover designer:

Kimberley Brown

Cover illustration:

John Churchman

Buyer:

Alexis R. Heydt

Acquisitions editors:

Gregory G. Doench/Phyllis Eve Bregman

10 9 8 7 6 5 4 3 2 1

SunSoft Press

A Prentice Hall Title


Figures

Figure 1-1 Example of console messages seen during a panic triggered by a bad trap

Figure 1-2 Limiting the core dump file size in the C shell

Figure 4-1 Compress your savecore files to save disk space

Figure 5-1 How to crash a Solaris 2 system

Figure 5-2 How to crash a Solaris 1 system

Figure 6-1 Using the strings command on a vmcore file

Figure 6-2 Using the strings command to view the message buffer, msgbuf

Figure 6-3 Using the crash utility to get process status information

Figure 6-4 Process credentials as displayed by the crash utility

Figure 8-1 Using adb to display data in a file

Figure 8-2 Using adb variables 75

Figure 8-3 Modifying the contents of a file via adb

Figure 9-1 Displaying initial system information from a Solaris 1 crash

Figure 9-2 Displaying initial system information from a Solaris 2 crash

Figure 9-3 Displaying the boot time and crash time on a Solaris 1 crash

Figure 9-4 Displaying the boot time and crash time on a Solaris 2 crash

Figure 9-5 Displaying the panic string

Figure 9-6 Displaying the message buffer via the msgbuf macro

Figure 9-7 Displaying the stack traceback

Figure 11-1 Using the Solaris 2 nm program to view tiny's symbol table

Figure 11-2 Using the Solaris 1 nm program to view tiny's symbol table

Figure 11-3 Running tiny under the control of adb

Figure 12-1 Using the utsname macro

Figure 12-2 Using the bootobj macro against three kernel variables

Figure 13-1 The message buffer with one, then two messages in it

Figure 13-2 Viewing the message buffer via two methods while in adb

Figure 13-3 Viewing the message buffer of a subsequent crash

Figure 13-4 Data Layout in Four cpu Structures

Figure 13-5 Experimenting with logical negation in adb

Figure 14-1 Using vmstat to view the DNLC hit rate

Figure 15-1 Some Possible Instruction Pipeline Stages

Figure 16-1 Registers Available to a Given Function

Figure 17-1 A generic stack frame

Figure 17-2 Stack frame example

Figure 17-3 Processor registers and their corresponding window names

Figure 18-1 Viewing little's main routine via adb

Figure 18-2 Viewing little's fred routine via adb

Figure 18-3 Relationship between %fp Frame Pointers and %sp Stack Pointers

Figure 18-4 Little's assembly code after compilation with optimization

Figure 18-5 Viewing nineargs's assembly instructions via adb

Figure 19-1 Kernel Overview

Figure 19-2 SunOS 4.x Process Table

Figure 19-3 Solaris 2 Processes and Threads

Figure 19-4 Kernel Tables and Structures

Figure 20-1 Process Space Structures

Figure 25-1 Stream diagram

Figure 25-2 Queue data structures

Figure 25-3 Pipe implementation

Figure 26-1 Trap Base Register

Figure 29-1 Two processors executing the same code within one instruction of each other

Figure 31-1 sethi opcode layout

Figure 34-1 Deadlock Condition

Figure A-1 SPARC processor

Figure A-2 Process Status Register bits

Figure A-3 Trap Base Register bits

Figure A-4 FPU status and control register