बैंक स्विचिंग: Difference between revisions

From Vigyanwiki
(text)
(text)
Line 2: Line 2:
{{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 बिट एड्रेस वाले संसाधित्र के लिए फॉलो-ऑन प्रणाली<ref>{{cite book
*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 बिट एड्रेस वाले  संसाधित्र के लिए फॉलो-ऑन प्रणाली<ref>{{cite book
*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 बिट एड्रेस बस होती है, लेकिन लीगेसी निर्देशों में केवल 15 एड्रेस बिट्स होते हैं, आंतरिक बैंक रजिस्टरों का उपयोग उन बिट्स को प्रदान करने के लिए किया जा सकता है। कुछ नए निर्देश स्पष्ट रूप से बैंक को निर्दिष्ट कर सकते हैं।
</ref> में 18 बिट संबोधित बस होती है, लेकिन लीगेसी निर्देशों में केवल 15 संबोधित  द्वयंक होते हैं, आंतरिक बैंक प्रयुक्ति का उपयोग उन द्वयंक को प्रदान करने के लिए किया जा सकता है। कुछ नए निर्देश स्पष्ट रूप से बैंक को निर्दिष्ट कर सकते हैं।


*16-बिट बाहरी एड्रेस बस वाला एक  संसाधित्र केवल 2<sup>16</sup> =[[ 65536 ]] स्मृति स्थानों को संबोधित कर सकता है। यदि प्रणाली में एक बाहरी लैच जोड़ा जाता है, तो इसका उपयोग यह नियंत्रित करने के लिए किया जा सकता है कि स्मृति डिवाइस के दो सेटों में से कौन से 65536 पते वाले प्रत्येक को एक्सेस किया जा सकता है। लैच बिट को सेट या साफ़ करके  संसाधित्र बदल सकता है कि कौन सा सेट वर्तमान उपयोग में है।<br>लैच को  संसाधित्र द्वारा कई तरीकों से सेट या साफ़ किया जा सकता है, एक विशेष स्मृति एड्रेस को डिकोड किया जा सकता है और लैच को नियंत्रित करने के लिए उपयोग किया जा सकता है, या, अलग-अलग-डिकोडेड I/O एड्रेस वाले  संसाधित्र में, आउटपुट एड्रेस को डिकोड किया जा सकता है। कई बैंक- स्विचन कंट्रोल बिट्स को एक रजिस्टर में इकट्ठा किया जा सकता है, रजिस्टर में प्रत्येक अतिरिक्त बिट के साथ उपलब्ध स्मृति स्पेस को लगभग दोगुना कर देता है।<br>चूंकि बाहरी बैंक-चयन लैच (या रजिस्टर)  संसाधित्र के [[ कार्यक्रम गणक |कार्यक्रम गणक]]से सीधे जुड़ा नहीं है, प्रोग्राम काउंटर ओवरफ्लो होने पर यह स्वचालित रूप से स्थिति नहीं बदलता है, इसका बाहरी लैच द्वारा पता नहीं लगाया जा सकता है क्योंकि प्रोग्राम काउंटर  संसाधित्र का एक आंतरिक रजिस्टर है। अतिरिक्त स्मृति प्रोग्राम के लिए मूल रूप से उपलब्ध नहीं है।  संसाधित्र के आंतरिक रजिस्टर अपनी मूल लंबाई पर बने रहते हैं, इसलिए  संसाधित्र बैंक द्वारा स्विच की गई सभी स्मृति को सीधे नहीं फैला सकता है, उदाहरण के लिए, एक आंतरिक रजिस्टर को बढ़ाकर।<ref name="Heath_2003"/>इसके बजाय  संसाधित्र को बड़ी स्मृति ऑब्जेक्ट्स तक पहुंचने के लिए स्पष्ट रूप से बैंक- स्विचन ऑपरेशन करना चाहिए। अन्य सीमाएँ हैं। आम तौर पर{{cn|date=June 2020}} एक बैंक- स्विचन प्रणाली में प्रोग्राम स्मृति का एक ब्लॉक होगा जो सभी बैंकों के लिए सामान्य है, कोई फर्क नहीं पड़ता कि वर्तमान में कौन सा बैंक सक्रिय है, पता स्थान के हिस्से के लिए [[ स्मृति स्थान |स्मृति स्थान]]के केवल एक सेट का उपयोग किया जाएगा। इस क्षेत्र का उपयोग कोड रखने के लिए किया जाएगा जो बैंकों के बीच संक्रमण का प्रबंधन करता है, और[[ रुकावट डालना | इंटरप्ट]] को संसाधित करने के लिए भी।
*16-बिट बाहरी संबोधित बस वाला एक  संसाधित्र केवल 2<sup>16</sup> =[[ 65536 ]] स्मृति स्थानों को संबोधित कर सकता है। यदि प्रणाली में एक बाहरी लैच जोड़ा जाता है, तो इसका उपयोग यह नियंत्रित करने के लिए किया जा सकता है कि स्मृति प्रणाली के दो सेटों में से कौन से 65536 पते वाले प्रत्येक को एक्सेस किया जा सकता है। लैच बिट को सेट या साफ़ करके  संसाधित्र बदल सकता है कि कौन सा सेट वर्तमान उपयोग में है।<br>लैच को  संसाधित्र द्वारा कई तरीकों से सेट या साफ़ किया जा सकता है, एक विशेष स्मृति संबोधित को डिकोड किया जा सकता है और लैच को नियंत्रित करने के लिए उपयोग किया जा सकता है, या, अलग-अलग-डिकोडेड I/O संबोधित वाले  संसाधित्र में, आउटपुट संबोधित को डिकोड किया जा सकता है। कई बैंक- स्विचन कंट्रोल द्वयंक को एक प्रयुक्ति में इकट्ठा किया जा सकता है, प्रयुक्ति में प्रत्येक अतिरिक्त बिट के साथ उपलब्ध स्मृति स्पेस को लगभग दोगुना कर देता है।<br>चूंकि बाहरी बैंक-चयन लैच (या प्रयुक्ति)  संसाधित्र के [[ कार्यक्रम गणक |कार्यक्रम गणक]]से सीधे जुड़ा नहीं है, प्रोग्राम काउंटर ओवरफ्लो होने पर यह स्वचालित रूप से स्थिति नहीं बदलता है, इसका बाहरी लैच द्वारा संबोधितनहीं लगाया जा सकता है क्योंकि प्रोग्राम काउंटर  संसाधित्र का एक आंतरिक प्रयुक्ति है। अतिरिक्त स्मृति प्रोग्राम के लिए मूल रूप से उपलब्ध नहीं है।  संसाधित्र के आंतरिक प्रयुक्ति अपनी मूल लंबाई पर बने रहते हैं, इसलिए  संसाधित्र बैंक द्वारा स्विच की गई सभी स्मृति को सीधे नहीं फैला सकता है, उदाहरण के लिए, एक आंतरिक प्रयुक्ति को बढ़ाकर।<ref name="Heath_2003"/>इसके बजाय  संसाधित्र को बड़ी स्मृति ऑब्जेक्ट्स तक पहुंचने के लिए स्पष्ट रूप से बैंक- स्विचन ऑपरेशन करना चाहिए। अन्य सीमाएँ हैं। आम तौर पर{{cn|date=June 2020}} एक बैंक- स्विचन प्रणाली में प्रोग्राम स्मृति का एक ब्लॉक होगा जो सभी बैंकों के लिए सामान्य है, कोई फर्क नहीं पड़ता कि वर्तमान में कौन सा बैंक सक्रिय है, संबोधितस्थान के हिस्से के लिए [[ स्मृति स्थान |स्मृति स्थान]]के केवल एक सेट का उपयोग किया जाएगा। इस क्षेत्र का उपयोग कोड रखने के लिए किया जाएगा जो बैंकों के बीच संक्रमण का प्रबंधन करता है, और[[ रुकावट डालना | इंटरप्ट]] को संसाधित करने के लिए भी।


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


[[ अप्रत्यक्ष स्मृति |वर्चुअल स्मृति]]स्कीम के विपरीत, बैंक- स्विचन को रनिंग प्रोग्राम या ऑपरेटिंग प्रणाली द्वारा स्पष्ट रूप से प्रबंधित किया जाना चाहिए,  संसाधित्र हार्डवेयर स्वचालित रूप से यह पता नहीं लगा सकता है कि वर्तमान में सक्रिय बैंक में मैप नहीं किए गए डेटा की आवश्यकता है। एप्लिकेशन प्रोग्राम को यह ट्रैक रखना चाहिए कि कौन सा स्मृति [[ मेमोरी बैंक |बैंक]]आवश्यक डेटा रखता है, और फिर उस बैंक को सक्रिय करने के लिए बैंक- स्विचन रूटीन को कॉल करें।<ref name="Mueller_1992"/>हालाँकि, बैंक- स्विचन डेटा को बहुत तेज़ी से एक्सेस कर सकता है, उदाहरण के लिए, डिस्क स्टोरेज से डेटा पुनर्प्राप्त करना।
[[ अप्रत्यक्ष स्मृति |वर्चुअल स्मृति]]स्कीम के विपरीत, बैंक- स्विचन को रनिंग प्रोग्राम या ऑपरेटिंग प्रणाली द्वारा स्पष्ट रूप से प्रबंधित किया जाना चाहिए,  संसाधित्र यंत्रोपादानस्वचालित रूप से यह संबोधितनहीं लगा सकता है कि वर्तमान में सक्रिय बैंक में मैप नहीं किए गए आँकड़े  की आवश्यकता है। एप्लिकेशन प्रोग्राम को यह ट्रैक रखना चाहिए कि कौन सा स्मृति [[ मेमोरी बैंक |बैंक]]आवश्यक आँकड़े  रखता है, और फिर उस बैंक को सक्रिय करने के लिए बैंक- स्विचन रूटीन को कॉल करें।<ref name="Mueller_1992"/>हालाँकि, बैंक- स्विचन आँकड़े  को बहुत तेज़ी से एक्सेस कर सकता है, उदाहरण के लिए, चक्रिका  भंडारण से आँकड़े  पुनर्प्राप्त करना।


== माइक्रो अभिकलित्र का उपयोग ==
== सूक्ष्म अभिकलित्र का उपयोग ==
[[File:Bank Select Switch on Cromemco Memory Board.jpg|thumb|[[ Cromemco ]] स्मृति बोर्ड पर बैंक सेलेक्ट स्विच का उपयोग स्मृति को 8 अलग-अलग 64 KB बैंकों में से एक या अधिक में मैप करने के लिए किया गया था।<ref name="Garland_1977"/>]]
[[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 [[ किलोबाइट |किलोबाइट]] को संबोधित कर सकते हैं। अधिक स्मृति वाले प्रणाली को पता स्थान को कई ब्लॉकों में विभाजित करना पड़ता था जिन्हें गतिशील रूप से बड़े पता स्थान के भागों में मैप किया जा सकता था। स्मृति को 64 KB तक के अलग-अलग बैंकों में व्यवस्थित करके इस बड़े एड्रेस स्पेस को प्राप्त करने के लिए बैंक  स्विचन का उपयोग किया गया था।<ref name="Garland_1979"/>विभिन्न आकारों के ब्लॉकों को बैंक के चुनिंदा रजिस्टरों या इसी तरह के तंत्र के माध्यम से अंदर और बाहर स्विच किया गया था। क्रोमेम्को बैंक  स्विचन का उपयोग करने वाला पहला माइक्रो अभिकलित्र निर्माता था, जो अपने प्रणाली में 64 KB के 8 बैंकों का समर्थन करता था।<ref name="Hogan_1981"/>
[[ 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"/>
बैंक  स्विचन का उपयोग करते समय कुछ सावधानी बरतने की आवश्यकता थी ताकि [[ सबरूटीन |उपरूटीन]] कॉल, इंटरप्ट, [[ कॉल स्टैक |कॉल स्टैक]]आदि के संचालन को दूषित न किया जा सके। जबकि सीपीयू से अस्थायी रूप से स्विच की गई स्मृति की सामग्री  संसाधित्र के लिए दुर्गम थी, इसका उपयोग अन्य हार्डवेयर, जैसे वीडियो प्रदर्श, डीएमए, आई / ओ प्रणाली, आदि द्वारा किया जा सकता है। सीपी / एम -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 और स्मृति-मैप्ड I/O के लिए भी प्रदान करता है। [[ अटारी 8-बिट परिवार |अटारी 130XE]] अपने दो  संसाधित्र (6502 और ANTIC) को अलग-अलग RAM बैंकों तक पहुंचने की अनुमति दे सकता है, जिससे प्रोग्रामर को सीपीयू को दिखाई देने वाली स्मृति का उपयोग किए बिना बड़े प्लेफील्ड और अन्य ग्राफिक ऑब्जेक्ट बनाने की अनुमति मिलती है।
बैंक  स्विचन ने अतिरिक्त स्मृति और फ़ंक्शंस को अभिकलित्र  प्रारुप  में जोड़ने की अनुमति दी, बिना खर्च और एक व्यापक संबोधित बस के साथ  संसाधित्र पर स्विच करने की असंगति के बिना। उदाहरण के लिए, [[ कमोडोर 64 |C64]]ने पूर्ण 64 KB RAM की अनुमति देने के लिए बैंक  स्विचन का उपयोग किया और अभी भी ROM और स्मृति-मैप्ड I/O के लिए भी प्रदान करता है। [[ अटारी 8-बिट परिवार |अटारी 130XE]] अपने दो  संसाधित्र (6502 और ANTIC) को अलग-अलग RAM बैंकों तक पहुंचने की अनुमति दे सकता है, जिससे प्रोग्रामर को सीपीयू को दिखाई देने वाली स्मृति का उपयोग किए बिना बड़े प्लेफील्ड और अन्य ग्राफिक ऑब्जेक्ट बनाने की अनुमति मिलती है।


==सूक्ष्म नियंत्रक==
==सूक्ष्म नियंत्रक==
माइक्रोकंट्रोलर (महत्वपूर्ण इनपुट/आउटपुट हार्डवेयर एकीकृत ऑन-चिप के साथ माइक्रो संसाधित्र) बैंक  स्विचन का उपयोग कर सकते हैं, उदाहरण के लिए, एकाधिक विन्यस्तेशन रजिस्टरों या ऑन-चिप रीड/राइट स्मृति तक पहुंचने के लिए। एक उदाहरण [[ तस्वीर माइक्रोकंट्रोलर |PIC माइक्रोकंट्रोलर]]है। यह अपेक्षाकृत कम उपयोग किए जाने वाले रजिस्टरों तक पहुंचने के लिए आवश्यक अतिरिक्त निर्देशों की कीमत पर, नियमित कार्यक्रम निष्पादन के दौरान अंतरिक्ष को बचाने के लिए संक्षिप्त निर्देश शब्दों की अनुमति देता है, जैसे कि स्टार्ट-अप पर प्रणाली विन्यस्तेशन के लिए उपयोग किया जाता है।
सूक्ष्मकंट्रोलर (महत्वपूर्ण इनपुट/आउटपुट यंत्रोपादानएकीकृत ऑन-चिप के साथ सूक्ष्म संसाधित्र) बैंक  स्विचन का उपयोग कर सकते हैं, उदाहरण के लिए, एकाधिक विन्यस्तेशन प्रयुक्ति या ऑन-चिप रीड/राइट स्मृति तक पहुंचने के लिए। एक उदाहरण [[ तस्वीर माइक्रोकंट्रोलर |PIC सूक्ष्मकंट्रोलर]]है। यह अपेक्षाकृत कम उपयोग किए जाने वाले प्रयुक्ति तक पहुंचने के लिए आवश्यक अतिरिक्त निर्देशों की कीमत पर, नियमित कार्यक्रम निष्पादन के दौरान अंतरिक्ष को बचाने के लिए संक्षिप्त निर्देश शब्दों की अनुमति देता है, जैसे कि स्टार्ट-अप पर प्रणाली विन्यस्तेशन के लिए उपयोग किया जाता है।


== आईबीएम पीसी ==
== आईबीएम पीसी ==
[[File:Expanded memory.svg|thumb|right|आईबीएम पीसी में विस्तारित स्मृति]]
[[File:Expanded memory.svg|thumb|right|आईबीएम पीसी में विस्तारित स्मृति]]
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 केबी "पेजों" में विभाजित किया गया है, जिनमें से प्रत्येक को स्वतंत्र रूप से स्विच किया जा सकता है। कुछ अभिकलित्र गेम ने इसका उपयोग किया, और हालांकि ईएमएस अप्रचलित है, यह सुविधा आजकल [[ माइक्रोसॉफ़्ट विंडोज़ |माइक्रोसॉफ़्ट विंडोज़]] [[ ऑपरेटिंग सिस्टम |ऑपरेटिंग प्रणाली]] द्वारा अनुकरण की जाती है ताकि उन प्रोग्रामों के साथ पश्चगामी संगतता प्रदान की जा सके।
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 चलता है। एक्सएमएस विस्तारित स्मृति को पारंपरिक स्मृति में कहीं भी कॉपी करने की अनुमति देता है, इसलिए "बैंकों" की सीमाएं तय नहीं हैं, लेकिन हर दूसरे तरीके से यह ईएमएस के बैंक  स्विचन की तरह काम करता है, एक प्रोग्राम के परिप्रेक्ष्य से जो इसका उपयोग करता है। MS-DOS के बाद के संस्करणों (लगभग 5.0 संस्करण से शुरू) में EMM386 ड्राइवर शामिल था, जो XMS का उपयोग करके EMS स्मृति का अनुकरण करता है, प्रोग्राम को विस्तारित स्मृति का उपयोग करने की अनुमति देता है, भले ही वे EMS के लिए लिखे गए हों। Microsoft Windows उन प्रोग्रामों के लिए भी XMS का अनुकरण करता है, जिन्हें इसकी आवश्यकता होती है।
बाद में विस्तारित [[ विस्तारित मेमोरी विशिष्टता |विस्तारित स्मृति विशिष्टता]](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="Grand_2004"/>[[ निन्टेंडो एंटरटेनमेंट सिस्टम | निन्टेंडो एंटरटेनमेंट प्रणाली]] में एक संशोधित[[ एमओएस प्रौद्योगिकी 6502 | 6502]] था लेकिन इसके कारतूस में कभी-कभी एक [[ मेगाबिट्स |मेगाबिट्स]]या अधिक ROM होता था, जिसे बैंक  स्विचन के माध्यम से संबोधित किया जाता था जिसे [[ मल्टी-मेमोरी कंट्रोलर |मल्टी-मेमोरी कंट्रोलर]] कहा जाता है।[[ खेल का लड़का | गेम ब्वॉय कार्ट्रिज]] ने एमबीसी (मेमोरी बैंक कंट्रोलर) नामक एक चिप का इस्तेमाल किया, जो न केवल रॉम बैंक  स्विचन की पेशकश करता है, बल्कि कार्ट्रिज [[ स्टेटिक रैंडम-एक्सेस मेमोरी |स्टेटिक रैंडम-एक्सेस स्मृति]] बैंक  स्विचन और यहां तक ​​​​कि [[ अवरक्त |अवरक्त]] या रंबल मोटर्स जैसे बाह्य उपकरणों तक पहुंच प्रदान करता है। बैंक  स्विचन अभी भी बाद के गेम प्रणाली पर इस्तेमाल किया जा रहा था। कई सेगा[[ मेगा ड्राइव |मेगा ड्राइव]] कार्ट्रिज, जैसे [[ सुपर स्ट्रीट फाइटर II |सुपर स्ट्रीट फाइटर II]]आकार में 4 एमबी से अधिक थे और इस तकनीक के उपयोग की आवश्यकता थी (4 एमबी अधिकतम पता आकार था)। गेमपार्क होल्डिंग्स से [[ GP2X |GP2X]] हैंडहेल्ड दूसरे  संसाधित्र के लिए स्टार्ट एड्रेस (या स्मृति ऑफ़सेट) को नियंत्रित करने के लिए बैंक  स्विचन का उपयोग करता है।
कुछ विडियो खेल शान्ति में बैंक  स्विचन का भी उपयोग किया गया था।<ref name="Carey_2002"/>उदाहरण के लिए, [[ अटारी 2600 |अटारी 2600]], केवल 4 KB ROM को संबोधित कर सकता था, इसलिए बाद में 2600[[ खेल कारतूस | खेल कार्ट्रिज]]में अधिक ROM के उपयोग की अनुमति देने के लिए अपने स्वयं के बैंक  स्विचन यंत्रोपादानशामिल थे और इस प्रकार अधिक परिष्कृत खेल (अधिक प्रोग्राम कोड के माध्यम से और समान रूप से) की अनुमति देते थे। महत्वपूर्ण, बड़ी मात्रा में खेल  आँकड़े  जैसे कि ग्राफ़िक्स और विभिन्न खेल चरण)।<ref name="Grand_2004"/>[[ निन्टेंडो एंटरटेनमेंट सिस्टम | निन्टेंडो एंटरटेनमेंट प्रणाली]] में एक संशोधित[[ एमओएस प्रौद्योगिकी 6502 | 6502]] था लेकिन इसके कारतूस में कभी-कभी एक [[ मेगाबिट्स |मेगा द्वयंक]]या अधिक ROM होता था, जिसे बैंक  स्विचन के माध्यम से संबोधित किया जाता था जिसे [[ मल्टी-मेमोरी कंट्रोलर |मल्टी-मेमोरी कंट्रोलर]] कहा जाता है।[[ खेल का लड़का | खेल ब्वॉय कार्ट्रिज]] ने एमबीसी (मेमोरी बैंक कंट्रोलर) नामक एक चिप का इस्तेमाल किया, जो न केवल रॉम बैंक  स्विचन की पेशकश करता है, बल्कि कार्ट्रिज [[ स्टेटिक रैंडम-एक्सेस मेमोरी |स्टेटिक रैंडम-एक्सेस स्मृति]] बैंक  स्विचन और यहां तक ​​​​कि [[ अवरक्त |अवरक्त]] या रंबल मोटर्स जैसे बाह्य उपकरणों तक पहुंच प्रदान करता है। बैंक  स्विचन अभी भी बाद के खेल प्रणाली पर इस्तेमाल किया जा रहा था। कई सेगा[[ मेगा ड्राइव |मेगा ड्राइव]] कार्ट्रिज, जैसे [[ सुपर स्ट्रीट फाइटर II |सुपर स्ट्रीट फाइटर II]]आकार में 4 एमबी से अधिक थे और इस तकनीक के उपयोग की आवश्यकता थी (4 एमबी अधिकतम संबोधितआकार था)। खेलपार्क होल्डिंग्स से [[ GP2X |GP2X]] हैंडहेल्ड दूसरे  संसाधित्र के लिए स्टार्ट संबोधित (या स्मृति ऑफ़सेट) को नियंत्रित करने के लिए बैंक  स्विचन का उपयोग करता है।


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


== वैकल्पिक और उत्तराधिकारी तकनीक ==
== वैकल्पिक और उत्तराधिकारी तकनीक ==
बैंक  स्विचन को बाद में कई 16-बिट प्रणाली में विभाजन द्वारा प्रतिस्थापित किया गया, जिसने बदले में स्मृति [[ मेमोरी खंड |प्रबंधन इकाइयों को पेजिंग]] करने का रास्ता दिया। हालांकि, एम्बेडेड प्रणाली में, बैंक  स्विचन का उपयोग अक्सर इसकी सादगी, कम लागत और सामान्य प्रयोजन  अभिकलन की तुलना में उन संदर्भों के लिए अक्सर बेहतर अनुकूलन के लिए किया जाता है।
बैंक  स्विचन को बाद में कई 16-बिट प्रणाली में विभाजन द्वारा प्रतिस्थापित किया गया, जिसने बदले में स्मृति [[ मेमोरी खंड |प्रबंधन इकाइयों को पृष्ठ]] करने का रास्ता दिया। हालांकि, एम्बेडेड प्रणाली में, बैंक  स्विचन का उपयोग अक्सर इसकी सादगी, कम लागत और सामान्य प्रयोजन  अभिकलन की तुलना में उन संदर्भों के लिए अक्सर बेहतर अनुकूलन के लिए किया जाता है।


== यह भी देखें ==
== यह भी देखें ==
* [[ बग़ल में पता स्थान ]], [[ बीबीसी माइक्रो ]] पर बैंक  स्विचन का एक उदाहरण
* [[ बग़ल में पता स्थान | बग़ल में संबोधितस्थान]] , [[ बीबीसी माइक्रो | बीबीसी सूक्ष्म]] पर बैंक  स्विचन का एक उदाहरण
* [[ ओवरले (प्रोग्रामिंग) ]]
* [[ ओवरले (प्रोग्रामिंग) ]]



Revision as of 11:00, 27 September 2022

एक संसाधित्र के लिए बैंक-स्विच्ड स्मृति का एक काल्पनिक स्मृति नक्शा जो केवल 64 KB को संबोधित कर सकता है। यह योजना 200 KB स्मृति दिखाती है, जिसमें से केवल 64 KB ही संसाधित्र द्वारा किसी भी समय एक्सेस की जा सकती है। ऑपरेटिंग प्रणाली को यह सुनिश्चित करने के लिए बैंक- स्विचन ऑपरेशन का प्रबंधन करना चाहिए कि प्रोग्राम निष्पादन जारी रह सके जब स्मृति का हिस्सा संसाधित्र तक पहुंच योग्य न हो।

बैंक स्विचन अभिकलित्र प्रारुप में उपयोग की जाने वाली एक तकनीक है जिसका उपयोग प्रयोग करने योग्य स्मृति की मात्रा को संसाधित्र (अभिकलन) निर्देश द्वारा सीधे संबोधित करने योग्य राशि से अधिक करने के लिए किया जाता है[1]। इसका उपयोग प्रणाली को अलग-अलग समय पर अलग-अलग तरीके से विन्यस्त करने के लिए किया जा सकता है, उदाहरण के लिए, नम्यिका से प्रणाली शुरू करने के लिए आवश्यक पठन मात्र स्मृति को जरूरत न होने पर बंद किया जा सकता है। विडियो खेल प्रणाली में, बैंक स्विचन ने मौजूदा शान्ति पर खेलने के लिए बड़े खेल विकसित करने की अनुमति दी है।

बैंक स्विचन की शुरुआत लघु अभिकलित्र प्रणाली से हुई है।[2]कई आधुनिक सूक्ष्म नियंत्रक और सूक्ष्म संसाधित्र छोटे अंतः स्थापित प्रणाली में यादृच्छिक अभिगम स्मृति, अनह्रासी स्मृति, निवेश निर्गम प्रणाली और प्रणाली प्रबंधन पंजी को प्रबंधित करने के लिए बैंक स्विचन का उपयोग करते हैं। तकनीक 8 बिट सूक्ष्म अभिकलित्र प्रणाली में आम थी। बैंक- स्विचन का उपयोग संबोधित बस की चौड़ाई में सीमाओं के आसपास काम करने के लिए भी किया जा सकता है, जहां कुछ यंत्रोपादान बाधा अधिक संबोधित लाइनों के सीधे जोड़ को रोकती है, और आईएसए में सीमाओं के आसपास काम करने के लिए, जहां उत्पन्न पते संबोधित बस की चौड़ाई से संकरे होते हैं। कुछ नियंत्रण-उन्मुख सूक्ष्म संसाधित्र आंतरिक I/O और नियंत्रण प्रयुक्ति तक पहुंचने के लिए बैंक- स्विचन तकनीक का उपयोग करते हैं, जो प्रत्येक निर्देश में उपयोग किए जाने वाले प्रयुक्ति संबोधित द्वयंक की संख्या को सीमित करता है।

पृष्ठ द्वारा स्मृति प्रबंधन के विपरीत, चक्रिका भंडारण जैसे आधिक्य भंडारण प्रणाली के साथ आँकड़े का आदान-प्रदान नहीं किया जाता है। आँकड़े एक स्मृति क्षेत्र में नष्क्रिय भंडारण में रहता है जो वर्तमान में संसाधित्र के लिए सुलभ नहीं है (हालांकि यह वीडियो प्रदर्श, प्रत्यक्ष स्मृति एक्सेस, या अभिकलित्र के अन्य उपप्रणाली के लिए सुलभ हो सकता है) विशेष उपसर्ग निर्देशों के उपयोग के बिना सुलभ नहीं है।

तकनीक

बैंक स्विचन को कुछ प्रयुक्ति के साथ संसाधित्र निर्देशों के संबोधितस्थान को बढ़ाने का एक तरीका माना जा सकता है। उदाहरण:

  • 12 बिट संबोधित वाले संसाधित्र के लिए अनुसरण करें प्रणाली[3] में 15 बिट संबोधित बस होती है, लेकिन संबोधित बस में हाई थ्री द्वयंक को सीधे निर्दिष्ट करने का कोई तरीका नहीं है। उन द्वयंक को प्रदान करने के लिए आंतरिक बैंक प्रयुक्ति का उपयोग किया जा सकता है।
  • 15 बिट संबोधित वाले संसाधित्र के लिए अनुसरण करेंप्रणाली[4] में 18 बिट संबोधित बस होती है, लेकिन लीगेसी निर्देशों में केवल 15 संबोधित द्वयंक होते हैं, आंतरिक बैंक प्रयुक्ति का उपयोग उन द्वयंक को प्रदान करने के लिए किया जा सकता है। कुछ नए निर्देश स्पष्ट रूप से बैंक को निर्दिष्ट कर सकते हैं।
  • 16-बिट बाहरी संबोधित बस वाला एक संसाधित्र केवल 216 =65536 स्मृति स्थानों को संबोधित कर सकता है। यदि प्रणाली में एक बाहरी लैच जोड़ा जाता है, तो इसका उपयोग यह नियंत्रित करने के लिए किया जा सकता है कि स्मृति प्रणाली के दो सेटों में से कौन से 65536 पते वाले प्रत्येक को एक्सेस किया जा सकता है। लैच बिट को सेट या साफ़ करके संसाधित्र बदल सकता है कि कौन सा सेट वर्तमान उपयोग में है।
    लैच को संसाधित्र द्वारा कई तरीकों से सेट या साफ़ किया जा सकता है, एक विशेष स्मृति संबोधित को डिकोड किया जा सकता है और लैच को नियंत्रित करने के लिए उपयोग किया जा सकता है, या, अलग-अलग-डिकोडेड I/O संबोधित वाले संसाधित्र में, आउटपुट संबोधित को डिकोड किया जा सकता है। कई बैंक- स्विचन कंट्रोल द्वयंक को एक प्रयुक्ति में इकट्ठा किया जा सकता है, प्रयुक्ति में प्रत्येक अतिरिक्त बिट के साथ उपलब्ध स्मृति स्पेस को लगभग दोगुना कर देता है।
    चूंकि बाहरी बैंक-चयन लैच (या प्रयुक्ति) संसाधित्र के कार्यक्रम गणकसे सीधे जुड़ा नहीं है, प्रोग्राम काउंटर ओवरफ्लो होने पर यह स्वचालित रूप से स्थिति नहीं बदलता है, इसका बाहरी लैच द्वारा संबोधितनहीं लगाया जा सकता है क्योंकि प्रोग्राम काउंटर संसाधित्र का एक आंतरिक प्रयुक्ति है। अतिरिक्त स्मृति प्रोग्राम के लिए मूल रूप से उपलब्ध नहीं है। संसाधित्र के आंतरिक प्रयुक्ति अपनी मूल लंबाई पर बने रहते हैं, इसलिए संसाधित्र बैंक द्वारा स्विच की गई सभी स्मृति को सीधे नहीं फैला सकता है, उदाहरण के लिए, एक आंतरिक प्रयुक्ति को बढ़ाकर।[5]इसके बजाय संसाधित्र को बड़ी स्मृति ऑब्जेक्ट्स तक पहुंचने के लिए स्पष्ट रूप से बैंक- स्विचन ऑपरेशन करना चाहिए। अन्य सीमाएँ हैं। आम तौर पर[citation needed] एक बैंक- स्विचन प्रणाली में प्रोग्राम स्मृति का एक ब्लॉक होगा जो सभी बैंकों के लिए सामान्य है, कोई फर्क नहीं पड़ता कि वर्तमान में कौन सा बैंक सक्रिय है, संबोधितस्थान के हिस्से के लिए स्मृति स्थानके केवल एक सेट का उपयोग किया जाएगा। इस क्षेत्र का उपयोग कोड रखने के लिए किया जाएगा जो बैंकों के बीच संक्रमण का प्रबंधन करता है, और इंटरप्ट को संसाधित करने के लिए भी।

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

वर्चुअल स्मृतिस्कीम के विपरीत, बैंक- स्विचन को रनिंग प्रोग्राम या ऑपरेटिंग प्रणाली द्वारा स्पष्ट रूप से प्रबंधित किया जाना चाहिए, संसाधित्र यंत्रोपादानस्वचालित रूप से यह संबोधितनहीं लगा सकता है कि वर्तमान में सक्रिय बैंक में मैप नहीं किए गए आँकड़े की आवश्यकता है। एप्लिकेशन प्रोग्राम को यह ट्रैक रखना चाहिए कि कौन सा स्मृति बैंकआवश्यक आँकड़े रखता है, और फिर उस बैंक को सक्रिय करने के लिए बैंक- स्विचन रूटीन को कॉल करें।[6]हालाँकि, बैंक- स्विचन आँकड़े को बहुत तेज़ी से एक्सेस कर सकता है, उदाहरण के लिए, चक्रिका भंडारण से आँकड़े पुनर्प्राप्त करना।

सूक्ष्म अभिकलित्र का उपयोग

Cromemco स्मृति बोर्ड पर बैंक सेलेक्ट स्विच का उपयोग स्मृति को 8 अलग-अलग 64 KB बैंकों में से एक या अधिक में मैप करने के लिए किया गया था।[7]

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-बिट प्रणाली में विभाजन द्वारा प्रतिस्थापित किया गया, जिसने बदले में स्मृति प्रबंधन इकाइयों को पृष्ठ करने का रास्ता दिया। हालांकि, एम्बेडेड प्रणाली में, बैंक स्विचन का उपयोग अक्सर इसकी सादगी, कम लागत और सामान्य प्रयोजन अभिकलन की तुलना में उन संदर्भों के लिए अक्सर बेहतर अनुकूलन के लिए किया जाता है।

यह भी देखें

संदर्भ

  1. Aspinall, D., ed. (1978). The Microprocessor and its application: an advanced course. CUP Archive. pp. 47–50. ISBN 0-521-22241-9.
  2. Bell, C. Gordon; Newell, Allen (1971). Computer structures: readings and examples. McGraw Hill. pp. 156.
  3. "Storage Control". Control Data 160-A Computer Programming Manual (PDF). CDC. March 1963. p. 2-09. 145e.
  4. Control Data 3600 Computer System Reference Manual (PDF). CDC. 60021300E.
  5. Heath, Steve (2003). Embedded systems design. Newnes. pp. 242. ISBN 0-7506-5546-1.
  6. 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)
  7. 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)
  8. 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)
  9. 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)
  10. Freiberger, Paul (1982-10-25). "Digital Research offers CP/M upgrade". InfoWorld. p. 1.
  11. "New 1-2-3 Gets 4 Megabytes of Memory, Lotus, Intel Break PC DOS Memory Barrier". InfoWorld. 1985-04-29.
  12. "EMS Update Gives DOS Improved Multitasking". InfoWorld. 1987-08-17.
  13. 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)
  14. 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)
Cite error: <ref> tag with name "Ross_1995" defined in <references> is not used in prior text.


इस पृष्ठ में अनुपलब्ध आंतरिक कड़ियों की सूची

  • बूटिंग
  • microcontroller
  • निर्देश सेट वास्तुकला
  • टीआरएस-80 मॉडल 4
  • टीआरएस-80 मॉडल II
  • प्राचीन
  • अपर स्मृति एरिया
  • एम्यूलेटर
  • विस्तारित स्मृति
  • स्मृति प्रबंधन इकाई

बाहरी संबंध