2014-09-17 2 views
1

JNA를 사용하여 Linux에서 ioctl() 시스템 호출을 호출하려면 라이브러리를로드해야합니까? 즉ja를 사용하여 ioctl 시스템 호출을 호출

: 이미 다음과 같은 코드가 있습니다 :

public class SystemCallLibrary extends Library{ 
    CLibrary INSTANCE = 
     (CLibrary) Native.loadLibrary(("libraryname"), SystemCallLibrary.class); 
    int ioctl(int filedes,int request,Object... args); 
} 
내가 함께 "libraryname"를 교체해야합니까

?

+1

, (LibC.class "C") libc', 그래서'Native.loadLibrary'에 의해 노출 될 것이다' – Petesh

+0

함수에서까지 ioctl 호출을 배치 고려 (당신이 c로 쓰는) 그리고 당신의 기능을 부르십시오. 이를 위해로드 할 라이브러리는 함수를 저장할 라이브러리입니다. – DwB

답변

1

ioctl은 이미 JVM 자체에 링크되어 있으므로 라이브러리 이름을 null으로 전달하거나 "현재 프로세스에서로드"라는 매개 변수를 모두 생략 할 수 있습니다. 명시 적으로 다른 라이브러리에서 언급하지 않는 한

Reference