stringtranslate.com

энвсис

Платформа envsys — это платформа датчиков аппаратного мониторинга на уровне ядра в NetBSD . По состоянию на 4 марта 2019 года эта платформа используется около 85 драйверами устройств для экспорта различных датчиков мониторинга окружающей среды , о чем свидетельствуют ссылки на символ [1] в пути NetBSD; с датчиками температуры , [2] является наиболее вероятным типом, который будет экспортироваться любым драйвером. [3] :  32 датчика регистрируются в ядре через API. [4] Потребление и мониторинг датчиков из пользовательского пространства осуществляется с помощью утилиты через файл псевдоустройства , [ 5] демон управления питанием , реагирующий на события ядра запуском скриптов из , [6] [7] а также сторонние инструменты, такие как GKrellM из pkgsrc .sysmon_envsys_registersysENVSYS_STEMPsysmon_envsys(9)envstatproplib(3)ioctl(2)/dev/sysmon powerd/etc/powerd/scripts/symon

Функции

Платформа позволяет пользователю изменять пределы мониторинга, указанные драйвером, а также драйверу выполнять мониторинг датчиков в пространстве ядра или даже программировать аппаратный чип для автоматического мониторинга системы. [3] : §7.1  Определены два уровня ограничений: критический и предупреждающий , оба из которых дополнительно распространяются на категории превышения и понижения . [3] : §7.1  Если пороговые значения превышены, может быть сгенерировано событие ядра, которое можно перехватить в пользовательской среде для powerdвыполнения заранее определенного пользовательского сценария. [6] [7] Для сравнения, в hw.sensors OpenBSD мониторинг пользовательских значений выполняется в пользовательском пространстве с помощью sensorsd.

По состоянию на 2019 год сама платформа не обеспечивает управление компьютерными вентиляторами , хотя драйверы по-прежнему могут реализовывать взаимодействие с возможностями управления вентиляторами своих чипов с помощью других средств, например, через специфичный для драйвера интерфейс sysctl , что и является принятым подходом. водителем dbcool(4). [8] Однако драйверы для наиболее популярных чипов Super I/Olm(4) вроде и itesio(4)вообще не реализуют никакого управления вентиляторами (фактически исторически во всех OpenBSD, NetBSD и DragonFly эти драйверы даже не сообщают о работе вентилятора). цикл вентиляторов — сообщаются только фактические значения частоты вращения). [9] [10]

История

Эта структура претерпела два крупных изменения: первая версия envsys.hбыла принята 15 декабря 1999 года ; 24 года назад ; со страницей руководства от 27 февраля 2000 г .; 23 года назад . В период с 2000 по 2007 год на странице руководства по envsys(4) в NetBSD указывалось, что «API является экспериментальным» и что «весь API должен быть заменен на sysctl(8)», «если он будет разработан»; [11] [12] можно отметить, что в 2003 году именно такой подход был использован OpenBSD с sysctl hw.sensors , когда некоторые драйверы envsys(4) были портированы на OpenBSD. [3] :  §6.1 ( 15 декабря 1999 г. )envsys.4  ( 27 февраля 2000 г. )

Вторая редакция произошла 1 июля 2007 г .; 16 лет назад . Сериализация с пользовательской областью была переопределена с использованием списков свойств с помощью новой библиотеки NetBSD proplib(3) (базовый транспортный уровень между ядром и пользовательской областью по-прежнему реализуется через ioctl ). [13] [3] ( 01.07.2007 )

Платформа envsys была предшественником инфраструктуры OpenBSD sysctl hw.sensors в 2003 году, и многие драйверы, а также некоторые типы датчиков были перенесены между NetBSD и OpenBSD. Поддержка датчиков driveтипа была добавлена ​​в NetBSD 1 мая 2007 года , аналогично driveтипу в OpenBSD , что было в то же время, когда bio(4) и bioctl были перенесены из OpenBSD в NetBSD. [3] :  §7.1

Смотрите также

Рекомендации

  1. ^ "sysmon_envsys_register()". Перекрестная ссылка BSD . НетБСД .
  2. ^ "ENVSYS_STEMP". Перекрестная ссылка BSD . НетБСД .
  3. ^ abcdef Константин А. Муренин (21 мая 2010 г.). «7.1. NetBSD envsys/sysmon». Аппаратные датчики OpenBSD — мониторинг окружающей среды и управление вентиляторами ( диссертация на степень магистра математики ). Университет Ватерлоо : UWSpace. hdl : 10012/5234. Идентификатор документа: ab71498b6b1a60ff817b29d56997a418.
  4. ^ Хуан Ромеро Пардинес; Фонд NetBSD, Inc. (2007–2008 гг.). «sysmon_envsys(9) — часть ядра фреймворка envsys 2». Перекрестная ссылка BSD . НетБСД .
  5. ^ «_PATH_SYSMON в paths.h». Перекрестная ссылка BSD . НетБСД .#define _PATH_SYSMON "/dev/sysmon"
  6. ^ ab Wasabi Systems, Inc. (2003). «powerd(8) — демон управления питанием для sysmon». Перекрестная ссылка BSD . НетБСД .
  7. ^ ab "/etc/powerd/scripts/". Перекрестная ссылка BSD . НетБСД .
  8. ^ Пол Гойетт; Фонд NetBSD, Inc. (2008 г.). «dbcool(4): dev/i2c/dbcool.c». Перекрестная ссылка BSD . НетБСД . Проверено 25 марта 2019 г.
  9. ^ "lm(4): dev/ic/nslm7x.c". Перекрестная ссылка BSD . НетБСД . Проверено 25 марта 2019 г.
  10. ^ "itesio(4): dev/isa/itesio_isa.c". Перекрестная ссылка BSD . НетБСД . Проверено 25 марта 2019 г.
  11. ^ Тим Райтнур; Билл Сквайер (19 декабря 2007 г.). «envsys — API экологических систем». НетБСД 4.0. Этот API является экспериментальным и может быть признан устаревшим в любой момент... Весь этот API следует заменить интерфейсом sysctl(8) или механизмом событий ядра, если таковой будет разработан.
  12. ^ Константин А. Муренин (17 апреля 2007 г.). «3.5. sysmon NetBSD (4)». Универсальное взаимодействие с аппаратными мониторами микропроцессорной системы. Материалы Международной конференции IEEE по сетям, зондированию и управлению 2007 г., 15–17 апреля 2007 г. Лондон, Великобритания: IEEE . стр. 901–906. дои : 10.1109/ICNSC.2007.372901. ISBN 978-1-4244-1076-7. IEEE ICNSC 2007, стр. 901–906.
  13. ^ Хуберт Фейрер (21 июня 2007 г.). "envsys2" . Проверено 4 марта 2019 г.

Внешние ссылки