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

OSCHINA-MIRROR/mirrors-OSHI-JNA

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

OSHI

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

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


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

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

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

Стабильная версия выпуска


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

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

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

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

Стабильная версия выпуска

Скачивание текущего развития (SNAPSHOT)


  1. Включите OSHI и его зависимости в ваш путь CLASSPATH.

    • Мы настоятельно рекомендуем вам добавить oshi-core как зависимость вашего проекта в менеджере зависимостей, таких как Maven или Gradle.
    • Для Android вам потребуется добавить AAR артефакт для JNA и исключить транзитивную зависимость OSHI (JAR).
    • Обратитесь к часто задаваемым вопросам (FAQ), если вы столкнулись с проблемами типа NoClassDefFoundError или NoSuchMethodError.
  2. Создайте новый экземпляр SystemInfo

  3. Используйте методы доступа (getters) от SystemInfo, чтобы получить доступ к компонентам аппаратного обеспечения или операционной системы, например:```java SystemInfo si = new SystemInfo(); HardwareAbstractionLayer hal = si.getHardware(); CentralProcessor cpu = hal.getProcessor();


Для примеров использования см. файл [SystemInfoTest.java](https://github.com/oshi/oshi/blob/master/oshi-core/src/test/java/oshi/SystemInfoTest.java). Чтобы просмотреть образец вывода для вашего устройства:
```sh
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 в ваш проект или проверки вашего кода рецензентом, отметьте @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Количество уязвимостей SonarQube][(https://sonarcloud.io/dashboard?id=oshi_oshi)] [Уровень поддерживаемости SonarQube][(https://sonarcloud.io/dashboard?id=oshi_oshi)] [Уровень надежности SonarQube][(https://sonarcloud.io/dashboard?id=oshi_oshi)] [Уровень безопасности SonarQube][(https://sonarcloud.io/dashboard?id=oshi_oshi)] [Статус сборки Coverity Scan][(https://scan.coverity.com/projects/oshi-oshi)] [Оценка Codacy][(https://www.codacy.com/gh/oshi/oshi/dashboard?utm_source=github.com&utm_medium=referral&utm_content=oshi/oshi&utm_campaign=Badge_Grade)] [CodeQL][(https://github.com/oshi/oshi/security/code-scanning)] [Статус покрытия][(https://codecov.io/github/oshi/oshi)]

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

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

  • Тестирование! Наши автоматизированные тесты ограничены несколькими платформами.Скачайте и протестируйте программу на различных операционных системах/версиях и оборудовании, чтобы помочь выявить пробелы, которые могут быть пропущены в ходе ограниченной разработки и тестирования. Конкретные высокоприоритетные требования к тестированию включают:

  • Системы Windows с более чем 64 логическими процессорами

  • Raspberry Pi

  • Нечасто используемые версии Linux

  • Внесение кода. Увидели что-то, что работает неправильно или может работать лучше? Помогите нам исправить это! Новые участники всегда приветствуются.

  • Документирование реализации. Наша Вики недостаточно подробна, а артефакт oshi-demo служит местом для демонстрационных концепций. Хотите помочь новым пользователям следовать вашему примеру?

  • Предложение новых возможностей. Вам нужна функциональность, которой нет в OSHI? Дайте знать!Участие в проекте OSHI


Отзывы

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

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

Лицензия

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

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

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

Введение

Описание недоступно Развернуть Свернуть
MIT
Отмена

Обновления

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

Участники

все

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

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