> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/leonardo02lobo/Memory-Monitor/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

> Learn about Memory Monitor, a lightweight Linux system monitoring tool for tracking memory usage

## What is Memory Monitor?

Memory Monitor is a lightweight system monitoring tool designed for Linux systems. It provides real-time insights into your system's memory usage and helps you identify which processes are consuming the most memory.

Built entirely in Python with zero external dependencies, Memory Monitor directly reads system information from `/proc/meminfo` and `/proc/[pid]/status` files to deliver accurate, instant memory statistics.

## Why Use Memory Monitor?

Memory management is critical for system performance. Memory Monitor helps you:

* **Quickly diagnose memory issues** - Instantly see total, free, and used memory along with buffer and cache statistics
* **Identify memory-hungry processes** - Automatically find the process with the highest RSS (Resident Set Size) memory consumption
* **Monitor without overhead** - No external dependencies or heavy monitoring frameworks required
* **Understand memory distribution** - See how your memory is allocated between active use, buffers, and cache

## Who Should Use Memory Monitor?

Memory Monitor is ideal for:

* **System administrators** managing Linux servers and needing quick memory diagnostics
* **Developers** debugging memory leaks or optimizing application memory usage
* **DevOps engineers** troubleshooting performance issues in production or staging environments
* **Students and learners** understanding how Linux memory management works
* **Anyone** who needs a simple, dependency-free tool to check memory status

## Key Features

<CardGroup cols={2}>
  <Card title="System Memory Stats" icon="chart-line">
    Displays total memory, free memory, buffers, cached memory, and calculated memory usage by reading directly from `/proc/meminfo`
  </Card>

  <Card title="Process Analysis" icon="microchip">
    Scans all running processes to identify which one has the highest VmRSS (resident memory), showing the process name, PID, and memory consumption
  </Card>

  <Card title="Zero Dependencies" icon="feather">
    Written in pure Python using only standard library modules (`pathlib`, `os`) - no pip installs required
  </Card>

  <Card title="Direct /proc Access" icon="folder-open">
    Reads system information directly from Linux's `/proc` filesystem for accurate, real-time data
  </Card>
</CardGroup>

## How It Works

Memory Monitor operates through two core functions:

1. **InformationMemory()** - Parses `/proc/meminfo` to extract memory statistics including total memory, free memory, buffers, and cached memory. It calculates used memory with the formula: `MemUsed = MemTotal - MemFree - Buffers - Cached`

2. **ListDirectory()** - Iterates through all process directories in `/proc`, reads each process's `status` file to find VmRSS values, and identifies the process consuming the most resident memory

<Note>
  Memory Monitor requires read access to `/proc/meminfo` and `/proc/[pid]/status` files. Some processes may require elevated privileges to access their status information.
</Note>

## What You'll Learn

In the following pages, you'll learn how to:

* Install Memory Monitor on your Linux system
* Run the tool and interpret its output
* Understand the memory metrics it provides
* Use it for basic system monitoring tasks

Let's get started with installation!
