मैं रॉबर्ट लव के "लिनक्स कर्नेल डेवलपमेंट" को पढ़ रहा हूं, और मैं निम्नलिखित मार्ग पर आया हूं:
नहीं (आसान) फ्लोटिंग पॉइंट का उपयोग
जब उपयोगकर्ता-स्थान प्रक्रिया फ्लोटिंग-पॉइंट निर्देशों का उपयोग करती है, तो कर्नेल पूर्णांक से फ़्लोटिंग पॉइंट मोड में संक्रमण का प्रबंधन करता है। फ्लोटिंग-पॉइंट निर्देशों का उपयोग करते समय कर्नेल को क्या करना है, आर्किटेक्चर द्वारा भिन्न होता है, लेकिन कर्नेल सामान्य रूप से एक जाल पकड़ता है और फिर पूर्णांक से फ्लोटिंग पॉइंट मोड में संक्रमण शुरू करता है।
यूजर-स्पेस के विपरीत, कर्नेल में फ्लोटिंग पॉइंट के लिए सीमलेस सपोर्ट नहीं है क्योंकि यह आसानी से नहीं फंस सकता है। कर्नेल के अंदर एक फ्लोटिंग पॉइंट का उपयोग करके अन्य संभावित कामों के बीच फ़्लोटिंग पॉइंट रजिस्टरों को मैन्युअल रूप से सहेजने और पुनर्स्थापित करने की आवश्यकता होती है। संक्षिप्त उत्तर है: यह मत करो! दुर्लभ मामलों को छोड़कर, कोई भी फ्लोटिंग-पॉइंट ऑपरेशन कर्नेल में नहीं है।
मैंने इन "पूर्णांक" और "फ़्लोटिंग-पॉइंट" मोड के बारे में कभी नहीं सुना है। वास्तव में वे क्या हैं, और उनकी आवश्यकता क्यों है? क्या यह अंतर मुख्यधारा के हार्डवेयर आर्किटेक्चर (जैसे x86) पर मौजूद है, या यह कुछ अधिक विदेशी वातावरणों के लिए विशिष्ट है? क्या वास्तव में पूर्णांक से फ्लोटिंग पॉइंट मोड में संक्रमण होता है, दोनों प्रक्रिया और कर्नेल के दृष्टिकोण से?