LOADALL
লোডাল হল ইন্টেল 80286 এবং ইন্টেল 80386 প্রসেসরের দুটি ভিন্ন, অনিবন্ধিত মেশিন নির্দেশাবলীর সাধারণ নাম, যা অভ্যন্তরীণ প্রসেসর অবস্থার এমন ক্ষেত্রগুলিতে অ্যাক্সেসের অনুমতি দেয় যা সাধারণত আইএ-32 এপিআই সুযোগের বাইরে থাকে, যেমন বর্ণনাকারী ক্যাশে রেজিস্টার। 286 টি প্রসেসরের জন্য লোডাল 0Fh 05h এনকোড করা হয়, যেখানে 386 টি প্রসেসরের জন্য লোডাল 0Fh 07h হয়। উভয় রূপ-যেমন নামটি বোঝায়-সমস্ত সিপিইউ অভ্যন্তরীণ রেজিস্টারগুলি একটি ক্রিয়াকলাপে লোড করে। লোডাল-এর সেগমেন্ট রেজিস্টারের (নির্বাচক) দৃশ্যমান অংশটি তাদের সংশ্লিষ্ট ক্যাশে অংশ থেকে স্বাধীনভাবে স্থাপন করার অনন্য ক্ষমতা ছিল, যা প্রোগ্রামারকে সিপিইউ-কে এমন অবস্থায় নিয়ে আসার অনুমতি দেয় যা অন্যথায় অফিসিয়াল প্রোগ্রামিং মডেল দ্বারা অনুমোদিত নয়। ব্যবহার এই কৌশলগুলির কার্যকারিতার একটি উদাহরণ হিসাবে, লোডাল সিপিইউ সেট আপ করতে পারে যাতে বাস্তব মোড থেকে সমস্ত মেমরিতে অ্যাক্সেসের অনুমতি দেওয়া যায়, এটিকে অবাস্তব মোডে স্যুইচ না করে (যার জন্য সুরক্ষিত মোডে স্যুইচ করা, মেমরি অ্যাক্সেস করা এবং অবশেষে বাস্তব মোডে স্যুইচ করা প্রয়োজন)। প্রোগ্রামগুলি যেমন RAMDRIVE.SYS (1985), SMARTDRV.SYS (1986) এর প্রাক-এক্সএমএস সংস্করণগুলির পাশাপাশি HIMEM.SYS (2.03,1988-08-04; 2.04,1988-08-17) ড্রাইভারগুলি এমএস-ডসে, ইউনিফর্ম সফ্টওয়্যার সিস্টেমের 'দ্য এক্সটেন্ডার' (1985) এবং লোটাসের জন্য 'দ্য কানেক্টর' (1985), অ্যাভভ ডিস্ক (1986) (অ্যাভভ সফ্টওয়্যারের একটি লিমুলেটর (পূর্বে টেলি-ওয়্যার ওয়েস্ট ওরফে লস অ্যাঞ্জেলেস সিকিউরিটিজ গ্রুপ) যা হার্ড ডিস্কের স্থান বা বর্ধিত স্মৃতিকে বর্ধিত স্মৃতিতে রূপান্তরিত করে), এবং ওএস/2 1.0 এবং 1.1 286 লোডাল নির্দেশ ব্যবহার করে। ডস 3.3 এবং 4.0 একটি 102-বাইট বাফার 0070:0100 এইচ-এ সংরক্ষিত করে রাখে (যা সাধারণত ডস বায়োস ডেটা দ্বারা দখল করা হত) যাতে লোডালের জন্য এটি সংরক্ষণ এবং পুনরুদ্ধার করার প্রয়োজন না হয়। মাইক্রোসফ্টের EMM386.EXE বিশেষ-ক্ষেত্রে তার অবৈধ অপকোড হ্যান্ডলারের 286 এবং 386 লোডাল নির্দেশ উভয়ই রয়েছে। উইন্ডোজ/386 2.10-এ ভার্চ্যুয়াল-মেশিন মনিটর কোড পরীক্ষা করে দেখা যায় যে এটি 286 এবং আরও কম পরিচিত 386 সংস্করণ উভয়ই ব্যবহার করে। মাইক্রোসফ্টের HIMEM.SYS সংস্করণ 2.06-এ 286টি সিস্টেমে বর্ধিত মেমরিতে দ্রুত অনুলিপি করার জন্য লোডাল ব্যবহার করা হয়েছে। লোডাল-এর আরেকটি আকর্ষণীয় ব্যবহার, যা ওএস/2-এর নকশা বইয়ে দেওয়া হয়েছে, তা হল 16-বিট সুরক্ষিত মোডে প্রাক্তন রিয়েল-মোড প্রোগ্রামগুলি চালানোর অনুমতি দেওয়া, যা 1985 সাল থেকে ডিজিটাল রিসার্চের কনকারেন্ট ডস 286 এবং 1986 সাল থেকে ফ্লেক্সস 286 এবং আইবিএম 4680 ওএস দ্বারা ব্যবহৃত হয়েছে। জি. ডি. টি এবং এল. ডি. টি-তে সমস্ত বর্ণনাকারী ক্যাশগুলি "উপস্থিত নেই" চিহ্নিত করলে অপারেটিং সিস্টেমটি সেগমেন্ট-রেজিস্টার রিলোডগুলিকে ট্র্যাপ করার পাশাপাশি রিয়েল-মোড-নির্দিষ্ট "সেগমেন্ট অ্যারিথমেটিক" সম্পাদন করার চেষ্টা করবে এবং সেগমেন্ট বর্ণনাকারীদের (আবার এল. ও. এ. ডি. এ. এল) আপডেট করে পছন্দসই আচরণ অনুকরণ করবে। 80286-এর জন্য এই "8086 এমুলেশন মোড" অবশ্য ব্যবহারিক হতে খুব ধীর ছিল। ই-2 পদক্ষেপের আগে কিছু প্রাথমিক ইন্টেল 80286 প্রসেসরে ত্রুটির কারণে এই ধারণাটি বেশিরভাগ ক্ষেত্রেই বাতিল করতে হয়েছিল। ফলস্বরূপ, ওএস/2 1. এক্স-এবং উইন্ডোজকেও "স্ট্যান্ডার্ড" মোডে-ডস প্রোগ্রামগুলি বাস্তব মোডে চালাতে হয়েছিল। তা সত্ত্বেও, ধারণাটি হারিয়ে যায়নি; এটি ইন্টেলকে 80386-এর ভার্চ্যুয়াল 8086 মোড চালু করতে পরিচালিত করেছিল, যা শেষ পর্যন্ত তুলনামূলকভাবে দক্ষ এবং নথিভুক্ত উপায়ে "ডস বক্স" বাস্তবায়নের অনুমতি দেয়। যেহেতু লোডাল প্রসেসর রেজিস্টারে লোড করা ডেটার বৈধতা সম্পর্কে কোনও পরীক্ষা করেনি, তাই এমন একটি প্রসেসর অবস্থা লোড করা সম্ভব ছিল যা সাধারণত প্রবেশ করা যায় না, যেমন 386-শ্রেণীর সিপিইউতে পেজিং (পিজি = 1) সহ রিয়েল মোড (পিই = 0) ব্যবহার করা। ইন-সার্কিট এমুলেটর (আই. সি. ই) হল নিম্ন-স্তরের ডিবাগিংয়ের জন্য ব্যবহৃত একটি সরঞ্জাম। ইন্টেল 80386-এ, বি6 অবস্থানে নথিভুক্ত নয় এমন পিনের জোর দেওয়ার ফলে মাইক্রোপ্রসেসরের কার্যকারিতা বন্ধ হয়ে যায় এবং আইসিই মোডে প্রবেশ করে। মাইক্রোপ্রসেসর তার পুরো অবস্থাকে স্বাভাবিক সিস্টেম মেমরি থেকে বিচ্ছিন্ন মেমরির একটি অঞ্চলে সংরক্ষণ করে। এই এলাকার বিন্যাস লোডাল নির্দেশের জন্য উপযুক্ত, এবং এই নির্দেশটি আইসিই কোড দ্বারা স্বাভাবিক সম্পাদনে ফিরে আসার জন্য ব্যবহৃত হয়। পরবর্তী প্রসেসরগুলিতে, এটি সিস্টেম ম্যানেজমেন্ট মোডে (এস. এম. এম) বিবর্তিত হয়। এস. এম. এম-এ, আর. এস. এম নির্দেশ মেমরি এলাকা থেকে একটি সম্পূর্ণ সি. পি. ইউ অবস্থা লোড করতে ব্যবহৃত হয়। এই মেমরি এলাকার বিন্যাস লোডাল নির্দেশ দ্বারা ব্যবহৃত একটি অনুরূপ। 386-শৈলীর লোডাল নির্দেশ 486-এও কার্যকর করা যেতে পারে, তবে শুধুমাত্র এসএমএম মোডে। পরবর্তী প্রসেসরগুলিতে, আরএসএম নির্দেশ, একটি ভিন্ন এনকোডিং সহ, তার ভূমিকা গ্রহণ করে। মাইক্রোসফটের কোডভিউ 3 এবং বোরল্যান্ডের টার্বো ডিবাগার 2 সঠিকভাবে 286 এবং 386 লোডাল নির্দেশাবলী ডিকোড করেছে। যেহেতু দুটি লোডাল নির্দেশাবলী কখনই নথিভুক্ত করা হয়নি এবং পরবর্তী প্রসেসরগুলিতে বিদ্যমান নেই, তাই অপকোডগুলি এএমডি64 আর্কিটেকচারে পুনরায় ব্যবহার করা হয়েছিল। 286 লোডাল নির্দেশের অপকোড, 0F05, AMD64 নির্দেশে পরিণত হয়; 386 লোডাল নির্দেশ, 0F07, SYSRET নির্দেশে পরিণত হয়। এই সংজ্ঞাগুলি ইন্টেল সিপিইউগুলিতেও এএমডি64-এর ইন্টেল 64 বাস্তবায়নের প্রবর্তনের সাথে প্রয়োগ করা হয়েছিল। 80286 অপকোড 0F05। নির্দেশটি 0x 00800-0 x00866 ঠিকানা থেকে তথ্য পড়ে, সেগমেন্ট রেজিস্টারের বিষয়বস্তু যাই হোক না কেন। 80286 লোডাল নির্দেশটি সুরক্ষিত থেকে বাস্তব মোডে স্যুইচ করার জন্য ব্যবহার করা যাবে না (এটি এমএসডাব্লুতে পিই বিটটি সাফ করতে পারে না)। যাইহোক, লোডাল নির্দেশের ব্যবহার পুরোপুরি সুরক্ষিত মোডে স্যুইচ করার প্রয়োজনীয়তা এড়াতে পারে। 80386 অপকোড 0F07। নির্দেশটি ই. এস.: ই. ডি. আই ঠিকানা থেকে তথ্য লোড করে। এটি আসলে ই. এস ব্যবহার করে, ই. এস বর্ণনাকারী নয়। আরও দেখুন সমবর্তী ডস 286 ফ্লেক্সওএস 286 আইবিএম 4680 ওএস রেফারেন্স আরও পড়া (XXVI + 738 + IV পৃষ্ঠা, 3.5 ইঞ্চি-ফ্লপি) ত্রুটিঃ X86 নির্দেশাবলী