Skip to content

FediSalhi/System_Monitor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

System Monitor

This project is a simpler version of the Linux system monitoring tool htop that was built for the Udacity C++ Nano Degree program second course. The tool shows information related to the system and the proccesses, including:

  • Operating system name and version
  • Kernel version
  • Average CPU utilization
  • Average RAM utilization
  • Total number of processes
  • Number of running processes
  • System Up Time
  • List of 10 processes with the highest CPU utilization. The list includes:
    • Process ID
    • User name
    • CPU core utilization
    • RAM
    • Up Time
    • Command used to run the process

The project relies on ncurses, a library that facilitates text-based graphical output in the terminal.

Dependencies (Linux)

  1. Cmake and GCC:
    sudo apt update
    sudo apt install build-essential
    sudo apt install cmake
  1. Ncurses Ncurses Library
sudo apt install libncurses5-dev libncursesw5-dev

Build

To Build the project, first, create a build directory and change to that directory:

    mkdir build && cd build

From within the build directory, run cmake and make as follows:

    cmake ..
    make

Run

The executable will be placed in the build directory. From within build, you can run the project as follows:

    ./monitor

Authors