मैं अपने लिए एक सीखने के उपकरण के रूप में एक बहुत ही सरल ऑपरेटिंग सिस्टम लिख रहा हूं। मेरा वर्तमान कार्य हार्डवेयर जितना संभव हो उतना पता लगा रहा है।मैं x86 असेंबली में कोर की संख्या का पता कैसे लगा सकता हूं?
अब तक मैं सीपीयूआईडी निर्देश का उपयोग कर सीपीयू के बारे में बहुत सारी जानकारी प्राप्त करने में सक्षम हूं। एक चीज जो मुझे नहीं मिलती है वह संख्या या भौतिक और/या तार्किक कोर है। X86 असेंबली और सी के संयोजन का उपयोग करके ऐसा करने का कोई तरीका है?
मैं ऑपरेटिंग सिस्टम लिख रहा हूं, इसलिए कोड पर्यवेक्षक मोड में चलाया जा सकता है, और इस जानकारी के लिए क्वेरी करने के लिए कोई सिस्टम लाइब्रेरी नहीं है।
अच्छा अंतिम लिंक। धन्यवाद! –
आप देख सकते हैं कि मैक ओएस एक्स [xnu/osfmk/i386/cpuid.c] में समस्या हल करता है (http://opensource.apple.com/source/xnu/xnu-1504.9.37/osfmk/i386/cpuid। सी) ('core_count' के लिए खोजें) और [xnu/osfmk/i386/cpu_topology.c] (http://opensource.apple.com/source/xnu/xnu-1504.9.37/osfmk/i386/cpu_topology.c) । –
बढ़िया! धन्यवाद। – Conlan