Link:
Top: The command provides real-time status monitoring of the system's processor. It displays a list of the most "sensitive" tasks for the CPU in the system.
This command can be used on a per-CPU basis. Memory usage and execution time sorting tasks;
And many of the features of the command can be set through interactive commands or in personal customization files.
top-01:06:48 up 1:22, 1 user, load average:0.06, 0.60, 0.48
tasks:29 Total, 1 running, sleeping, 0 stopped, 0 zombie
Cpu (s): 0.3% us, 1.0% sy, 0.0% ni, 98.7% ID, 0.0% wa, 0.0% Hi, 0.0% si
mem:191272k Total, 173656k used, 17616k free, 22052k buffers
swap:192772k Total, 0k used, 192772k free, 123988k cached
PID USER PR NI VIRT RES SHR S%cpu%MEM time+ COMMAND
1379 Root 0 7976 2456 1980 S 0.7 1.3 0:11.03 sshd
14704 Root 0 2128 980 796 R 0.7 0.5 0:02.72 Top
1 Root 0 1992 632 544 S 0.0 0.3 0:00.90 Init
2 Root 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
The first five elements of the statistical information area are the statistical information of the whole system. The first line is the task queue information, with the execution result of the uptime command. The contents are as follows:
01:06:48 Current Time
Up 1:22 system power on to the current operating hours, units: minutes
1 user Current number of users logged on
Load average:0.06, 0.60, 0.48 system load, which is the average length of the task queue.
The three values were 1 minutes, 5 minutes, and 15 minutes ago to the present average.
The second to third behavior process and CPU information. When there are multiple CPUs, the content may be more than two lines. The contents are as follows:
tasks:29 Total Process Totals
1 running number of running processes
Sleeping the number of sleep processes
0 Number of processes stopped stopped
0 Zombie Number of zombie processes
CPU (s): 0.3% US user space consumes CPU percentage
1.0% SY core space CPU percent occupied
0.0% CPU Percentage of processes that have changed priority within NI user process space
98.7% ID Idle CPU percent
0.0% wa wait for the input output CPU time percentage
0.0% Hi Hard Interrupt (Hardware IRQ)% of CPU occupied
0.0% si soft interrupt (software interrupts)% of CPU occupied
The last two behavior memory information. The contents are as follows:
MEM:191272K Total Physical Memory
Total physical memory used by 173656k used
17616k free Memory Total
The amount of memory that 22052k buffers uses as the kernel cache
Total swap area of swap:192772k
Total swap area used by 0k used
192772k Free Swap Area total
123988k cached Buffers The total number of swap areas.
The in-memory content is swapped out to the swap area and then swapped in to memory, but the used swap area has not been overwritten.
This value is the size of the swap area where the content already exists in memory.
When the corresponding memory is swapped out again, it is no longer necessary to write to the swap area.
The details of each process are shown below the process information area statistics area. Let's start by understanding the meaning of the columns.
Ordinal column name meaning
A PID process ID
b PPID Parent Process ID
C ruser Real User name
D UID Process Owner's user ID
e username of user process Owner
Group name of the F group Process owner
The terminal name of the G TTY boot process. Processes that are not started from the terminal are displayed as?
H PR-Priority
I NI nice value. Negative values indicate high priority, positive values indicate low priority
The last CPU used by J P is meaningful only in a multi-CPU environment
K%cpu CPU time consumption percentage last updated to current
The total CPU time, in seconds, used by the timing process
The total CPU time used by the M time+ process, in units 1/100 seconds
n the percentage of physical memory used by the%MEM process
o The total amount of virtual memory used by the VIRT process, in kilobytes. Virt=swap+res
The P swap process uses the size of the virtual memory, which is swapped out, in kilobytes.
The size of the physical memory, in kilobytes, that the Q RES process uses and has not been swapped out. Res=code+data
R code executable code occupies the physical memory size, in kilobytes
The amount of physical memory that is used outside of the S data executable code (data segment + stack), in kilobytes
T SHR shared memory size, in kilobytes
U Nflt page Error count
V NDRT the number of pages that have been modified in the last write to now.
W S Process state.
d= non-disruptive sleep state
R= Run
S= Sleep
t= Tracking/Stopping
z= Zombie Process
x command name/command line
Y Wchan If the process is sleeping, the system function name in sleep is displayed
Z Flags task Flag, reference sched.h
By default, only the more important PID, USER, PR, NI, VIRT, RES, SHR, S,%cpu,%MEM, time+, and COMMAND columns are displayed. You can change the display by using the following shortcut keys.
Change the display by using the F key to select what to display. Press the F key to display a list of columns, press A-Z to show or hide the corresponding column, and then press ENTER to confirm.
Press the O key to change the order in which the columns are displayed. A-Z in the lower case moves the corresponding column to the right, while the uppercase A-Z moves the corresponding column to the left. Finally, press ENTER to confirm.
Press the uppercase F or O key, and then press A-Z to sort the process by the appropriate column. The uppercase R key can reverse the current sort.
The free command is used to display memory usage
B. Format
Free [-b-k-M] [-O] [-s delay] [-t] [-v]
C. Main parameters
-b-k-M: Displays memory usage in bytes (KB, MB), respectively.
-S delay: Displays the number of seconds per second to show memory usage.
-T: Displays the memory sum column.
-O: Do not display buffer throttling columns.
After using this command, the terminal will continually report memory usage (in bytes), updated every 5 seconds
#free-b-S5
Total used free shared buffers Cached
mem:3266180 3250004 16176 0 110652 2668236
-/+ buffers/cache:471116 2795064
swap:2048276 80160 1968116
Total: The amount of physical memory.
Used: How large is used.
Free: How much is available.
Shared: The total amount of memory shared by multiple processes.
Buffers/cached: The size of the disk cache.
Third line (-/+ buffers/cached):
Used: How large is used.
Free: How much is available.
There is not much to explain in line four.
Difference: The used/free of the second line (MEM) differs from the third row (-/+ Buffers/cache) used/free. The difference between the two is that in terms of use,
The first line is from the OS point of view, because for the os,buffers/cached are all belong to be used, so his available memory is 16176KB, used memory is 3250004KB, which includes, the kernel (OS) uses +application (X, Oracle, etc) using the +buffers+cached.
The third line refers to the application from the point of view, buffers/cached is equal to the availability of the application, because buffer/cached is to improve the performance of the file read, when the application needs to use memory, buffer/cached will be quickly recycled.
So from the application's point of view, available memory = System Free memory+buffers+cached.
As in the above example:
2795064=16176+110652+2668236
Next, explain when the memory will be exchanged, and by what side. When the available memory is less than the rated value, a meeting is exchanged.
Memory-intensive measurements
To measure how much memory a process consumes, Linux provides a convenient way for us to provide all the information we have in the/proc directory, and in fact the top tools are also available here to obtain the appropriate information.
Memory usage information for/proc/meminfo machines
The/proc/pid/maps PID is the process number that displays the virtual address occupied by the current process.
Memory occupied by the/PROC/PID/STATM process
Description of top and free commands in Linux (GO)