Common Errors
PermissionError: [Errno 13] Permission denied
PermissionError: [Errno 13] Permission denied
Problem
Memory Monitor cannot read certain process information from/proc/[pid]/status due to insufficient permissions.Why It Happens
The Linux kernel restricts access to process information for security reasons. Processes owned by other users (especially root) cannot be read without elevated privileges.Memory Monitor is designed to silently skip processes it cannot access, so you’ll still get results for processes you have permission to read.Solutions
If you need complete system visibility:Code Behavior
Memory Monitor handles this gracefully inprocess_analyzer.py:25-26:FileNotFoundError: [Errno 2] No such file or directory
FileNotFoundError: [Errno 2] No such file or directory
Problem
A process terminated between when Memory Monitor listed it and when it tried to read its status file.Why It Happens
Processes can start and stop rapidly on a busy system. The/proc/[pid]/ directory disappears immediately when a process exits.Memory Monitor handles this automatically by skipping terminated processes.Solution
No action required. This is normal behavior and handled gracefully by the code in
process_analyzer.py:23-24:No output appears or empty results
No output appears or empty results
Problem
Memory Monitor runs but shows no memory statistics or shows zeros for all values.Possible Causes
1. Running on non-Linux systemMemory Monitor requires Linux’s/proc filesystem and will not work on:- Windows
- macOS
- BSD systems (without Linux compatibility layer)
/proc may not be mounted.Check if /proc is available:OSError or IOError when reading /proc files
OSError or IOError when reading /proc files
Problem
Unexpected I/O errors when accessing/proc filesystem.Possible Causes
- Corrupted or unusual
/procfilesystem state - Running in a container with restricted access
- System under extreme load or out of memory
Solutions
-
Verify
/procis accessible: -
Check system resources:
-
Restart in a clean environment:
- Exit and restart your terminal
- If in a container, restart the container
-
Check system logs:
Look for kernel errors related to memory or processes.
Platform Compatibility
Supported
- Ubuntu / Debian
- Red Hat / CentOS / Fedora
- Arch Linux
- Alpine Linux (in containers)
- Any Linux distribution with
/procfilesystem
Not Supported
- Windows (no
/procfilesystem) - macOS (uses different process information system)
- BSD systems (use different
/procstructure)
Running in Containers
Memory Monitor works in Docker and other containers, but:Container considerations:
- You’ll only see processes running inside the container
- Memory statistics reflect the container’s view (may be limited by cgroups)
- Some containers run as non-root and may have limited
/procaccess
Python Version Issues
Type Hint Compatibility
The code uses modern Python type hints including:If You See Type Errors
-
Check your Python version:
-
Upgrade to Python 3.10 or later:
-
Or modify the code for older Python:
Replace type hints with compatible syntax:
Installation Issues
Module not found errors
Module not found errors
Unexpected Output Issues
All memory values show as 0
All memory values show as 0
VmRSS shows 0 kB for top process
VmRSS shows 0 kB for top process
Getting Help
Next Steps
- Learn how to interpret output: Understanding Output
- Review installation steps: Quickstart
- Understand memory metrics: Understanding Output - Memory Statistics