ก่อนอื่นมันน่าสังเกตว่า JVM ของ Sun ถูกเขียนใน C. C เป็นภาษาที่ได้รับความนิยมอย่างมากเมื่อต้องการการพกพา
ภาษา C เป็นแบบพกพาแม้ว่าโปรแกรม C จำนวนมากจะไม่ นี่เป็นเพราะ C ไม่ได้มีข้อ จำกัด มากนักในโปรแกรมเมอร์หรือตั้งสมมติฐานมาก หากโปรแกรมเมอร์ C ต้องการให้โปรแกรมของเขาพกพาได้เขาจะต้องวางข้อ จำกัด เหล่านั้นไว้กับตัวเอง
ในทางปฏิบัตินั้นไม่ได้ยากกว่าการอยู่กับข้อ จำกัด ที่บังคับให้คุณทำ ส่วนใหญ่เป็นเรื่องของการคำนึงถึงความ endianness และขนาดดั้งเดิมของคุณและการใช้ไลบรารีแบบพกพาเช่นGTK +แทนไลบรารีเฉพาะแพลตฟอร์ม
คุณสามารถสร้างเป้าหมาย GTK + และคอมไพเลอร์ C ที่สนับสนุนเครื่องเสมือนแม้อาจเป็น JVM และรับรหัสที่มีอยู่เพื่อทำงานกับการเปลี่ยนแปลงเล็กน้อย ในความเป็นจริงหากไม่มีการรวบรวมขยะเครื่องเสมือน C อาจจะง่ายกว่ามาก ทำไมคุณถึงต้องการ
reverse, การคอมไพล์ Java กับ native code ก็ทำได้เช่นเดียวกัน นั่นเป็นสิ่งที่ JIT ทำ ทำไมคุณถึงต้องการ ฉันแน่ใจว่ามีโครงการสัตว์เลี้ยงที่จะทำ "เพียงเพราะ" แต่พวกเขาไม่ได้ใช้อย่างจริงจัง