2011-09-17 13 views
5

मैं विंडोज 7 होम प्रीमियम x64 का उपयोग कर रहा हूं। मैं सोच रहा था कि मेरी system32 निर्देशिका में ntoskrnl के शीर्षलेख में IMAGE_MACHINETYPE फ़ील्ड क्यों x86 निर्दिष्ट करता है। आईडीए मुझे देशी x86 के रूप में इसे अलग करने की अनुमति देगा।NTOSKRNL.exe IMAGE_MACHINETYPE हेडर फ़ील्ड Windows 7 x64 के केवल कुछ संस्करणों पर x86 पर क्यों सेट है?

फिर भी मेरी विंडोज़ 7 प्रो मशीन पर, image_machinetype x64 है। क्या मुझे बस कुछ याद आ रहा है .. या 64 बिट ओएस पर ntoskrnl 32 बिट क्यों है?

+0

मैं इसका जवाब क्यों नहीं दे सकता, लेकिन ध्यान रखें कि लोडर जो ntoskrnl.exe लोडिंग करता है, बस इस बिट को अवहेलना कर सकता है और फ़ाइल को लोड कर सकता है ... हालांकि बहुत अच्छा लगता है ... – damageboy

उत्तर

3

मेरा अनुमान x64 आर्किटेक्चर पर है BIOS बूट ntoskrnl.exe के मुख्य() प्रविष्टि बिंदु को लंबे मोड (64 बिट) पर स्विच करने से पहले कहा जाता है। इस प्रकार यह एक प्रवेश बिंदु के रूप में अब तक एक x86 अनुप्रयोग होगा, लेकिन exe में कर्नेल छवि का शेष 64 बिट होगा।

संबंधित मुद्दे