Man page - proc_pid_io(5)

Packages contains this manual

Available languages:

en fr pl ro de

Manual

proc_pid_io

NAME
DESCRIPTION
CAVEATS
SEE ALSO

NAME

/proc/pid/io - I/O statistics

DESCRIPTION

/proc/ pid /io (since Linux 2.6.20)

This file contains I/O statistics for the process and its waited-for children, for example:

# cat /proc/3828/io
rchar: 323934931
wchar: 323929600
syscr: 632687
syscw: 632675
read_bytes: 0
write_bytes: 323932160
cancelled_write_bytes: 0

The fields are as follows:
rchar
: characters read

The number of bytes returned by successful read (2) and similar system calls.

wchar : characters written

The number of bytes returned by successful write (2) and similar system calls.

syscr : read syscalls

The number of "file read" system calls—those from the read (2) family, sendfile (2), copy_file_range (2), and ioctl (2) BTRFS_IOC_ENCODED_READ [ _32 ] (including when invoked by the kernel as part of other syscalls).

syscw : write syscalls

The number of "file write" system calls—those from the write (2) family, sendfile (2), copy_file_range (2), and ioctl (2) BTRFS_IOC_ENCODED_WRITE [ _32 ] (including when invoked by the kernel as part of other syscalls).

read_bytes : bytes read

The number of bytes really fetched from the storage layer. This is accurate for block-backed filesystems.

write_bytes : bytes written

The number of bytes really sent to the storage layer.

cancelled_write_bytes :

The above statistics fail to account for truncation: if a process writes 1 MB to a regular file and then removes it, said 1 MB will not be written, but will have nevertheless been accounted as a 1 MB write. This field represents the number of bytes "saved" from I/O writeback. This can yield to having done negative I/O if caches dirtied by another process are truncated. cancelled_write_bytes applies to I/O already accounted-for in write_bytes .

Permission to access this file is governed by ptrace (2) access mode PTRACE_MODE_READ_FSCREDS .

CAVEATS

These counters are not atomic: on systems where 64-bit integer operations may tear, a counter could be updated simultaneously with a read, yielding an incorrect intermediate value.

SEE ALSO

getrusage (2), proc (5)