OSDN Git Service

LDP: Update original to LDP v3.67
[linuxjm/LDP_man-pages.git] / original / man5 / proc.5
index b861ef0..48876be 100644 (file)
@@ -59,7 +59,7 @@
 .\" to see what information could be imported from that file
 .\" into this file.
 .\"
-.TH PROC 5 2014-04-12 "Linux" "Linux Programmer's Manual"
+.TH PROC 5 2014-05-10 "Linux" "Linux Programmer's Manual"
 .SH NAME
 proc \- process information pseudo-filesystem
 .SH DESCRIPTION
@@ -155,14 +155,14 @@ bits for all file-mapped pages associated with the process.
 .IP
 Clearing the PG_Referenced and ACCESSED/YOUNG bits provides a method
 to measure approximately how much memory a process is using.
-One first inspects the values in the "Referenced:" fields
+One first inspects the values in the "Referenced" fields
 for the VMAs shown in
 .IR /proc/[pid]/smaps
 to get an idea of the memory footprint of the
 process.
 One then clears the PG_Referenced and ACCESSED/YOUNG bits
 and, after some measured time interval,
-once again inspects the values in the "Referenced:" fields
+once again inspects the values in the "Referenced" fields
 to get an idea of the change in memory footprint of the
 process during the measured interval.
 If one is interested only in inspecting the selected mapping types,
@@ -539,7 +539,7 @@ lr\-\-\-\-\-\-\-\-. 1 root root 64 Apr 16 21:31
 .in
 
 Although these entries are present for memory regions that were
