1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-oshi

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

OSHI

Лицензия MIT Центр Maven first-timers-only Статистика Openhub

OSHI — это бесплатная библиотека информации об операционной системе и аппаратном обеспечении на основе JNA для Java. Она не требует установки каких-либо дополнительных нативных библиотек и стремится предоставить кросс-платформенную реализацию для получения информации о системе, такой как версия ОС, процессы, использование памяти и ЦПУ, диски и разделы, устройства, сенсоры и т.д.

Поддерживаемые платформы


  • Windows
  • macOS
  • Linux (Android)
  • UNIX (AIX, FreeBSD, OpenBSD, Solaris)

Документация


Загрузка и управление зависимостями


Стабильная версия

Текущее развитие (SNAPSHOT)

Использование


  1. Включите OSHI и его зависимости в вашем пути классов.
    • Мы настоятельно рекомендуем вам добавить oshi-core как зависимость вашего менеджера зависимостей, такого как Maven или Gradle.
    • Для Android вам потребуется добавить AAR артефакт для JNA и исключить транзитивную зависимость JAR OSHI.
    • Увидеть решение проблем NoClassDefFoundError или NoSuchMethodError, см. FAQ.
  2. Создайте новый экземпляр SystemInfo.
  3. Используйте геттеры из SystemInfo, чтобы получить доступ к компонентам аппаратного обеспечения или операционной системы, таким как:
SystemInfo si = new SystemInfo();
HardwareAbstractionLayer hal = si.getHardware();
CentralProcessor cpu = hal.getProcessor();

Примеры можно найти в SystemInfoTest.java. Чтобы просмотреть пример вывода данных для вашей машины:

git clone https://github.com/oshi/oshi.git && cd oshi

./mvnw test-compile -pl oshi-core exec:java \
  -Dexec.mainClass="oshi.SystemInfoTest" \
  -Dexec.classpathScope="test"

Некоторые настройки могут быть настроены в файле конфигурации oshi.properties, который также может быть изменен с помощью класса GlobalConfig. Это следует делать при запуске, так как конфигурация не является потокобезопасной, и OSHI не гарантирует повторного чтения конфигурации во время работы.

Артефакт oshi-demo включает несколько примеров концептуального характера использования OSHI для получения информации, включая базовый графический интерфейс Swing.

Поддерживаемые возможности


  • Компьютерная система и прошивка, основная плата
  • Операционная система и её версия/конфигурация
  • Физические (ядра) и логические (гиперпотоки) процессоры, группы процессоров, NUMA-узлы
  • Системная и перепроцессорная нагрузка, счетчики тиков использования, прерывания, время работы
  • Время работы процесса, использование ЦПУ и памяти, группа пользователя, аргументы командной строки, детали потока
  • Физическая и виртуальная память, использованная и доступная
  • Монтированные файловые системы (тип, общее и полезное пространство, опции, чтение и запись)
  • Жёсткие диски (модель, серийный номер, размер, чтение и запись) и разделы
  • Интерфейсы сети (IP, пропускная способность входящего и исходящего трафика), сетевые параметры, статистики TCP/UDP
  • Состояние аккумулятора (% емкости, время до разряда, статистика использования энергии)
  • USB-устройства
  • Подключённые мониторы (с информацией EDID), графические и звуковые карты
  • Сенсоры (температура, скорость вентилятора, напряжение) на некоторых устройствах### Поддержка

  • Для отчетов об ошибках, запросов на новые функции или общих вопросов о долгосрочных планах развития OSHI, пожалуйста, создайте задачу.
  • Для помощи в интеграции OSHI в свой проект или проверки кода PR, отметьте @dbwiddis в задачах или запросах на слияние на сайте вашего проекта.
  • Для вопросов типа "как сделать", относящихся к использованию API, обратитесь за помощью к примерам в проекте oshi-demo, создайте задачу или поискайте на Stack Overflow с помощью тега oshi, задав новое вопрос если он еще не был задан ранее.
  • Чтобы поблагодарить главного поддерживателя OSHI, вы можете спонсировать его или купить ему кофе.

OSHI для корпоративного использования


Доступно как часть подписки Tidelift Tidelift

Поддерживатели OSHI и тысячи других пакетов работают вместе с Tidelift для предоставления коммерческой поддержки и обслуживания открытых источников, которые вы используете для создания своих приложений. Сохраняйте время, снижайте риск и повышайте качество кода, оплатив поддержку именно тех зависимостей, которые вы используете. Узнайте больше.

Контактная информация по вопросам безопасности


Чтобы сообщить о безопасности уязвимости, пожалуйста, используйте канал связи Tidelift. Tidelift будет координировать исправление и раскрытие.

Статус тестирования непрерывной интеграции


Статус сборки Appveyor Статус сборки Cirrus Windows CI macOS CI Linux CI Unix CI SonarQube Bugs SonarQube Vulnerabilities SonarQube Maintainability SonarQube Reliability SonarQube Security Статус сборки Coverity Scan Оценка Codacy CodeQL Статус покрытия

Как мне помочь?

OSHI был создан как платформонезависимая библиотека, которая не требует дополнительного программного обеспечения и имеет лицензию, совместимую с как открытым исходным кодом, так и коммерческими продуктами. Мы создали мощный набор функций для основных операционных систем, но нам было бы приятно, если бы вы помогли следующими способами:

  • Тестирование! Наши автоматизированные тесты ограничены несколькими платформами. Скачайте и протестируйте программу на различных операционных системах/версиях и оборудовании, чтобы помочь выявить пробелы, которые могут быть пропущены в ходе ограниченной разработки и тестирования. Конкретные высокоприоритетные требования к тестированию включают:
    • Системы Windows с более чем 64 логическими процессорами
    • Raspberry Pi
    • Нечасто используемые версии Linux
  • Внесение кода. Увидели что-то, что работает неправильно или может работать лучше? Помогите нам исправить это! Новые участники всегда приветствуются.
  • Документирование реализации. Наша Вики недостаточно подробна, а артефакт oshi-demo служит местом для демонстрационных концепций. Хотите помочь новым пользователям следовать вашему примеру?
  • Предложение новых возможностей. Вам нужна функциональность OSHI, которой нет в текущей версии? Дайте знать.

Участие в проекте OSHI

Отзывы

Большое спасибо следующим компаниям за предоставление бесплатной поддержки открытых проектов, в том числе OSHI:

  • SonarCloud за широкий спектр инструментов контроля качества кода
  • GitHub Actions, AppVeyor, и Cirrus CI за непрерывное интеграционное тестирование
  • Профилировщику Java jProfile для устранения проблем с использованием ЦП

Лицензия

Этот проект лицензирован под лицензией MIT License.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

OSHI — это бесплатная библиотека на основе JNA (собственная) для операционной системы и информации об оборудовании для Java. Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mirrors-oshi.git
git@api.gitlife.ru:oschina-mirror/mirrors-oshi.git
oschina-mirror
mirrors-oshi
mirrors-oshi
master