《第二章 调试工具(精品).ppt》由会员分享,可在线阅读,更多相关《第二章 调试工具(精品).ppt(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第二章 调试工具2.1 sunos所提供的调试工具 1、sar(system activity reporter)命令 sar 命令提供覆盖系统大部分范围的系统测量信息。options:-a:报告DNLC(directory name lookup cache)信息;-A:包含所有的参数;-c:报告系统调用和读/写传输;-d:报告block设备(disk、tape)的情况;-g:报告页面调度的情况;-k:报告kernel、memory的分配情况;-p:报告页面调度的错误;第二章 调试工具 -r:有效的memory页面和swap空间;-u:CPU的利用率;-w:系统swap和进程交换的状态;-y
2、:TTY设备状态。#sar c 10Sunos sun250 5.8 Genric_105181_26 sun4u 07/31/0218:38:03 scall/s sread/s swrit/s fork/s exec/s rchar/s wchar/s18:38:13 306 27 31 0.00 0.00 5643 5942第二章 调试工具 2、vmstat(virtual memory statistics)命令 vmstat命令报告虚拟内存的统计信息。options:-c 报告缓存刷新的信息;-i 报告每个设备的中断数目;-s 显示系统引导之后的系统事件统计;-S 报告交换行为而非分
3、页行为。#vmstat procs memory page disk faults cpu r b w swap free re mf pi po fr de sr s0 s1 -in sy cs us sy id 0 0 0 217352 60448 0 5 6 0 0 0 0 1 0 0 0 115 114 55 1 3 96 第二章 调试工具 procs:报告进程的状态及其数目 r:运行的队列里的进程 b:I/O、分页被阻隔的进程 w:可运行但被交换的进程 memory:报告虚拟内存和真实的内存 swap:当前可用的交换空间 free:闲置的空间 page:报告页面活动数量的信息 re:
4、被回收的页面 mf:次要错误,地址空间或硬件地址转换错误 pi:页面调入(K bytes)第二章 调试工具 po:页面调出(K tybes)fr:被释放的空间(K tybes)de:预期的内存缺乏(K tybes)sr:被扫描的页面 disk:报告每秒钟内磁盘操作的总数 S:SCSI I:IDE faults:报告中断的比率 in:(无时钟)设备的中断 sy:系统调用 cs:cpu的上下文交换 cpu:使用cpu的时间百分比第二章 调试工具 us:用户时间 sy:系统时间 id:空闲时间 3.iostat(I/O statistics)报告disk 和TTY设备的I/O性能 options:-
5、c:cpu状态 -d:disk数据传输以及平均服务时间 -D:disk每秒钟的读写次数及使用百分比 -e:设备错误统计(硬错误、软错误)-E:所有设备的错误及其详细信息 -M:以m为单位报告I/O的吞吐量第二章 调试工具 -x:显示磁盘扩展的统计信息 -t:显示终端设备信息#iostat xtc 5 2 extended device statistics tty cpu device r/s w/s kr/s kw/s wait actv svc_t%w%b tin tout us sy wt id sd0 1.6 0.3 23.0 2.7 0.0 0.1 0.1 0 1 0 761 0 1
6、 2 97 sd6 0.0 0.0 0.0 0.0 0.0 0.0 12.5 0 0 disk:磁盘名 r/s:每秒读盘次数 w/s:每秒写盘次数第二章 调试工具 kr/s:每秒读的字节数(K bytes)kw/s:每秒写的字节数(K bytes)wait:队列的长度 actv:正在接收服务的平均事务数 svc_t:平均服务时间%w:有事务在等待服务的时间(百分比)%b:磁盘繁忙时间(百分比)tin:终端输入 tout:终端输出 us:用于处理user的百分比 sy:用于处理system的百分比 wt:用于等待I/O的百分比 id:空闲百分比第二章 调试工具 4、mpstat 报告每个处理器的
7、统计信息#mpstat 5 cpu minf mjf xcal intr ithr csw icsw migr smtx srw syscal usr sys wt idl 0 1 0 368 102 102 36 0 0 0 0 420 0 1 2 96 1 1 0 186 420 220 39 0 0 6 0 82 0 0 2 98 cpu:处理器ID minf:次要的故障 mjf:主要的故障 xcal:跨处理器的调用 intr:中断 ithr:线程中断 第二章 调试工具 csw:上下文交换 icsw:强制的上下文交换 migr:向另一处理器的线程传递 smtx:互斥信号的转换 srw:读
8、写锁的转换 syscal:系统调用 usr:用户时间百分比 sys:系统时间百分比 wt:等待时间百分比 idl:空闲时间百分比第二章 调试工具 5、netstat 报告网络利用信息,包括DHCP(动态主机配置协议),arp信息和传输情况。options:-a:显示所有的套接字(sockets)和路由表信息;-d:显示所有的运用DHCP协议的接口状态;-D:显示DHCP 配置接口;-i:显示所有的TCP/Ip接口状态;-k:kernel memory 分配的细节;-n:显示所有的网络地址;-p:显示arp列表;-r:显示路由表;-s:显示每种协议的状态。第二章 调试工具#netstat i n
9、ame mtu net/dest address ipkts iperrs opkts oerrs collis queue lo0 8232 lookback localhost 1780 0 1780 0 0 0 hme0 1500 sun250 sun250 161636 0 230771 0 0 0#netstat p device ip address mask flags phys addr hme0 192.168.1.27 255.255.255.255 00:40:d0:1d:00:1e hme0 192.168.1.37 255.255.255.255 00:00:e8:7
10、b:f7:39第二章 调试工具6、nfsstat:报告系统nfs 状态的详细信息,包含server 和client 的信息,帮助寻找问题的位置。options:-c:只显示client的信息;-m:显示nfs 挂接的状态;-n:显示nfs的信息,包括server 和client的信息;-r:显示rpc的信息;-s:只显示server信息第二章 调试工具 2.2 其它的工具 1、/usr/proc/bin(/usr/bin)目录 /usr/proc/bin目录中的工具与/proc文件系统相关联,允许报告进程的细节信息。/usr/proc/bin/ptree:列出与当前进程相关的父进程与子进程,以
11、及提供进程运行的文件信息。#ptree /usr/sbin/inetd -s t 565 rpc.ttdbserverd 571 rpc.rstatd第二章 调试工具/usr/proc/bin/pcred:显示进程的凭证(有效、真实的UID、GID)/usr/proc/bin/pmap:显示进程的地址空间图。/usr/proc/bin/pldd:列出每个进程的动态数据库连接,包括共 享目录。/usr/proc/bin/psig:列出每个进程的信号的作用。/usr/proc/bin/pstack:显示进程的堆栈。/usr/proc/bin/pwdx:显示每个进程当前的工作目录。/usr/proc
12、/bin/pstop:停止指定的进程。/usr/proc/bin/prun:运行指定的进程。/usr/proc/bin/pwait:等待指定的所有进程结束。第二章 调试工具2.3进程管理器(process manager)进程管理器能查找有问题的进程,并且跟踪当前系统资源的运用情况。#/usr/dt/bin/sdtprocess&它所显示的信息是从ps 命令和/proc文件系统得到的。这包括:1、cpu的利用率 2、I/O的利用率 3、memory利用率 4、进程的凭证 5、跟踪与反向跟踪 6、调度参数第二章 调试工具第二章 调试工具2.4显示调度参数 1、sysdef命令可以显示近60个运行
13、的调度参数。#sysdef system configuration swapfile dev swaplo blocks free/dev/dsk/c0t0d0s1 32,1 16 2101536 2101536 tunable parameters10362880 maximum memory allowed in buffer cache 7914 maximum number of processes第二章 调试工具2、adb命令,内核调试器。允许你察看并改变调整参数的值。3、ndd 命令,能察看并且改变网络设备和协议栈的参数。#ndd get /dev/ip ip_forwardin
14、g 1#ndd set /dev/ip ip_forwarding 0关闭ip转发。#ndd set /dev/ip ip_respond_to_echo_broadcast 0关闭echo广播响应,防止dos攻击 第二章 调试工具 2.5 一些有用的命令 1、/usr/platform/sun4u/sbin/prtdiag 显示系统的配置信息,包括cpu的频率、ecache大小、存储器的大小以及外围设备的配置。2、psrinfo 显示处理器的配置与诊断信息。#psrinfo 0 on-line since 09/22/02 17:38:18 1 off-line since 09/22/02
15、 17:38:18-v选项还可以显示处理器的类型与时钟速率信息。3、psradm命令可以设置处理器在线或离线。#psradm -f 1 ;将cpu 1 设置位离线。#psradm -n 1 ;将cpu 1 设置位在线。第二章 调试工具2.6 设置调试参数 在/etc/system文件里可以改变调试参数,内核被加载到memory之后会读一次/etc/system文件。在/etc/system文件中所定义的参数被放置在kernel里的合适的位置,然后系统继续初始化。因此,在改变/etc/system文件后,必须reboot系统。#vi /etc/system set maxusers=40 forceload:/drv/foo 第二章 调试工具 /etc/system 文件能用来设置常驻在kernel 里的调试和一些选项参数的值,如果/etc/system 文件中的参数改变不正确,可能会导致系统无法启动。