הבדלים בין גרסאות בדף "מכונה וירטואלית"

מ
מ (בוט החלפות)
[[Java]] היא דוגמה בולטת ל[[שפת תכנות]] המתבססת על מכונה וירטואלית. [[תוכנית מחשב]] שנכתבה בשפת Java [[מהדר|מהודרת]] לא ל[[שפת מכונה]], שנועדה מטבעה לחומרה מסוימת, אלא ל-[[bytecode]] המתבצע על-גבי מכונה וירטואלית - (Java Virtual Machine ([[JVM]]. זו התכונה המאפשרת לתוכנית Java לרוץ על כל מערכות הפעלה בעלת JVM, מטלפונים סלולרים, ועד למחשבי על. כך לדוגמה, [[יישומון]] Java המשולב בדף [[HTML]] יכול להתבצע ב[[מערכת הפעלה|מערכות ההפעלה]] [[Windows]], [[Mac OS]], [[גנו/לינוקס|לינוקס]] ואחרות, ללא כל צורך בהתאמה ספציפית לאחת ממערכות ההפעלה, משום שבכל אחת ממערכות ההפעלה רץ היישומון על המכונה הווירטואלית JVM.
 
ארכיטקטורת [[NET.]] של [[מיקרוסופט]] מכילה אף היא רכיב החוצץ בין התוכנית המתבצעת לבין מערכת ההפעלה, המכונה Common Language Runtime (בקיצור CLR), ושפתו נקראת Common Intermediate Language (בקיצור [[CIL]], "שפת ביניים משותפת"). רכיב זה מהווה למעשה מכונה וירטואלית, המפרידה בין החומרה לתוכנה. רכיב זה מאפשר לפתח בשפות שונות, כל עוד השפה מהודרת לקובץ היכול לרוץ על ה־CLR.
 
===יתרונות וחסרונות===