Linux文件系统下proc目录详解_第1页
Linux文件系统下proc目录详解_第2页
Linux文件系统下proc目录详解_第3页
Linux文件系统下proc目录详解_第4页
Linux文件系统下proc目录详解_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、linux屮/proc目录下文件详解(2008-7-20 15:54)linux屮/proc目录下文件详解(一)/proc文件系统下的多种文件提供的系统信息不是针对某个特定进程的,而是能够在整个系 统范i韦i的上下文屮使用。可以使用的文件随系统配置的变化而变化。命令procinfo能够显示 基于其中某些文件的多种系统信息。以下详细描述/proc下的文件。/proc/cmdline 文件这个文件给出了内核启动的命令行。它和用于进程的cmdline项非常相似。 示例:rootlocalhost proc# cat cmdlinero root=label=/ rhgb quiet/proc/cpu

2、info 文件这个文件提供了有关系统cpu的多种信息。这些信息是从内核里对cpu的测试代码中得到 的。文件列出了 cpu的普通型号(386, 486, 586, 686等),以及能得到的更多特定信息(制造商,型号和版本)。文件还包含了以bogomips表示的处理器速度,而且如果检测到 cpu的多种特性或者bug,文件还会包含相应的标志。这个文件的格式为:文件由多行构成, 每行包括一个域名称,一个冒号和一个值。示例:rootlocalhost proc# cat cpuinfoprocessor:0vendor_id : authenticamdcpu family : 6model : 8mo

3、del name : amd athlon(tm) xp 1800+stepping : 1cpu mhz : 1530.165cache size : 256 kbfdiv_bug : nohlt_bug : nofoof_bug : nocoma_bug : nofpu : yesfpu_exception : yescpuid level: 1wp : yesflags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dn

4、owbogomips : 2998.27/proc/devices 文件这个文件列出字符和块设备的主设备号,以及分配到这些设备号的设备名称。 示例:rootlocalhost /# cat /proc/devicescharacter devices:1 mem4 /dev/vc/04 tty4ttys5 /dev/tty5 /dev/console5 /dev/ptmx6 lp7 vcs10 misc13 input14 sound29 fb36 netlink116 alsa128 ptm136 pts180 usbblock devices:1 ramdisk2fd3ide09md22

5、idel253 device-mapper254 mdp/proc/dma 文件这个文件列出rfl驱动程序保留的dma通道和保留它们的驱动程序名称。casade项供用于把 次dma控制器从主控制器分出的dma行所使用;这一行不能用于其它用途。示例:rootlocalhost # cat /proc/dma4: cascade/proc/filesystems 文件/color这个文件列出可供使用的文件系统类型,一种类型一行。虽然它们通常是编入内核的文件系 统类型,但该文件还可以包含可加载的内核模块加入的其它文件系统类型。示例:rootlocalhost procj# cat /proc/fil

6、esystemsnodev sysfsnodev rootfsnodev bdevnodev procno dev sockfsnodev binfmt_miscnodev usbfsnodev usbdevfsnodev futexfsnodev tmpfsnodev pipefsnodev eventpollfsnodev devptsext2no dev ramfsnodev hugetlbfsiso9660nodev mqueuenodev selinuxfsext3nodev rpc_pipefsnodev autofs/proc/interrupts 文件这个文件的每一行都有一个保

7、留的屮断。每行屮的域有:屮断号,本行屮断的发生次数,可 能带有一个加号的域(sajnterrupt标志设置),以及登记这个中断的驱动程序的名字。 可以在安装新硬件前,像查看/proc/dma和/proc/ioports 一样用cat命令手工查看手头的这个 文件。这几个文件列出了当前投入使用的资源(但是不包括那些没有加载驱动程序的硬件所 使用的资源)。示例:rootlocalhost specs# cat /proc/interruptscpuo0: 7039406 xt-pic timer1: 6533 xt-pic i80422: 0 xt-pic cascade3: 0 xt-pic uh

8、ci_hcd5: 108 xt-pic via8233, uhci_hcd&1 xt-pic rtc9: 0 xt-pic acpi10: 0 xt-pic ehci.hcd11: 17412 xt-pic uhci_hcd, etho12: 140314 xt-pic i804214: 37897 xt-pic ideo15: 60813 xt-pic idelnmi:0err: 1/proc/ioports 文件这个文件列出了诸如磁盘驱动器,以太网卡和声卡设备等多种设备驱动程序登记的许多i/o 端口范围。示例:rootlocalhost specs# cat /proc/iopor