-mapped with  the
+mapped with the
 .BR MAP_FILE
 flag, the way anonymous shared memory (regions created with the
 .B MAP_ANON | MAP_SHARED
@@ -1071,7 +1071,7 @@ that does not belong to any file.
 "Swap" shows how much
 would-be-anonymous memory is also used, but out on swap.
 
-The "KernelPageSize" entry  is the page size used by the kernel to back a VMA.
+The "KernelPageSize" entry is the page size used by the kernel to back a VMA.
 This matches the size used by the MMU in the majority of cases.
 However, one counter-example occurs on PPC64 kernels
 whereby a kernel using 64K as a base page size may still use 4K
@@ -1094,7 +1094,7 @@ The codes are the following:
     mw  - may write
     me  - may execute
     ms  - may share
-    gd  - stack segment growns down
+    gd  - stack segment grows down
     pf  - pure PFN range
     dw  - disabled write to the mapped file
     lo  - pages are locked in memory
@@ -1113,7 +1113,7 @@ The codes are the following:
     mm  - mixed map area
     hg  - huge page advise flag
     nh  - no-huge page advise flag
-    mg  - mergable advise flag
+    mg  - mergeable advise flag
 
 The
 .IR /proc/[pid]/smaps
@@ -1929,7 +1929,7 @@ The list below describes the parameter names and
 the format specifier required to read the field value.
 Except as noted below,
 all of the fields have been present since at least Linux 2.6.0.
-Some fileds are displayed only if the kernel was configured
+Some fields are displayed only if the kernel was configured
 with various options; those dependencies are noted in the list.
 .RS
 .TP
@@ -2038,7 +2038,9 @@ Memory which is actively being written back to the disk.
 Non-file backed pages mapped into user-space page tables.
 .TP
 .IR Mapped " %lu"
-Files which have been mmaped, such as libraries.
+Files which have been mapped into memory (with
+.BR mmap (2)),
+such as libraries.
 .TP
 .IR Shmem " %lu (since Linux 2.6.32)"
 [To be documented.]
@@ -2077,7 +2079,7 @@ Memory used by FUSE for temporary writeback buffers.
 .TP
 .IR CommitLimit " %lu (since Linux 2.6.10)"
 Based on the overcommit ratio ('vm.overcommit_ratio'),
-this is the total amount of  memory currently available to
+this is the total amount of memory currently available to
 be allocated on the system.
 This limit is adhered to
 only if strict overcommit accounting is enabled (mode 2 in
@@ -2564,8 +2566,10 @@ The number of swap pages that have been brought in and out.
 \fIintr 1462898\fP
 This line shows counts of interrupts serviced since boot time,
 for each of the possible system interrupts.
-The first column is the total of all interrupts serviced;
-each subsequent column is the total for a particular interrupt.
+The first column is the total of all interrupts serviced
+including unnumbered architecture specific interrupts;
+each subsequent column is the total for that particular numbered interrupt.
+Unnumbered interrupts are not shown, only summed into the total.
 .TP
 \fIdisk_io: (2,0):(31,30,5764,1,2) (3,0):\fP...
 (major,disk_idx):(noinfo, read_io_ops, blks_read, write_io_ops, blks_written)
@@ -3310,6 +3314,14 @@ This file shows the number POSIX real-time signals currently queued.
 See
 .BR sched_rr_get_interval (2).
 .TP
+.IR /proc/sys/kernel/sched_rt_period_us " (Since Linux 2.6.25)"
+See
+.BR sched (7).
+.TP
+.IR /proc/sys/kernel/sched_rt_runtime_us " (Since Linux 2.6.25)"
+See
+.BR sched (7).
+.TP
 .IR /proc/sys/kernel/sem " (since Linux 2.4)"
 This file contains 4 numbers defining limits for System V IPC semaphores.
 These fields are, in order:
@@ -3349,7 +3361,7 @@ that exist independently of any attached process.
 The effect is as though a
 .BR shmctl (2)
 .B IPC_RMID
-is performed on all existing  segments as well as all segments
+is performed on all existing segments as well as all segments
 created in the future (until this file is reset to 0).
 Note that existing segments that are attached to no process will be
 immediately destroyed when this file is set to 1.
@@ -3648,7 +3660,7 @@ If this file is set to the value 1,
 then the kernel normally panics when out-of-memory happens.
 However, if a process limits allocations to certain nodes
 using memory policies
-.RB ( mbind  (2)
+.RB ( mbind (2)
 .BR MPOL_BIND )
 or cpusets
 .RB ( cpuset (7))
@@ -3685,7 +3697,7 @@ For further details see the Linux kernel source file
 .TP
 .I /proc/sysvipc
 Subdirectory containing the pseudo-files
-.IR msg ", "  sem " and "  shm "."
+.IR msg ", " sem " and " shm "."
 These files list the System V Interprocess Communication (IPC) objects
 (respectively: message queues, semaphores, and shared memory)
 that currently exist on the system,
@@ -3696,6 +3708,104 @@ for easy understanding.
 .BR svipc (7)
 provides further background on the information shown by these files.
 .TP
+.IR /proc/timer_list " (since Linux 2.6.21)"
+.\" commit 289f480af87e45f7a6de6ba9b4c061c2e259fe98
+This read-only file exposes a list of all currently pending
+(high-resolution) timers,
+all clock-event sources, and their parameters in a human-readable form.
+.TP
+.IR /proc/timer_stats " (since Linux 2.6.21)"
+.\" commit 82f67cd9fca8c8762c15ba7ed0d5747588c1e221
+.\"    Date:   Fri Feb 16 01:28:13 2007 -0800
+.\" Text largely derived from Documentation/timers/timer_stats.txt
+This is a debugging facility to make timer (ab)use in a Linux
+system visible to kernel and user-space developers.
+It can be used by kernel and user-space developers to verify that
+their code does not make undue use of timers.
+The goal is to avoid unnecessary wakeups,
+thereby optimizing power consumption.
+
+If enabled in the kernel
+.RB ( CONFIG_TIMER_STATS ),
+but not used,
+it has almost zero runtime overhead and a relatively small
+data-structure overhead.
+Even if collection is enabled at runtime, overhead is low:
+all the locking is per-CPU and lookup is hashed.
+
+The
+.I /proc/timer_stats
+file is used both to control sampling facility and to read out the
+sampled information.
+
+timer_stats collects information about the timer events which are fired in a
+Linux system over a sample period:
+
+- the pid of the task(process) which initialized the timer
+- the name of the process which initialized the timer
+- the function where the timer was initialized
+- the callback function which is associated to the timer
+- the number of events (callbacks)
+
+The timer_stats functionality is inactive on bootup.
+A sampling period can be started using the following command:
+
+    # echo 1 > /proc/timer_stats
+
+The following command stops a sampling period:
+
+    # echo 0 > /proc/timer_stats
+
+The statistics can be retrieved by:
+
+    $ cat /proc/timer_stats
+
+While sampling is enabled, each readout from /proc/timer_stats will see
+newly updated statistics.
+Once sampling is disabled, the sampled information
+is kept until a new sample period is started.
+This allows multiple readouts.
+
+Sample output from
+.IR /proc/timer_stats :
+
+.nf
+.RS -4
+.RB $ " cat /proc/timer_stats"
+Timer Stats Version: v0.3
+Sample period: 1.764 s
+Collection: active
+  255,     0 swapper/3        hrtimer_start_range_ns (tick_sched_timer)
+   71,     0 swapper/1        hrtimer_start_range_ns (tick_sched_timer)
+   58,     0 swapper/0        hrtimer_start_range_ns (tick_sched_timer)
+    4,  1694 gnome-shell      mod_delayed_work_on (delayed_work_timer_fn)
+   17,     7 rcu_sched        rcu_gp_kthread (process_timeout)
+\&...
+    1,  4911 kworker/u16:0    mod_delayed_work_on (delayed_work_timer_fn)
+   1D,  2522 kworker/0:0      queue_delayed_work_on (delayed_work_timer_fn)
+1029 total events, 583.333 events/sec
+
+.fi
+.RE
+.IP
+The output columns are:
+.RS
+.IP * 3
+a count of the number of events,
+optionally (since Linux 2.6.23) followed by the letter \(aqD\(aq
+.\" commit c5c061b8f9726bc2c25e19dec227933a13d1e6b7 deferrable timers
+if this is a deferrable timer;
+.IP *
+the PID of the process that initialized the timer;
+.IP *
+the name of the process that initialized the timer;
+.IP *
+the function where the timer was initialized; and
+.IP *
+(in parentheses)
+the callback function that is associated with the timer.
+.RE
+.TP
 .I /proc/tty
 Subdirectory containing the pseudo-files and subdirectories for
 tty drivers and line disciplines.
@@ -3783,10 +3893,11 @@ The Linux kernel source files:
 and
 .IR Documentation/sysctl/vm.txt .
 .SH COLOPHON
-This page is part of release 3.65 of the Linux
+This page is part of release 3.67 of the Linux
 .I man-pages
 project.
 A description of the project,
-and information about reporting bugs,
+information about reporting bugs,
+and the latest version of this page,
 can be found at
 \%http://www.kernel.org/doc/man\-pages/.