Annotation of 43BSDTahoe/old/man/analyze.8, revision 1.1.1.1

1.1       root        1: .\" Copyright (c) 1980 Regents of the University of California.
                      2: .\" All rights reserved.  The Berkeley software License Agreement
                      3: .\" specifies the terms and conditions for redistribution.
                      4: .\"
                      5: .\"    @(#)analyze.8   6.1 (Berkeley) 4/27/85
                      6: .\"
                      7: .TH ANALYZE 8 "April 27, 1985"
                      8: .UC 4
                      9: .lg 0
                     10: .SH NAME
                     11: analyze \- Virtual UNIX postmortem crash analyzer
                     12: .SH SYNOPSIS
                     13: .B /etc/analyze
                     14: [
                     15: .B \-s
                     16: swapfile
                     17: ] [
                     18: .B \-f
                     19: ] [
                     20: .B \-m
                     21: ] [
                     22: .B \-d
                     23: ] [
                     24: .B \-D
                     25: ] [
                     26: .B \-v
                     27: ]
                     28: corefile
                     29: [ system ]
                     30: .SH DESCRIPTION
                     31: .I Analyze
                     32: is the post-mortem analyzer for the state of the paging system.
                     33: In order to use
                     34: .I analyze
                     35: you must arrange to get a image of the memory (and possibly the
                     36: paging area) of the system after it crashes (see
                     37: .IR crash (8V)).
                     38: .PP
                     39: The
                     40: .I analyze
                     41: program reads the relevant system data structures from the core
                     42: image file and indexing information from 
                     43: .B /vmunix
                     44: (or the specified file)
                     45: to determine the state of the paging subsystem at the point of crash.
                     46: It looks at each process in the system, and the resources each is
                     47: using in an attempt to determine inconsistencies in the paging system
                     48: state.  Normally, the output consists of a sequence of lines showing
                     49: each active process, its state (whether swapped in or not), its
                     50: .IR p0br ,
                     51: and the number and location of its page table pages.
                     52: Any pages which are locked while raw i/o is in progress, or which
                     53: are locked because they are
                     54: .I intransit
                     55: are also printed.  (Intransit text pages often diagnose as duplicated;
                     56: you will have to weed these out by hand.)
                     57: .PP
                     58: The program checks that any pages in core which are marked as not
                     59: modified are, in fact, identical to the swap space copies.
                     60: It also checks for non-overlap of the swap space, and that the core
                     61: map entries correspond to the page tables.
                     62: The state of the free list is also checked.
                     63: .PP
                     64: Options to
                     65: .IR analyze :
                     66: .TP
                     67: .B \-D
                     68: causes the diskmap for each process to be printed.
                     69: .TP
                     70: .B \-d
                     71: causes the (sorted) paging area usage to be printed.
                     72: .TP
                     73: .B \-f
                     74: which causes the free list to be dumped.
                     75: .TP
                     76: .B \-m
                     77: causes the entire coremap state to be dumped.
                     78: .TP
                     79: .B \-v
                     80: (long unused) which causes a hugely verbose output format to be used.
                     81: .PP
                     82: In general, the output from this program can be confused by processes
                     83: which were forking, swapping, or exiting or
                     84: happened to be in unusual states when the
                     85: crash occurred.  You should examine the flags fields of relevant processes
                     86: in the output of a
                     87: .IR pstat (8)
                     88: to weed out such processes.
                     89: .PP
                     90: It is possible to look at the core dump with
                     91: .I adb
                     92: if you do
                     93: .IP
                     94: adb \-k /vmunix /vmcore
                     95: .SH FILES
                     96: /vmunix        default system namelist
                     97: .SH SEE ALSO
                     98: adb(1), ps(1), crash(8V), pstat(8)
                     99: .SH AUTHORS
                    100: Ozalp Babaoglu and William Joy
                    101: .SH DIAGNOSTICS
                    102: Various diagnostics about overlaps in swap mappings, missing swap mappings,
                    103: page table entries inconsistent with the core map, incore pages which
                    104: are marked clean but differ from disk-image copies, pages which are
                    105: locked or intransit, and inconsistencies in the free list.
                    106: .PP
                    107: It would be nice if this program analyzed the system in general, rather
                    108: than just the paging system in particular.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.