Описание тега java-native-interface

Собственный интерфейс Java (JNI) дает как возможность реализациям JVM запускать собственный системный код, так и возможность для собственного кода запускать код Java (путем создания новых экземпляров JVM). Наиболее распространенными целевыми языками для JNI являются C и C++, для которых, по крайней мере, реализации Sun/Oracle JDK предоставляют вспомогательные команды (javap - для дизассемблирования кода, javah для генерации кода c).

JNI определяет стандартные наименования и вызова конвенции, которая позволяет виртуальной машины Java, чтобы найти и вызвать собственные методы.

Фактически, JNI встроен в виртуальную машину Java, позволяя виртуальной машине Java вызывать локальные системные вызовы, которые выполняют операции ввода и вывода, графики, сети и потоковой передачи в операционной системе хоста.

Соглашение об именах и вызовах стандартизировано спецификацией JNI.

Ссылки: