proc是什么

在/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 文件系统之中。

 

你可能感兴趣的:(exception,优化,制造,网络协议,Access,磁盘)