9、ts0000-001 f:dma i0020-0021 : picl0040-0043 : timero0050-0053 : timer 10060-006f: keyboard0070-0077 : rtc0080-008f: dma page regooao-ooa 1 : pic2ooco-oodf: dma2oofo-ooff: fpu0170-0177 : idel01f0-01h:ide00376-0376: idel0378-037a : parporto037b-037f: parportoo3co-o3df: vga+03f6-03f6 : ideo03f8-03ff: s

10、erial0800-0803 : pmla_evt_blk0804-0805 : pmla_cnt_blk0808-080b : pm_tmr0810-0815 : acpi cpu throttle0820-0823 : gpe0 blk0cf8-0cff: pci confl dcoo-dcff: 0000:00:12.0 dcoo-dcff: via-rhine eooo-eoff: 0000:00:11.5 eooo-eoff: v1a8233 e400-e41f: 0000:00:10.0 e400-e41 f: uhci_hcd e8oo-e8 if: 0000:00:10.1 e

11、8oo-e81f: uhci_hcd ecoo-eclf: 0000:00:10.2 ecoo-ec 1 f: uhci_hcd fcoo-fcof: 0000:00:11.1 fc00-fc07 : ideo fco8-fcof: idel/proc/kcore 文件这个文件是系统的物理内存以core文件格式保存的文件。例如,gdb能用它考察内核的数 据结构。它不是纯文本,而是/proc i录下为数不多的几个二进制格式的项之一。示例:暂无(因为会打印大量的乱码)/proc/kmsg 文件这个文件用于检索用printk生成的内核消息。任何时刻只能有一个具有超级用户权限的进程 可以读取这个文件。

12、也可以用系统调用syslog检索这些消息。通常使用工具dmesg或守护 进程klogd检索这些消息。示例:暂无/proc/ksyms 文件这个文件列出了已经登记的内核符号;这些符号给出了变量或函数的地址。每行给出一个符 号的地址,符号名称以及登记这个符号的模块。程序ksymsjnsmod和knwd使用这个文件。 它还列出了正在运行的任务数,总任务数和最后分配的pido示例:暂无/proc/loadavg 文件 这个文件给出以儿个不同的时间间隔计算的系统平均负载,这就如同upiime命令显示的结 果那样。前三个数字是平均负载。这是通过计算过去1分钟,5分钟,15分钟里运行队列中 的平均任务数得到

13、的。随后是正在运行的任务数和总任务数。最后是上次使用的进程号。 示例:rootlocalhost # cat /proc/loadavg().11 0.16 0.14 3/126 3912/proc/locks 文件这个文件包含在打开的文件上的加锁信息。文件屮的侮一行描述了特定文件和文档上的加锁 信息以及对文件施加的锁的类型。内核也可以需要时对文件施加强制性锁。示例:lrootlocalhost redhat# cat /proc/locks1: posix advisory read 3822 03:0a: 1067117 0 eof2: posix advisory read 3822 0

14、3:0a: 1067138 0 eof3: posix advisory write 3326 03:0a:2326540 0 eof4: posix advisory write 2639 03:0a:2966595 0 eof5: flock advisory write 2591 03:0a:2966586 0 eof6: posix advisory write 2540 03:0a:2966578 0 eof7: posix advisory write 2530 03:0a:2966579 0 eof& posix advisory write 2402 03:0a:296

15、6563 0 eof9: posix advisory write 2371 03:0a:2966561 0 eof参考文献:gnu/linux编程指南美kurt wall等著张辉译sams清华大学出版社续linux中/proc目录下文件详解(二)/proc/mdstat 文件这个文件包含了由md设备驱动程序控制的raid设备信息。 示例:frootlocalhost # cat /proc/mdstatpersonalities :unused devices: <none>/proc/meminfo 文件这个文件给出了内存状态的信息。它显示出系统中空闲内存,已用物理内存和交换内

16、存的总 量。它还显示出内核使用的共享内存和缓冲区总量。这些信息的格式和free命令显示的结果类似。示例:rootlocalhost # cat /proc/meminfomemtotal:memfree:buffers:cached: swapcached:active:inactive:hightotal: highfree: lowtotal:lowfree:swaptotal: swapfree: dirty: writeback: mapped:slab: committed. as: pagetables: vmalloctotal: vmallocuse d: vmallocchu

17、nk:223812 kb3764 kb9148 kb92112kb364 kb183640 kb17196 kbokbokb223812 kb3764 kb626524 kb620328 kb12 kbokb142880 kb12668 kb376732 kb2336 kb3907576 kb2968 kb3904224 kbhugepages_total:0hugepages_free:0hugepagesize:4096kb/proc/misc 文件这个文件报告用内核函数misc_register登记的设备驱动程序。 示例:rootlocalhost # cat /proc/misc63

