When the system encounters various IO bottlenecks, high memory usage, high CPU usage and other problems, how do we locate the error? Linux provides many commands to help us quickly locate errors. The free command is one of the most commonly used commands in Linux: it can view the system's memory status, including the server's total memory, used memory, and remaining unused memory, as well as the memory occupied by the buffer and cache. $ free -m total used free shared buffers cached Mem: 994 787 207 0 121 227 -/+ buffers/cache: 437 557 Swap: 0 0 0 To fully understand the above three lines of data, first understand what buffer and cache are. buffer: buffer Buffer the data to solve the handover problem between slow and fast speeds; the fast speed needs to pass the data bit by bit to the slow speed area through the buffer. For example: when writing data from memory to hard disk, it is not written directly, but buffered to a certain size and then flushed to the hard disk.
cache: cache To achieve data reuse, slow devices need to cache frequently used data, and the cached data can provide high-speed transmission to fast devices. For example: reading data from the hard disk and placing it in the cache area of the memory will allow the same resource to be accessed much faster in the future.
The buffer is used to store data to be output to the disk (block device), while the cache is used to store data read from the disk. Both are designed to improve IO performance. After understanding the role of buffer and cache, the information displayed by free is easy to understand. Now let's analyze the meaning of each line of the free command output: First row: Mem The total memory 994 (total) = 787 (used) + 207 (free), used indicates the memory that has been used by the system, which includes the memory used by the application and the sum of the memory used for buffering and caching. Second line: -/+ buffers/cache -buffers/cache: 437(used) = 787(used) - 121(buffers) - 227(cached), 437 means that excluding the memory consumed by buffers and caches, the actual memory consumed by the application is 437M. +buffers/cache: 557(free) = 207(free)+121(buffers)+cached(227), 557 means the system has 557M of available memory, because if there is a memory shortage, the memory occupied by buffers and cache can still be used by applications. Third row: Swap I have seen many articles that simply say no need to explain, but I want to explain here that Swap means swap partition, which is what we usually call virtual memory. You can use part of the disk space as memory. This space is called virtual memory. When the system memory is insufficient, the system will temporarily put those programs that are still resident in the memory but not currently running into the virtual memory. The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM. You may also be interested in:
|
<<: How to use CSS custom variables in Vue
>>: MySQL 8 new features: Invisible Indexes
This article example shares the specific code of ...
I believe everyone has played scratch tickets. Wh...
<br />This article will briefly introduce yo...
Here, clever use of CSS techniques allows you to g...
Test the efficiency of deleting a large number of...
Table of contents For example: General writing: S...
by Take the effect shown in the picture as an exa...
MySQL version: MySQL Community Edition (GPL) ----...
Table of contents Preface 1. DDL 1.1 Database Ope...
Recently, when using select query in a project, I...
About CSS3 variables When declaring a variable, a...
Docker has been very popular in the past two year...
Translated from Docker official documentation, or...
If a form field in a form is set to disabled, the ...
There are three main ways to use CSS in a page: ad...