Olaf Hering 809b6ecb53 tools/thermal: tmon: use pkg-config also for CFLAGS 9 年之前
..
.gitignore 3dc3712a82 tools/thermal: tmon: add .gitignore 10 年之前
Makefile 809b6ecb53 tools/thermal: tmon: use pkg-config also for CFLAGS 9 年之前
README 94f69966fa tools/thermal: Introduce tmon, a tool for thermal subsystem 11 年之前
pid.c 94f69966fa tools/thermal: Introduce tmon, a tool for thermal subsystem 11 年之前
sysfs.c e4e458b45c calloc/xcalloc: Fix argument order 10 年之前
tmon.8 4cc32cb4e9 tools/thermal: tmon: add --target-temp parameter 10 年之前
tmon.c 4cc32cb4e9 tools/thermal: tmon: add --target-temp parameter 10 年之前
tmon.h 94f69966fa tools/thermal: Introduce tmon, a tool for thermal subsystem 11 年之前
tui.c 986ffe0384 tools/thermal: tmon: silence 'set but not used' warnings 10 年之前

README

TMON - A Monitoring and Testing Tool for Linux kernel thermal subsystem

Why TMON?
==========
Increasingly, Linux is running on thermally constrained devices. The simple
thermal relationship between processor and fan has become past for modern
computers.

As hardware vendors cope with the thermal constraints on their products, more
and more sensors are added, new cooling capabilities are introduced. The
complexity of the thermal relationship can grow exponentially among cooling
devices, zones, sensors, and trip points. They can also change dynamically.

To expose such relationship to the userspace, Linux generic thermal layer
introduced sysfs entry at /sys/class/thermal with a matrix of symbolic
links, trip point bindings, and device instances. To traverse such
matrix by hand is not a trivial task. Testing is also difficult in that
thermal conditions are often exception cases that hard to reach in
normal operations.

TMON is conceived as a tool to help visualize, tune, and test the
complex thermal subsystem.

Files
=====
tmon.c : main function for set up and configurations.
tui.c : handles ncurses based user interface
sysfs.c : access to the generic thermal sysfs
pid.c : a proportional-integral-derivative (PID) controller
that can be used for thermal relationship training.

Requirements
============
Depends on ncurses

Build
=========
$ make
$ sudo ./tmon -h
Usage: tmon [OPTION...]
-c, --control cooling device in control
-d, --daemon run as daemon, no TUI
-l, --log log data to /var/tmp/tmon.log
-h, --help show this help message
-t, --time-interval set time interval for sampling
-v, --version show version
-g, --debug debug message in syslog

1. For monitoring only:
$ sudo ./tmon