王朝百科
分享
 
 
 

proc

王朝百科·作者佚名  2010-02-18  
宽屏版  字体: |||超大  

1.赛普拉斯半导体公司推出其下一代可编程片上射频系统PRoC LP。该产品把WirelessUSB LP 2.4GHz收发器与enCoRe II 8位闪存微控制器集成在一颗单芯片上。PRoC LP简化了编码和电路板布局,旨在缩减设计时间,并降低诸如鼠标、演示工具和RF遥控器等创新、小型无线人机接口设备的板级空间要求。

/proc文件系统简介

2.proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文件时,proc文件系统是动态从系统内核读出所需信息并提交的。它的目录结构如下:

目录名称 目录内容

apm 高级电源管理信息

cmdline 内核命令行

Cpuinfo关于Cpu信息

Devices可以用到的设备(块设备/字符设备)

DmaUsed DMS channels

Filesystems 支持的文件系统

Interrupts 中断的使用

IoportsI/O端口的使用

Kcore内核核心印象

Kmsg内核消息

Ksyms内核符号表

Loadavg负载均衡

Locks内核锁

Meminfo内存信息

MiscMiscellaneous

Modules加载模块列表

Mounts加载的文件系统

Partitions 系统识别的分区表

RtcReal time clock

Slabinfo Slab pool info

Stat全面统计状态表s

Swaps对换空间的利用情况

Version内核版本

Uptime系统正常运行时间

并不是所有这些目录在你的系统中都有,这取决于你的内核配置和装载的模块。另外,在/proc下还有三个很重要的目录:net,scsi和sys。Sys目录是可写的,可以通过它来访问或修改内核的参数(见下一部分),而net和scsi则依赖于内核配置。例如,如果系统不支持scsi,则scsi目录不存在。

除了以上介绍的这些,还有的是一些以数字命名的目录,它们是进程目录。系统中当前运行的每一个进程都有对应的一个目录在/proc下,以进程的PID号为目录名,它们是读取进程信息的接口。而self目录则是读取进程本身的信息接口,是一个link。Proc文件系统的名字就是由之而起。进程目录的结构如下:

目录名称 目录内容

Cmdline命令行参数

Environ环境变量值

Fd一个包含所有文件描述符的目录

Mem进程的内存被利用情况

Stat进程状态

StatusProcess status in human readable form

Cwd当前工作目录的链接

ExeLink to the executable of this process

Maps内存印象

Statm进程内存状态信息

Root链接此进程的root目录

用户如果要查看系统信息,可以用cat命令。例如:

>; cat /proc/interrupts

CPU0

0:8728810XT-PICtimer

1:895XT-PICkeyboard

2:0XT-PICcascade

3:531695XT-PICaha152x

4:2014133XT-PICserial

5:44401XT-PICpcnet_cs

8:2XT-PICrtc

11:8XT-PICi82365

12:182918XT-PICMouse

13:1XT-PICfpu PS/2

14:1232265XT-PICide0

15:7XT-PICide1

NMI:0

2、 修改内核参数

在/proc文件系统中有一个有趣的目录:/proc/sys。它不仅提供了内核信息,而且可以通过它修改内核参数,来优化你的系统。但是你必须很小心,因为可能会造成系统崩溃。最好是先找一台无关紧要的机子,调试成功后再应用到你的系统上。

要改变内核的参数,只要用vi编辑或echo参数重定向到文件中即可。下面有一个例子:

# cat /proc/sys/fs/file-max

4096

# echo 8192 >; /proc/sys/fs/file-max

# cat /proc/sys/fs/file-max

8192

如果你优化了参数,则可以把它们写成脚本文件,使它在系统启动时自动完成修改。

×××××××××××××××××××××××××××××××××

/proc 文件系统是一个假的文件系统。它不存在在磁盘某个磁盘上。而是由核心在内存中产生。用于提供关于系统的信息(originally about processes, hence the name)。下面说明一些最重要的文件和目录。 /proc 文件系统在proc man页中有更详细的说明。

/proc/1

关于进程1的信息目录。每个进程在/proc 下有一个名为其进程号的目录。

/proc/cpuinfo

处理器信息,如类型、制造商、型号和性能。

/proc/devices

当前运行的核心配置的设备驱动的列表。

/proc/dma

显示当前使用的DMA通道。

/proc/filesystems

核心配置的文件系统。

/proc/interrupts

显示使用的中断,and how many of each there have been.

/proc/ioports

当前使用的I/O端口。

/proc/kcore

系统物理内存映象。与物理内存大小完全一样,但不实际占用这么多内存;it is generated on the fly as programs access it. (记住:除非你把它拷贝到什么地方,/proc 下没有任何东西占用任何磁盘空间。)

/proc/kmsg

核心输出的消息。也被送到syslog 。

/proc/ksyms

核心符号表。

/proc/loadavg

系统"平均负载";3个没有意义的指示器指出系统当前的工作量。

/proc/meminfo

存储器使用信息,包括物理内存和swap。

/proc/modules

当前加载了哪些核心模块。

/proc/net

网络协议状态信息。

/proc/self

到查看/proc 的程序的进程目录的符号连接。当2个进程查看/proc 时,是不同的连接。这主要便于程序得到它自己的进程目录。

/proc/stat

系统的不同状态,such as the number of page faults since the system was booted.

/proc/uptime

系统启动的时间长度。

/proc/version

核心版本。

注意所有上述文件给出易读的文本文件,有时可能是不易读的格式。有许多命令做了些格式化以更容易读。例如,free 程序读/proc/meminfo 并将给出的字节数转换为千字节(并增加了一些信息)。

××××××××××××××××××××××××××××××××

不用重新启动而去看 CMOS ,就可以知道系统信息。这就是 /proc 的妙处之一。

/proc 文件系统是了解系统信息的一个窗口,本文将就此展开讨论,举例说明/proc 文件系统的内部结构。 /proc 文件系统是虚拟的文件系统,看似存在的文件实际并没有在硬盘上。其实,/proc 是你了解自己系统的一个窗口,它实际存在于内存。 例如: /proc/cpuinfo 包含了处理器的信息,例如,类型、制造商、型号等。一个输出的例子如下: [albert@www tmp]$ cat /proc/cpuinfo processor: 1 vendor_id: GenuineIntel cpu family: 6 model: 7 model name: Pentium III (Katmai) stepping: 3 cpu MHz: 501.146145 cache size: 512 KB fdiv_bug: no hlt_bug: no sep_bug: no f00f_bug: no coma_bug: no fpu: yes fpu_exception: yes cpuid level: 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx osfxsr kni bogomips : 499.71 /proc/devices 列出内核中配置的设备驱动程序 /proc/interrupts 列出使用中的中断号,这在硬件冲突的诊断中十分有用。 /proc/kmsg 这些是内核输出的信息,也送到syslog。 /proc/meminfo 列出系统的内存情况,包括物理内存和交换区。一个输出的例子如下: [albert@www tmp]$ cat /proc/meminfo total: used: free: shared: buffers: cached: Mem: 263806976 206512128 57294848 39387136 92950528 56168448 Swap: 279617536 7405568 272211968 MemTotal: 257624 kB MemFree: 55952 kB MemShared: 38464 kB Buffers: 90772 kB Cached: 54852 kB SwapTotal: 273064 kB SwapFree: 265832 kB /proc/modules 输出当前加载的内核模块。 /proc/net 这个目录包含了系统网络配置的信息,我将另外撰文讲述。 /proc/pci 列出系统的PCI 设备 可以看出,/proc 文件系统是十分有用的,其实,有些我们平时使用的命令就来源于 /proc。例如 uname -a 的部分信息来自 /proc/version , uptime 的部分信息来自 /proc/uptime 和 /proc/loadavg , 所以,下次有人问你机器的主频是多少时,就没有必要翻箱倒柜寻找手册了,一切都在 /proc 文件系统之中。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格​十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有