This Linux System Monitor is an inspiration from htop, a popular system monitor. This project code is written in C++ programming language using its Object Oriented Programming features such as Inheritance, Composition, Polymorphism etc. A graphical display output library named ncurses displays the system information in the terminal. The starter code for this project is provided by Udacity as a part of C++ nanodegree program.
ncurses is a library that facilitates text-based graphical output in the terminal. This project relies on ncurses for display output.
Install ncurses within your Linux environment: sudo apt install libncurses5-dev libncursesw5-dev
This project uses Make. The Makefile has four targets:
build
compiles the source code and generates an executableformat
applies ClangFormat to style the source codedebug
compiles the source code and generates an executable, including debugging symbolsclean
deletes thebuild/
directory, including all of the build artifacts
-
Clone the project repository:
git clone https://github.com/ram-ravan/Linux-System-Monitor.git
-
To compile the project, first, create a
build
directory and change to that directory:
mkdir build && cd build
From within the build
directory, then run cmake
and make
as follows:
cmake ..
make
-
Build the project:
make build
-
Run the resulting executable:
./build/monitor