


What is the difference between vsz and rss in linux?
The difference between vsz and rss in Linux: 1. rss is the abbreviation of "Resident Set Size", indicating the resident memory size, while vsz is the abbreviation of "Virtual Memory Size", indicating the virtual memory size; 2. RSS is used to indicate how much memory is used by the process, and does not include the memory that has been swapped out, while vsz contains all the memory that the process can access, including the memory that has been swapped out.
#The operating environment of this tutorial: linux7.3 system, Dell G3 computer.
What is the difference between vsz and rss in Linux
RSS is the abbreviation of Resident Set Size (resident memory size), which is used to indicate how much memory (physical memory in RAM) is used by the process. memory), RSS does not include memory that has been swapped out. RSS contains the dynamic libraries it is linked to and loaded into memory in physical memory. RSS also contains stack memory and heap memory.
VSZ is the abbreviation of Virtual Memory Size. It contains all memory that the process can access, including memory that has been swapped out, memory that has been allocated but not yet used, and memory in dynamic libraries.
The example is as follows
Assume that the binary file of process A is 500K and is linked to a 2500K dynamic library. The heap and stack use a total of 200K, of which 100K is in memory (the rest is swapped out or no longer used), a total of 1000K content in the dynamic library and 400K content in the binary file are loaded into the memory, then:
RSS: 400K + 1000K + 100K = 1500K VSZ: 500K + 2500K + 200K = 3200K
Due to part of the memory It is shared and used by multiple processes, so if the RSS values of all processes are added together, it may be greater than the total memory of the system.
If the applied memory is not actually used by the program, it may not be displayed in RSS. For example, if a program applies for a large amount of memory in advance and uses it after a period of time, you will find that RSS will grow while VSZ remains unchanged.
Another concept is PSS, which is the abbreviation of proportional set size (proportional means proportional). This is a new way of measuring things. It proportionally divides the memory used by dynamic libraries. For example, if the dynamic library in our previous example is used by two processes, then:
PSS: 400K + (1000K/2) + 100K = 400K + 500K + 100K = 1000K
Multiple threads in a process share the same address space. So the RSS, VSZ, and PSS of multiple threads in a process are exactly the same. Under Linux, you can use the ps or top command to view this information.
Recommended learning: Linux video tutorial
The above is the detailed content of What is the difference between vsz and rss in linux?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

VS Code system requirements: Operating system: Windows 10 and above, macOS 10.12 and above, Linux distribution processor: minimum 1.6 GHz, recommended 2.0 GHz and above memory: minimum 512 MB, recommended 4 GB and above storage space: minimum 250 MB, recommended 1 GB and above other requirements: stable network connection, Xorg/Wayland (Linux)

The five basic components of the Linux system are: 1. Kernel, 2. System library, 3. System utilities, 4. Graphical user interface, 5. Applications. The kernel manages hardware resources, the system library provides precompiled functions, system utilities are used for system management, the GUI provides visual interaction, and applications use these components to implement functions.

vscode built-in terminal is a development tool that allows running commands and scripts within the editor to simplify the development process. How to use vscode terminal: Open the terminal with the shortcut key (Ctrl/Cmd). Enter a command or run the script. Use hotkeys (such as Ctrl L to clear the terminal). Change the working directory (such as the cd command). Advanced features include debug mode, automatic code snippet completion, and interactive command history.

To view the Git repository address, perform the following steps: 1. Open the command line and navigate to the repository directory; 2. Run the "git remote -v" command; 3. View the repository name in the output and its corresponding address.

Writing code in Visual Studio Code (VSCode) is simple and easy to use. Just install VSCode, create a project, select a language, create a file, write code, save and run it. The advantages of VSCode include cross-platform, free and open source, powerful features, rich extensions, and lightweight and fast.

Although Notepad cannot run Java code directly, it can be achieved by using other tools: using the command line compiler (javac) to generate a bytecode file (filename.class). Use the Java interpreter (java) to interpret bytecode, execute the code, and output the result.

The main uses of Linux include: 1. Server operating system, 2. Embedded system, 3. Desktop operating system, 4. Development and testing environment. Linux excels in these areas, providing stability, security and efficient development tools.

There are six ways to run code in Sublime: through hotkeys, menus, build systems, command lines, set default build systems, and custom build commands, and run individual files/projects by right-clicking on projects/files. The build system availability depends on the installation of Sublime Text.
