operating system - How does Software/Code actually communicate with Hardware? -


मेरा प्रश्न यह है:

जब मैं "शट डाउन" विंडोज / लिनक्स में बटन, कंप्यूटर बंद हो जाता है कमांड "शट डाउन" ने वास्तव में कंप्यूटर को शट डाउन कैसे बना दिया?

मेरी बात स्पष्ट करने के लिए:

जब हम एक गेंद को लात करते हैं, तो गेंद को स्थानांतरित करने के लिए गेंद और हमारे पैर के बीच शारीरिक संपर्क। तो सॉफ्टवेयर और हार्डवेयर के बीच भौतिक कनेक्शन कैसे प्राप्त हुआ है? कैसे कोड का सादा पाठ कंप्यूटर को यह करता है कि वह क्या करता है?

बहुत ही बुनियादी स्तर पर, सादा पाठ कोड अंततः 0 और 1 के अनुवाद करता है। ये 0 और 1 है कम और उच्च वोल्टेज स्तर का प्रतिनिधित्व करते हैं। इस बिंदु पर, वोल्टेज का स्तर विभिन्न सर्किटों को नियंत्रित करता है।

एक बैटरी संचालित प्रशंसक के बारे में सोचें। बैटरी की शक्तियों द्वारा प्रदान की जाने वाली विद्युत बिजली, जो अंदर होती है, एक emag-field बनाने के लिए बिजली का उपयोग करती है जिससे शाफ्ट को घुमाया जाता है, जो स्पिन को प्रशंसक ब्लेड चलाता है। यह एक उदाहरण है कि कैसे वोल्टेज शारीरिक हो सकता है।

आप एक "स्विच" का निर्माण कर सकते हैं जो उचित वोल्टेज को दी, अंततः दीवार से वर्तमान खींचने को रोकने के लिए बिजली की आपूर्ति मिल जाएगी।

P> जाहिर है यह उस से बहुत अधिक जटिल है, लेकिन यह इसका सार है।

चीजों को आसान बनाने के लिए, कंप्यूटर का अमूर्त की परतों के साथ शामिल है।

बहुत कम स्तर पर वोल्टेज, सर्किट, ट्रांजिस्टर, और सिलिकॉन है हार्डवेयर के ऊपर की अगली परत ऑपरेटिंग सिस्टम है हर प्रकार की हार्डवेयर एक्सेस के लिए फिर से दोबारा लिखने के बजाय, ओएस हार्डवेयर का प्रबंधन करता है, और इसके उपयोग के लिए "हुक" प्रदान करता है ये हुक, या "इंटरफेस" आपके कोड को भिन्न हार्डवेयर तक पहुंचने के लिए एक सामान्य विधि की अनुमति देते हैं। तो ओएस द्वारा प्रदान किए गए इंटरफेस का उपयोग करके, आप अपना अनुप्रयोग लिख सकते हैं।

इन प्रत्येक परतों में, उप-परतें हैं, उदाहरण के लिए हार्डवेयर में फर्मवेयर हो सकता है - निम्न प्रकार की निम्न स्तर का निर्देश सेट निर्देश करता है कि हार्डवेयर कैसे चलाना चाहिए, EEPROM में संग्रहीत किया जाता है, और जब ड्राइव को संचालित किया जाता है तो लोड होता है। एक अन्य उपन्यास है कि कैसे अजगर की तरह एक उच्च स्तरीय भाषा ओएस द्वारा प्रदान किए गए कच्चे सॉकेट एपीआई पर सीधे प्रोग्राम किए बिना नेटवर्क सॉफ़्टवेयर लिखने के लिए एक पुस्तकालय प्रदान करता है।

ओएस सबसे हार्डवेयर / सॉफ्टवेयर इंटरैक्शन हार्डवेयर विक्रेताओं "प्लगइन्स / मॉड्यूल / ड्राइवर" लिखते हैं जो ओएस को अपने विशिष्ट हार्डवेयर को नियंत्रित करने की अनुमति देता है।

तो आप एक सॉफ़्टवेयर एप्लिकेशन लिखेंगे जो हार्डवेयर के लिए इन ओएस प्रदान किए गए इंटरफेस का लाभ उठाए। उदाहरण के लिए यदि आप कंप्यूटर को बंद करना चाहते हैं, तो खिड़कियां कंप्यूटर को बंद करने के लिए इंटरफ़ेस प्रदान करती हैं। आपका सॉफ्टवेयर इस इंटरफ़ेस को कॉल करेगा, और संकलन / व्याख्या पर, कोड में बदल जाएगा जो ओएस के लिए एक इंटरफ़ेस को कॉल करेगा। यह इंटरफ़ेस, बदले में कंप्यूटर को शट डाउन करने के निर्देश देने के लिए निर्देशों का एक प्रसिद्ध सेट निष्पादित करेगा। ये निर्देश 0 और 1 के, कम और उच्च वोल्ट हैं, जो कंप्यूटर के विशिष्ट भाग को एक्सेस करता है जिसे पॉवरअप / शटडाउन / स्टँडबाय को संभालने के लिए डिज़ाइन किया गया है, और सही संकेत दिया गया है, यह सिर्फ ऐसा ही करेगा।


Comments

Popular posts from this blog

windows - Heroku throws SQLITE3 Read only exception -

lex - Building a lexical Analyzer in Java -

python - rename keys in a dictionary -