old-www/LDP/sag/html/proc-fs.html

437 lines
6.1 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML
><HEAD
><TITLE
>The /proc filesystem</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="Linux System Administrators Guide"
HREF="index.html"><LINK
REL="UP"
TITLE="Overview of the Directory Tree"
HREF="dir-tree-overview.html"><LINK
REL="PREVIOUS"
TITLE="The /var filesystem"
HREF="var-fs.html"><LINK
REL="NEXT"
TITLE="Hardware, Devices, and Tools"
HREF="device-list.html"></HEAD
><BODY
CLASS="SECT1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>Linux System Administrators Guide: </TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="var-fs.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>Chapter 3. Overview of the Directory Tree</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="device-list.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="PROC-FS"
></A
>3.7. The <TT
CLASS="FILENAME"
>/proc</TT
> filesystem</H1
><P
>The <TT
CLASS="FILENAME"
>/proc</TT
> filesystem contains a
illusionary filesystem. It does not exist on a disk. Instead, the
kernel creates it in memory. It is used to provide information
about the system (originally about processes, hence the name). Some
of the more important files and directories are explained below.
The <TT
CLASS="FILENAME"
>/proc</TT
> filesystem is described in more
detail in the <TT
CLASS="FILENAME"
>proc</TT
> manual page.
<DIV
CLASS="GLOSSLIST"
><DL
><DT
><B
><TT
CLASS="FILENAME"
>/proc/1</TT
></B
></DT
><DD
><P
>A directory with information about
process number 1. Each process has a directory below
<TT
CLASS="FILENAME"
>/proc</TT
> with the name being its process
identification number. </P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/cpuinfo</TT
></B
></DT
><DD
><P
>Information about the processor,
such as its type, make, model, and performance.
</P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/devices</TT
></B
></DT
><DD
><P
>List of device drivers configured into the
currently running kernel. </P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/dma</TT
></B
></DT
><DD
><P
>Shows which DMA channels are being used
at the moment. </P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/filesystems</TT
></B
></DT
><DD
><P
>Filesystems configured into the kernel.
</P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/interrupts</TT
></B
></DT
><DD
><P
>Shows which interrupts are
in use, and how many of each there have been.
</P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/ioports</TT
></B
></DT
><DD
><P
>Which I/O ports are in use at the moment.
</P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/kcore</TT
></B
></DT
><DD
><P
>An image of the physical memory of
the system. This is exactly the same size as your
physical memory, but does not really take up that much
memory; it is generated on the fly as programs access it.
(Remember: unless you copy it elsewhere, nothing under
<TT
CLASS="FILENAME"
>/proc</TT
> takes up any disk space
at all.) </P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/kmsg</TT
></B
></DT
><DD
><P
>Messages output by the kernel.
These are also routed to <B
CLASS="COMMAND"
>syslog</B
>.
</P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/ksyms</TT
></B
></DT
><DD
><P
>Symbol table for the kernel.
</P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/loadavg</TT
></B
></DT
><DD
><P
>The `load average' of the system; three
meaningless indicators of how much work the system has
to do at the moment. </P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/meminfo</TT
></B
></DT
><DD
><P
>Information about memory usage, both
physical and swap. </P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/modules</TT
></B
></DT
><DD
><P
>Which kernel modules are loaded at
the moment. </P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/net</TT
></B
></DT
><DD
><P
>Status information about network
protocols. </P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/self</TT
></B
></DT
><DD
><P
>A symbolic link to the process
directory of the program that is looking at
<TT
CLASS="FILENAME"
>/proc</TT
>. When two processes look at
<TT
CLASS="FILENAME"
>/proc</TT
>, they get different links.
This is mainly a convenience to make it easier
for programs to get at their process directory.
</P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/stat</TT
></B
></DT
><DD
><P
>Various statistics about the system, such
as the number of page faults since the system was booted.
</P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/uptime</TT
></B
></DT
><DD
><P
>The time the system has been up.
</P
></DD
><DT
><B
><TT
CLASS="FILENAME"
>/proc/version</TT
></B
></DT
><DD
><P
>The kernel version.
</P
></DD
></DL
></DIV
></P
><P
>Note that while the above files tend to be easily readable
text files, they can sometimes be formatted in a way that is not
easily digestible. There are many commands that do little more than
read the above files and format them for easier understanding. For
example, the <B
CLASS="COMMAND"
>free</B
>program reads
<TT
CLASS="FILENAME"
>/proc/meminfo</TT
> converts the amounts given in
bytes to kilobytes (and adds a little more information, as
well).</P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="var-fs.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="device-list.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>The <TT
CLASS="FILENAME"
>/var</TT
> filesystem</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="dir-tree-overview.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Hardware, Devices, and Tools</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>