El marco envsys es un marco de sensores de monitoreo de hardware a nivel de kernel en NetBSD . Al 4 de marzo de 2019 , cerca de 85 controladores de dispositivos utilizan el marco para exportar varios sensores de monitoreo ambiental , como lo demuestran las referencias del símbolo [1] dentro de la ruta de NetBSD; siendo los sensores de temperatura , [2] el tipo más probable de ser exportado por cualquier controlador. [3] : 32 sensores se registran con el kernel a través de API. [4][actualizar]sysmon_envsys_register
sys
ENVSYS_STEMP
sysmon_envsys(9)
El consumo y monitoreo de sensores desde el área de usuario se realiza con la ayuda de la envstat
utilidad a proplib(3)
través ioctl(2)
del archivo de pseudodispositivo , [5] el demonio de administración de energía que responde a los eventos del kernel ejecutando scripts desde , [6] [7] así como herramientas de terceros como y GKrellM de pkgsrc ./dev/sysmon
powerd
/etc/powerd/scripts/
symon
Autor (es) original (es) | Juan Romero Pardines (2007) |
---|---|
Desarrollador (es) | La Fundación NetBSD , Inc. |
Versión inicial | 1 de julio de 2007 |
Repositorio | /sys/sys/envsys.h |
Escrito en | C |
Sistema operativo | NetBSD desde 5.0 |
Tipo | monitoreo del sistema |
Licencia | Licencia BSD # 4-cláusula |
Sitio web | envsys (4) |
Autor (es) original (es) | Tim Rightnour y Bill Squier (2000) |
---|---|
Desarrollador (es) | La Fundación NetBSD , Inc. |
Versión inicial | 15 de diciembre de 1999 |
Lanzamiento final | NetBSD 4.0.1 / 14 de octubre de 2008 |
Repositorio | /sys/sys/envsys.h |
Escrito en | C |
Sistema operativo | NetBSD 1.5 a 4.0.1 |
Tipo | monitoreo del sistema |
Licencia | Licencia BSD # 4-cláusula |
Sitio web | envsys (4) en NetBSD 4.0 |
Características
El marco permite al usuario modificar los límites de monitoreo especificados por el controlador, y que el controlador realice el monitoreo de los sensores en el espacio del kernel, o incluso programar un chip de hardware para que realice el monitoreo del sistema automáticamente. [3] : §7.1 dos niveles de límites se definen: crítico y de advertencia , ambos de los cuales se extienden, además, a un sobre y un bajo categorización. [3] : §7.1 Si se cruzan los umbrales límite, se puede generar un evento del kernel, que se puede capturar en el área de usuario powerd
para ejecutar un script de usuario predefinido. [6] [7] En comparación, en hw.sensors de OpenBSD , el monitoreo de los valores definidos por el usuario se realiza en el espacio de usuario por sensorsd
.
A partir de 2019[actualizar], el marco en sí no facilita el control del ventilador de la computadora , aunque los controladores aún podrían implementar la interfaz con las capacidades de control del ventilador de sus chips a través de otros medios, por ejemplo, a través de una interfaz sysctl específica del controlador , que es el enfoque adoptado por el dbcool(4)
controlador . [8] Sin embargo, a los controladores de los chips Super I / O más populares les gusta lm(4)
y itesio(4)
no implementan ningún control de ventilador (de hecho, históricamente, en todos los OpenBSD, NetBSD y DragonFly, estos controladores ni siquiera informan el deber ciclo de los ventiladores: solo se informan los valores reales de RPM). [9] [10]
Historia
El marco se sometió a dos revisiones importantes: la primera versión envsys.h
se comprometió el 15 de diciembre de 1999 ; con la siguiente envsys.4
página de manual el 27 de febrero de 2000 . Entre 2000 y 2007, la página del manual de envsys (4) en NetBSD declaró que la "API es experimental", y que "la API completa debería ser reemplazada por un sysctl (8)", "si se desarrollara una"; [11] [12] se puede notar que en 2003 este fue el enfoque exacto adoptado por OpenBSD con sysctl hw.sensors cuando algunos de los controladores envsys (4) fueron portados a OpenBSD. [3] : §6.1
La segunda revisión se produjo el 1 de julio de 2007
. La serialización con el área de usuario se volvió a implementar usando listas de propiedades con la ayuda de la nueva biblioteca proplib (3) de NetBSD (la capa de transporte subyacente entre el kernel y el área de usuario aún se realiza a través de ioctl ). [13] [3]El marco envsys fue el precursor del marco sysctl hw.sensors de OpenBSD en 2003, y muchos controladores, así como algunos tipos de sensores, se han trasladado entre NetBSD y OpenBSD. El 1 de mayo de 2007 sedrive
agregó soporte para sensores de tipo a NetBSD , similar al tipo en OpenBSD , que fue al mismo tiempo cuando bio (4) y bioctl fueron portados de OpenBSD a NetBSD. [3] : §7.1drive
Ver también
- bioctl
- hw.sensors
- lm_sensors
- SpeedFan
Referencias
- ^ " sysmon_envsys_register()" . Referencia cruzada BSD . NetBSD .
- ^ " ENVSYS_STEMP" . Referencia cruzada BSD . NetBSD .
- ^ a b c d e f Constantine A. Murenin (21 de mayo de 2010). "7.1. NetBSD envsys / sysmon". Sensores de hardware OpenBSD - Monitoreo ambiental y control de ventiladores ( tesis MMath ). Universidad de Waterloo : UWSpace. hdl : 10012/5234 . ID de documento: ab71498b6b1a60 ff817 b29d56997a418.
- ^ Juan Romero Pardines; La Fundación NetBSD, Inc. (2007-2008). "sysmon_envsys (9) - parte del kernel del marco de envsys 2" . Referencia cruzada BSD . NetBSD . Lay resumen .
- ^ "_PATH_SYSMON en paths.h" . Referencia cruzada BSD . NetBSD .
#define _PATH_SYSMON "/dev/sysmon"
- ^ a b Wasabi Systems, Inc. (2003). "powerd (8) - demonio de administración de energía para sysmon" . Referencia cruzada BSD . NetBSD . Lay resumen .
- ^ a b "/ etc / powerd / scripts /" . Referencia cruzada BSD . NetBSD .
- ^ Paul Goyette; La Fundación NetBSD, Inc. (2008). "dbcool (4): dev / i2c / dbcool.c" . Referencia cruzada BSD . NetBSD . Consultado el 25 de marzo de 2019 . Lay resumen .
- ^ "lm (4): dev / ic / nslm7x.c" . Referencia cruzada BSD . NetBSD . Consultado el 25 de marzo de 2019 . Lay resumen .
- ^ "itesio (4): dev / isa / itesio_isa.c" . Referencia cruzada BSD . NetBSD . Consultado el 25 de marzo de 2019 . Lay resumen .
- ^ Tim Rightnour; Bill Squier (19 de diciembre de 2007). "envsys - API de sistemas ambientales" . NetBSD 4.0.
Esta API es experimental y puede quedar obsoleta en cualquier momento ... Toda esta API debe ser reemplazada por una interfaz sysctl (8) o un mecanismo de eventos del kernel, en caso de que se desarrolle uno.
- ^ Constantine A. Murenin (17 de abril de 2007). "3.5. Sysmon de NetBSD (4)". Interfaz generalizada con monitores de hardware del sistema de microprocesador . Actas de la Conferencia Internacional IEEE de 2007 sobre redes, detección y control, 15-17 de abril de 2007. Londres, Reino Unido: IEEE . págs. 901–906. doi : 10.1109 / ICNSC.2007.372901 . ISBN 978-1-4244-1076-7. IEEE ICNSC 2007, págs. 901—906.
- ^ Hubert Feyrer (21 de junio de 2007). "envsys2" . Consultado el 4 de marzo de 2019 .
enlaces externos
- /sys/sys/envsys.h