18、device-mapper175 agpgart135 rtc/proc/modules 文件这个文件给出可加载内核模块的信息。lsmod程序用这些信息显示有关模块的名称,大小, 使用数目方面的信息。示例:root local host /# cat /proc/modulesmd5 4033 1 - live 0xl0a7f000 ipv6 2325力 8 - live ox 1 obocooo parport_pc 24705 1 live 0xl0a8b000 lp 11565 0 -live ox 10a7b000 parport 41737 2 parport_pc,lp, live

19、 0xl0a55000 autofs4 24005 0 live 0xl0a74000 i2c_dev 10433 0 - live ox 109d2000 i2c_core 22081 1 i2c_dev, live ox 10a6d000 sunrpc 160421 1 live 0xl0a9d000 ipt_reject 6465 1 - live ox 109da000 ipt_state 1857 5 - live 0xl09eb000 ip_conntrack 40693 1 ipt_state, live 0xl0a62000 iptable_filter 2753 1 - li

20、ve 0x10896000 ip_tables 16193 3 ipt_reject,ipt_state,iptable_filter, live ox 109ed000 dm_mod 54741 0 live oxlo9f8ooo button 6481 0 live ox 10905000 battery 8517 0 live ox 109d6000 ac 4805 0 live ox 10908000 uhci.hcd 31449 0 live 0xl09dd000 ehci_hcd 31557 0 live ox 10949000 snd_via82xx 27237 2 live 0

21、x10953000 snd_ac97_codec 64401 i snd_via82xx, live 0x10912000 snd_pcm_oss 47609 0 - live 0xl093c000 snd_mixer_oss 17217 2 snd_pcm_oss, live 0xl090c000 snd_pcm 97993 2 snd_via82xx,snd_pcm_oss, live 0x10923000 snd_timer 29765 1 snd_pcm, live 0xl08ec000 snd_page_alloc 9673 2 snd_via82xx,snd_pcm, live o

22、x 1 osbdooo gameport 4801 1 snd_via82xx, live ox 108a6000 snd_mpu401_uart 8769 1 snd_via82xx, live ox 108b9000 snd_rawmidi 26725 i snd_mpu401 _uart, live 0xl08e4000 snd_seq_device 8137 1 snd_rawmidi, live oxlo83booosnd5405311snd_via82xx,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer,snd_

23、mpu401_uart ,snd_rawmidi,snd_seq_device, live 0xl08f6000soundcore 9889 2 snd, live ox 1089b000 via_rhine 23497 0 live 0xl089f000 mii 4673 1 via_rhine, live 0x10893000 floppy 58609 0 live 0xl08a9000 ext3 116809 1 live 0x10875000 jbd 74969 1 ext3, live 0x10861000 lsmod命令显示结果如下:ehcihcd sndlvia82xx sndl

24、ac97lcodec sndlpcmloss sndlmixerloss sndlpcm sndihmer sndlpagela 二 oc gamepoil sndlmpu42luar sndlrawmidi sndlseqdevice snd31557 027237 264401 1 sndlvia82xx47609 017217 2 sndlpcmloss97993 2 sndlvia82xxjsndlpcmloss29765 1 sndpcm9673 2 sndlvia82xx9sndlpcm4x01 1 sndlviax2xxx769 1 sndlviax2xx 26725 1 snd

25、lmpu4o lluall8137 1 sndlnlwmidi54053 二sndlviax2xxjsndlac97lcodepsndlpcmloss9sndlmixerloss9sndlpcm9sndlhme:sndlmpu401luailjsndlrawmidlsndlseqdevicesoundcore9889 2 sndvialrhine mii floppy ex3 jbd23497 04673 1 vialrhine58609 01160009 174969 1 exqroo<§nocrdhos al# ismodmodu-e md5ipv6 parportpc一

26、pparpoil auiofs4 i2cldev i2clcore sunrpc iplireject ipils 目e ipconmrack ipsbqlfnqr iptab-es dmlmod buuon baheryac uhci hcdsize used by4033 1232577 824705 111565 041737 2parportlpcjp24005 0一0433 0220xi 二 2cldev160421 16465 11857 540693 1 ip 厂 suhe2753 116193 3 ip 厂 rejectjplstatpiptablelfilter54741 0

27、64001 08517 04oc05 031449 0/proc/mounts 文件这个文件以/etc/mtab文件的格式给出当前系统所安装的文件系统信息。这个文件也能反映出 任何手工安装从而在/etc/mtab文件中没有包含的文件系统。示例:frootlocalhost /# cat /proc/mountsrootfs / rootfs rw 0 0/proc /proc proc rw.nodiratime 0 0none /dev tmpfs rw 0 0/dev/root / ext3 rw 0 0none /dev tmpfs rw 0 0none /selinux selinux

