Link: http://blog.sina.com.cn/s/blog_53988c0c0100osmc.html
(The Java Native Interface programmer's guide and specification)
Preface
This book involves the "Java" Local interface (JNI ). This book will be useful to you if you are interested in the following situations:
. Integrate Java applications with traditional code such as "C" or C ++.
. Use an existing program written in the language of "C" or C ++ "to implement the Java Virtual Machine.
. Implement a Java Virtual Machine)
. Understand Technical Instructions on language interoperability, especially how to handle features such as garbage collection and multithreading.
First, this book is written for developers. After a variety of discussions on the various features of "JNI" and helpful tips on how to effectively use "JNI, you will find it easy to start using "JNI" step by step ". "JNI" was initially released in early 1997. This book summarizes the two years of experience gained by engineers and a large number of developers in the "Sun" microsystem community.
Second, this book shows the basic design principles of various "JNI" features. In addition to academic interest, a thorough understanding of this is also a prerequisite for the efficient use of JNI.
Third, part of this book defines specifications for "JNI" on the "Java 2" platform. JNI programming can use this specification as a reference. The implementation of Java virtual machines must follow the specifications.
For comments about this specification or questions about "JNI" Please send to our Address Email: jni@java.sun.com. For the latest "Java 2" platform or the latest "Java 2 SDK release ". Visit our website. For updates to "Java series", including the errata and preview of the book to be published, visit
The design of "JNI" attracted some column debates between "Sun Microsystems" and Java technology authorization. "JNI" is part of the evolution from "Netscape"'s jri (Java runtime Interface), "JNI" was designed by "Warren Harris. Many people from Java technology authorization companies actively participated in design discussions. They include Russ Arun (Microsoft), Patrick beard (Apple), Simon Nash (IBM), Ken root (Intel), Ian ellision-Taylor (Microsoft ),
And Mike toutoghi (Microsoft ).
The design of "JNI" has also benefited a lot from Sun's internal design comments, from Dave Bowen, James Gosling, Peter Kessler, Tim Lindholm, Mark Reinhold, Derek white and Frank Yellin. Dave Brown, Dave Connelly, James mcilree, Benjamin Renaud, andtom Rodrigues made meaningful contributions to "JNI" enhancements on "Java 2 SDK 1.2. Carla for compatibility testing in Novosibirsk, Russia
The schroer team wrote a compatibility test program for "JNI. In this process, they found that the original specification is unclear or incomplete.
The "JNI" technology does not support Dave Bowen, Larry Abrahams, Dick neiss, Jon kannegaard, and Alan baraz management support. I got strong support and encouragement from my manager Dave Bowen to write this book.
Tim Linde, author of the Java Virtual Machine specification, is leading Java Virtual Machine Development when "JNI" is designed. Tim is leading the Virtual Machine and Local interface, and advocates the use of "JNI" and adds rigor and clarity to this book. For the Art Design of the kitchen and dining room on the cover of this book, he also provides initial sketches.
This book benefited from the help of many colleagues. Anand palaniswamy writes chapter 10 on common traps and pitfalls. Janet keonig carefully previewed the initial draft and contributed a lot of useful comments. Beth Stearns draft Chapter 2 based on the online JNI guide.
I get valuable comments about this draft from Craig J. bordelon, Michael brundage, Mary dageforde, Joshua Engel and Elliott Hughes.
Lisa friendly, editor of the Java series, helps write and publish this book. Ken Arnold, the author of the Java programming language, first proposed the compilation of the JNI book. I would like to thank Mike hedrikson and Marina Lang for their help and patience throughout the process at Addison-Wesley press. Diance supervises the production process from copying, editing, and final printing.
Over the past few years, I 've worked with a group of talented and dedicated people in the Java software on Sun micorsystems, with privileged jobs, especially original, hotspot and Sun labs Virtual Machine team members. This book is for them.