Loading...
Loading...
এই পরীক্ষায় এই টপিক থেকে ২টি প্রশ্ন — Compiler (ভাষা অনুবাদক) ও Round-robin (CPU scheduling)।
বিকল্প: (ক) Interpreter • (খ) Emulator • (গ) Compiler ✓ • (ঘ) Simulator
Compiler সম্পূর্ণ source code একবারে মেশিন কোডে অনুবাদ করে — তারপর সেই কোড চালানো (execute) যায়।
Compiler পুরো প্রোগ্রামকে একসাথে স্ক্যান করে, ভুল থাকলে দেখায়, এবং সম্পূর্ণ অনুবাদ করে একটি executable ফাইল তৈরি করে। Interpreter এর বিপরীত — এটি লাইন ধরে ধরে অনুবাদ ও execute করে, আলাদা executable তৈরি করে না। Emulator ও Simulator মূলত অন্য system-এর আচরণ নকল করে — এরা ভাষা অনুবাদক নয়।
| টুল | কাজ |
|---|---|
| Compiler | সম্পূর্ণ প্রোগ্রাম একবারে অনুবাদ (C, C++, Java) |
| Interpreter | লাইন ধরে ধরে অনুবাদ ও চালানো (Python, JavaScript) |
| Assembler | Assembly code → মেশিন কোড |
| Emulator | এক হার্ডওয়্যার অন্য হার্ডওয়্যারে নকল করে |
| Simulator | কোনো system-এর আচরণ মডেল করে |
Compiler = Complete — পুরোটা একবারে। Interpreter = লাইন-by-লাইন (interpret one at a time)।
Interpreter-কে বেছে নেওয়া ফাঁদ — এটি অনুবাদই করে, কিন্তু একবারে পুরো প্রোগ্রাম নয়; লাইন ধরে। 'একবারে সম্পূর্ণ' শব্দ থাকলেই Compiler।
বিকল্প: (ক) First come first serve • (খ) Round-robin ✓ • (গ) Shortest job first • (ঘ) Last come first serve
Round-robin প্রতিটি process-কে নির্দিষ্ট time quantum দেয় — তাই সব user দ্রুত সাড়া পায়, time-sharing-এর আদর্শ।
Time-shared OS-এ একাধিক user/process একসাথে চলে, এবং প্রত্যেকে চায় দ্রুত সাড়া। Round-robin প্রতিটি process-কে পালাক্রমে একটি ছোট time slice (quantum) দেয়; সময় শেষ হলে পরবর্তী process পায়। ফলে কোনো process দীর্ঘ সময় অপেক্ষা করে না — সবাই 'live' মনে হয়। FCFS-এ একটি দীর্ঘ কাজ সবাইকে আটকে রাখে; SJF-এ দীর্ঘ কাজ অনির্দিষ্টকাল অপেক্ষায় (starvation) পড়তে পারে।
| Scheduling | বৈশিষ্ট্য | Preemptive? |
|---|---|---|
| Round-robin | সমান time quantum, পালাক্রমে | হ্যাঁ |
| FCFS | আগে এলে আগে সেবা | না |
| SJF | ছোট কাজ আগে | না (variant হলে হ্যাঁ) |
| Priority | অগ্রাধিকার অনুসারে | দুটোই সম্ভব |
'Time-shared' শব্দে 'time' আছে — আর Round-robin সময়কে quantum-এ ভাগ করে। তাই 'time-sharing → Round-robin'।
SJF-কে বেছে নেওয়া — এটি average waiting time সর্বনিম্ন রাখে ঠিকই, কিন্তু interactive/time-shared system-এ সাড়া দেওয়ার বিচারে Round-robin শ্রেষ্ঠ।
সফটওয়্যার ও অপারেটিং সিস্টেম — মূল লেকচার শিট — সিস্টেম বনাম অ্যাপ্লিকেশন সফটওয়্যার, ভাষা অনুবাদক (Compiler/Interpreter/Assembler), অপারেটিং সিস্টেমের কাজ, process ও thread, সব CPU scheduling algorithm (FCFS/SJF/RR/Priority), deadlock, memory management ও file system।