28、fs rw 0 0/proc /proc proc rw.nodiratime 0 0/proc/bus/usb /proc/bus/usb usbfs rw 0 0/sys /sys sysfs rw 0 0none /dev/pts devpts rw 0 0none /dev/shm tmpfs rw 0 0none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0/proc/pci 文件这个文件给出pci设备的信息。用它可以方便地诊断pci问题。你可以从

29、这个文件中检索 到的信息包括诸如ide接口或usb控制器这样的设备,总线,设备和功能编号,设备延迟 以及irq编号。示例:rootlocalhost /# cat /proc/pcipci devices found:bus 0, device 0, function 0:class 0600: pci device 1106:3116 (rev 0).master capable latency=8.prefetchable 32 bit memory at oxeooooooo 0xe7ffffff.bus 0, device 1、function 0:class 0604: pci de

30、vice 1106:b091 (rev 0).master capable. no bursts. min gnt= 12.bus 0, device 16, function 2:class 0c03: pci device 1106:3038 (rev 128).irq 5.master capable latency=32.i/o at oxecoo foxeclf).bus 0, device 16, function 1:class 0c03: pci device 1106:3038 (rev 128).irq 3-master capable. latency=32.i/o at

31、 0xe800 0xe81 f.bus 0, device 16, function 0:class 0c03: pci device 1106:3038 (rev 128).irq 11.master capable. latency=32.i/o at 0xe400 0xe41f.bus 0, device 16, function 3:class 0c03: pci device 1106:3104 (rev 130).irq 10.master capable. latency=32.non-prefetchable 32 bit memory at oxdfffffdo oxdfff

32、ffff.bus 0, device 17, function 0:class 0601: pci device 1106:3177 (rev 0).bus 0, device 17, function 1:class 0101: pci device 1106:0571 (rev 6).irq 255.master capable. latency=32.i/o at oxfcoo oxfcof.bus 0, device 17, function 5:class 0401: pci device 1106:3059 (rev 80).irq 5.i/o at oxeooo oxeoff.b

33、us 0, device 1& function 0:class 0200: pci device 1106:3065 (rev 116).irq 11.master capable. latency=32. min gnt=3.max lat=& i/o at oxdcoo oxdcff.non-prefetchable 32 bit memory at oxdffffeoo oxdffffeffj.bus 1, device 0, function 0:class 0300: pci device 5333:8d04 (rev 0).irq 11.master capabl

34、e. latency=32. min gnt=4.max lat=255. non-prefetchable 32 bit memory at 0xdfe80000 oxdfefffffj. prefetchable 32 bit memory at oxdooooooo oxd7ffffifj.可以是ispci或者lspci -v命令代替/proc/stat 文件这个文件包含的信息有cpu利用率,磁盘,内存页,内存对换,全部中断,接触开关以及 赏赐自举吋间(自1970年1月1日起的秒数)。示例:frootlocalhost /# cat /proc/statcpu 31994 3898 71

35、61 381600 15254 451 0cpuo 31994 3898 7161 381600 15254 451 0intr 4615930 4404290 3364 00 12 070200 12618 112114 0 44142 39381 ctxt 1310498btime 1148891913processes 4249procs_running 4procs_blocked 0/proc/uptime 文件这个文件给出自从上次系统自举以來的秒数,以及其中有多少秒处于空闲。这主要供uptime 程序使用。比较这两个数字能够告诉你长期來看cpu周期浪费的比例。示例:rootloca

36、lhost /# cat /proc/uptime4477.04 402l10/proc/version 文件这个文件只有一行内容,说明正在运行的内核版本。可以用标准的编程方法进行分析获得所 需的系统信息。示例:rootlocalhost /# cat /proc/versionlinux version 2.6.9-1.667 (emailbhcompile/email) (gcc version342 20041017 (red hat 3426.fc3) #1 tue nov 2 14:41:25 est 2004参考文献:gnu/linux编程指南美kun wall等著 张辉 译sam

37、s清华人学出版社续linux中/proc fl录下文件详解(三)/proc/net子日录此目录下的文件描述或修改了联网代码的行为。可以通过使用arp,netstat,route和ipfwadm命 令设置或查询这些特殊文件中的许多文件。示例:rootlocalhost /# is /proc/netanycast6ip_conntrackmcfilter6 rt6_stats tcparpip_co nn track_expect netlink rt_accttcp6devip_mr_cachenetstatrt_cacheudpdev_mcastip_mr_vifpacketsnmpudp6

