envsys - envsys

Framework środowiskowy (wersja 2)
Pierwotni autorzy Juan Romero Pardines (2007)
Deweloper (y) NetBSD Foundation, Inc.
Pierwsze wydanie 1 lipca 2007 ; 13 lat temu  ( 2007-07-01 )
Magazyn /sys/sys/envsys.h
Napisane w do
System operacyjny NetBSD od 5.0
Rodzaj monitorowanie systemu
Licencja Licencja BSD nr 4-klauzula
Stronie internetowej envsys (4)
Interfejs API systemów środowiskowych
Pierwotni autorzy Tim Rightnour i Bill Squier (2000)
Deweloper (y) NetBSD Foundation, Inc.
Pierwsze wydanie 15 grudnia 1999 ; 21 lat temu  ( 15.12.1999 )
Wersja ostateczna
NetBSD 4.0.1 / 14 października 2008 r . ; 12 lat temu  ( 2008-10-14 )
Magazyn /sys/sys/envsys.h
Napisane w do
System operacyjny NetBSD 1.5 do 4.0.1
Rodzaj monitorowanie systemu
Licencja Licencja BSD nr 4-klauzula
Stronie internetowej envsys (4) w NetBSD 4.0

Envsys ramy jest jądro -level sprzętowe monitorowanie czujników ramy w NetBSD . Od 4 marca 2019 r. Struktura jest używana przez blisko 85 sterowników urządzeń do eksportowania różnych czujników monitorujących środowisko , o czym świadczą odniesienia do sysmon_envsys_register symbolu na sys ścieżce NetBSD; z czujnikami temperatury ENVSYS_STEMP , które są najbardziej prawdopodobnym typem eksportowanym przez danego kierowcę. Czujniki są rejestrowane w jądrze poprzez sysmon_envsys(9) API. Zużycie i monitorowania czujników z przestrzeni użytkownika odbywa się za pomocą envstat narzędzia poprzez proplib(3) poprzez ioctl(2) przeciwko pseudo-device pliku, zarządzania energią demona , który reaguje na jądra zdarzeń poprzez uruchomienie skryptów , a także osób trzecich narzędzia jak i GKrellM z pkgsrc . /dev/sysmon powerd/etc/powerd/scripts/symon

funkcje

Struktura pozwala użytkownikowi na zmianę limitów monitorowania określonych przez sterownik, a kierowcy na monitorowanie czujników w przestrzeni jądra lub nawet zaprogramowanie chipa sprzętowego do automatycznego monitorowania systemu. Zdefiniowano dwa poziomy limitów: krytyczny i ostrzegawczy , z których oba dodatkowo rozciągają się na ponad i za niedostateczną kategoryzację. W przypadku przekroczenia progów limitów może zostać wygenerowane zdarzenie jądra, które może zostać przechwycone w obszarze użytkownika poprzez powerd wykonanie predefiniowanego skryptu użytkownika. Dla porównania, w hw.sensors OpenBSD , monitorowanie wartości zdefiniowanych przez użytkownika odbywa się w przestrzeni użytkownika wg sensorsd .

Począwszy od 2019 r. Sama struktura nie ułatwia sterowania wentylatorami komputera , chociaż sterowniki nadal mogą implementować interfejs z możliwościami kontrolowania wentylatorów swoich układów scalonych za pomocą innych środków, na przykład za pośrednictwem interfejsu sysctl specyficznego dla sterownika, co jest podejściem przyjętym przez dbcool(4) kierowcę. Jednak sterowniki dla najpopularniejszych chipów Super I / O lubią lm(4) i itesio(4) nie implementują żadnej kontroli wentylatorów (w rzeczywistości, historycznie, we wszystkich OpenBSD, NetBSD i DragonFly, te sterowniki nawet nie raportują cyklu pracy wentylatory - raportowane są tylko rzeczywiste wartości obrotów).

Historia

Ramy przeszły dwie główne zmiany: pierwsza wersja envsys.h została zatwierdzona 15 grudnia 1999 r . ; 21 lat temu ; ze stroną podręcznika podręcznika następną 27 lutego 2000 r . ; 20 lat temu . Pomiędzy 2000 a 2007 rokiem strona podręcznika envsys (4) w NetBSD stwierdzała, że ​​„API jest eksperymentalne” i że „całe API powinno zostać zastąpione przez sysctl (8)”, „jeśli trzeba je opracować”; można zauważyć, że w 2003 roku było to dokładne podejście przyjęte przez OpenBSD z sysctl hw.sensors, kiedy niektóre sterowniki envsys (4) zostały przeniesione do OpenBSD.  ( 15.12.1999 ) envsys.4  ( 2000-02-27 )

Druga rewizja miała miejsce 1 lipca 2007 r . ; 13 lat temu . Serializacja z obszarem użytkownika została ponownie zaimplementowana przy użyciu list właściwości z pomocą nowej biblioteki proplib (3) NetBSD (podstawowa warstwa transportowa między jądrem a obszarem użytkownika jest nadal wykonywana przez ioctl ).  ( 2007-07-01 )

Framework envsys był prekursorem frameworka sysctl hw.sensors w OpenBSD w 2003 roku, a wiele sterowników, jak również niektóre typy czujników, zostało przeniesionych między NetBSD i OpenBSD. Wsparcie dla czujników drive typu zostało dodane do NetBSD 1 maja 2007 , podobnie jak drive typ w OpenBSD , który był w tym samym czasie, gdy bio (4) i bioctl zostały przeniesione z OpenBSD do NetBSD.

Zobacz też

Bibliografia

Zewnętrzne linki