Assembly Language-এ INT নির্দেশনা ইন্টারাপ্ট কলের মাধ্যমে সিস্টেমের বিভিন্ন সেবা অ্যাক্সেস করতে ব্যবহৃত হয়। INT 80h এবং INT 2Eh হলো দুইটি সাধারণ ইন্টারাপ্ট যা ভিন্ন ভিন্ন উদ্দেশ্যে ব্যবহৃত হয়। নিচে এই দুই ইন্টারাপ্টের বিস্তারিত আলোচনা করা হলো:
INT 80h (Linux System Call Interrupt):
- সংজ্ঞা: INT 80h হলো একটি ইন্টারাপ্ট যা লিনাক্স অপারেটিং সিস্টেমে সিস্টেম কলের মাধ্যমে কোর সেবা এবং ফাংশন অ্যাক্সেস করতে ব্যবহৃত হয়। এটি ব্যবহার করে ফাইল অপারেশন, প্রসেস ম্যানেজমেন্ট, মেমোরি ম্যানেজমেন্ট ইত্যাদি করা যায়।
- ব্যবহারিক ধাপ:
- EAX রেজিস্টারে সিস্টেম কল নম্বর লোড করা হয়, যা নির্দিষ্ট সেবা নির্দেশ করে।
- অন্যান্য রেজিস্টার যেমন EBX, ECX, EDX ইত্যাদিতে প্যারামিটার লোড করা হয়।
INT 80hনির্দেশনা কার্যকর করা হয়।
ব্যবহারিক উদাহরণ:
; Linux এ "Hello, World!" মেসেজ প্রিন্ট করার উদাহরণ section .data msg db 'Hello, World!', 0xA ; মেসেজ এবং নতুন লাইন section .text global _start _start: ; সিস্টেম কল: write (1, msg, 13) MOV EAX, 4 ; write সিস্টেম কল নম্বর MOV EBX, 1 ; ফাইল ডিসক্রিপ্টর (stdout) MOV ECX, msg ; মেসেজের ঠিকানা MOV EDX, 13 ; মেসেজের দৈর্ঘ্য INT 80h ; সিস্টেম কল ; সিস্টেম কল: exit (0) MOV EAX, 1 ; exit সিস্টেম কল নম্বর XOR EBX, EBX ; এক্সিট কোড 0 INT 80h ; সিস্টেম কল
ব্যবহার:
- লিনাক্স সিস্টেমে সরাসরি সিস্টেম কল কার্যকর করার জন্য INT 80h ব্যবহৃত হয়।
- ফাইল অপারেশন, প্রক্রিয়া চালু/বন্ধ, মেমোরি বরাদ্দ ইত্যাদি।
INT 2Eh (Windows System Call Interrupt):
- সংজ্ঞা: INT 2Eh হলো একটি ইন্টারাপ্ট যা উইন্ডোজ অপারেটিং সিস্টেমে কোর সেবা বা কেয়ার্নেল ফাংশন অ্যাক্সেস করতে ব্যবহৃত হয়। এটি মূলত পুরোনো DOS এবং Windows 9x/ME সিস্টেমে ব্যবহৃত হত।
- ব্যবহারিক ধাপ:
- INT 2Eh ব্যবহারের মাধ্যমে কেয়ার্নেল মোডে কোর সেবা কার্যকর করা হত, তবে আধুনিক উইন্ডোজ সিস্টেমে এটি সাধারণত ব্যবহার হয় না।
- উইন্ডোজ NT এবং পরবর্তী সিস্টেমে NTDLL.dll এবং অন্যান্য API এর মাধ্যমে সিস্টেম কল করা হয়।
ব্যবহারিক উদাহরণ:
; INT 2Eh এর একটি সাধারণ ব্যবহারের উদাহরণ (পুরোনো সিস্টেমে) MOV AX, 4A00h ; DOS 4A সিস্টেম কল (মেমোরি বরাদ্দ) MOV BX, 100h ; মেমোরি ব্লকের আকার INT 2Eh ; ইন্টারাপ্ট কল
ব্যবহার:
- পুরোনো Windows এবং DOS সিস্টেমে সিস্টেম সেবা অ্যাক্সেস করার জন্য।
- আধুনিক উইন্ডোজ সিস্টেমে এটি এখন আর ব্যবহৃত হয় না এবং এর পরিবর্তে API কল এবং কেয়ার্নেল ফাংশন ব্যবহৃত হয়।
INT 80h এবং INT 2Eh এর মধ্যে পার্থক্য
| বৈশিষ্ট্য | INT 80h | INT 2Eh |
|---|---|---|
| ব্যবহার | লিনাক্স সিস্টেমে সিস্টেম কলের জন্য। | পুরোনো DOS/Windows সিস্টেমে সিস্টেম কল। |
| রেজিস্টার ব্যবহার | EAX, EBX, ECX, EDX ইত্যাদি। | AX এবং অন্যান্য DOS রেজিস্টার। |
| অপারেটিং সিস্টেম | লিনাক্স। | DOS এবং পুরোনো Windows সিস্টেম। |
| বর্তমান ব্যবহার | এখনও লিনাক্সে ব্যবহৃত হয়। | আধুনিক উইন্ডোজে আর ব্যবহার হয় না। |
সারসংক্ষেপ
INT 80h এবং INT 2Eh দুটি ভিন্ন ইন্টারাপ্ট যা লিনাক্স এবং পুরোনো উইন্ডোজ সিস্টেমে কোর সেবা কার্যকর করতে ব্যবহৃত হয়। INT 80h লিনাক্স সিস্টেমে ব্যবহৃত হয় এবং এখনও প্রাসঙ্গিক, যেখানে INT 2Eh মূলত পুরোনো DOS এবং Windows সিস্টেমে ব্যবহৃত হত এবং আধুনিক উইন্ডোজ সিস্টেমে তা আর ব্যবহৃত হয় না।
Read more