NPT এবং RVI
NPT / RVI নামেও পরিচিত
NPT, Nested Page Tables, হলো AMD-এর দ্বিতীয়-পর্যায়ের গেস্ট মেমরি ট্রান্সলেশন সুবিধা, যা Rapid Virtualization Indexing, RVI এর সাথেও যুক্ত। এটি উদ্দেশ্যের দিক থেকে Intel EPT-এর AMD সমকক্ষ।
আপনার যা জানা প্রয়োজন
NPT, Nested Page Tables, হলো AMD-এর দ্বিতীয়-পর্যায়ের গেস্ট মেমরি ট্রান্সলেশন সুবিধা, যা Rapid Virtualization Indexing, RVI এর সাথেও যুক্ত। এটি উদ্দেশ্যের দিক থেকে Intel EPT-এর AMD সমকক্ষ।
এটি যেভাবে কাজ করে
গেস্ট পেজ টেবিল প্রথমে গেস্ট ভার্চুয়ালকে গেস্ট ফিজিক্যাল অ্যাড্রেসে অনুবাদ করে। হাইপারভাইজর দ্বারা নিয়ন্ত্রিত নেস্টেড পেজ টেবিল গেস্ট ফিজিক্যাল অ্যাড্রেসকে সিস্টেম ফিজিক্যাল অ্যাড্রেসে অনুবাদ করে। সংজ্ঞায়িত ফল্ট এবং ইনভ্যালিডেশন আচরণ সহ উভয় অনুবাদ পর্যায় এবং তাদের অনুমতিগুলো একটি মেমরি অ্যাক্সেসে অংশ নেয়।
যেখানে এটি কার্যকর
হোস্ট যখন মেশিনের প্রকৃত ফিজিক্যাল পেজে গেস্ট মেমরি ম্যাপ করে, তখন একটি VM নিজস্ব অ্যাড্রেস স্পেস পরিচালনা করতে পারে। নেস্টেড পেজিংকে একটি নির্দিষ্ট স্ট্যাটিক লুকআপ হিসেবে বিবেচনা করার পরিবর্তে একটি হাইপারভাইজরকে অবশ্যই ম্যাপিং পরিবর্তন এবং অনুবাদ ক্যাশগুলো সঠিকভাবে পরিচালনা করতে হবে।
সাপোর্ট এবং সক্ষমতা কীভাবে পরীক্ষা করবেন
এক্সটেন্ডেড লিফ রেঞ্জ এবং SVM সমর্থন নিশ্চিত করার পরে নেস্টেড পেজিংয়ের জন্য AMD SVM ফিচার লিফ এনামারেট করুন। যাচাই করুন যে হাইপারভাইজর যেকোনো নেস্টেড-গেস্ট প্রয়োজনীয়তা সহ কাঙ্ক্ষিত কনফিগারেশনটি প্রকৃতপক্ষে সক্রিয় এবং সমর্থন করে কিনা।
একটি ভার্চুয়ালাইজড স্থাপনার বেশ কয়েকটি স্তর রয়েছে: শারীরিক ক্ষমতা, ফার্মওয়্যার অনুমতি, সক্রিয় হোস্ট হাইপারভাইজার, উন্মুক্ত গেস্ট ক্ষমতা এবং গেস্ট OS সমর্থন। যে স্তরে অপারেশনটি প্রকৃতপক্ষে চলে তা পরীক্ষা করুন, প্রাসঙ্গিক হলে নেস্টেড ভার্চুয়ালাইজেশন সহ।
এই বৈশিষ্ট্যটি যা নিশ্চিত করে না
NPT দ্বারা IOMMU ডিভাইস আইসোলেশন, SEV বা প্রতিটি লার্জ-পেজ এবং নেস্টেড-ভার্চুয়ালাইজেশন বিকল্পকে বোঝায় না। RVI কোনো অতিরিক্ত নির্দেশনা নয় যা অ্যাপ্লিকেশনগুলো চালু করে। হ্রাসকৃত অনুবাদ ওভারহেড সার্বজনীন কর্মক্ষমতা গুণক হওয়ার চেয়ে কাজের চাপের ওপর নির্ভরশীল।
বাস্তবে সামঞ্জস্য এবং কর্মক্ষমতা
CPU এক্সিকিউশন, গেস্ট মেমরি ট্রান্সলেশন এবং ডিভাইস DMA রিম্যাপিং আলাদা সুবিধা। একটি ভার্চুয়ালাইজেশন ক্ষেত্র থেকে পাসথ্রু বা বিচ্ছিন্নতা অনুমান করবেন না। হাইপারভাইজারের সমর্থিত ডায়াগনস্টিকস এবং সঠিক প্ল্যাটফর্ম/ডিভাইসের প্রয়োজনীয়তা ব্যবহার করুন।
একটি ব্যবহারিক যাচাইকরণ চেকলিস্ট
- সংশ্লিষ্ট সুনির্দিষ্ট প্রসেসর বা প্ল্যাটফর্ম মডেল এবং অ্যাপ্লিকেশন, OS ও রানটাইম সংস্করণগুলি রেকর্ড করুন। প্রকৃত ত্রুটি বা প্রয়োজনীয়তার সঠিক শব্দচয়ন সংরক্ষণ করুন।
- সেই নির্দিষ্ট মডেলের জন্য প্রস্তুতকারকের রেফারেন্স পরীক্ষা করুন, তারপর প্রোগ্রামটি যে পরিবেশে চলে সেখানে কার্যকর সক্ষমতা এবং সক্রিয় অবস্থা পর্যবেক্ষণ করুন।
- নির্বাচিত বাইনারি বা ব্যাকএন্ডের প্রতিটি প্রয়োজনীয়তা তুলনা করুন। একই নামের কোনো বৈশিষ্ট্য, উপনাম বা বিস্তৃত প্রযুক্তির লেবেলই যথেষ্ট নয়।
- অ্যাপ্লিকেশনটি কাঙ্ক্ষিত বাস্তবায়ন নির্বাচন করেছে কিনা তা নিশ্চিত করুন। প্রয়োজনীয়তা পূরণ না হলে এর নথিভুক্ত ডায়াগনস্টিকস এবং একটি সমর্থিত ফলব্যাক ব্যবহার করুন।
- একবারে একটি সমর্থিত পরিবর্তন করুন এবং একই কাজের চাপ পুনরাবৃত্তি করুন। মূল কনফিগারেশন এবং পুনরুদ্ধারের পথ উপলব্ধ রাখুন।
যদি বৈশিষ্ট্যটি তালিকাভুক্ত থাকে কিন্তু সফটওয়্যার এটি ব্যবহার করতে না পারে
নির্দিষ্ট ব্যর্থ উপাদানটি দিয়ে শুরু করুন। একটি হার্ডওয়্যার ডাটাবেস সংরক্ষিত সক্ষমতা বর্ণনা করে; অপারেটিং সিস্টেম বা হাইপারভাইজর একটি ভিন্ন কার্যকর পরিবেশ প্রকাশ করতে পারে। একটি অবৈধ-নির্দেশনা (illegal-instruction) ত্রুটির ক্ষেত্রেও প্রকৃত ত্রুটিপূর্ণ নির্দেশনা এবং বাইনারি বিল্ড তদন্ত করা প্রয়োজন, কারণ ডেটা ক্ষতি বা সম্পর্কহীন কোনো অসমর্থিত নির্দেশনাও একই রকম লক্ষণ তৈরি করতে পারে।
নির্দিষ্ট প্ল্যাটফর্মের জন্য সমর্থিত অ্যাপ্লিকেশন, ড্রাইভার বা রানটাইম সংস্করণ ইনস্টল করুন এবং প্রয়োজনে ভেন্ডরের নথিভুক্ত বেসলাইন বা ফলব্যাক বিল্ড ব্যবহার করুন। একটি সফটওয়্যার আপডেট এমন কোনো নির্দেশনা তৈরি করতে পারে না যা প্রসেসরে নেই। ফার্মওয়্যার এবং নিরাপত্তা-নীতি পরিবর্তনগুলি একটি সাধারণ অপ্টিমাইজেশন রেসিপির পরিবর্তে সিস্টেম প্রস্তুতকারকের পদ্ধতি এবং একটি পুনরুদ্ধার পরিকল্পনা অনুসরণ করা উচিত।
এই ব্যাখ্যার উৎস এবং পরিধি
AMD CPUID স্পেসিফিকেশন, প্রকাশনা 25481 · AMD64 Architecture Programmer's Manual, Volume 2: System Programming
এই রেফারেন্সগুলি আর্কিটেকচারাল আচরণ এবং সফটওয়্যার প্রয়োজনীয়তা স্থাপন করে। এগুলি একটি লিঙ্কযুক্ত হার্ডওয়্যার মডেল পৃষ্ঠার প্রতিটি বৈশিষ্ট্যের মান স্বাধীনভাবে যাচাই করে না। মডেল সাপোর্টের জন্য, সেই পৃষ্ঠার প্রস্তুতকারকের প্রমাণ ব্যবহার করুন এবং কার্যকর সিস্টেম কনফিগারেশন পরীক্ষা করুন। এই নিবন্ধটি কোনো বেঞ্চমার্ক, সার্টিফিকেশন বা স্বাধীন পর্যালোচনার তারিখ সরবরাহ করে না।
উৎস এবং যাচাইকরণ
সম্পাদকীয় মালিকানা: Feex। কোনো স্বাধীন পর্যালোচনার তারিখ রেকর্ড করা নেই। আমরা কীভাবে গবেষণা করি.
- AMD CPUID স্পেসিফিকেশন, প্রকাশনা 25481 · প্রতিষ্ঠিত AMD CPUID ফাংশন এবং বিট সংজ্ঞার জন্য আর্কাইভ করা আর্কিটেকচারাল রেফারেন্স। পরবর্তী প্রজন্ম-নির্দিষ্ট এক্সটেনশনের জন্য বর্তমান প্রসেসর প্রোগ্রামিং রেফারেন্স ব্যবহার করুন।
- AMD64 Architecture Programmer's Manual, Volume 2: System Programming · সিস্টেম প্রোগ্রামিং, SVM এবং নেস্টেড অনুবাদ, সংস্করণ 3.46। বর্তমান ডকুমেন্টেশন ভিউয়ারের জন্য JavaScript প্রয়োজন; পুরানো নথি URLগুলি বাতিল করা হতে পারে।
এই নিবন্ধটি কি দরকারী ছিল?
একটি হ্যাঁ বা না-ই যথেষ্ট। আপনি চাইলে একটি কারণ বেছে নিন, বা একটি ছোট মন্তব্য যোগ করুন।
ধন্যবাদ। এটি আমাদের এই পৃষ্ঠাটি উন্নত করতে সহায়তা করে।