The application you are about to work on is a [**Desktop System Monitor**](https://en.wikipedia.org/wiki/System_monitor). The app will monitor the computer system resources and performance, such as CPU, RAM, SWAP, Fan, Network and more.
- **Immediate mode**: the application state is separated from the graphics library. It is the application responsibility for drawing commands when necessary. In other words, in immediate mode the client calls directly results in the rendering of graphics objects to the display.
- **Retained mode**: the client calls do not directly cause actual rendering, but instead update an abstract internal model, which is maintained within the library's data space. You can see more about this mode [here](https://en.wikipedia.org/wiki/Retained_mode).
The file system provided, [here](https://assets.01-edu.org/system-monitor/system-monitor.zip), will contain all the `ImGui IPA`. For easier understanding, see below a representation of the fs.
The `/proc` filesystem is a virtual system that does not exist on disk. This system is created by the kernel when the system boots, and destroyed by it when the system shuts down.
This filesystem contains information about the system, from the CPU, to memory, to active processes and much more. For this reason, it can be regarded as
a control and information center for the kernel. As a matter of fact, a lot of the system utilities are simple calls to files in this directory.
-`Fan`, should include the following information, the status of the fan, (enable/active), the current speed and the level. And should also present the graph stated above.
- It should also contain a tabbed section for both `RX` and `TX`, those sections should display a visual usage (ex: a progress bar), of all network present on the computer. This visual display should obey the following rules: