हार्डवेयर सहायक वर्चुअलाइजेशन के आगमन से पहले ऐसे निर्देश थे जिन्हें विभिन्न कारणों से वर्चुअलाइज्ड नहीं किया जा सका। क्या कोई कृपया बता सकता है कि ये निर्देश क्या हैं और उन्हें वर्चुअलाइज्ड क्यों नहीं किया जा सकता है?x86 आर्किटेक्चर में "गैर-वर्चुअलाइज करने योग्य" निर्देश क्या हैं?
उत्तर
एक आईएसए वर्चुअलाइज करने के लिए, कुछ आवश्यकताओं को पूरा किया जाना चाहिए। Popek and Goldberg कुछ निम्नलिखित की तरह इस्तेमाल किया:
एक मशीन में कम से कम दो मोड (क) उपयोगकर्ता मोड और (ख) प्रणाली मोड है। आम तौर पर, उपयोगकर्ता मोड में चल रहे अनुप्रयोग और ऑपरेटिंग सिस्टम सिस्टम मोड में चलता है। सिस्टम मोड में, कोड/प्रोग्राम बिना प्रतिबंध के मशीन को देख और कुशल बना सकता है। उपयोगकर्ता मोड में, कोड/प्रोग्राम में कुछ सीमाएं हैं जो यह कर सकती हैं, उदा। यह पहले अनुमति प्राप्त किए बिना मशीन की सभी मेमोरी तक नहीं पहुंच सकता है।
निर्देश हैं या तो (क) विशेषाधिकार प्राप्त या (ख) विशेषाधिकार प्राप्त नहीं। विशेषाधिकार निर्देश जाल जब उपयोगकर्ता मोड में निष्पादित किया गया। ट्रैपिंग का मतलब है कि मशीन को सिस्टम मोड में मजबूर किया जाता है जिससे यह स्थिति से निपटने के लिए ऑपरेटिंग सिस्टम के कुछ कोड निष्पादित करता है। एक अर्थ में, जब वे निष्पादित होते हैं तो वे ऑपरेटिंग सिस्टम को सतर्क करते हैं।
निर्देश भी हो सकता है या तो (क) संवेदनशील या (ख) प्रति संवेदनशील नहीं। संवेदनशील निर्देश मशीन के संसाधनों का हिस्सा संशोधित करते हैं, या उपयोगकर्ता मोड या सिस्टम मोड में निष्पादित किए जाने पर अलग-अलग व्यवहार प्रदर्शित करते हैं।
एक आईएसए वर्चुअलाइज करते समय, यह महत्वपूर्ण है कि वर्चुअल मशीन मॉनिटर (वीएमएम) आसानी से प्रबंधित हो सके, और मशीन के संसाधनों को संशोधित करने के लिए प्रोग्राम या अतिथि ऑपरेटिंग सिस्टम के किसी भी प्रयास को आसानी से संभाला जा सके। यह देखने में सक्षम होना चाहिए कि संवेदनशील निर्देश निष्पादित किए जा रहे हैं। ऐसा करने के लिए, सभीसंवेदनशील निर्देश विशेषाधिकार प्राप्त और इस प्रकार निष्पादित होने पर जाल की आवश्यकता है। फंस जाने पर, हम सिस्टम मोड दर्ज कर सकते हैं और संसाधन संशोधन को संभालने के लिए वीएमएम से कोड कॉल कर सकते हैं।
समस्या यह है कि नहीं सभी X86 के संवेदनशील निर्देश के विशेषाधिकार प्राप्त निर्देश हैं। इसका मतलब यह है कि संसाधन संशोधन VMM को देखकर और इसे संभालने के बिना हो सकता है जो खतरनाक हो सकता है। वैकल्पिक रूप से, इसका मतलब अतिथि ऑपरेटिंग सिस्टम के भीतर उपयोगकर्ता मोड में एक निर्देश निष्पादित करना और सिस्टम मोड में इसे निष्पादित करने से अलग प्रभाव देखने का मतलब हो सकता है। this paper के अनुसार x86 में सत्रह निर्देश हैं जो संवेदनशील हैं लेकिन विशेषाधिकार नहीं हैं। एक उदाहरण POPF
है जब मशीन के मोड के आधार पर अलग-अलग अर्थशास्त्र होते हैं।
आज़माएं! स्पष्ट स्पष्टीकरण। –
- 1. x86 आर्किटेक्चर
- 2. x86 अधिकतम/मिनट ASM निर्देश?
- 3. x86 निर्देश एन्कोडिंग टेबल
- 4. आज x86 पर कितने निर्देश हैं?
- 5. विधानसभा x86 - "छोड़" निर्देश
- 6. x86 असेंबली में cmove निर्देश का उद्देश्य?
- 7. x86 निर्देश सेट रोडमैप
- 8. एमआईपीएस आर्किटेक्चर सिस्कल निर्देश
- 9. ऐप आर्किटेक्चर: निर्देश बनाम नियंत्रक
- 10. पीआईई, पीआईसी कोड और 64-बिट x86 प्लेटफॉर्म पर निष्पादन योग्य तुलना में अंतर क्या हैं?
- 11. x86 में "PAUSE" निर्देश का उद्देश्य क्या है?
- 12. x86/x64 आर्किटेक्चर के लिए SQLite dll
- 13. x86 (-64) पर हस्ताक्षरित और हस्ताक्षरित गुणात्मक निर्देश क्यों हैं?
- 14. x86 आर्किटेक्चर में "ईयू" क्या है? (प्रभावी पता की गणना करता है?)
- 15. ट्यूरिंग पूर्ण अल्फान्यूमेरिक x86 निर्देश सेट (सब्सक्राइब)
- 16. क्या आईएन (असेंबली, आईएनएसबी, इत्यादि) x86 असेंबली में निर्देश ब्लॉक कर सकते हैं?
- 17. क्या विंडोज़ में सी ++ के लिए एक सरल प्रोग्राम फ़ाइलें/प्रोग्राम फ़ाइलें (x86) निर्देश है?
- 18. असेंबली: क्यों x64 में कुछ x86 opcodes अमान्य हैं?
- 19. x86 असेंबली में संकलित प्रत्येक निर्देश कितने बाईस है?
- 20. x86 स्ट्रिंग निर्देश प्रदर्शन के बारे में विश्वसनीय जानकारी?
- 21. x86 nopl निर्देश एक ऑपरेंड क्यों लेता है?
- 22. x86-64
- 23. x86
- 24. x86
- 25. एंड्रॉइड के लिए मोनो - समर्थित आर्किटेक्चर - ड्रॉप x86?
- 26. x86
- 27. कॉलक निर्देश क्या है?
- 28. क्या सीएसएस फ्रेमवर्क वास्तव में उपयोग करने योग्य हैं?
- 29. x86
- 30. क्या कोई योग्य सीएसएलए विकल्प उपलब्ध हैं?
मैं इस प्रश्न को ऑफ-विषय के रूप में बंद करने के लिए मतदान कर रहा हूं क्योंकि यह प्रोग्रामिंग प्रश्न नहीं है। महान जवाब के लिए धन्यवाद http://cs.stackexchange.com/ –