The hw.sensors framework is a
kernel
Kernel may refer to:
Computing
* Kernel (operating system), the central component of most operating systems
* Kernel (image processing), a matrix used for image convolution
* Compute kernel, in GPGPU programming
* Kernel method, in machine lea ...
-level hardware sensors framework originating from
OpenBSD
OpenBSD is a security-focused operating system, security-focused, free and open-source, Unix-like operating system based on the Berkeley Software Distribution (BSD). Theo de Raadt created OpenBSD in 1995 by fork (software development), forking N ...
, which uses the
sysctl
sysctl is a software utility of some Unix-like operating systems that reads and modifies the attributes of the system kernel such as its version number, maximum limits, and security settings. It is available both as a system call for compiled ...
kernel interface as the transport layer between the kernel and the
userland. , the framework is used by over a hundred
device driver
In computing, a device driver is a computer program that operates or controls a particular type of device that is attached to a computer or automaton. A driver provides a software interface to hardware devices, enabling operating systems and o ...
s in OpenBSD to export various environmental sensors, with
temperature
Temperature is a physical quantity that expresses quantitatively the perceptions of hotness and coldness. Temperature is measured with a thermometer.
Thermometers are calibrated in various temperature scales that historically have relied on ...
sensors being the most common type.
[ Consumption and monitoring of sensors is done in the userland with the help of ]sysctl
sysctl is a software utility of some Unix-like operating systems that reads and modifies the attributes of the system kernel such as its version number, maximum limits, and security settings. It is available both as a system call for compiled ...
, systat, sensorsd, ntpd
The Network Time Protocol daemon (ntpd) is an operating system program that maintains the system time in synchronization with time servers using the Network Time Protocol (NTP).
Description
The ntpd program is an operating-system daemon that ...
, snmp
Simple Network Management Protocol (SNMP) is an Internet Standard protocol for collecting and organizing information about managed devices on IP networks and for modifying that information to change device behaviour. Devices that typically ...
d, ports/sysutils/symon and GKrellM.[
]
Drivers
In OpenBSD, the framework is integrated with Dell
Dell is an American based technology company. It develops, sells, repairs, and supports computers and related products and services. Dell is owned by its parent company, Dell Technologies.
Dell sells personal computers (PCs), servers, data ...
's ESM, IPMI and I2C,[ in addition to a number of popular ]Super I/O
Super I/O is a class of I/O controller integrated circuits that began to be used on personal computer motherboards in the late 1980s, originally as add-in cards, later embedded on the motherboards. A super I/O chip combines interfaces for a var ...
chips through .[
A major difference compared to other solutions like ]lm_sensors
lm_sensors (Linux-monitoring sensors) is a free open-source software-tool for Linux that provides tools and drivers for monitoring temperatures, voltage, humidity, and fans. It can also detect chassis intrusions.
Issues
During 2001/2004, the ...
is simplicity and a works-by-default approach in the drivers, which don't require nor support any configurability; no installation or configuration actions are required by the system administrator
A system administrator, or sysadmin, or admin is a person who is responsible for the upkeep, configuration, and reliable operation of computer systems, especially multi-user computers, such as servers. The system administrator seeks to en ...
in order to get the sensors going.[ This is coupled with a fine-tuned ad-hoc read-only scan procedure on the I2C bus, written by ]Theo de Raadt
Theo de Raadt (; ; born May 19, 1968) is a South African-born software engineer who lives in Calgary, Alberta, Canada. He is the founder and leader of the OpenBSD and OpenSSH projects and was also a founding member of NetBSD. In 2004, De Raadt wo ...
in a centralised way with a cache, making it possible to leave it enabled by default at all times, unlike the competing solutions.[
]
RAID drive
sensors
Support for automatic monitoring of RAID
Raid, RAID or Raids may refer to:
Attack
* Raid (military), a sudden attack behind the enemy's lines without the intention of holding ground
* Corporate raid, a type of hostile takeover in business
* Panty raid, a prankish raid by male colleg ...
drives is also provided through the sensors framework,[ this concept of sensors of ]drive
type has been backported by NetBSD back into envsys
The envsys framework is a kernel-level hardware monitoring sensors framework in NetBSD. , the framework is used by close to 85 device drivers to export various environmental monitoring sensors, as evidenced by references of the sysmon_envsys_ ...
in 2007.[
]
OpenNTPD timedelta
sensors
OpenNTPD uses sensors of type timedelta
in order to synchronise time.[ These are provided by NMEA and other drivers.][
]
History
The framework was originally devised in 2003 by Alexander Yurchenko, when he was porting several envsys
The envsys framework is a kernel-level hardware monitoring sensors framework in NetBSD. , the framework is used by close to 85 device drivers to export various environmental monitoring sensors, as evidenced by references of the sysmon_envsys_ ...
-based drivers from NetBSD
NetBSD is a free and open-source Unix operating system based on the Berkeley Software Distribution (BSD). It was the first open-source BSD descendant officially released after 386BSD was forked. It continues to be actively developed and is a ...
. Instead of porting NetBSD's envsys, a simpler sysctl
sysctl is a software utility of some Unix-like operating systems that reads and modifies the attributes of the system kernel such as its version number, maximum limits, and security settings. It is available both as a system call for compiled ...
-based mechanism was developed.[
The framework received a major uptick in usage by the device drivers with the release of OpenBSD 3.9, where in a period of merely 6 months, the number of individual drivers using the framework went from 9 in OpenBSD 3.8 (released ) to 33 in OpenBSD 3.9 (released ).][
, the framework was used by 44 devices drivers; it is at this time that a patchset has been committed converting a simple one-level addressing scheme into a more stable multi-layer addressing.][
In 2007, the framework was ported to ]FreeBSD
FreeBSD is a free and open-source Unix-like operating system descended from the Berkeley Software Distribution (BSD), which was based on Research Unix. The first version of FreeBSD was released in 1993. In 2005, FreeBSD was the most popular ...
as part of a Google Summer of Code
The Google Summer of Code, often abbreviated to GSoC, is an international annual program in which Google awards stipends to contributors who successfully complete a free and open-source software coding project during the summer. , the program is ...
grant; it has been adopted by DragonFly BSD
DragonFly BSD is a free and open-source Unix-like operating system forked from FreeBSD 4.8. Matthew Dillon, an Amiga developer in the late 1980s and early 1990s and FreeBSD developer between 1994 and 2003, began working on DragonFly BSD in ...
later that year.[ The usability of the , the sensors monitoring ]daemon
Daimon or Daemon (Ancient Greek: , "god", "godlike", "power", "fate") originally referred to a lesser deity or guiding spirit such as the daimons of ancient Greek religion and mythology and of later Hellenistic religion and philosophy.
The wo ...
, has been vastly improved in 2007, partly due to same GSoC grant.[
, the total number of drivers stood at 68 in OpenBSD 4.4; growing by 7 drivers in a 6-month release cycle.][ This level of growth, of one new driver per month on average, has been common throughout the history of the framework since OpenBSD 3.9.][
The values exported by the drivers through the framework are read-only; however, an external ]patch
Patch or Patches may refer to:
Arts, entertainment and media
* Patch Johnson, a fictional character from ''Days of Our Lives''
* Patch (''My Little Pony''), a toy
* "Patches" (Dickey Lee song), 1962
* "Patches" (Chairmen of the Board song ...
exists that implements the fan control functionality in both the framework as well as one of the drivers for the most popular family of Super I/O
Super I/O is a class of I/O controller integrated circuits that began to be used on personal computer motherboards in the late 1980s, originally as add-in cards, later embedded on the motherboards. A super I/O chip combines interfaces for a var ...
chips; this patchset was provided for both OpenBSD and DragonFly BSD.[
]
See also
* lm_sensors
lm_sensors (Linux-monitoring sensors) is a free open-source software-tool for Linux that provides tools and drivers for monitoring temperatures, voltage, humidity, and fans. It can also detect chassis intrusions.
Issues
During 2001/2004, the ...
* SpeedFan
References
External links
*
*
*
{{DragonFly
BSD software
OpenBSD
FreeBSD
DragonFly BSD
Software using the ISC license
System administration