38、dev_snmp6ip_tables_matchespschedsnmp6unixiflinet6ip_tables_namesrawsockstatwirelessigmpip_tables_targetsraw6sockstatbigmp6ipv6_routeroutesoftnet_statip6_flowlabelmcfilterrpcstat以下摘要介绍/proc/net目录下文件的功能:arp转储每个网络接口的arp表中dev包的统计dev来自网络设备的统计dev_mcast列出二层(数据链路层)多播组igmp加入的igmp多播组netlinknetlink套接口的信息netsta

39、t网络流量的多种统计。第一行是信息头,带有每个变量的名称。接下来的一行保存相应变量 的值raw原始套接口的套接口表route静态路由表rpc包含rpc信息的目录rt_cache路由缓冲snmpsnmp agent的ip/icmp/tcp/udp协议统计:各行交替给出字段名和值sockstat列岀使用的 tcp/udp/raw/pac/syc_cookies 的数量tcptcp连接的套接口udpudp连接的套接口表unixunix域套接口的套接口表示例:rootlocalhost /# cat /proc/net/routeifacedestinationgatewayflagsrefcntus

40、emetricmaskmtuwindowirttetho0035c2da00000000000100080fffff0etho0000fea90000000000010000000fff0etho000000000135c2da000300000000000rootlocalhost /# cat /proc/net/tcpsi local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode0: 00000000:8000 00000000:0000 0a 00000000:000

41、00000 00:00000000 00000000290 9525 1 0dde7500 3000 0 0 2 11:00000000:006f00000000:00000a00000000:00000000 00:0000000000000000 00 9484 1 0dde79e0 3000 002-12:0100007f:027700000000:00000a00000000:00000000 00:0000000000000000 00 10049 1 0a8e3a00 3000 002-13: 0100007f:14d7 00000000:0000 oa 00000000:0000

42、0000 00:00000000 oogogogo 99 0 9847 1 0dde7020 3000 002-14: 0100007f:0019 00000000:00000 10286 1 0a8e3520 3000 002-1oa 00000000:0000000000:0000000000000000 0rootlocalhost /# cat /proc/net/arp ip addresshw typeflags21& 194.530x10x2hw address00:0d:bc:78:07:3fmask*deviceethorootlocalhost /# cat /pr

43、oc/net/udpsi local_address rem_address st txqueue rx_queue tr tm->when retrnsmt uid timeout inode0: 00000000:8000 00000000:0000 07 00000000:00000000 00:00000000 00000000290 9520 2 ob4ef7co105: 00000000:14e9 00000000:0000 07 00000000:00000000 00:00000000 00000000990 10284 2 0b4ef040111:00000000:00

44、6f00000000:00000700000000:0000000000:000000000000000000 9483 2 0b4efcc0116:00000000:02f400000000:00000700000000:0000000000:000000000000000000 9511 2 0b4efa40119:00000000:027700000000:00000700000000:0000000000:00000000ogogogoo00 10050 2 0b4ef2c0/proc/scsi 子目录此目录下包含一个列出了所有检测到的scsi设备的文件,并且为每种控制器驱动程序提供

45、一个目录,在这个目录下又为已安装的此种控制器的每个实例提供一个子目录。示例:rti于本人的机器没有scsi设备,顾暂时无法提供示例。/proc/sys子冃录在此目录下有许多子目录。此目录屮的许多项都可以用来调整系统的性能。这个目录包含信 息太多,无法介绍全部。只在示例中展示目录下的一些文件。示例:rootlocalhost /# is /proc/sysdebug dev fs kernel net proc sunrpc vmrootlocalhost # is /proc/sys/fsaio-max-nr dentry-statefile-nraio-nrdir-notify-enable

46、 inode-nrlease-break-timeleases-enablebinfmt_misc file-maxinode-state mqueueoverflowgid overflowuid quotarootlocalhost # is /proc/sys/kernelaccthotplugpanicsemcad_pidmodprobepanic_on_oopsshmallcap-boundmsgmaxpid_maxshmmaxcore_pattemmsgmnbprint-fatal-signalsshmmnicore_uses_pidmsgmniprintksysrqctrl-al

47、t-delngroups_maxprintk_ratelimittainteddomai nn ameosreleaseprintk_ratelimit_burstthreads-maxexec-shieldostypeptyvdsoexec-shield-randomizeoverflowgidrandomversionhostnameoverflowuid real-root-devrootlocalhost # is /proc/sys/net core ethernet ipv4 ipv6 unixrootlocalhost sys# is /proc/sys/vmblock_dump dirty_background_ratio dirty_expire_centise

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论