बैंक स्विचिंग: Difference between revisions
(text) |
(text) |
||
| Line 1: | Line 1: | ||
{{Short description|A technique to increase the amount of usable memory}} | {{Short description|A technique to increase the amount of usable memory}} | ||
{{Confuse|Paging}} | {{Confuse|Paging}} | ||
[[File:Bankswitch memory map.svg|thumb|right|एक संसाधित्र के लिए बैंक-स्विच्ड स्मृति का एक काल्पनिक [[ स्मृति नक्शा ]] जो केवल 64 KB को संबोधित कर सकता है। यह योजना 200 KB स्मृति दिखाती है, जिसमें से केवल 64 KB ही संसाधित्र द्वारा किसी भी समय | [[File:Bankswitch memory map.svg|thumb|right|एक संसाधित्र के लिए बैंक-स्विच्ड स्मृति का एक काल्पनिक [[ स्मृति नक्शा ]] जो केवल 64 KB को संबोधित कर सकता है। यह योजना 200 KB स्मृति दिखाती है, जिसमें से केवल 64 KB ही संसाधित्र द्वारा किसी भी समय अधिक की जा सकती है। प्रचालन प्रणाली को यह सुनिश्चित करने के लिए बैंक- स्विचन संचालन का प्रबंधन करना चाहिए कि क्रमादेश निष्पादन जारी रह सके जब स्मृति का हिस्सा संसाधित्र तक पहुंच योग्य न हो।]] | ||
'''बैंक स्विचन''' अभिकलित्र प्रारुप में उपयोग की जाने वाली एक तकनीक है जिसका उपयोग प्रयोग करने योग्य स्मृति की मात्रा को [[ प्रोसेसर (कंप्यूटिंग) |संसाधित्र (अभिकलन)]] निर्देश द्वारा सीधे संबोधित करने योग्य राशि से अधिक करने के लिए किया जाता है<ref name="Aspinall_1978"/>। इसका उपयोग प्रणाली को अलग-अलग समय पर अलग-अलग तरीके से विन्यस्त करने के लिए किया जा सकता है, उदाहरण के लिए, नम्यिका से प्रणाली शुरू करने के लिए आवश्यक [[ रीड ऑनली मैमोरी |पठन मात्र स्मृति]] को जरूरत न होने पर बंद किया जा सकता है। विडियो खेल प्रणाली में, बैंक स्विचन ने मौजूदा शान्ति पर खेलने के लिए बड़े खेल विकसित करने की अनुमति दी है। | '''बैंक स्विचन''' अभिकलित्र प्रारुप में उपयोग की जाने वाली एक तकनीक है जिसका उपयोग प्रयोग करने योग्य स्मृति की मात्रा को [[ प्रोसेसर (कंप्यूटिंग) |संसाधित्र (अभिकलन)]] निर्देश द्वारा सीधे संबोधित करने योग्य राशि से अधिक करने के लिए किया जाता है<ref name="Aspinall_1978"/>। इसका उपयोग प्रणाली को अलग-अलग समय पर अलग-अलग तरीके से विन्यस्त करने के लिए किया जा सकता है, उदाहरण के लिए, नम्यिका से प्रणाली शुरू करने के लिए आवश्यक [[ रीड ऑनली मैमोरी |पठन मात्र स्मृति]] को जरूरत न होने पर बंद किया जा सकता है। विडियो खेल प्रणाली में, बैंक स्विचन ने मौजूदा शान्ति पर खेलने के लिए बड़े खेल विकसित करने की अनुमति दी है। | ||
बैंक स्विचन की शुरुआत [[ मिनी कंप्यूटर |लघु अभिकलित्र]] प्रणाली से हुई है।<ref name="Bell_1971"/>कई आधुनिक[[ माइक्रो | सूक्ष्म नियंत्रक]] और [[ माइक्रोप्रोसेसर |सूक्ष्म संसाधित्र]] छोटे [[ अंतः स्थापित प्रणाली |अंतः स्थापित प्रणाली]] में [[ यादृच्छिक अभिगम स्मृति |यादृच्छिक अभिगम स्मृति]], अनह्रासी स्मृति, निवेश निर्गम प्रणाली और प्रणाली प्रबंधन पंजी को प्रबंधित करने के लिए बैंक स्विचन का उपयोग करते हैं। तकनीक [[ 8 बिट |8 बिट]] सूक्ष्म अभिकलित्र प्रणाली में आम थी। बैंक- स्विचन का उपयोग संबोधित बस की चौड़ाई में सीमाओं के आसपास काम करने के लिए भी किया जा सकता है, जहां कुछ यंत्रोपादान बाधा अधिक संबोधित लाइनों के सीधे जोड़ को रोकती है, और आईएसए में सीमाओं के आसपास काम करने के लिए, जहां उत्पन्न पते संबोधित बस की चौड़ाई से संकरे होते हैं। कुछ नियंत्रण-उन्मुख सूक्ष्म संसाधित्र आंतरिक I/O और नियंत्रण प्रयुक्ति तक पहुंचने के लिए बैंक- स्विचन तकनीक का उपयोग करते हैं, जो प्रत्येक निर्देश में उपयोग किए जाने वाले प्रयुक्ति संबोधित द्वयंक की संख्या को सीमित करता है। | बैंक स्विचन की शुरुआत [[ मिनी कंप्यूटर |लघु अभिकलित्र]] प्रणाली से हुई है।<ref name="Bell_1971"/>कई आधुनिक[[ माइक्रो | सूक्ष्म नियंत्रक]] और [[ माइक्रोप्रोसेसर |सूक्ष्म संसाधित्र]] छोटे [[ अंतः स्थापित प्रणाली |अंतः स्थापित प्रणाली]] में [[ यादृच्छिक अभिगम स्मृति |यादृच्छिक अभिगम स्मृति]], अनह्रासी स्मृति, निवेश निर्गम प्रणाली और प्रणाली प्रबंधन पंजी को प्रबंधित करने के लिए बैंक स्विचन का उपयोग करते हैं। तकनीक [[ 8 बिट |8 बिट]] सूक्ष्म अभिकलित्र प्रणाली में आम थी। बैंक- स्विचन का उपयोग संबोधित बस की चौड़ाई में सीमाओं के आसपास काम करने के लिए भी किया जा सकता है, जहां कुछ यंत्रोपादान बाधा अधिक संबोधित लाइनों के सीधे जोड़ को रोकती है, और आईएसए में सीमाओं के आसपास काम करने के लिए, जहां उत्पन्न पते संबोधित बस की चौड़ाई से संकरे होते हैं। कुछ नियंत्रण-उन्मुख सूक्ष्म संसाधित्र आंतरिक I/O और नियंत्रण प्रयुक्ति तक पहुंचने के लिए बैंक- स्विचन तकनीक का उपयोग करते हैं, जो प्रत्येक निर्देश में उपयोग किए जाने वाले प्रयुक्ति संबोधित द्वयंक की संख्या को सीमित करता है। | ||
[[ पेजिंग | पृष्ठ]] द्वारा स्मृति प्रबंधन के विपरीत, [[ डिस्क भंडारण |चक्रिका भंडारण]] जैसे आधिक्य भंडारण प्रणाली के साथ आँकड़े का आदान-प्रदान नहीं किया जाता है। आँकड़े एक स्मृति क्षेत्र में नष्क्रिय भंडारण में रहता है जो वर्तमान में संसाधित्र के लिए सुलभ नहीं है (हालांकि यह वीडियो प्रदर्श, [[ प्रत्यक्ष मेमोरी एक्सेस |प्रत्यक्ष स्मृति | [[ पेजिंग | पृष्ठ]] द्वारा स्मृति प्रबंधन के विपरीत, [[ डिस्क भंडारण |चक्रिका भंडारण]] जैसे आधिक्य भंडारण प्रणाली के साथ आँकड़े का आदान-प्रदान नहीं किया जाता है। आँकड़े एक स्मृति क्षेत्र में नष्क्रिय भंडारण में रहता है जो वर्तमान में संसाधित्र के लिए सुलभ नहीं है (हालांकि यह वीडियो प्रदर्श, [[ प्रत्यक्ष मेमोरी एक्सेस |प्रत्यक्ष स्मृति अधिक]], या अभिकलित्र के अन्य उपप्रणाली के लिए सुलभ हो सकता है) विशेष उपसर्ग निर्देशों के उपयोग के बिना सुलभ नहीं है। | ||
== तकनीक == | == तकनीक == | ||
बैंक स्विचन को कुछ प्रयुक्ति के साथ संसाधित्र निर्देशों के[[ पता स्थान | | बैंक स्विचन को कुछ प्रयुक्ति के साथ संसाधित्र निर्देशों के[[ पता स्थान | संबोधित स्थान]] को बढ़ाने का एक तरीका माना जा सकता है। उदाहरण: | ||
*12 बिट संबोधित वाले संसाधित्र के लिए अनुसरण | *12 बिट संबोधित वाले संसाधित्र के लिए अनुसरण प्रणाली<ref>{{cite book | ||
| title = Control Data 160-A Computer Programming Manual | | title = Control Data 160-A Computer Programming Manual | ||
| id = 145e | | id = 145e | ||
| Line 19: | Line 19: | ||
| publisher = CDC | | publisher = CDC | ||
}} | }} | ||
</ref> में 15 बिट संबोधित बस होती है, लेकिन संबोधित बस में हाई थ्री द्वयंक को सीधे निर्दिष्ट करने का कोई तरीका नहीं है। उन | </ref> में 15 बिट संबोधित बस होती है, लेकिन संबोधित बस में हाई थ्री द्वयंक को सीधे निर्दिष्ट करने का कोई तरीका नहीं है। उन द्वयंक को प्रदान करने के लिए आंतरिक बैंक प्रयुक्ति का उपयोग किया जा सकता है। | ||
*15 बिट | *15 बिट संबोधित वाले संसाधित्र के लिए अनुसरण प्रणाली<ref>{{cite book | ||
| title = Control Data 3600 Computer System Reference Manual | | title = Control Data 3600 Computer System Reference Manual | ||
| id = 60021300E | | id = 60021300E | ||
| Line 26: | Line 26: | ||
| publisher = CDC | | publisher = CDC | ||
}} | }} | ||
</ref> में 18 बिट | </ref> में 18 बिट संबोधित बस होती है, लेकिन पैतृक निर्देशों में केवल 15 संबोधित द्वयंक होते हैं, आंतरिक बैंक प्रयुक्ति का उपयोग उन द्वयंक को प्रदान करने के लिए किया जा सकता है। कुछ नए निर्देश स्पष्ट रूप से बैंक को निर्दिष्ट कर सकते हैं। | ||
*16-बिट बाहरी | *16-बिट बाहरी संबोधित बस वाला एक संसाधित्र केवल 2<sup>16</sup> =[[ 65536 ]] स्मृति स्थानों को संबोधित कर सकता है। यदि प्रणाली में एक बाहरी सिटकन जोड़ा जाता है, तो इसका उपयोग यह नियंत्रित करने के लिए किया जा सकता है कि स्मृति प्रणाली के दो समुच्चय में से कौन से 65536 पते वाले प्रत्येक कोअधिक किया जा सकता है। सिटकन बिट को समुच्चय या साफ़ करके संसाधित्र बदल सकता है कि कौन सा समुच्चय वर्तमान उपयोग में है।<br> सिटकन को संसाधित्र द्वारा कई तरीकों से समुच्चय या साफ़ किया जा सकता है, एक विशेष स्मृति संबोधित को कूटानुवाद किया जा सकता है और सिटकन को नियंत्रित करने के लिए उपयोग किया जा सकता है, या, अलग-अलग-कूटानुवाद I/O संबोधित वाले संसाधित्र में, निर्गम संबोधित को कूटानुवाद किया जा सकता है। कई बैंक- स्विचन नियंत्रण द्वयंक को एक प्रयुक्ति में इकट्ठा किया जा सकता है, प्रयुक्ति में प्रत्येक अतिरिक्त बिट के साथ उपलब्ध स्मृति स्थान को लगभग दोगुना कर देता है।<br>चूंकि बाहरी बैंक-चयन सिटकन (या प्रयुक्ति) संसाधित्र के [[ कार्यक्रम गणक |क्रमादेश गणित्र]] से सीधे जुड़ा नहीं है, क्रमादेश गणित्र अतिप्रवाह होने पर यह स्वचालित रूप से स्थिति नहीं बदलता है, इसका बाहरी सिटकन द्वारा संबोधित नहीं लगाया जा सकता है क्योंकि क्रमादेश गणित्र संसाधित्र का एक आंतरिक प्रयुक्ति है। अतिरिक्त स्मृति क्रमादेश के लिए मूल रूप से उपलब्ध नहीं है। संसाधित्र के आंतरिक प्रयुक्ति अपनी मूल लंबाई पर बने रहते हैं, इसलिए संसाधित्र बैंक द्वारा स्विच की गई सभी स्मृति को सीधे नहीं फैला सकता है, उदाहरण एक आंतरिक प्रयुक्ति को बढ़ाना है।<ref name="Heath_2003"/>इसके बजाय संसाधित्र को बड़ी स्मृति उद्देश्य तक पहुंचने के लिए स्पष्ट रूप से बैंक- स्विचन संचालन करना चाहिए। आम तौर पर{{cn|date=June 2020}} एक बैंक- स्विचन प्रणाली में क्रमादेश स्मृति का एक विभाग होगा जो सभी बैंकों के लिए सामान्य है, कोई फर्क नहीं पड़ता कि वर्तमान में कौन सा बैंक सक्रिय है, संबोधितस्थान के हिस्से के लिए [[ स्मृति स्थान |स्मृति स्थान]] के केवल एक समुच्चय का उपयोग किया जाएगा। इस क्षेत्र का उपयोग संहिता रखने के लिए किया जाएगा जो बैंकों के बीच बदलाव का प्रबंधन करता है, और[[ रुकावट डालना | रूकावट]] को संसाधित करने के लिए भी प्रबंधन करता है। | ||
अक्सर एक एकल | अक्सर एक एकल आंकड़ाकोष कई बैंकों तक फैला होता है, और बैंकों के बीच अभिलेखबद्ध स्थानांतरित करने की आवश्यकता उत्पन्न होती है (जैसा कि छँटाई के लिए)। यदि एक समय में केवल एक बैंक पहुंच योग्य है, तो प्रत्येक बाइट को दो बार स्थानांतरित करना आवश्यक होगा: पहले सामान्य स्मृति क्षेत्र में, गंतव्य बैंक में बैंक स्विच करें, और फिर वास्तव में बाइट को गंतव्य बैंक में ले जाएं। यदि अभिकलित्र स्थापत्य में डीएमए (प्रत्यक्ष स्मृति संबोधन) इंजन या दूसरा सीपीयू है, और इसके बैंक अधिक प्रतिबंध भिन्न हैं, तो जो भी उपप्रणाली सीधे बैंकों के बीच आँकड़े स्थानांतरित कर सकता है, उसका उपयोग किया जाना चाहिए। | ||
[[ अप्रत्यक्ष स्मृति | | [[ अप्रत्यक्ष स्मृति |आभासी स्मृति]] योजना के विपरीत, बैंक- स्विचन को परिचालन क्रमादेश या प्रचालन प्रणाली द्वारा स्पष्ट रूप से प्रबंधित किया जाना चाहिए, संसाधित्र यंत्रोपादान स्वचालित रूप से यह संबोधित नहीं लगा सकता है कि वर्तमान में सक्रिय बैंक में प्रतिचित्रित नहीं किए गए आँकड़े की आवश्यकता है। अनुप्रयोग क्रमादेश को यह तरीका रखना चाहिए कि कौन सा स्मृति [[ मेमोरी बैंक |बैंक]] आवश्यक आँकड़े रखता है, और फिर उस बैंक को सक्रिय करने के लिए बैंक- स्विचन को नित्य कॉल करें।<ref name="Mueller_1992"/>हालाँकि, बैंक- स्विचन आँकड़े को बहुत तेज़ी से अधिक कर सकता है, उदाहरण के लिए, चक्रिका भंडारण से आँकड़े पुनर्प्राप्त करना है। | ||
== सूक्ष्म अभिकलित्र का उपयोग == | == सूक्ष्म अभिकलित्र का उपयोग == | ||
[[File:Bank Select Switch on Cromemco Memory Board.jpg|thumb|[[ Cromemco ]] स्मृति बोर्ड पर बैंक सेलेक्ट स्विच का उपयोग स्मृति को 8 अलग-अलग 64 KB बैंकों में से एक या अधिक में | [[File:Bank Select Switch on Cromemco Memory Board.jpg|thumb|[[ Cromemco ]] स्मृति बोर्ड पर बैंक सेलेक्ट स्विच का उपयोग स्मृति को 8 अलग-अलग 64 KB बैंकों में से एक या अधिक में प्रतिचित्रित करने के लिए किया गया था।<ref name="Garland_1977"/>]] | ||
[[ 16-बिट |16-बिट]] संबोधितिंग ([[ 8080 |8080]],[[ Z80 | Z80]], [[ 6502 |6502]],[[ 6809 | 6809]], आदि)वाले संसाधित्र आमतौर पर शुरुआती[[ विडियो गेम कंसोल | विडियो खेल शान्ति]] और[[ गृह कम्प्यूटर | गृह कम्प्यूटर]] में उपयोग किए जाते हैं, केवल 64 [[ किलोबाइट |किलोबाइट]] को संबोधित कर सकते हैं। अधिक स्मृति वाले प्रणाली को संबोधितस्थान को कई | [[ 16-बिट |16-बिट]] संबोधितिंग ([[ 8080 |8080]],[[ Z80 | Z80]], [[ 6502 |6502]],[[ 6809 | 6809]], आदि)वाले संसाधित्र आमतौर पर शुरुआती[[ विडियो गेम कंसोल | विडियो खेल शान्ति]] और[[ गृह कम्प्यूटर | गृह कम्प्यूटर]] में उपयोग किए जाते हैं, केवल 64 [[ किलोबाइट |किलोबाइट]] को संबोधित कर सकते हैं। अधिक स्मृति वाले प्रणाली को संबोधितस्थान को कई विभागों में विभाजित करना पड़ता था जिन्हें गतिशील रूप से बड़े संबोधितस्थान के भागों में प्रतिचित्रित किया जा सकता था। स्मृति को 64 KB तक के अलग-अलग बैंकों में व्यवस्थित करके इस बड़े संबोधित स्पेस को प्राप्त करने के लिए बैंक स्विचन का उपयोग किया गया था।<ref name="Garland_1979"/>विभिन्न आकारों के विभागों को बैंक के चुनिंदा प्रयुक्ति या इसी तरह के तंत्र के माध्यम से अंदर और बाहर स्विच किया गया था। क्रोमेम्को बैंक स्विचन का उपयोग करने वाला पहला सूक्ष्म अभिकलित्र निर्माता था, जो अपने प्रणाली में 64 KB के 8 बैंकों का समर्थन करता था।<ref name="Hogan_1981"/> | ||
बैंक स्विचन का उपयोग करते समय कुछ सावधानी बरतने की आवश्यकता थी ताकि [[ सबरूटीन | | बैंक स्विचन का उपयोग करते समय कुछ सावधानी बरतने की आवश्यकता थी ताकि [[ सबरूटीन |उपनित्य]] कॉल, इंटरप्ट, [[ कॉल स्टैक |कॉल स्टैक]]आदि के संचालन को दूषित न किया जा सके। जबकि सीपीयू से अस्थायी रूप से स्विच की गई स्मृति की सामग्री संसाधित्र के लिए दुर्गम थी, इसका उपयोग अन्य हार्डवेयर, जैसे वीडियो प्रदर्श, डीएमए, आई / ओ प्रणाली, आदि द्वारा किया जा सकता है। सीपी / एम -80 3.0 1983 में जारी किया गया था और Z80-आधारित [[ TRS-80 |TRS-80 ]]sमॉडल 4 और मॉडल II समर्थित बैंक स्विचन, 64 KB से अधिक स्मृति के उपयोग की अनुमति देने के लिए जिसे 8080 या Z80 संसाधित्र संबोधित कर सकता था।<ref name="Freiberger_1982"/> | ||
बैंक स्विचन ने अतिरिक्त स्मृति और फ़ंक्शंस को अभिकलित्र प्रारुप में जोड़ने की अनुमति दी, बिना खर्च और एक व्यापक संबोधित बस के साथ संसाधित्र पर स्विच करने की असंगति के बिना। उदाहरण के लिए, [[ कमोडोर 64 |C64]]ने पूर्ण 64 KB RAM की अनुमति देने के लिए बैंक स्विचन का उपयोग किया और अभी भी ROM और स्मृति- | बैंक स्विचन ने अतिरिक्त स्मृति और फ़ंक्शंस को अभिकलित्र प्रारुप में जोड़ने की अनुमति दी, बिना खर्च और एक व्यापक संबोधित बस के साथ संसाधित्र पर स्विच करने की असंगति के बिना। उदाहरण के लिए, [[ कमोडोर 64 |C64]]ने पूर्ण 64 KB RAM की अनुमति देने के लिए बैंक स्विचन का उपयोग किया और अभी भी ROM और स्मृति- प्रतिचित्रित्ड I/O के लिए भी प्रदान करता है। [[ अटारी 8-बिट परिवार |अटारी 130XE]] अपने दो संसाधित्र (6502 और ANTIC) को अलग-अलग RAM बैंकों तक पहुंचने की अनुमति दे सकता है, जिससे क्रमादेशर को सीपीयू को दिखाई देने वाली स्मृति का उपयोग किए बिना बड़े प्लेफील्ड और अन्य ग्राफिक ऑब्जेक्ट बनाने की अनुमति मिलती है। | ||
==सूक्ष्म नियंत्रक== | ==सूक्ष्म नियंत्रक== | ||
सूक्ष्मनियंत्रणर (महत्वपूर्ण इनपुट/निर्गम यंत्रोपादानएकीकृत ऑन-चिप के साथ सूक्ष्म संसाधित्र) बैंक स्विचन का उपयोग कर सकते हैं, उदाहरण के लिए, एकाधिक विन्यस्तेशन प्रयुक्ति या ऑन-चिप रीड/राइट स्मृति तक पहुंचने के लिए। एक उदाहरण [[ तस्वीर माइक्रोकंट्रोलर |PIC सूक्ष्मनियंत्रणर]]है। यह अपेक्षाकृत कम उपयोग किए जाने वाले प्रयुक्ति तक पहुंचने के लिए आवश्यक अतिरिक्त निर्देशों की कीमत पर, नियमित कार्यक्रम निष्पादन के दौरान अंतरिक्ष को बचाने के लिए संक्षिप्त निर्देश शब्दों की अनुमति देता है, जैसे कि स्टार्ट-अप पर प्रणाली विन्यस्तेशन के लिए उपयोग किया जाता है। | |||
== आईबीएम पीसी == | == आईबीएम पीसी == | ||
[[File:Expanded memory.svg|thumb|right|आईबीएम पीसी में विस्तारित स्मृति]] | [[File:Expanded memory.svg|thumb|right|आईबीएम पीसी में विस्तारित स्मृति]] | ||
1985 में, [[ लोटस सॉफ्टवेयर |कंपनियों लोटस]] और[[ इंटेल | इंटेल]] कंपनियों ने [[ एमएस-डॉस |एमएस-डॉस]] चलाने वाले [[ आईबीएम पीसी संगत |आईबीएम पीसी संगत]] अभिकलित्रों में उपयोग के लिए [[ विस्तारित मेमोरी |विस्तारित | 1985 में, [[ लोटस सॉफ्टवेयर |कंपनियों लोटस]] और[[ इंटेल | इंटेल]] कंपनियों ने [[ एमएस-डॉस |एमएस-डॉस]] चलाने वाले [[ आईबीएम पीसी संगत |आईबीएम पीसी संगत]] अभिकलित्रों में उपयोग के लिए [[ विस्तारित मेमोरी |विस्तारित]] स्मृति स्थानिफिकेशन (ईएमएस) 3.0 की शुरुआत की। [[ माइक्रोसॉफ्ट |सूक्ष्मसॉफ्ट]] 1986 में संस्करण 3.2 और 1987 में 4.0 में शामिल हुआ और विनिर्देश लोटस-इंटेल-सूक्ष्मसॉफ्ट ईएमएस या एलआईएम ईएमएस के रूप में जाना जाने लगा।<ref name="Mueller_1992"/><ref name="Lotus_1985"/><ref name="EMS_1987"/>यह बैंक स्विचन तकनीक का एक रूप है जो मूल आईबीएम पीसी स्थापत्य द्वारा परिभाषित 640 केबी से अधिक रैम की अनुमति देता है, इसे ऊपरी स्मृति क्षेत्र में स्थित 64 केबी "विंडो" में टुकड़े-टुकड़े करके प्रदर्शित करता है। 64 केबी को चार 16 केबी "पेजों" में विभाजित किया गया है, जिनमें से प्रत्येक को स्वतंत्र रूप से स्विच किया जा सकता है। कुछ अभिकलित्र खेल ने इसका उपयोग किया, और हालांकि ईएमएस अप्रचलित है, यह सुविधा आजकल [[ माइक्रोसॉफ़्ट विंडोज़ |सूक्ष्मसॉफ़्ट विंडोज़]] [[ ऑपरेटिंग सिस्टम |प्रचालन प्रणाली]] द्वारा अनुकरण की जाती है ताकि उन क्रमादेशों के साथ पश्चगामी संगतता प्रदान की जा सके। | ||
बाद में विस्तारित [[ विस्तारित मेमोरी विशिष्टता |विस्तारित स्मृति विशिष्टता]](XMS), जो अब अप्रचलित भी है, सिद्धांत रूप में, 1 एमबी (जिसे "एक्सटेंडेड स्मृति" कहा जाता है) से ऊपर स्मृति के लिए बैंक स्विचन का अनुकरण करने के लिए एक मानक है, जो कि [[ 86 |x86]] संसाधित्र के [[ वास्तविक मोड |वास्तविक मोड]] में सीधे संबोधितकरने योग्य नहीं है। जो MS-DOS चलता है। एक्सएमएस विस्तारित स्मृति को पारंपरिक स्मृति में कहीं भी कॉपी करने की अनुमति देता है, इसलिए "बैंकों" की सीमाएं तय नहीं हैं, लेकिन हर दूसरे तरीके से यह ईएमएस के बैंक स्विचन की तरह काम करता है, एक | बाद में विस्तारित [[ विस्तारित मेमोरी विशिष्टता |विस्तारित स्मृति विशिष्टता]](XMS), जो अब अप्रचलित भी है, सिद्धांत रूप में, 1 एमबी (जिसे "एक्सटेंडेड स्मृति" कहा जाता है) से ऊपर स्मृति के लिए बैंक स्विचन का अनुकरण करने के लिए एक मानक है, जो कि [[ 86 |x86]] संसाधित्र के [[ वास्तविक मोड |वास्तविक मोड]] में सीधे संबोधितकरने योग्य नहीं है। जो MS-DOS चलता है। एक्सएमएस विस्तारित स्मृति को पारंपरिक स्मृति में कहीं भी कॉपी करने की अनुमति देता है, इसलिए "बैंकों" की सीमाएं तय नहीं हैं, लेकिन हर दूसरे तरीके से यह ईएमएस के बैंक स्विचन की तरह काम करता है, एक क्रमादेश के परिप्रेक्ष्य से जो इसका उपयोग करता है। MS-DOS के बाद के संस्करणों (लगभग 5.0 संस्करण से शुरू) में EMM386 ड्राइवर शामिल था, जो XMS का उपयोग करके EMS स्मृति का अनुकरण करता है, क्रमादेश को विस्तारित स्मृति का उपयोग करने की अनुमति देता है, भले ही वे EMS के लिए लिखे गए हों। Microsoft Windows उन क्रमादेशों के लिए भी XMS का अनुकरण करता है, जिन्हें इसकी आवश्यकता होती है। | ||
== विडियो खेल शान्ति == | == विडियो खेल शान्ति == | ||
कुछ विडियो खेल शान्ति में बैंक स्विचन का भी उपयोग किया गया था।<ref name="Carey_2002"/>उदाहरण के लिए, [[ अटारी 2600 |अटारी 2600]], केवल 4 KB ROM को संबोधित कर सकता था, इसलिए बाद में 2600[[ खेल कारतूस | खेल कार्ट्रिज]]में अधिक ROM के उपयोग की अनुमति देने के लिए अपने स्वयं के बैंक स्विचन यंत्रोपादानशामिल थे और इस प्रकार अधिक परिष्कृत खेल (अधिक | कुछ विडियो खेल शान्ति में बैंक स्विचन का भी उपयोग किया गया था।<ref name="Carey_2002"/>उदाहरण के लिए, [[ अटारी 2600 |अटारी 2600]], केवल 4 KB ROM को संबोधित कर सकता था, इसलिए बाद में 2600[[ खेल कारतूस | खेल कार्ट्रिज]]में अधिक ROM के उपयोग की अनुमति देने के लिए अपने स्वयं के बैंक स्विचन यंत्रोपादानशामिल थे और इस प्रकार अधिक परिष्कृत खेल (अधिक क्रमादेश संहिता के माध्यम से और समान रूप से) की अनुमति देते थे। महत्वपूर्ण, बड़ी मात्रा में खेल आँकड़े जैसे कि ग्राफ़िक्स और विभिन्न खेल चरण)।<ref name="Grand_2004"/>[[ निन्टेंडो एंटरटेनमेंट सिस्टम | निन्टेंडो एंटरटेनमेंट प्रणाली]] में एक संशोधित[[ एमओएस प्रौद्योगिकी 6502 | 6502]] था लेकिन इसके कारतूस में कभी-कभी एक [[ मेगाबिट्स |मेगा द्वयंक]]या अधिक ROM होता था, जिसे बैंक स्विचन के माध्यम से संबोधित किया जाता था जिसे [[ मल्टी-मेमोरी कंट्रोलर |मल्टी-मेमोरी नियंत्रणर]] कहा जाता है।[[ खेल का लड़का | खेल ब्वॉय कार्ट्रिज]] ने एमबीसी (मेमोरी बैंक नियंत्रणर) नामक एक चिप का इस्तेमाल किया, जो न केवल रॉम बैंक स्विचन की पेशकश करता है, बल्कि कार्ट्रिज [[ स्टेटिक रैंडम-एक्सेस मेमोरी |स्टेटिक रैंडम-अधिक स्मृति]] बैंक स्विचन और यहां तक कि [[ अवरक्त |अवरक्त]] या रंबल मोटर्स जैसे बाह्य उपकरणों तक पहुंच प्रदान करता है। बैंक स्विचन अभी भी बाद के खेल प्रणाली पर इस्तेमाल किया जा रहा था। कई सेगा[[ मेगा ड्राइव |मेगा ड्राइव]] कार्ट्रिज, जैसे [[ सुपर स्ट्रीट फाइटर II |सुपर स्ट्रीट फाइटर II]]आकार में 4 एमबी से अधिक थे और इस तकनीक के उपयोग की आवश्यकता थी (4 एमबी अधिकतम संबोधितआकार था)। खेलपार्क होल्डिंग्स से [[ GP2X |GP2X]] हैंडहेल्ड दूसरे संसाधित्र के लिए स्टार्ट संबोधित (या स्मृति ऑफ़समुच्चय) को नियंत्रित करने के लिए बैंक स्विचन का उपयोग करता है। | ||
== वीडियो प्रोसेसिंग == | == वीडियो प्रोसेसिंग == | ||
कुछ प्रकार के अभिकलित्र वीडियो प्रदर्श में, [[ वीडियो प्रदर्शन |वीडियो प्रदर्शन]] को बेहतर बनाने के लिए [[ डबल बफरिंग (कंप्यूटर ग्राफिक्स) |डबल बफरिंग (अभिकलित्र ग्राफिक्स)]] की संबंधित तकनीक का उपयोग किया जा सकता है। इस मामले में, जबकि संसाधित्र भौतिक स्मृति स्थानों के एक | कुछ प्रकार के अभिकलित्र वीडियो प्रदर्श में, [[ वीडियो प्रदर्शन |वीडियो प्रदर्शन]] को बेहतर बनाने के लिए [[ डबल बफरिंग (कंप्यूटर ग्राफिक्स) |डबल बफरिंग (अभिकलित्र ग्राफिक्स)]] की संबंधित तकनीक का उपयोग किया जा सकता है। इस मामले में, जबकि संसाधित्र भौतिक स्मृति स्थानों के एक समुच्चय की सामग्री को अद्यतन कर रहा है, वीडियो पीढ़ी यंत्रोपादानदूसरे समुच्चय की सामग्री तक पहुंच और प्रदर्शित कर रहा है। जब संसाधित्र ने अपना अपडेट पूरा कर लिया है, तो यह सक्रिय बैंकों को स्वैप करने के लिए[[ वीडियो प्रदर्शन प्रोसेसर |वीडियो प्रदर्शन संसाधित्र]] को संकेत दे सकता है, ताकि स्क्रीन पर दिखाई देने वाला बदलाव कलाकृतियों या विरूपण से मुक्त हो। इस मामले में, संसाधित्र के पास एक ही बार में सभी स्मृति तक पहुंच हो सकती है, लेकिन वीडियो प्रदर्श यंत्रोपादानवीडियो स्मृति के कुछ हिस्सों के बीच बैंक-स्विच होता है। यदि वीडियो स्मृति के दो (या अधिक) बैंकों में थोड़ी अलग छवियां होती हैं, तो उनके बीच तेजी से साइकिल चलाना (पृष्ठ-फ़्लिपिंग) एनीमेशन या अन्य दृश्य प्रभाव पैदा कर सकता है जो संसाधित्र अन्यथा सीधे निष्पादित करने के लिए बहुत धीमा हो सकता है। | ||
== वैकल्पिक और उत्तराधिकारी तकनीक == | == वैकल्पिक और उत्तराधिकारी तकनीक == | ||
| Line 62: | Line 62: | ||
== यह भी देखें == | == यह भी देखें == | ||
* [[ बग़ल में पता स्थान | बग़ल में संबोधितस्थान]] , [[ बीबीसी माइक्रो | बीबीसी सूक्ष्म]] पर बैंक स्विचन का एक उदाहरण | * [[ बग़ल में पता स्थान | बग़ल में संबोधितस्थान]] , [[ बीबीसी माइक्रो | बीबीसी सूक्ष्म]] पर बैंक स्विचन का एक उदाहरण | ||
* [[ ओवरले (प्रोग्रामिंग) ]] | * [[ ओवरले (प्रोग्रामिंग) | ओवरले ( क्रमादेशिंग)]] | ||
== संदर्भ == | == संदर्भ == | ||
| Line 86: | Line 86: | ||
*बूटिंग | *बूटिंग | ||
*microcontroller | *microcontroller | ||
*निर्देश | *निर्देश समुच्चय वास्तुकला | ||
*टीआरएस-80 मॉडल 4 | *टीआरएस-80 मॉडल 4 | ||
*टीआरएस-80 मॉडल II | *टीआरएस-80 मॉडल II | ||
Revision as of 13:00, 27 September 2022
बैंक स्विचन अभिकलित्र प्रारुप में उपयोग की जाने वाली एक तकनीक है जिसका उपयोग प्रयोग करने योग्य स्मृति की मात्रा को संसाधित्र (अभिकलन) निर्देश द्वारा सीधे संबोधित करने योग्य राशि से अधिक करने के लिए किया जाता है[1]। इसका उपयोग प्रणाली को अलग-अलग समय पर अलग-अलग तरीके से विन्यस्त करने के लिए किया जा सकता है, उदाहरण के लिए, नम्यिका से प्रणाली शुरू करने के लिए आवश्यक पठन मात्र स्मृति को जरूरत न होने पर बंद किया जा सकता है। विडियो खेल प्रणाली में, बैंक स्विचन ने मौजूदा शान्ति पर खेलने के लिए बड़े खेल विकसित करने की अनुमति दी है।
बैंक स्विचन की शुरुआत लघु अभिकलित्र प्रणाली से हुई है।[2]कई आधुनिक सूक्ष्म नियंत्रक और सूक्ष्म संसाधित्र छोटे अंतः स्थापित प्रणाली में यादृच्छिक अभिगम स्मृति, अनह्रासी स्मृति, निवेश निर्गम प्रणाली और प्रणाली प्रबंधन पंजी को प्रबंधित करने के लिए बैंक स्विचन का उपयोग करते हैं। तकनीक 8 बिट सूक्ष्म अभिकलित्र प्रणाली में आम थी। बैंक- स्विचन का उपयोग संबोधित बस की चौड़ाई में सीमाओं के आसपास काम करने के लिए भी किया जा सकता है, जहां कुछ यंत्रोपादान बाधा अधिक संबोधित लाइनों के सीधे जोड़ को रोकती है, और आईएसए में सीमाओं के आसपास काम करने के लिए, जहां उत्पन्न पते संबोधित बस की चौड़ाई से संकरे होते हैं। कुछ नियंत्रण-उन्मुख सूक्ष्म संसाधित्र आंतरिक I/O और नियंत्रण प्रयुक्ति तक पहुंचने के लिए बैंक- स्विचन तकनीक का उपयोग करते हैं, जो प्रत्येक निर्देश में उपयोग किए जाने वाले प्रयुक्ति संबोधित द्वयंक की संख्या को सीमित करता है।
पृष्ठ द्वारा स्मृति प्रबंधन के विपरीत, चक्रिका भंडारण जैसे आधिक्य भंडारण प्रणाली के साथ आँकड़े का आदान-प्रदान नहीं किया जाता है। आँकड़े एक स्मृति क्षेत्र में नष्क्रिय भंडारण में रहता है जो वर्तमान में संसाधित्र के लिए सुलभ नहीं है (हालांकि यह वीडियो प्रदर्श, प्रत्यक्ष स्मृति अधिक, या अभिकलित्र के अन्य उपप्रणाली के लिए सुलभ हो सकता है) विशेष उपसर्ग निर्देशों के उपयोग के बिना सुलभ नहीं है।
तकनीक
बैंक स्विचन को कुछ प्रयुक्ति के साथ संसाधित्र निर्देशों के संबोधित स्थान को बढ़ाने का एक तरीका माना जा सकता है। उदाहरण:
- 12 बिट संबोधित वाले संसाधित्र के लिए अनुसरण प्रणाली[3] में 15 बिट संबोधित बस होती है, लेकिन संबोधित बस में हाई थ्री द्वयंक को सीधे निर्दिष्ट करने का कोई तरीका नहीं है। उन द्वयंक को प्रदान करने के लिए आंतरिक बैंक प्रयुक्ति का उपयोग किया जा सकता है।
- 15 बिट संबोधित वाले संसाधित्र के लिए अनुसरण प्रणाली[4] में 18 बिट संबोधित बस होती है, लेकिन पैतृक निर्देशों में केवल 15 संबोधित द्वयंक होते हैं, आंतरिक बैंक प्रयुक्ति का उपयोग उन द्वयंक को प्रदान करने के लिए किया जा सकता है। कुछ नए निर्देश स्पष्ट रूप से बैंक को निर्दिष्ट कर सकते हैं।
- 16-बिट बाहरी संबोधित बस वाला एक संसाधित्र केवल 216 =65536 स्मृति स्थानों को संबोधित कर सकता है। यदि प्रणाली में एक बाहरी सिटकन जोड़ा जाता है, तो इसका उपयोग यह नियंत्रित करने के लिए किया जा सकता है कि स्मृति प्रणाली के दो समुच्चय में से कौन से 65536 पते वाले प्रत्येक कोअधिक किया जा सकता है। सिटकन बिट को समुच्चय या साफ़ करके संसाधित्र बदल सकता है कि कौन सा समुच्चय वर्तमान उपयोग में है।
सिटकन को संसाधित्र द्वारा कई तरीकों से समुच्चय या साफ़ किया जा सकता है, एक विशेष स्मृति संबोधित को कूटानुवाद किया जा सकता है और सिटकन को नियंत्रित करने के लिए उपयोग किया जा सकता है, या, अलग-अलग-कूटानुवाद I/O संबोधित वाले संसाधित्र में, निर्गम संबोधित को कूटानुवाद किया जा सकता है। कई बैंक- स्विचन नियंत्रण द्वयंक को एक प्रयुक्ति में इकट्ठा किया जा सकता है, प्रयुक्ति में प्रत्येक अतिरिक्त बिट के साथ उपलब्ध स्मृति स्थान को लगभग दोगुना कर देता है।
चूंकि बाहरी बैंक-चयन सिटकन (या प्रयुक्ति) संसाधित्र के क्रमादेश गणित्र से सीधे जुड़ा नहीं है, क्रमादेश गणित्र अतिप्रवाह होने पर यह स्वचालित रूप से स्थिति नहीं बदलता है, इसका बाहरी सिटकन द्वारा संबोधित नहीं लगाया जा सकता है क्योंकि क्रमादेश गणित्र संसाधित्र का एक आंतरिक प्रयुक्ति है। अतिरिक्त स्मृति क्रमादेश के लिए मूल रूप से उपलब्ध नहीं है। संसाधित्र के आंतरिक प्रयुक्ति अपनी मूल लंबाई पर बने रहते हैं, इसलिए संसाधित्र बैंक द्वारा स्विच की गई सभी स्मृति को सीधे नहीं फैला सकता है, उदाहरण एक आंतरिक प्रयुक्ति को बढ़ाना है।[5]इसके बजाय संसाधित्र को बड़ी स्मृति उद्देश्य तक पहुंचने के लिए स्पष्ट रूप से बैंक- स्विचन संचालन करना चाहिए। आम तौर पर[citation needed] एक बैंक- स्विचन प्रणाली में क्रमादेश स्मृति का एक विभाग होगा जो सभी बैंकों के लिए सामान्य है, कोई फर्क नहीं पड़ता कि वर्तमान में कौन सा बैंक सक्रिय है, संबोधितस्थान के हिस्से के लिए स्मृति स्थान के केवल एक समुच्चय का उपयोग किया जाएगा। इस क्षेत्र का उपयोग संहिता रखने के लिए किया जाएगा जो बैंकों के बीच बदलाव का प्रबंधन करता है, और रूकावट को संसाधित करने के लिए भी प्रबंधन करता है।
अक्सर एक एकल आंकड़ाकोष कई बैंकों तक फैला होता है, और बैंकों के बीच अभिलेखबद्ध स्थानांतरित करने की आवश्यकता उत्पन्न होती है (जैसा कि छँटाई के लिए)। यदि एक समय में केवल एक बैंक पहुंच योग्य है, तो प्रत्येक बाइट को दो बार स्थानांतरित करना आवश्यक होगा: पहले सामान्य स्मृति क्षेत्र में, गंतव्य बैंक में बैंक स्विच करें, और फिर वास्तव में बाइट को गंतव्य बैंक में ले जाएं। यदि अभिकलित्र स्थापत्य में डीएमए (प्रत्यक्ष स्मृति संबोधन) इंजन या दूसरा सीपीयू है, और इसके बैंक अधिक प्रतिबंध भिन्न हैं, तो जो भी उपप्रणाली सीधे बैंकों के बीच आँकड़े स्थानांतरित कर सकता है, उसका उपयोग किया जाना चाहिए।
आभासी स्मृति योजना के विपरीत, बैंक- स्विचन को परिचालन क्रमादेश या प्रचालन प्रणाली द्वारा स्पष्ट रूप से प्रबंधित किया जाना चाहिए, संसाधित्र यंत्रोपादान स्वचालित रूप से यह संबोधित नहीं लगा सकता है कि वर्तमान में सक्रिय बैंक में प्रतिचित्रित नहीं किए गए आँकड़े की आवश्यकता है। अनुप्रयोग क्रमादेश को यह तरीका रखना चाहिए कि कौन सा स्मृति बैंक आवश्यक आँकड़े रखता है, और फिर उस बैंक को सक्रिय करने के लिए बैंक- स्विचन को नित्य कॉल करें।[6]हालाँकि, बैंक- स्विचन आँकड़े को बहुत तेज़ी से अधिक कर सकता है, उदाहरण के लिए, चक्रिका भंडारण से आँकड़े पुनर्प्राप्त करना है।
सूक्ष्म अभिकलित्र का उपयोग
16-बिट संबोधितिंग (8080, Z80, 6502, 6809, आदि)वाले संसाधित्र आमतौर पर शुरुआती विडियो खेल शान्ति और गृह कम्प्यूटर में उपयोग किए जाते हैं, केवल 64 किलोबाइट को संबोधित कर सकते हैं। अधिक स्मृति वाले प्रणाली को संबोधितस्थान को कई विभागों में विभाजित करना पड़ता था जिन्हें गतिशील रूप से बड़े संबोधितस्थान के भागों में प्रतिचित्रित किया जा सकता था। स्मृति को 64 KB तक के अलग-अलग बैंकों में व्यवस्थित करके इस बड़े संबोधित स्पेस को प्राप्त करने के लिए बैंक स्विचन का उपयोग किया गया था।[8]विभिन्न आकारों के विभागों को बैंक के चुनिंदा प्रयुक्ति या इसी तरह के तंत्र के माध्यम से अंदर और बाहर स्विच किया गया था। क्रोमेम्को बैंक स्विचन का उपयोग करने वाला पहला सूक्ष्म अभिकलित्र निर्माता था, जो अपने प्रणाली में 64 KB के 8 बैंकों का समर्थन करता था।[9]
बैंक स्विचन का उपयोग करते समय कुछ सावधानी बरतने की आवश्यकता थी ताकि उपनित्य कॉल, इंटरप्ट, कॉल स्टैकआदि के संचालन को दूषित न किया जा सके। जबकि सीपीयू से अस्थायी रूप से स्विच की गई स्मृति की सामग्री संसाधित्र के लिए दुर्गम थी, इसका उपयोग अन्य हार्डवेयर, जैसे वीडियो प्रदर्श, डीएमए, आई / ओ प्रणाली, आदि द्वारा किया जा सकता है। सीपी / एम -80 3.0 1983 में जारी किया गया था और Z80-आधारित TRS-80 sमॉडल 4 और मॉडल II समर्थित बैंक स्विचन, 64 KB से अधिक स्मृति के उपयोग की अनुमति देने के लिए जिसे 8080 या Z80 संसाधित्र संबोधित कर सकता था।[10]
बैंक स्विचन ने अतिरिक्त स्मृति और फ़ंक्शंस को अभिकलित्र प्रारुप में जोड़ने की अनुमति दी, बिना खर्च और एक व्यापक संबोधित बस के साथ संसाधित्र पर स्विच करने की असंगति के बिना। उदाहरण के लिए, C64ने पूर्ण 64 KB RAM की अनुमति देने के लिए बैंक स्विचन का उपयोग किया और अभी भी ROM और स्मृति- प्रतिचित्रित्ड I/O के लिए भी प्रदान करता है। अटारी 130XE अपने दो संसाधित्र (6502 और ANTIC) को अलग-अलग RAM बैंकों तक पहुंचने की अनुमति दे सकता है, जिससे क्रमादेशर को सीपीयू को दिखाई देने वाली स्मृति का उपयोग किए बिना बड़े प्लेफील्ड और अन्य ग्राफिक ऑब्जेक्ट बनाने की अनुमति मिलती है।
सूक्ष्म नियंत्रक
सूक्ष्मनियंत्रणर (महत्वपूर्ण इनपुट/निर्गम यंत्रोपादानएकीकृत ऑन-चिप के साथ सूक्ष्म संसाधित्र) बैंक स्विचन का उपयोग कर सकते हैं, उदाहरण के लिए, एकाधिक विन्यस्तेशन प्रयुक्ति या ऑन-चिप रीड/राइट स्मृति तक पहुंचने के लिए। एक उदाहरण PIC सूक्ष्मनियंत्रणरहै। यह अपेक्षाकृत कम उपयोग किए जाने वाले प्रयुक्ति तक पहुंचने के लिए आवश्यक अतिरिक्त निर्देशों की कीमत पर, नियमित कार्यक्रम निष्पादन के दौरान अंतरिक्ष को बचाने के लिए संक्षिप्त निर्देश शब्दों की अनुमति देता है, जैसे कि स्टार्ट-अप पर प्रणाली विन्यस्तेशन के लिए उपयोग किया जाता है।
आईबीएम पीसी
1985 में, कंपनियों लोटस और इंटेल कंपनियों ने एमएस-डॉस चलाने वाले आईबीएम पीसी संगत अभिकलित्रों में उपयोग के लिए विस्तारित स्मृति स्थानिफिकेशन (ईएमएस) 3.0 की शुरुआत की। सूक्ष्मसॉफ्ट 1986 में संस्करण 3.2 और 1987 में 4.0 में शामिल हुआ और विनिर्देश लोटस-इंटेल-सूक्ष्मसॉफ्ट ईएमएस या एलआईएम ईएमएस के रूप में जाना जाने लगा।[6][11][12]यह बैंक स्विचन तकनीक का एक रूप है जो मूल आईबीएम पीसी स्थापत्य द्वारा परिभाषित 640 केबी से अधिक रैम की अनुमति देता है, इसे ऊपरी स्मृति क्षेत्र में स्थित 64 केबी "विंडो" में टुकड़े-टुकड़े करके प्रदर्शित करता है। 64 केबी को चार 16 केबी "पेजों" में विभाजित किया गया है, जिनमें से प्रत्येक को स्वतंत्र रूप से स्विच किया जा सकता है। कुछ अभिकलित्र खेल ने इसका उपयोग किया, और हालांकि ईएमएस अप्रचलित है, यह सुविधा आजकल सूक्ष्मसॉफ़्ट विंडोज़ प्रचालन प्रणाली द्वारा अनुकरण की जाती है ताकि उन क्रमादेशों के साथ पश्चगामी संगतता प्रदान की जा सके।
बाद में विस्तारित विस्तारित स्मृति विशिष्टता(XMS), जो अब अप्रचलित भी है, सिद्धांत रूप में, 1 एमबी (जिसे "एक्सटेंडेड स्मृति" कहा जाता है) से ऊपर स्मृति के लिए बैंक स्विचन का अनुकरण करने के लिए एक मानक है, जो कि x86 संसाधित्र के वास्तविक मोड में सीधे संबोधितकरने योग्य नहीं है। जो MS-DOS चलता है। एक्सएमएस विस्तारित स्मृति को पारंपरिक स्मृति में कहीं भी कॉपी करने की अनुमति देता है, इसलिए "बैंकों" की सीमाएं तय नहीं हैं, लेकिन हर दूसरे तरीके से यह ईएमएस के बैंक स्विचन की तरह काम करता है, एक क्रमादेश के परिप्रेक्ष्य से जो इसका उपयोग करता है। MS-DOS के बाद के संस्करणों (लगभग 5.0 संस्करण से शुरू) में EMM386 ड्राइवर शामिल था, जो XMS का उपयोग करके EMS स्मृति का अनुकरण करता है, क्रमादेश को विस्तारित स्मृति का उपयोग करने की अनुमति देता है, भले ही वे EMS के लिए लिखे गए हों। Microsoft Windows उन क्रमादेशों के लिए भी XMS का अनुकरण करता है, जिन्हें इसकी आवश्यकता होती है।
विडियो खेल शान्ति
कुछ विडियो खेल शान्ति में बैंक स्विचन का भी उपयोग किया गया था।[13]उदाहरण के लिए, अटारी 2600, केवल 4 KB ROM को संबोधित कर सकता था, इसलिए बाद में 2600 खेल कार्ट्रिजमें अधिक ROM के उपयोग की अनुमति देने के लिए अपने स्वयं के बैंक स्विचन यंत्रोपादानशामिल थे और इस प्रकार अधिक परिष्कृत खेल (अधिक क्रमादेश संहिता के माध्यम से और समान रूप से) की अनुमति देते थे। महत्वपूर्ण, बड़ी मात्रा में खेल आँकड़े जैसे कि ग्राफ़िक्स और विभिन्न खेल चरण)।[14] निन्टेंडो एंटरटेनमेंट प्रणाली में एक संशोधित 6502 था लेकिन इसके कारतूस में कभी-कभी एक मेगा द्वयंकया अधिक ROM होता था, जिसे बैंक स्विचन के माध्यम से संबोधित किया जाता था जिसे मल्टी-मेमोरी नियंत्रणर कहा जाता है। खेल ब्वॉय कार्ट्रिज ने एमबीसी (मेमोरी बैंक नियंत्रणर) नामक एक चिप का इस्तेमाल किया, जो न केवल रॉम बैंक स्विचन की पेशकश करता है, बल्कि कार्ट्रिज स्टेटिक रैंडम-अधिक स्मृति बैंक स्विचन और यहां तक कि अवरक्त या रंबल मोटर्स जैसे बाह्य उपकरणों तक पहुंच प्रदान करता है। बैंक स्विचन अभी भी बाद के खेल प्रणाली पर इस्तेमाल किया जा रहा था। कई सेगामेगा ड्राइव कार्ट्रिज, जैसे सुपर स्ट्रीट फाइटर IIआकार में 4 एमबी से अधिक थे और इस तकनीक के उपयोग की आवश्यकता थी (4 एमबी अधिकतम संबोधितआकार था)। खेलपार्क होल्डिंग्स से GP2X हैंडहेल्ड दूसरे संसाधित्र के लिए स्टार्ट संबोधित (या स्मृति ऑफ़समुच्चय) को नियंत्रित करने के लिए बैंक स्विचन का उपयोग करता है।
वीडियो प्रोसेसिंग
कुछ प्रकार के अभिकलित्र वीडियो प्रदर्श में, वीडियो प्रदर्शन को बेहतर बनाने के लिए डबल बफरिंग (अभिकलित्र ग्राफिक्स) की संबंधित तकनीक का उपयोग किया जा सकता है। इस मामले में, जबकि संसाधित्र भौतिक स्मृति स्थानों के एक समुच्चय की सामग्री को अद्यतन कर रहा है, वीडियो पीढ़ी यंत्रोपादानदूसरे समुच्चय की सामग्री तक पहुंच और प्रदर्शित कर रहा है। जब संसाधित्र ने अपना अपडेट पूरा कर लिया है, तो यह सक्रिय बैंकों को स्वैप करने के लिएवीडियो प्रदर्शन संसाधित्र को संकेत दे सकता है, ताकि स्क्रीन पर दिखाई देने वाला बदलाव कलाकृतियों या विरूपण से मुक्त हो। इस मामले में, संसाधित्र के पास एक ही बार में सभी स्मृति तक पहुंच हो सकती है, लेकिन वीडियो प्रदर्श यंत्रोपादानवीडियो स्मृति के कुछ हिस्सों के बीच बैंक-स्विच होता है। यदि वीडियो स्मृति के दो (या अधिक) बैंकों में थोड़ी अलग छवियां होती हैं, तो उनके बीच तेजी से साइकिल चलाना (पृष्ठ-फ़्लिपिंग) एनीमेशन या अन्य दृश्य प्रभाव पैदा कर सकता है जो संसाधित्र अन्यथा सीधे निष्पादित करने के लिए बहुत धीमा हो सकता है।
वैकल्पिक और उत्तराधिकारी तकनीक
बैंक स्विचन को बाद में कई 16-बिट प्रणाली में विभाजन द्वारा प्रतिस्थापित किया गया, जिसने बदले में स्मृति प्रबंधन इकाइयों को पृष्ठ करने का रास्ता दिया। हालांकि, एम्बेडेड प्रणाली में, बैंक स्विचन का उपयोग अक्सर इसकी सादगी, कम लागत और सामान्य प्रयोजन अभिकलन की तुलना में उन संदर्भों के लिए अक्सर बेहतर अनुकूलन के लिए किया जाता है।
यह भी देखें
- बग़ल में संबोधितस्थान , बीबीसी सूक्ष्म पर बैंक स्विचन का एक उदाहरण
- ओवरले ( क्रमादेशिंग)
संदर्भ
- ↑ Aspinall, D., ed. (1978). The Microprocessor and its application: an advanced course. CUP Archive. pp. 47–50. ISBN 0-521-22241-9.
- ↑ Bell, C. Gordon; Newell, Allen (1971). Computer structures: readings and examples. McGraw Hill. pp. 156.
- ↑ "Storage Control". Control Data 160-A Computer Programming Manual (PDF). CDC. March 1963. p. 2-09. 145e.
- ↑ Control Data 3600 Computer System Reference Manual (PDF). CDC. 60021300E.
- ↑ Heath, Steve (2003). Embedded systems design. Newnes. pp. 242. ISBN 0-7506-5546-1.
- ↑ 6.0 6.1 Mueller, Scott (1992). Upgrading and Repairing PCs (2 ed.). Que Books. pp. 699–700. ISBN 0-88022-856-3. Retrieved 2020-02-08.
{{cite book}}: CS1 maint: url-status (link) - ↑ Garland, Harry (March 1977). "Design Innovations in Personal Computers". Computer. IEEE Computer Society. 10 (3): 25. doi:10.1109/c-m.1977.217669. S2CID 32243439. Retrieved 2020-02-08.
An eight-position DIP switch on such cards is used to select one (or more) of eight banks of memory.
{{cite journal}}: CS1 maint: url-status (link) - ↑ Garland, Harry (1979). Introduction to Microprocessor System Design. McGraw-Hill Book Company. p. 93. ISBN 0-07-022871-X. Retrieved 2020-02-08.
With memory bank select, memory space is arranged in a number of separate banks of up to 64K each.
{{cite book}}: CS1 maint: url-status (link) - ↑ Hogan, Thom (1981-06-08). "Share and Share Alike: Multiuser Hardware Explained". InfoWorld. Vol. 3, no. 11. p. 18. Retrieved 2020-02-08.
Cromemco was the first microcomputer manufacturer to refine and exploit bank switching.
{{cite news}}: CS1 maint: url-status (link) - ↑ Freiberger, Paul (1982-10-25). "Digital Research offers CP/M upgrade". InfoWorld. p. 1.
- ↑ "New 1-2-3 Gets 4 Megabytes of Memory, Lotus, Intel Break PC DOS Memory Barrier". InfoWorld. 1985-04-29.
- ↑ "EMS Update Gives DOS Improved Multitasking". InfoWorld. 1987-08-17.
- ↑ Sinofsky, Brian (2002). Carey, Charles W. (ed.). American inventors, entrepreneurs & business visionaries. Infobase Publishing. pp. 322–324. ISBN 0-8160-4559-3. Retrieved 2020-02-08.
{{cite book}}: CS1 maint: url-status (link) - ↑ Grand, Joe; Russell, Ryan; Mitnick, Kevin D. (2004). Hardware hacking: have fun while voiding your warranty. Syngress. pp. 229. ISBN 1-932266-83-6. Retrieved 2020-02-08.
{{cite book}}: CS1 maint: url-status (link)
<ref> tag with name "Ross_1995" defined in <references> is not used in prior text.
इस पृष्ठ में अनुपलब्ध आंतरिक कड़ियों की सूची
- बूटिंग
- microcontroller
- निर्देश समुच्चय वास्तुकला
- टीआरएस-80 मॉडल 4
- टीआरएस-80 मॉडल II
- प्राचीन
- अपर स्मृति एरिया
- एम्यूलेटर
- विस्तारित स्मृति
- स्मृति प्रबंधन इकाई
बाहरी संबंध
- "Story about bank switching in the Apple II". Archived from the original on 26 March 2014.
{{cite web}}:|archive-date=/|archive-url=timestamp mismatch (help) - "What Is Bank Switching?".