如果是这样,那么是如何实现的呢?我正在为学校做一个团队项目。我认为Java实际上不能直接访问硬件,因为这将使跨平台变得困难。我需要知道这一点,因为经过一些快速的Googling搜索,我还没有找到任何东西,我的团队成员(他们想要这样做并想使用Java)似乎不确定如何继续-在显然比我做了更多的搜索之后。
发布于 2010-08-31 05:53:11
您的权利在于,您不能直接从Java访问硬件(除非您调用本机代码,但这不是您需要的),因为它运行在沙箱环境中,即Java虚拟机(JVM)。
但是,您可以从JVM获取一些基本信息,这些信息是从底层操作系统收集的。看一看using Java to get OS-level system information
发布于 2010-08-31 06:08:42
你要找的是SIGAR API
概述
Sigar API提供了一个可移植的接口来收集系统信息,例如:
此信息在大多数操作系统中都可用,但每个操作系统都有自己的提供方式。SIGAR为开发人员提供了一个API来访问此信息,而无需考虑底层平台。核心应用程序接口是用纯C实现的,绑定当前实现为Java、Perl、Ruby、Python、Erlang、PHP和C#。
发布于 2010-08-31 05:56:08
使用原生Java API能够获得的信息量非常小,因为您的程序通常只知道它所在的VM。
但是,您可以使用call out to the command line,运行本机应用程序并解析结果。然而,这在Java应用程序中并不是特别好的形式,因为您失去了通常与该语言相关的跨平台优势。
https://stackoverflow.com/questions/3604486
复制相似问题