Our website is made possible by displaying online advertisements to our visitors.
Please consider supporting us by disabling your ad blocker.

Responsive image


Java Virtual Machine

סמליל שפת Java
סמליל שפת Java

Java Virtual Machine (בקיצור JVM) היא מכונה וירטואלית המפרשת ומריצה Java Bytecode. לרוב, קוד זה מופק על ידי מהדר לשפת Java, אם כי ה-JVM יכולה לשמש גם כפלטפורמת היעד של מהדרים לשפות אחרות. ה-JVM היא תוכנת מחשב ככל תוכנה אחרת, והיא משמשת כמעין שכבת-מיפוי בין מערכת ההפעלה לבין תוכניות הרצות על גביה.

בגרסאות המוקדמות של שפת Java, הייתה זו חברת Sun שפיתחה את ה-JVM. בהמשך, ולאחר שמפרט ה-JVM הוגדר במדויק, חברות רבות יישמו גרסאות משלהן, אך כולן חייבות לעמוד בסדרת מבדקים (Java TCK) כדי להחשב כמימוש תקני של ה-‏JVM‏[1]. בנובמבר 2006, הכריזה חברת Sun כי ה-Java Platform, לרבות ה-JVM של Sun (הנקראת HotSpot), יוצעו גם תחת רישוי GPL v2. החברה הודיעה כי תמשיך להשתמש בסימן הרשום של Java (הנמצא בבעלותה) כדי להסמיך מימושים של ה-JVM התואמים באופן מלא למפרט המפורסם.

השימוש במכונה וירטואלית הוא ממאפייני היסוד של פלטפורמת Java, והוא מאפשר לתוכניות שנכתבו בשפת Java ועברו הידור באמצעות המהדר של השפה, לרוץ על מגוון רחב של פלטפורמות חומרה ומערכות הפעלה. תכונה זו באה לידי ביטוי בסיסמתה של ‏Java:‏ "Write once, run anywhere" ("כתוב פעם אחת, הרץ בכל מקום"), אם כי ל-Java תכונה חזקה יותר של רב-פלטפורמיות: "הדר פעם אחת, הרץ בכל מקום". בזכות תכונות אלה, במשולב עם השירותים הרבים שמספקת שפת Java, יש המסווגים את ה-JVM גם כתווכה.

החל מ-Java SE 5.0, שינויים במפרט ה-JVM מפותחים תחת ה-Java Community Process כ-JSR 924[2]. מפרט ה-JVM מפורסם כספר[3] הידוע בשם "Blue Book", ובמבוא מצוין כך (תרגום):

"בכוונתו שמפרט זה של ה-Java Virtual Machine יהיה מתועד מספיק ליישום בשיטת "חדר נקי". חברת Sun מספקת מבדקים המוודאים את הפעולה התקינה של מימושי Java Virtual Machine."

  1. ^ על רקע זה התחולל מאבק עסקי חריף בין חברת Sun, המפתחת המקורית של שפת Java, ובין חברת מיקרוסופט. חברת Sun טענה שהגרסה של מיקרוסופט ל-JVM אינה תואמת את המפרט כפי שהוגדר על ידי Sun, וטענה זו התקבלה על ידי בית המשפט. בעקבות זאת, הפסיקה מיקרוסופט לשלב את הגרסה שלה בדפדפן ובמערכות ההפעלה שלה, ומשתמשיהם נדרשים להוריד את התמיכה בשפה מאתר האינטרנט של Sun או מחלופות אחרות.
  2. ^ JSR 924 – Specifies changes to the JVM specification starting with J2SE 5.0
  3. ^ The Java Virtual Machine Specification (the first and second editions are also available online)

Previous Page Next Page