access linux java,在Linux上从Java访问PC硬件端口

What is the Java-on-Linux equivalent to the C byte-sized PC-architecture hardware port input/output functions?

For output there is outb as in this:

tmp = inb(0x61);

if (tmp != (tmp | 0x01))

outb(0x61, tmp | 0x01);

For input there is inb as in this:

tmp = (inb(0x61) & 0xfe);

outb(0x61, tmp);

Purpose: I want to implement something that imposes less overhead than this:

try { Runtime.getRuntime().exec("beep") } catch (IOException e) {}

as an alternative to sending code 7 (the bell char) to the standard output because that seems to have been aggressively disabled in Ubuntu. Toolkit's beep is also mute.

解决方案

I think you're barking up the wrong train.

Java is a object-oriented high-level language compiling to a virtual machine architecture. Assembler I/O instructions are hardware processor specific. There is no direct equivalence between the two.

The best you could hope for is to interface your Java code (using pipes, shared memory, sockets, etc) with a native Linux app which performs the required I/O.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值