Envsys - Envsys

Структура экологических систем (версия 2)
Оригинальный автор (ы)Хуан Ромеро Пардинес (2007)
Разработчики)В NetBSD Foundation, Inc.
изначальный выпуск1 июля 2007 г.; 13 лет назад (2007-07-01)
Репозиторий/sys/sys/envsys.h
Написано вC
Операционная системаNetBSD с 5.0
Типсистемный мониторинг
ЛицензияЛицензия BSD №4, пункт
Интернет сайтenvsys (4)
API экологических систем
Оригинальный автор (ы)Тим Райтнур и Билл Сквайр (2000)
Разработчики)В NetBSD Foundation, Inc.
изначальный выпуск15 декабря 1999 г.; 20 лет спустя (1999-12-15)
Окончательный релиз
NetBSD 4.0.1 / 14 октября 2008 г.; 12 лет назад (2008-10-14)
Репозиторий/sys/sys/envsys.h
Написано вC
Операционная системаNetBSD От 1.5 до 4.0.1
Типсистемный мониторинг
ЛицензияЛицензия BSD №4, пункт
Интернет сайтenvsys (4) в NetBSD 4.0

В envsys рамки - это ядро -уровень аппаратный мониторинг рамки датчиков в NetBSD. По состоянию на 4 марта 2019 г., фреймворк используется около 85 драйверы устройств экспортировать различные мониторинг окружающей среды датчиков, о чем свидетельствуют ссылки sysmon_envsys_register[1] символ внутри sys путь NetBSD; с участием температура датчики, ENVSYS_STEMP,[2] наиболее вероятный тип, который будет экспортирован любым данным драйвером.[3]:32 Датчики регистрируются в ядре через sysmon_envsys (9) API.[4] Потребление и мониторинг датчиков со стороны пользователя осуществляется с помощью envstat полезность через проплиб (3) через ioctl (2) против / dev / sysmon псевдоустройство файл,[5] то powerd управление энергопотреблением демон который реагирует на события ядра запуском скриптов из / и т. д. / powerd / scripts /,[6][7] а также сторонний такие инструменты, как Симон и GKrellM от pkgsrc.

особенности

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

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

История

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

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

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

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

использованная литература

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

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