পরবর্তী ধাপ হল প্রোগ্রামটি চালানো। আমরা যদি সরাসরি কম্পিউটারে বাইট কোড দিই, তাহলে সেগুলো চালানো যাবে না। যে কোন কম্পিউটার শুধুমাত্র বাইনারি কোড চালাতে পারে যার মধ্যে 1 s এবং 0s রয়েছে। যেহেতু বাইনারি কোড মেশিনের বা কম্পিউটার কাছে বোধগম্য, তাই এটিকে মেশিন কোডও বলা হয়। তাই বাইট কোডটিকে মেশিন কোডে রূপান্তর করা প্রয়োজন যাতে আমাদের কম্পিউটার বুঝতে পারে এবং এটি চালাতে পারে। এর জন্য আমাদের PVM (পাইথন ভার্চুয়াল মেশিন) ব্যবহার করা উচিত।
PVM একটি ইন্টারপ্রেটার ব্যবহার করে যা বাইট কোড কে বোঝে এবং এটিকে মেশিন কোডে রূপান্তর করে। PVM প্রথমে আমাদের কম্পিউটারের প্রসেসর এবং অপারেটিং সিস্টেম বোঝে। তারপরে এটি বাইট কোডটিকে মেশিন কোডে সেই প্রসেসরের কাছ থেকে রূপান্তরিত করে এই মেশিন কোড নির্দেশাবলী প্রক্রিয়া দ্বারা সম্পাদিত হয় এবং ফলাফল প্রদর্শিত হয়।
একটি ইন্টারপ্রেটার প্রোগ্রামকে লাইন দ্বারা অনুবাদ করে। অতএব, এটি ধীর। PVM এর ভিতরে যে ইন্টারপ্রেটার পাওয়া যায় তা পাইথন প্রোগ্রামটি ধীরে ধীরে চালায়। এই সমস্যার সমাধানের জন্য, পাইথনের কিছু ফ্লাভোর্স, PVM তে একটি কম্পাইলার যুক্ত করা হয়। এই কম্পাইলার বাইট কোডটিকে মেশিন কোডেও রূপান্তর করে কিন্তু ইন্টারপ্রেটার চেয়ে দ্রুত। এই কম্পাইলারকে JIT (Just In Time) কম্পাইলার বলা হয়। আইটি কম্পাইলারের সুবিধা হল একটি পাইথন প্রোগ্রাম চালানোর গতি উন্নত করা এবং এইভাবে কর্মক্ষমতা উন্নত করা।
আমাদের মনে রাখা উচিত যে সমস্ত পাইথন এনভিরনমেন্টস JIT কম্পাইলার পাওয়া যায় না। উদাহরণস্বরূপ, স্ট্যান্ডার্ড পাইথন সফ্টওয়্যারটিকে CPython বলা হয় যা C ভাষা ব্যবহার করে তৈরি করা হয় যা একটি JIT কম্পাইলার অন্তর্ভুক্ত করে না। কিন্তু, PyPy, যা পাইথন ভাষায় তৈরি করা হয়েছে, PVM তে ইন্টারপ্রেটার ছাড়াও একটি JIT কম্পাইলার ব্যবহার করে। সুতরাং, পাইথনের PYPY ফ্লেভার স্পষ্টভাবে CPython চেয়ে পাইথন প্রোগ্রামগুলির দ্রুত কাজ করার প্রস্তাব দেয়।
![]() |
একটি পাইথন প্রোগ্রাম চালানোর ধাপ |
সাধারণত যখন আমরা একটি পাইথন প্রোগ্রাম কম্পাইল করি, আমরা পাইথন কম্পাইলার দ্বারা উত্পাদিত .pyc ফাইল এবং PVM দ্বারা উৎপন্ন মেশিন কোড দেখতে পাই না। এটি মেমরিতে অভ্যন্তরীণভাবে করা হয় এবং আউটপুট অবশেষে দৃশ্যমান হয়। উদাহরণস্বরূপ, যদি আমাদের পাইথন প্রোগ্রামের নাম MyPython.py হয়, আমরা পাইথন কম্পাইলার ব্যবহার করতে পারি এটি কম্পাইল করার জন্য।
C:\>python MyPython.py{codeBox}
পূর্ববর্তী বিবৃতিতে, পাইথন হল পাইথন কম্পাইলারকে কল করার কমান্ড। কম্পাইলারকে MyPython.py ফাইলটিকে তার বাইট কোড সমতুল্য ফাইলে রূপান্তর করতে হবে, MyPython.py এটি করার পরিবর্তে, কম্পাইলার সরাসরি আউটপুট বা ফলাফল প্রদর্শন করে।