13.10.2014 Views

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

5<br />

Chapter 2<br />

An Overview of Java<br />

This chapter provides an overview of Java. It begins with a description of the events<br />

that lead to its development in Section 2.1. An overview of the core data structures<br />

used in order to execute a Java application is presented in Section 2.2. Section 2.3<br />

provides an overview of the Java Virtual Machine instruction set. This is followed<br />

by Section 2.4, which discusses techniques that are used to implement Java Virtual<br />

Machines. A comparison of three common Java Virtual Machine implementations is<br />

presented in Section 2.5. Section 2.6 examines the implementation of a simple Java<br />

interpreter. The chapter concludes with a summary in Section 2.7.<br />

2.1 A Brief History of Java<br />

Java was released to the world in 1995, but its development began half a decade earlier.<br />

It all started after a Sun employee, Patrick Naughton, who was being recruited to<br />

leave the computer giant for greener pastures at NeXT Computer Inc., was asked to<br />

“write up what you think Sun is doing wrong” before you leave. Naughton generated<br />

a list that was emailed to hundreds of people within the company. It was subsequently<br />

described by others as “brutally right” and “everything I say to myself in the morning<br />

but have been afraid to admit” [18].<br />

Naughton’s email generated discussion. John Gage, Sun’s science office director,<br />

asked a group of senior engineers “what is it you really want to do?” The discussion<br />

lasted most of the night but it was productive, creating a list of core principles for a<br />

new project. The group concluded that Sun needed to concentrate on consumers –<br />

it had to create a new generation of computers that were small and easy for normal<br />

people to use.<br />

Armed with a description of the new project, Naughton, with Gage’s support,

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!