फ्रेम बफर: Difference between revisions
No edit summary |
No edit summary |
||
| Line 7: | Line 7: | ||
== इतिहास == | == इतिहास == | ||
[[File:SWAC 003.jpg|thumb|1951 में [[SWAC (कंप्यूटर)]] विलियम्स ट्यूब (सीआरटी) पर मेमोरी पैटर्न]]कंप्यूटर शोधकर्ता ने लंबे समय से फ्रेमबफर के सैद्धांतिक लाभों पर चर्चा की थी, | [[File:SWAC 003.jpg|thumb|1951 में [[SWAC (कंप्यूटर)]] विलियम्स ट्यूब (सीआरटी) पर मेमोरी पैटर्न]]कंप्यूटर शोधकर्ता ने लंबे समय से फ्रेमबफर के सैद्धांतिक लाभों पर चर्चा की थी, किन्तुआर्थिक रूप से व्यावहारिक निवेश पर पर्याप्त कंप्यूटर मेमोरी वाली मशीन का उत्पादन करने में असमर्थ थे।<ref name="Gaboury">{{Cite journal|last=Gaboury|first=J.|date=2018-03-01|title=The random-access image: Memory and the history of the computer screen|journal=Grey Room|volume=70|url=https://escholarship.org/uc/item/0b3873pn|issue=70|pages=24–53|doi=10.1162/GREY_a_00233|s2cid=57565564|issn=1526-3819|hdl=21.11116/0000-0001-FA73-4|hdl-access=free}}</ref> 1947 में, [[मैनचेस्टर बेबी]] कंप्यूटर ने [[कैथोड रे ट्यूब]] | कैथोड-रे ट्यूब ( (सीआरटी)) मेमोरी पर 1024 बिट्स को स्टोर करने के लिए [[विलियम्स ट्यूब]], बाद में विलियम्स-किलबर्न ट्यूब का उपयोग किया और दूसरे (सीआरटी) पर प्रदर्शित किया।<ref>{{Cite journal|last1=Williams|first1=F. C.|last2=Kilburn|first2=T.|date=March 1949|title=बाइनरी-डिजिटल कंप्यूटिंग मशीनों के साथ उपयोग के लिए एक स्टोरेज सिस्टम|url=https://ieeexplore.ieee.org/document/5241129|journal=Proceedings of the IEE - Part III: Radio and Communication Engineering|volume=96|issue=40|pages=81–|doi=10.1049/pi-3.1949.0018}}</ref><ref>{{Cite web|url=http://curation.cs.manchester.ac.uk/digital60/www.digital60.org/birth/manchestercomputers/mark1/documents/report1947cover.html|title=Kilburn 1947 Report Cover Notes (Digital 60)|website=curation.cs.manchester.ac.uk|access-date=2019-04-26}}</ref> 1950 में 4096 डिस्प्ले प्राप्त करने वाली एमआईटी लिंकन प्रयोगशाला के साथ अन्य अनुसंधान प्रयोगशालाएँ इन प्रयुक्तों की खोज कर रही थीं।<ref name="Gaboury" /> | ||
1960 के दशक के अंत में रंगीन स्कैन डिस्प्ले | 1960 के दशक के अंत में रंगीन स्कैन डिस्प्ले प्रयुक्त किया गया था, जिसे [[ब्रुकहैवन राष्ट्रीय प्रयोगशाला]] रैस्टर डिस्प्ले (बीआरएडी) कहा जाता है, जिसमें [[ड्रम मेमोरी]] और टेलीविज़न मॉनिटर का उपयोग किया जाता है।<ref>{{citation |author1=D. Ophir |author2=S. Rankowitz |author3=B. J. Shepherd |author4=R. J. Spinrad |title=BRAD: The Brookhave Raster Display |work=Communications of the ACM |volume=11 |number=6 |date=June 1968 |pages=415–416 |doi=10.1145/363347.363385|s2cid=11160780 |doi-access=free }}</ref> 1969 में, [[बेल लैब्स]] के ए. माइकल नोल ने [[ चुंबकीय-कोर मेमोरी ]] का उपयोग करते हुए फ्रेम बफर के साथ स्कैन किए गए डिस्प्ले को प्रयुक्त किया।<ref>{{cite journal |last=Noll |first=A. Michael |title=स्कैन-डिस्प्ले कंप्यूटर ग्राफिक्स|journal=Communications of the ACM |volume=14 |number=3 |date=March 1971 |pages=145–150 |doi=10.1145/362566.362567|s2cid=2210619 }}</ref> बाद में, मानक रंगीन टीवी मॉनिटर पर तीन बिट्स की रंग गहराई वाली छवि प्रदर्शित करने के लिए बेल लैब्स प्रणाली का विस्तार किया गया। | ||
1970 के दशक की | 1970 के दशक की प्रारंभिक ुआत में, एमओएस मेमोरी (मेटल-ऑक्साइड-सेमीकंडक्टर मेमोरी) का विकास [[ एकीकृत परिपथ ]]|इंटीग्रेटेड- परिपथ चिप्स, विशेष रूप से बड़े पैमाने पर इंटीग्रेशन|हाई-डेंसिटी [[DRAM|डीआरएएम]] (डायनामिक रैंडम-एक्सेस मेमोरी) चिप्स कम से कम 1 के साथ [[kibibit|केमैंबीमैंबीमैंटी]] मेमोरी, इसे पहली बार, मानक वीडियो छवि धारण करने में सक्षम फ़्रेमबफ़र्स के साथ [[डिजिटल मेमोरी]] प्रणालीबनाने के लिए व्यावहारिक बना दिया।<ref name="Shoup_SuperPaint"/><ref>{{cite conference |last1=Goldwasser |first1=S.M. |title=खंडित इमेजरी के इंटरएक्टिव डिस्प्ले के लिए कंप्यूटर आर्किटेक्चर|conference=Computer Architectures for Spatially Distributed Data |date=June 1983 |publisher=[[Springer Science & Business Media]] |isbn=9783642821509 |pages=75-94 (81) |url=https://books.google.com/books?id=8MuoCAAAQBAJ&pg=PA81}}</ref> इससे 1972 में [[Index.php?title=ज़ेरॉक्स पार्क|ज़ेरॉक्स पार्क]] में रिचर्ड शौप (प्रोग्रामर) द्वारा [[सुपरपेंट]] प्रणालीका विकास हुआ।<ref name="Shoup_SuperPaint">{{cite web |url=http://accad.osu.edu/~waynec/history/PDFs/Annals_final.pdf |archive-url=https://web.archive.org/web/20040612215245/http://accad.osu.edu/~waynec/history/PDFs/Annals_final.pdf |archive-date=2004-06-12 |title=सुपरपेंट: एक अर्ली फ्रेम बफर ग्राफिक्स सिस्टम|author=Richard Shoup |publisher=IEEE |work=Annals of the History of Computing |year=2001 |url-status=dead }</ref> शौप प्रारंभिक डिजिटल वीडियो-कैप्चर प्रणालीबनाने के लिए सुपरपेंट फ़्रेमबफ़र का उपयोग करने में सक्षम था। आउटपुट सिग्नल को इनपुट सिग्नल के साथ सिंक्रोनाइज करके, शौप डेटा के प्रत्येक पिक्सेल को अधिलेखित करने में सक्षम था क्योंकि यह स्थानांतरित हो गया था। शौप ने रंग तालिकाओं का उपयोग करके आउटपुट सिग्नल को संशोधित करने का भी प्रयोग किया। इन रंग तालिकाओं ने सुपरपेंट प्रणालीको इसमें सम्मिलित सीमित 8-बिट डेटा की सीमा के बाहर रंगों की विस्तृत विविधता का उत्पादन करने की अनुमति दी। यह योजना बाद में कंप्यूटर फ्रेमबफ़र्स में आम हो जाएगी। | ||
1974 में, इवांस एंड सदरलैंड ने पहला व्यावसायिक फ्रेमबफ़र, पिक्चर प्रणालीजारी किया, रेफरी>{{citation |title=पिक्चर सिस्टम |url=http://s3data.computerhistory.org/brochures/evanssutherland.3d.1974.102646288.pdf |publisher=इवांस और सदरलैंड |access-date=2017-12-31}}</ref> की कीमत लगभग $15,000 है। यह 8-बिट ग्रे[[स्केल]] में 512x512 पिक्सेल तक के रिज़ॉल्यूशन का उत्पादन करने में सक्षम था, और ग्राफिक्स शोधकर्ताओं के लिए वरदान बन गया, जिनके पास अपने स्वयं के फ्रेमबफ़र बनाने के लिए संसाधन नहीं थे। [[न्यूयॉर्क प्रौद्योगिकी संस्थान]] ने बाद में तीन इवांस एंड सदरलैंड फ्रेमबफ़र्स का उपयोग करके पहली 24-बिट रंग प्रणाली बनाई। रेफरी नाम = ओपन-इतिहास>{{cite web |url=https://www.cs.cmu.edu/~ph/nyit/masson/nyit.html |शीर्षक=न्यूयॉर्क इंस्टीट्यूट ऑफ टेक्नोलॉजी ग्राफिक्स लैब का इतिहास|access-date=2007-08-31}<nowiki></ref></nowiki> प्रत्येक फ़्रेमबफ़र आरजीबी कलर मॉडल कलर आउटपुट (लाल के लिए , हरे के लिए और नीले रंग के लिए ) से जुड़ा था, जिसमें डिजिटल इक्विपमेंट कॉर्पोरेशन पीडीपी 11/04 [[ मिनी कंप्यूटर ]] के रूप में तीन उपकरणों को नियंत्रित करता है। | 1974 में, इवांस एंड सदरलैंड ने पहला व्यावसायिक फ्रेमबफ़र, पिक्चर प्रणालीजारी किया, रेफरी>{{citation |title=पिक्चर सिस्टम |url=http://s3data.computerhistory.org/brochures/evanssutherland.3d.1974.102646288.pdf |publisher=इवांस और सदरलैंड |access-date=2017-12-31}}</ref> की कीमत लगभग $15,000 है। यह 8-बिट ग्रे[[स्केल]] में 512x512 पिक्सेल तक के रिज़ॉल्यूशन का उत्पादन करने में सक्षम था, और ग्राफिक्स शोधकर्ताओं के लिए वरदान बन गया, जिनके पास अपने स्वयं के फ्रेमबफ़र बनाने के लिए संसाधन नहीं थे। [[न्यूयॉर्क प्रौद्योगिकी संस्थान]] ने बाद में तीन इवांस एंड सदरलैंड फ्रेमबफ़र्स का उपयोग करके पहली 24-बिट रंग प्रणाली बनाई। रेफरी नाम = ओपन-इतिहास>{{cite web |url=https://www.cs.cmu.edu/~ph/nyit/masson/nyit.html |शीर्षक=न्यूयॉर्क इंस्टीट्यूट ऑफ टेक्नोलॉजी ग्राफिक्स लैब का इतिहास|access-date=2007-08-31}<nowiki></ref></nowiki> प्रत्येक फ़्रेमबफ़र आरजीबी कलर मॉडल कलर आउटपुट (लाल के लिए , हरे के लिए और नीले रंग के लिए ) से जुड़ा था, जिसमें डिजिटल इक्विपमेंट कॉर्पोरेशन पीडीपी 11/04 [[ मिनी कंप्यूटर ]] के रूप में तीन उपकरणों को नियंत्रित करता है। | ||
| Line 19: | Line 19: | ||
एकीकृत- परिपथ प्रौद्योगिकी के तेजी से सुधार ने 1970 के दशक के उत्तरार्ध के कई घरेलू कंप्यूटरों के लिए कम-रंग-गहराई वाले फ्रेमबफ़र्स को सम्मिलित करना संभव बना दिया। आज, ग्राफिकल क्षमताओं वाले लगभग सभी कंप्यूटर वीडियो सिग्नल उत्पन्न करने के लिए फ्रेमबफर का उपयोग करते हैं। 1980 के दशक में बनाए गए [[अमिगा]] कंप्यूटरों में ग्राफिक्स के प्रदर्शन पर विशेष ध्यान दिया गया था और इसमें 4096 रंगों को प्रदर्शित करने में सक्षम अद्वितीय होल्ड-एंड-संशोधित फ्रेमबफर सम्मिलित था। | एकीकृत- परिपथ प्रौद्योगिकी के तेजी से सुधार ने 1970 के दशक के उत्तरार्ध के कई घरेलू कंप्यूटरों के लिए कम-रंग-गहराई वाले फ्रेमबफ़र्स को सम्मिलित करना संभव बना दिया। आज, ग्राफिकल क्षमताओं वाले लगभग सभी कंप्यूटर वीडियो सिग्नल उत्पन्न करने के लिए फ्रेमबफर का उपयोग करते हैं। 1980 के दशक में बनाए गए [[अमिगा]] कंप्यूटरों में ग्राफिक्स के प्रदर्शन पर विशेष ध्यान दिया गया था और इसमें 4096 रंगों को प्रदर्शित करने में सक्षम अद्वितीय होल्ड-एंड-संशोधित फ्रेमबफर सम्मिलित था। | ||
1980 के दशक के | 1980 के दशक के समयफ़्रेमबफ़र्स हाई-एंड वर्कस्टेशन और [[आर्केड सिस्टम बोर्ड|आर्केड प्रणालीबोर्ड]] में भी लोकप्रिय हो गए। [[सिलिकॉन ग्राफिक्स]], [[सन माइक्रोसिस्टम्स]], [[ हेवलेट पैकर्ड ]], [[डिजिटल उपकरण निगम]] और [[आईबीएम]] सभी ने इस अवधि में अपने वर्कस्टेशन कंप्यूटरों के लिए फ्रेमबफर जारी किए। ये फ्रेमबफ़र सामान्यतः अधिकांश घरेलू कंप्यूटरों की तुलना में बहुत उच्च गुणवत्ता वाले थे, और नियमित रूप से टेलीविजन, प्रिंटिंग, कंप्यूटर मॉडलिंग और 3डी ग्राफिक्स में उपयोग किए जाते थे। फ्रेमबफ़र्स का उपयोग [[सेगा]] द्वारा सेगा आर्केड प्रणालीबोर्डों की अपनी उच्च-अंत सूची के लिए भी किया गया था, जो कि घरेलू कंप्यूटरों की तुलना में उच्च गुणवत्ता वाले थे। | ||
== प्रदर्शन मोड == | == प्रदर्शन मोड == | ||
[[Image:Sun sbus cgsix framebuffer2.jpg|thumb|सन सीजीएसिक्स फ्रेमबफर]]व्यक्तिगत और घरेलू कंप्यूटिंग में उपयोग किए जाने वाले फ़्रेमबफ़र में अधिकांशतः परिभाषित मोड के सेट होते हैं जिसके अनुसार फ़्रेमबफ़र संचालित हो सकता है। ये मोड हार्डवेयर को अलग-अलग रिजॉल्यूशन, कलर डेप्थ, मेमोरी लेआउट और रिफ्रेश रेट टाइमिंग के आउटपुट के लिए फिर से कॉन्फ़िगर करते हैं। | [[Image:Sun sbus cgsix framebuffer2.jpg|thumb|सन सीजीएसिक्स फ्रेमबफर]]व्यक्तिगत और घरेलू कंप्यूटिंग में उपयोग किए जाने वाले फ़्रेमबफ़र में अधिकांशतः परिभाषित मोड के सेट होते हैं जिसके अनुसार फ़्रेमबफ़र संचालित हो सकता है। ये मोड हार्डवेयर को अलग-अलग रिजॉल्यूशन, कलर डेप्थ, मेमोरी लेआउट और रिफ्रेश रेट टाइमिंग के आउटपुट के लिए फिर से कॉन्फ़िगर करते हैं। | ||
[[यूनिक्स]] मशीनों और ऑपरेटिंग प्रणालीकी | [[यूनिक्स]] मशीनों और ऑपरेटिंग प्रणालीकी विश्व में, ऐसी सुविधाओं को सामान्यतः हार्डवेयर सेटिंग्स में सीधे हेरफेर करने के पक्ष में छोड़ दिया जाता था। यह हेरफेर इस लिहाज से कहीं अधिक लचीला था कि कोई भी रिज़ॉल्यूशन, रंग की गहराई और [[ताज़ा दर]] प्राप्य थी - केवल फ्रेमबफ़र के लिए उपलब्ध मेमोरी द्वारा सीमित। | ||
इस पद्धति का दुर्भाग्यपूर्ण दुष्परिणाम यह था कि [[ प्रदर्शन उपकरण ]] को उसकी क्षमताओं से परे चलाया जा सकता था। कुछ | इस पद्धति का दुर्भाग्यपूर्ण दुष्परिणाम यह था कि [[ प्रदर्शन उपकरण ]] को उसकी क्षमताओं से परे चलाया जा सकता था। कुछ स्थितियों में, इसके परिणामस्वरूप डिस्प्ले में हार्डवेयर की क्षति हुई।<ref>http://tldp.org/HOWTO/XFree86-Video-Timings-HOWTO/overd.html XFree86 Video Timings HOWTO: Overdriving Your Monitor</ref> अधिक सामान्यतः, यह केवल विकृत और अनुपयोगी उत्पादन का उत्पादन करता है। आधुनिक सीआरटी मॉनिटर सुरक्षा परिपथरी की प्रारंभिक ूआत के माध्यम से इस समस्या को ठीक करते हैं। जब डिस्प्ले मोड बदल जाता है, तो मॉनिटर नई रिफ्रेश फ्रीक्वेंसी पर सिग्नल लॉक प्राप्त करने का प्रयास करता है। यदि मॉनिटर सिग्नल लॉक प्राप्त करने में असमर्थ है, या यदि सिग्नल इसकी डिज़ाइन सीमाओं की सीमा के बाहर है, तो मॉनिटर फ़्रेमबफ़र सिग्नल की उपेक्षा करेगा और संभवतः उपयोगकर्ता को त्रुटि संदेश के साथ प्रस्तुत करेगा। | ||
एलसीडी मॉनिटर में समान सुरक्षा परिपथरी होती है, | एलसीडी मॉनिटर में समान सुरक्षा परिपथरी होती है, किन्तुविभिन्न कारणों से। चूंकि एलसीडी को डिजिटल रूप से डिस्प्ले सिग्नल का नमूना लेना चाहिए (जिससे इलेक्ट्रॉन बीम का अनुकरण होता है), कोई भी सिग्नल जो सीमा से बाहर है, मॉनिटर पर भौतिक रूप से प्रदर्शित नहीं किया जा सकता है। | ||
== रंग पैलेट == | == रंग पैलेट == | ||
फ़्रेमबफ़र्स ने परंपरागत रूप से रंग मोड की विस्तृत विविधता का समर्थन किया है। मेमोरी के खर्च के कारण, अधिकांश | फ़्रेमबफ़र्स ने परंपरागत रूप से रंग मोड की विस्तृत विविधता का समर्थन किया है। मेमोरी के खर्च के कारण, अधिकांश प्रारंभिक ुआती फ़्रेमबफ़र्स ने 1-बिट (2-रंग प्रति पिक्सेल), 2-बिट (4-रंग), 4-बिट (16-रंग) या 8-बिट (256-रंग) रंग की गहराई का उपयोग किया . रंग की इतनी कम गहराई के साथ समस्या यह है कि रंगों की पूरी श्रृंखला का उत्पादन नहीं किया जा सकता है। इस समस्या का समाधान [[अनुक्रमित रंग]] था जो फ़्रेमबफ़र में लुकअप तालिका जोड़ता है। फ़्रेमबफ़र मेमोरी में संग्रहीत प्रत्येक रंग रंग सूचकांक के रूप में कार्य करता है। लुकअप तालिका पैलेट के रूप में विभिन्न रंगों की सीमित संख्या के साथ कार्य करती है, जबकि बाकी का उपयोग सूचकांक तालिका के रूप में किया जाता है। | ||
यहां विशिष्ट अनुक्रमित 256-रंग की छवि और इसकी अपनी पैलेट है ( के रूप में दिखाया गया है | यहां विशिष्ट अनुक्रमित 256-रंग की छवि और इसकी अपनी पैलेट है ( के रूप में दिखाया गया है | ||
| Line 43: | Line 43: | ||
|| [[File:Adaptative 8bits palette.png]] | || [[File:Adaptative 8bits palette.png]] | ||
|} | |} | ||
कुछ डिजाइनों में रन पर लुकअप टेबल (या आधुनिक पैलेट के बीच स्विच) में डेटा लिखना भी संभव था, जिससे चित्र को अपने स्वयं के पैलेट के साथ क्षैतिज सलाखों में विभाजित किया जा सके और इस तरह ऐसी छवि प्रस्तुत की जा सके जिसमें व्यापक पैलेट हो। उदाहरण के लिए, बाहरी शॉट फ़ोटोग्राफ़ को देखते हुए, चित्र को चार बार में विभाजित किया जा सकता है, शीर्ष वाला स्काई टोन पर ज़ोर देने के साथ, अगला फ़ोलीज़ टोन के साथ, अगला स्किन और कपड़ों के टोन के साथ, और नीचे ग्राउंड कलर के साथ। इसके लिए प्रत्येक पैलेट को अतिव्यापी रंगों की आवश्यकता होती है, | कुछ डिजाइनों में रन पर लुकअप टेबल (या आधुनिक पैलेट के बीच स्विच) में डेटा लिखना भी संभव था, जिससे चित्र को अपने स्वयं के पैलेट के साथ क्षैतिज सलाखों में विभाजित किया जा सके और इस तरह ऐसी छवि प्रस्तुत की जा सके जिसमें व्यापक पैलेट हो। उदाहरण के लिए, बाहरी शॉट फ़ोटोग्राफ़ को देखते हुए, चित्र को चार बार में विभाजित किया जा सकता है, शीर्ष वाला स्काई टोन पर ज़ोर देने के साथ, अगला फ़ोलीज़ टोन के साथ, अगला स्किन और कपड़ों के टोन के साथ, और नीचे ग्राउंड कलर के साथ। इसके लिए प्रत्येक पैलेट को अतिव्यापी रंगों की आवश्यकता होती है, किन्तुसावधानी से किया जाता है, महान लचीलेपन की अनुमति देता है। | ||
== मेमोरी एक्सेस == | == मेमोरी एक्सेस == | ||
जबकि फ़्रेमबफ़र्स को सामान्यतः मेमोरी-मैप्ड I/O के माध्यम से सीधे सीपीयू मेमोरी स्पेस में एक्सेस किया जाता है, यह मात्र | जबकि फ़्रेमबफ़र्स को सामान्यतः मेमोरी-मैप्ड I/O के माध्यम से सीधे सीपीयू मेमोरी स्पेस में एक्सेस किया जाता है, यह मात्र विधि नहीं है जिसके द्वारा उन्हें एक्सेस किया जा सकता है। मेमोरी तक पहुँचने के लिए उपयोग किए जाने वाले तरीकों में फ़्रेमबफ़र्स व्यापक रूप से भिन्न हैं। कुछ सबसे आम हैं: | ||
* पूरे फ्रेमबफर को किसी दिए गए मेमोरी रेंज में मैप करना। | * पूरे फ्रेमबफर को किसी दिए गए मेमोरी रेंज में मैप करना। | ||
* प्रत्येक पिक्सेल, पिक्सेल की श्रेणी या पैलेट प्रविष्टि सेट करने के लिए पोर्ट कमांड। | * प्रत्येक पिक्सेल, पिक्सेल की श्रेणी या पैलेट प्रविष्टि सेट करने के लिए पोर्ट कमांड। | ||
| Line 55: | Line 55: | ||
== वीडियो कार्ड पर रैम == | == वीडियो कार्ड पर रैम == | ||
{{see also|वीडियो स्मृति}} | {{see also|वीडियो स्मृति}} | ||
वीडियो कार्ड में | वीडियो कार्ड में सदैव निश्चित मात्रा में रैम होती है। इस रैम का छोटा सा हिस्सा है जहां छवि डेटा का बिटमैप प्रदर्शित करने के लिए बफ़र किया जाता है। इस रैम का जिक्र करते समय शब्द फ्रेम बफर इस प्रकार अधिकांशतः दूसरे के लिए प्रयोग किया जाता है। | ||
सीपीयू वीडियो कार्ड में इमेज अपडेट भेजता है। कार्ड पर वीडियो प्रोसेसर स्क्रीन इमेज की तस्वीर बनाता है और इसे फ्रेम बफर में रैम में बड़े बिटमैप के रूप में स्टोर करता है। आरएएम में बिटमैप का उपयोग कार्ड द्वारा स्क्रीन छवि को लगातार ताज़ा करने के लिए किया जाता है।<ref>{{cite web|url=http://karbosguide.com/hardware/module7b1.htm|title=वीडियो कार्ड के लिए एक सचित्र गाइड|work=karbosguide.com}}</ref> | सीपीयू वीडियो कार्ड में इमेज अपडेट भेजता है। कार्ड पर वीडियो प्रोसेसर स्क्रीन इमेज की तस्वीर बनाता है और इसे फ्रेम बफर में रैम में बड़े बिटमैप के रूप में स्टोर करता है। आरएएम में बिटमैप का उपयोग कार्ड द्वारा स्क्रीन छवि को लगातार ताज़ा करने के लिए किया जाता है।<ref>{{cite web|url=http://karbosguide.com/hardware/module7b1.htm|title=वीडियो कार्ड के लिए एक सचित्र गाइड|work=karbosguide.com}}</ref> | ||
| Line 61: | Line 61: | ||
== वर्चुअल फ्रेमबफ़र्स == | == वर्चुअल फ्रेमबफ़र्स == | ||
संगतता के कारणों के लिए, कई प्रणालियां फ़्रेमबफ़र डिवाइस के फ़ंक्शन का अनुकरण करने का प्रयास करती हैं। दो सबसे आम [[वर्चुअलाइजेशन]] फ्रेमबफर लिनक्स फ्रेमबफर डिवाइस (एफबीडीईवी) और एक्स वर्चुअल फ्रेमबफर (एक्सवीएफबी) हैं। [[एक्सवीएफबी]] को [[एक्स विंडो सिस्टम|एक्स विंडो]] प्रणालीवितरण में जोड़ा गया था | संगतता के कारणों के लिए, कई प्रणालियां फ़्रेमबफ़र डिवाइस के फ़ंक्शन का अनुकरण करने का प्रयास करती हैं। दो सबसे आम [[वर्चुअलाइजेशन]] फ्रेमबफर लिनक्स फ्रेमबफर डिवाइस (एफबीडीईवी) और एक्स वर्चुअल फ्रेमबफर (एक्सवीएफबी) हैं। [[एक्सवीएफबी]] को [[एक्स विंडो सिस्टम|एक्स विंडो]] प्रणालीवितरण में जोड़ा गया था जिससे बिना ग्राफिकल फ्रेमबफर के एक्स को चलाने के लिए विधि प्रदान की जा सके। [[लिनक्स फ्रेमबफर]] डिवाइस को गारंटीकृत मेमोरी मैप में अंतर्निहित फ़्रेमबफ़र तक पहुँचने के लिए भौतिक विधि को अमूर्त करने के लिए विकसित किया गया था जो प्रोग्रामों तक पहुँचने के लिए आसान है। यह सुवाह्यता को बढ़ाता है, क्योंकि उन प्रणालियों से निपटने के लिए प्रोग्राम की आवश्यकता नहीं होती है, जिनके मेमोरी मैप अलग हो गए हैं या बैंक स्विचिंग की आवश्यकता है। | ||
== [[पृष्ठ पलटना]] == | == [[पृष्ठ पलटना]] == | ||
वीडियो डेटा के दो फ़्रेमों को संग्रहीत करने के लिए पर्याप्त मेमोरी के साथ फ़्रेम बफ़र डिज़ाइन किया जा सकता है। सामान्यतः [[डबल बफरिंग]] या अधिक विशेष रूप से पेज फ़्लिपिंग के रूप में जानी जाने वाली | वीडियो डेटा के दो फ़्रेमों को संग्रहीत करने के लिए पर्याप्त मेमोरी के साथ फ़्रेम बफ़र डिज़ाइन किया जा सकता है। सामान्यतः [[डबल बफरिंग]] या अधिक विशेष रूप से पेज फ़्लिपिंग के रूप में जानी जाने वाली प्रयुक्त में, फ़्रेमबफ़र वर्तमान फ़्रेम को प्रदर्शित करने के लिए अपनी आधी मेमोरी का उपयोग करता है। जबकि वह मेमोरी प्रदर्शित की जा रही है, मेमोरी का दूसरा आधा हिस्सा अगले फ्रेम के लिए डेटा से भरा हुआ है। बार द्वितीयक बफ़र भर जाने के बाद, फ़्रेमबफ़र को इस के अतिरिक्त द्वितीयक बफ़र प्रदर्शित करने का निर्देश दिया जाता है। प्राथमिक बफ़र द्वितीयक बफ़र बन जाता है, और द्वितीयक बफ़र प्राथमिक बन जाता है। यह स्विच अधिकांशतः स्क्रीन के फटने से बचने के लिए [[ लंबवत रिक्त अंतराल ]] के बाद किया जाता है, जहां आधा पुराना फ्रेम और आधा नया फ्रेम साथ दिखाया जाता है। | ||
पेज फ़्लिपिंग पीसी [[ खेल प्रोग्रामर ]] द्वारा उपयोग की जाने वाली मानक | पेज फ़्लिपिंग पीसी [[ खेल प्रोग्रामर ]] द्वारा उपयोग की जाने वाली मानक प्रयुक्त बन गई है। | ||
== ग्राफिक्स त्वरक == | == ग्राफिक्स त्वरक == | ||
{{See also|वीडियो कार्ड|ग्राफ़िक्स प्रोसेसिंग युनिट}} | {{See also|वीडियो कार्ड|ग्राफ़िक्स प्रोसेसिंग युनिट}} | ||
जैसे-जैसे | जैसे-जैसे उत्तम ग्राफिक्स की मांग बढ़ी, हार्डवेयर निर्माताओं ने फ्रेमबफर भरने के लिए आवश्यक [[CPU|सीपीयू]] समय की मात्रा को कम करने का विधि बनाया। इसे सामान्यतः ग्राफिक्स त्वरण कहा जाता है। सामान्य ग्राफिक्स ड्राइंग कमांड (उनमें से कई ज्यामितीय) ग्राफिक्स त्वरक को उनके कच्चे रूप में भेजे जाते हैं। त्वरक तब फ्रेमबफर को आदेश के परिणामों को [[रेखांकन]] करता है। यह विधि सीपीयू को अन्य कार्य करने के लिए मुक्त करती है। | ||
प्रारंभिक त्वरक ने 2डी [[ ग्राफिकल यूज़र इंटरफ़ेस ]] प्रणालीके प्रदर्शन में सुधार पर ध्यान केंद्रित किया। इन 2डी क्षमताओं को बनाए रखते हुए, अधिकांश आधुनिक त्वरक वास्तविक समय में 3डी इमेजरी बनाने पर ध्यान केंद्रित करते हैं। सामान्य डिज़ाइन [[OpenGL|ओपनजीएल]] या [[Direct3D|डायरेक्ट3डी]] जैसी [[ग्राफिक्स लाइब्रेरी]] का उपयोग करता है जो त्वरक की [[ग्राफ़िक्स प्रोसेसिंग युनिट]] (जीपीयू) के निर्देशों के लिए प्राप्त आदेशों का अनुवाद करने के लिए ग्राफ़िक्स ड्राइवर के साथ इंटरफ़ेस करता है। जीपीयू रास्टराइज्ड परिणामों की गणना करने के लिए उन निर्देशों का उपयोग करता है और परिणाम फ्रेमबफर पर थोड़ा ब्लिट किए जाते हैं। फ़्रेमबफ़र का सिग्नल तब अंतर्निहित वीडियो ओवरले डिवाइस (सामान्यतः फ़्रेमबफ़र के डेटा को संशोधित किए बिना माउस कर्सर का उत्पादन करने के लिए उपयोग किया जाता है) और आउटपुट सिग्नल को संशोधित करके उत्पादित किसी भी अंतिम विशेष प्रभाव के संयोजन में निर्मित होता है। इस तरह के अंतिम विशेष प्रभावों का उदाहरण [[3dfx वूडू|3डीएफएक्स वूडू]] कार्ड द्वारा उपयोग की जाने वाली स्थानिक एंटी-अलियासिंग | प्रारंभिक त्वरक ने 2डी [[ ग्राफिकल यूज़र इंटरफ़ेस ]] प्रणालीके प्रदर्शन में सुधार पर ध्यान केंद्रित किया। इन 2डी क्षमताओं को बनाए रखते हुए, अधिकांश आधुनिक त्वरक वास्तविक समय में 3डी इमेजरी बनाने पर ध्यान केंद्रित करते हैं। सामान्य डिज़ाइन [[OpenGL|ओपनजीएल]] या [[Direct3D|डायरेक्ट3डी]] जैसी [[ग्राफिक्स लाइब्रेरी]] का उपयोग करता है जो त्वरक की [[ग्राफ़िक्स प्रोसेसिंग युनिट]] (जीपीयू) के निर्देशों के लिए प्राप्त आदेशों का अनुवाद करने के लिए ग्राफ़िक्स ड्राइवर के साथ इंटरफ़ेस करता है। जीपीयू रास्टराइज्ड परिणामों की गणना करने के लिए उन निर्देशों का उपयोग करता है और परिणाम फ्रेमबफर पर थोड़ा ब्लिट किए जाते हैं। फ़्रेमबफ़र का सिग्नल तब अंतर्निहित वीडियो ओवरले डिवाइस (सामान्यतः फ़्रेमबफ़र के डेटा को संशोधित किए बिना माउस कर्सर का उत्पादन करने के लिए उपयोग किया जाता है) और आउटपुट सिग्नल को संशोधित करके उत्पादित किसी भी अंतिम विशेष प्रभाव के संयोजन में निर्मित होता है। इस तरह के अंतिम विशेष प्रभावों का उदाहरण [[3dfx वूडू|3डीएफएक्स वूडू]] कार्ड द्वारा उपयोग की जाने वाली स्थानिक एंटी-अलियासिंग प्रयुक्त थी। ये कार्ड आउटपुट सिग्नल में हल्का धुंधलापन जोड़ते हैं जो रास्टराइज्ड ग्राफिक्स के अलियासिंग को बहुत कम स्पष्ट करता है। | ||
समय ग्राफिक्स त्वरक के कई निर्माता थे, जिनमें सम्मिलित हैं: [[3dfx इंटरएक्टिव]]; [[ व्हाट टेक्नोलॉजीज ]]; [[हरक्यूलिस कंप्यूटर प्रौद्योगिकी]]; [[ट्राइडेंट माइक्रोसिस्टम्स]]; ए[[ NVIDIA | एनवीआईडीआईए]] ; [[त्रिज्या (हार्डवेयर कंपनी)]]; [[S3 ग्राफिक्स|एस3 ग्राफिक्स]]; [[ सिलिकॉन एकीकृत प्रणाली ]] और सिलिकॉन ग्राफिक्स। {{as of|2015}} एक्स86-आधारित प्रणालीके लिए ग्राफिक्स त्वरक के लिए बाजार में एनवीआईडीआईए (2002 में 3डीएफएक्स का अधिग्रहण), [[AMD|एएमडी]] (जिसने 2006 में एटीआई का अधिग्रहण किया), और [[Intel|इंटेल]] का प्रभुत्व है। | समय ग्राफिक्स त्वरक के कई निर्माता थे, जिनमें सम्मिलित हैं: [[3dfx इंटरएक्टिव]]; [[ व्हाट टेक्नोलॉजीज ]]; [[हरक्यूलिस कंप्यूटर प्रौद्योगिकी]]; [[ट्राइडेंट माइक्रोसिस्टम्स]]; ए[[ NVIDIA | एनवीआईडीआईए]] ; [[त्रिज्या (हार्डवेयर कंपनी)]]; [[S3 ग्राफिक्स|एस3 ग्राफिक्स]]; [[ सिलिकॉन एकीकृत प्रणाली ]] और सिलिकॉन ग्राफिक्स। {{as of|2015}} एक्स86-आधारित प्रणालीके लिए ग्राफिक्स त्वरक के लिए बाजार में एनवीआईडीआईए (2002 में 3डीएफएक्स का अधिग्रहण), [[AMD|एएमडी]] (जिसने 2006 में एटीआई का अधिग्रहण किया), और [[Intel|इंटेल]] का प्रभुत्व है। | ||
== तुलना == | == तुलना == | ||
फ्रेमबफ़र के साथ, इलेक्ट्रॉन बीम (यदि प्रदर्शन | फ्रेमबफ़र के साथ, इलेक्ट्रॉन बीम (यदि प्रदर्शन प्रयुक्त का उपयोग करती है) को [[ रेखापुंज स्कैन ]] करने का आदेश दिया जाता है, जिस तरह से [[टेलीविजन]] प्रसारण संकेत प्रदान करता है। इस प्रकार स्क्रीन पर प्रदर्शित प्रत्येक बिंदु के लिए रंग की जानकारी को स्कैन के दौरान सीधे फ्रेमबफ़र से खींचा जाता है, असतत चित्र तत्वों का सेट बनाता है, अर्थात पिक्सेल। | ||
फ़्रेमबफ़र [[ वेक्टर प्रदर्शन ]] से महत्वपूर्ण रूप से भिन्न होते हैं जो रास्टर ग्राफ़िक्स के आगमन से पहले आम थे (और, परिणामस्वरूप, फ़्रेमबफ़र की अवधारणा के लिए)। सदिश प्रदर्शन के साथ, ग्राफिक्स आदिम के केवल शीर्ष (ज्यामिति) संग्रहीत किए जाते हैं। आउटपुट डिस्प्ले की कैथोड किरण को फिर इन बिंदुओं के बीच के क्षेत्र में रेखा का पता लगाते हुए शीर्ष से शीर्ष पर जाने की आज्ञा दी जाती है। | फ़्रेमबफ़र [[ वेक्टर प्रदर्शन ]] से महत्वपूर्ण रूप से भिन्न होते हैं जो रास्टर ग्राफ़िक्स के आगमन से पहले आम थे (और, परिणामस्वरूप, फ़्रेमबफ़र की अवधारणा के लिए)। सदिश प्रदर्शन के साथ, ग्राफिक्स आदिम के केवल शीर्ष (ज्यामिति) संग्रहीत किए जाते हैं। आउटपुट डिस्प्ले की कैथोड किरण को फिर इन बिंदुओं के बीच के क्षेत्र में रेखा का पता लगाते हुए शीर्ष से शीर्ष पर जाने की आज्ञा दी जाती है। | ||
इसी तरह, फ़्रेमबफ़र प्रारंभिक पाठ मोड डिस्प्ले में उपयोग की जाने वाली | इसी तरह, फ़्रेमबफ़र प्रारंभिक पाठ मोड डिस्प्ले में उपयोग की जाने वाली प्रयुक्त से भिन्न होते हैं, जहाँ बफ़र वर्णों के लिए कोड रखता है, व्यक्तिगत पिक्सेल नहीं। वीडियो डिस्प्ले डिवाइस फ्रेमबफर के समान रास्टर स्कैन करता है, किन्तुबफर में प्रत्येक वर्ण के पिक्सल उत्पन्न करता है क्योंकि यह बीम को निर्देशित करता है। | ||
== यह भी देखें == | == यह भी देखें == | ||
Revision as of 18:24, 16 March 2023
फ्रेमबफर (फ्रेम बफर, या कभी-कभी फ्रैमेस्टोर) रैंडम एक्सेस मेमोरी (रैम) का हिस्सा है।[1] बिटमैप युक्त जो वीडियो डिस्प्ले चलाता है। यह डेटा बफ़र है जिसमें पूर्ण वीडियो फ्रेम में सभी पिक्सेल का प्रतिनिधित्व करने वाला डेटा होता है।[2] आधुनिक वीडियो कार्ड में उनके कोर में फ्रेमबफर परिपथ्री होती है। यह परिपथ्री इन-मेमोरी बिटमैप को वीडियो संकेत में परिवर्तित करती है जिसे कंप्यूटर मॉनीटर पर प्रदर्शित किया जा सकता है।
कम्प्यूटिंग में, स्क्रीन बफर स्मृति का हिस्सा है जो कंप्यूटर एप्लिकेशन द्वारा कंप्यूटर प्रदर्शन पर दिखाए जाने वाली सामग्री के प्रतिनिधित्व के लिए उपयोग किया जाता है।[3] स्क्रीन बफ़र को संक्षिप्त रूप में वीडियो बफ़र, पुनर्जनन बफ़र या रीजेन बफ़र भी कहा जा सकता है।[4] स्क्रीन बफ़र्स को वीडियो स्मृति से अलग किया जाना चाहिए। इसके लिए, ऑफ़-स्क्रीन बफ़र शब्द का भी उपयोग किया जाता है।
बफ़र की जानकारी में सामान्यतः डिस्प्ले पर दिखाए जाने वाले प्रत्येक पिक्सेल के लिए रंग मान होते हैं। रंग मान सामान्यतः 1-बिट द्विआधारी छवि (मोनोक्रोम), 4-बिट पैलेट (कंप्यूटिंग), 8-बिट पैलेटाइज्ड, 16-बिट उच्च रंग और 24-बिट कलर डेप्थट्रू कलर .2824-बिट.29 फॉर्मेट में स्टोर किए जाते हैं। पिक्सेल पारदर्शिता के बारे में जानकारी बनाए रखने के लिए कभी-कभी अतिरिक्त अल्फा रचना का उपयोग किया जाता है। फ़्रेमबफ़र के लिए आवश्यक मेमोरी की कुल मात्रा आउटपुट सिग्नल के दिखाने का संकल्प और रंग की गहराई या पैलेट आकार पर निर्भर करती है।
इतिहास
कंप्यूटर शोधकर्ता ने लंबे समय से फ्रेमबफर के सैद्धांतिक लाभों पर चर्चा की थी, किन्तुआर्थिक रूप से व्यावहारिक निवेश पर पर्याप्त कंप्यूटर मेमोरी वाली मशीन का उत्पादन करने में असमर्थ थे।[5] 1947 में, मैनचेस्टर बेबी कंप्यूटर ने कैथोड रे ट्यूब | कैथोड-रे ट्यूब ( (सीआरटी)) मेमोरी पर 1024 बिट्स को स्टोर करने के लिए विलियम्स ट्यूब, बाद में विलियम्स-किलबर्न ट्यूब का उपयोग किया और दूसरे (सीआरटी) पर प्रदर्शित किया।[6][7] 1950 में 4096 डिस्प्ले प्राप्त करने वाली एमआईटी लिंकन प्रयोगशाला के साथ अन्य अनुसंधान प्रयोगशालाएँ इन प्रयुक्तों की खोज कर रही थीं।[5]
1960 के दशक के अंत में रंगीन स्कैन डिस्प्ले प्रयुक्त किया गया था, जिसे ब्रुकहैवन राष्ट्रीय प्रयोगशाला रैस्टर डिस्प्ले (बीआरएडी) कहा जाता है, जिसमें ड्रम मेमोरी और टेलीविज़न मॉनिटर का उपयोग किया जाता है।[8] 1969 में, बेल लैब्स के ए. माइकल नोल ने चुंबकीय-कोर मेमोरी का उपयोग करते हुए फ्रेम बफर के साथ स्कैन किए गए डिस्प्ले को प्रयुक्त किया।[9] बाद में, मानक रंगीन टीवी मॉनिटर पर तीन बिट्स की रंग गहराई वाली छवि प्रदर्शित करने के लिए बेल लैब्स प्रणाली का विस्तार किया गया।
1970 के दशक की प्रारंभिक ुआत में, एमओएस मेमोरी (मेटल-ऑक्साइड-सेमीकंडक्टर मेमोरी) का विकास एकीकृत परिपथ |इंटीग्रेटेड- परिपथ चिप्स, विशेष रूप से बड़े पैमाने पर इंटीग्रेशन|हाई-डेंसिटी डीआरएएम (डायनामिक रैंडम-एक्सेस मेमोरी) चिप्स कम से कम 1 के साथ केमैंबीमैंबीमैंटी मेमोरी, इसे पहली बार, मानक वीडियो छवि धारण करने में सक्षम फ़्रेमबफ़र्स के साथ डिजिटल मेमोरी प्रणालीबनाने के लिए व्यावहारिक बना दिया।[10][11] इससे 1972 में ज़ेरॉक्स पार्क में रिचर्ड शौप (प्रोग्रामर) द्वारा सुपरपेंट प्रणालीका विकास हुआ।[10] शौप प्रारंभिक डिजिटल वीडियो-कैप्चर प्रणालीबनाने के लिए सुपरपेंट फ़्रेमबफ़र का उपयोग करने में सक्षम था। आउटपुट सिग्नल को इनपुट सिग्नल के साथ सिंक्रोनाइज करके, शौप डेटा के प्रत्येक पिक्सेल को अधिलेखित करने में सक्षम था क्योंकि यह स्थानांतरित हो गया था। शौप ने रंग तालिकाओं का उपयोग करके आउटपुट सिग्नल को संशोधित करने का भी प्रयोग किया। इन रंग तालिकाओं ने सुपरपेंट प्रणालीको इसमें सम्मिलित सीमित 8-बिट डेटा की सीमा के बाहर रंगों की विस्तृत विविधता का उत्पादन करने की अनुमति दी। यह योजना बाद में कंप्यूटर फ्रेमबफ़र्स में आम हो जाएगी।
1974 में, इवांस एंड सदरलैंड ने पहला व्यावसायिक फ्रेमबफ़र, पिक्चर प्रणालीजारी किया, रेफरी>पिक्चर सिस्टम (PDF), इवांस और सदरलैंड, retrieved 2017-12-31</ref> की कीमत लगभग $15,000 है। यह 8-बिट ग्रेस्केल में 512x512 पिक्सेल तक के रिज़ॉल्यूशन का उत्पादन करने में सक्षम था, और ग्राफिक्स शोधकर्ताओं के लिए वरदान बन गया, जिनके पास अपने स्वयं के फ्रेमबफ़र बनाने के लिए संसाधन नहीं थे। न्यूयॉर्क प्रौद्योगिकी संस्थान ने बाद में तीन इवांस एंड सदरलैंड फ्रेमबफ़र्स का उपयोग करके पहली 24-बिट रंग प्रणाली बनाई। रेफरी नाम = ओपन-इतिहास>{{cite web |url=https://www.cs.cmu.edu/~ph/nyit/masson/nyit.html |शीर्षक=न्यूयॉर्क इंस्टीट्यूट ऑफ टेक्नोलॉजी ग्राफिक्स लैब का इतिहास|access-date=2007-08-31}</ref> प्रत्येक फ़्रेमबफ़र आरजीबी कलर मॉडल कलर आउटपुट (लाल के लिए , हरे के लिए और नीले रंग के लिए ) से जुड़ा था, जिसमें डिजिटल इक्विपमेंट कॉर्पोरेशन पीडीपी 11/04 मिनी कंप्यूटर के रूप में तीन उपकरणों को नियंत्रित करता है।
1975 में, यूके की कंपनी क्वांटल ने पहला वाणिज्यिक पूर्ण-रंग प्रसारण फ्रेमबफ़र, क्वांटेल डीएफएस 3000 का उत्पादन किया। इसका उपयोग पहली बार 1976 के ग्रीष्मकालीन ओलंपिक के टीवी कवरेज में ओलंपिक ज्वलंत मशाल का चित्र में चित्र इनसेट उत्पन्न करने के लिए किया गया था। बाकी तस्वीर में धावक को स्टेडियम में प्रवेश करते हुए दिखाया गया है।
एकीकृत- परिपथ प्रौद्योगिकी के तेजी से सुधार ने 1970 के दशक के उत्तरार्ध के कई घरेलू कंप्यूटरों के लिए कम-रंग-गहराई वाले फ्रेमबफ़र्स को सम्मिलित करना संभव बना दिया। आज, ग्राफिकल क्षमताओं वाले लगभग सभी कंप्यूटर वीडियो सिग्नल उत्पन्न करने के लिए फ्रेमबफर का उपयोग करते हैं। 1980 के दशक में बनाए गए अमिगा कंप्यूटरों में ग्राफिक्स के प्रदर्शन पर विशेष ध्यान दिया गया था और इसमें 4096 रंगों को प्रदर्शित करने में सक्षम अद्वितीय होल्ड-एंड-संशोधित फ्रेमबफर सम्मिलित था।
1980 के दशक के समयफ़्रेमबफ़र्स हाई-एंड वर्कस्टेशन और आर्केड प्रणालीबोर्ड में भी लोकप्रिय हो गए। सिलिकॉन ग्राफिक्स, सन माइक्रोसिस्टम्स, हेवलेट पैकर्ड , डिजिटल उपकरण निगम और आईबीएम सभी ने इस अवधि में अपने वर्कस्टेशन कंप्यूटरों के लिए फ्रेमबफर जारी किए। ये फ्रेमबफ़र सामान्यतः अधिकांश घरेलू कंप्यूटरों की तुलना में बहुत उच्च गुणवत्ता वाले थे, और नियमित रूप से टेलीविजन, प्रिंटिंग, कंप्यूटर मॉडलिंग और 3डी ग्राफिक्स में उपयोग किए जाते थे। फ्रेमबफ़र्स का उपयोग सेगा द्वारा सेगा आर्केड प्रणालीबोर्डों की अपनी उच्च-अंत सूची के लिए भी किया गया था, जो कि घरेलू कंप्यूटरों की तुलना में उच्च गुणवत्ता वाले थे।
प्रदर्शन मोड
व्यक्तिगत और घरेलू कंप्यूटिंग में उपयोग किए जाने वाले फ़्रेमबफ़र में अधिकांशतः परिभाषित मोड के सेट होते हैं जिसके अनुसार फ़्रेमबफ़र संचालित हो सकता है। ये मोड हार्डवेयर को अलग-अलग रिजॉल्यूशन, कलर डेप्थ, मेमोरी लेआउट और रिफ्रेश रेट टाइमिंग के आउटपुट के लिए फिर से कॉन्फ़िगर करते हैं।
यूनिक्स मशीनों और ऑपरेटिंग प्रणालीकी विश्व में, ऐसी सुविधाओं को सामान्यतः हार्डवेयर सेटिंग्स में सीधे हेरफेर करने के पक्ष में छोड़ दिया जाता था। यह हेरफेर इस लिहाज से कहीं अधिक लचीला था कि कोई भी रिज़ॉल्यूशन, रंग की गहराई और ताज़ा दर प्राप्य थी - केवल फ्रेमबफ़र के लिए उपलब्ध मेमोरी द्वारा सीमित।
इस पद्धति का दुर्भाग्यपूर्ण दुष्परिणाम यह था कि प्रदर्शन उपकरण को उसकी क्षमताओं से परे चलाया जा सकता था। कुछ स्थितियों में, इसके परिणामस्वरूप डिस्प्ले में हार्डवेयर की क्षति हुई।[12] अधिक सामान्यतः, यह केवल विकृत और अनुपयोगी उत्पादन का उत्पादन करता है। आधुनिक सीआरटी मॉनिटर सुरक्षा परिपथरी की प्रारंभिक ूआत के माध्यम से इस समस्या को ठीक करते हैं। जब डिस्प्ले मोड बदल जाता है, तो मॉनिटर नई रिफ्रेश फ्रीक्वेंसी पर सिग्नल लॉक प्राप्त करने का प्रयास करता है। यदि मॉनिटर सिग्नल लॉक प्राप्त करने में असमर्थ है, या यदि सिग्नल इसकी डिज़ाइन सीमाओं की सीमा के बाहर है, तो मॉनिटर फ़्रेमबफ़र सिग्नल की उपेक्षा करेगा और संभवतः उपयोगकर्ता को त्रुटि संदेश के साथ प्रस्तुत करेगा।
एलसीडी मॉनिटर में समान सुरक्षा परिपथरी होती है, किन्तुविभिन्न कारणों से। चूंकि एलसीडी को डिजिटल रूप से डिस्प्ले सिग्नल का नमूना लेना चाहिए (जिससे इलेक्ट्रॉन बीम का अनुकरण होता है), कोई भी सिग्नल जो सीमा से बाहर है, मॉनिटर पर भौतिक रूप से प्रदर्शित नहीं किया जा सकता है।
रंग पैलेट
फ़्रेमबफ़र्स ने परंपरागत रूप से रंग मोड की विस्तृत विविधता का समर्थन किया है। मेमोरी के खर्च के कारण, अधिकांश प्रारंभिक ुआती फ़्रेमबफ़र्स ने 1-बिट (2-रंग प्रति पिक्सेल), 2-बिट (4-रंग), 4-बिट (16-रंग) या 8-बिट (256-रंग) रंग की गहराई का उपयोग किया . रंग की इतनी कम गहराई के साथ समस्या यह है कि रंगों की पूरी श्रृंखला का उत्पादन नहीं किया जा सकता है। इस समस्या का समाधान अनुक्रमित रंग था जो फ़्रेमबफ़र में लुकअप तालिका जोड़ता है। फ़्रेमबफ़र मेमोरी में संग्रहीत प्रत्येक रंग रंग सूचकांक के रूप में कार्य करता है। लुकअप तालिका पैलेट के रूप में विभिन्न रंगों की सीमित संख्या के साथ कार्य करती है, जबकि बाकी का उपयोग सूचकांक तालिका के रूप में किया जाता है।
यहां विशिष्ट अनुक्रमित 256-रंग की छवि और इसकी अपनी पैलेट है ( के रूप में दिखाया गया है
नमूनों की आयत):
कुछ डिजाइनों में रन पर लुकअप टेबल (या आधुनिक पैलेट के बीच स्विच) में डेटा लिखना भी संभव था, जिससे चित्र को अपने स्वयं के पैलेट के साथ क्षैतिज सलाखों में विभाजित किया जा सके और इस तरह ऐसी छवि प्रस्तुत की जा सके जिसमें व्यापक पैलेट हो। उदाहरण के लिए, बाहरी शॉट फ़ोटोग्राफ़ को देखते हुए, चित्र को चार बार में विभाजित किया जा सकता है, शीर्ष वाला स्काई टोन पर ज़ोर देने के साथ, अगला फ़ोलीज़ टोन के साथ, अगला स्किन और कपड़ों के टोन के साथ, और नीचे ग्राउंड कलर के साथ। इसके लिए प्रत्येक पैलेट को अतिव्यापी रंगों की आवश्यकता होती है, किन्तुसावधानी से किया जाता है, महान लचीलेपन की अनुमति देता है।
मेमोरी एक्सेस
जबकि फ़्रेमबफ़र्स को सामान्यतः मेमोरी-मैप्ड I/O के माध्यम से सीधे सीपीयू मेमोरी स्पेस में एक्सेस किया जाता है, यह मात्र विधि नहीं है जिसके द्वारा उन्हें एक्सेस किया जा सकता है। मेमोरी तक पहुँचने के लिए उपयोग किए जाने वाले तरीकों में फ़्रेमबफ़र्स व्यापक रूप से भिन्न हैं। कुछ सबसे आम हैं:
- पूरे फ्रेमबफर को किसी दिए गए मेमोरी रेंज में मैप करना।
- प्रत्येक पिक्सेल, पिक्सेल की श्रेणी या पैलेट प्रविष्टि सेट करने के लिए पोर्ट कमांड।
- फ़्रेमबफ़र मेमोरी से छोटी मेमोरी रेंज का मानचित्रण करना, फिर आवश्यकतानुसार बैंक स्विचिंग करना।
फ़्रेमबफ़र संगठन पिक्सेल या प्लानर (कंप्यूटर ग्राफ़िक्स) पैक किया जा सकता है। फ़्रेमबफ़र सभी बिंदुओं को संबोधित करने योग्य हो सकता है या इसे कैसे अपडेट किया जा सकता है, इस पर प्रतिबंध है।
वीडियो कार्ड पर रैम
वीडियो कार्ड में सदैव निश्चित मात्रा में रैम होती है। इस रैम का छोटा सा हिस्सा है जहां छवि डेटा का बिटमैप प्रदर्शित करने के लिए बफ़र किया जाता है। इस रैम का जिक्र करते समय शब्द फ्रेम बफर इस प्रकार अधिकांशतः दूसरे के लिए प्रयोग किया जाता है।
सीपीयू वीडियो कार्ड में इमेज अपडेट भेजता है। कार्ड पर वीडियो प्रोसेसर स्क्रीन इमेज की तस्वीर बनाता है और इसे फ्रेम बफर में रैम में बड़े बिटमैप के रूप में स्टोर करता है। आरएएम में बिटमैप का उपयोग कार्ड द्वारा स्क्रीन छवि को लगातार ताज़ा करने के लिए किया जाता है।[13]
वर्चुअल फ्रेमबफ़र्स
संगतता के कारणों के लिए, कई प्रणालियां फ़्रेमबफ़र डिवाइस के फ़ंक्शन का अनुकरण करने का प्रयास करती हैं। दो सबसे आम वर्चुअलाइजेशन फ्रेमबफर लिनक्स फ्रेमबफर डिवाइस (एफबीडीईवी) और एक्स वर्चुअल फ्रेमबफर (एक्सवीएफबी) हैं। एक्सवीएफबी को एक्स विंडो प्रणालीवितरण में जोड़ा गया था जिससे बिना ग्राफिकल फ्रेमबफर के एक्स को चलाने के लिए विधि प्रदान की जा सके। लिनक्स फ्रेमबफर डिवाइस को गारंटीकृत मेमोरी मैप में अंतर्निहित फ़्रेमबफ़र तक पहुँचने के लिए भौतिक विधि को अमूर्त करने के लिए विकसित किया गया था जो प्रोग्रामों तक पहुँचने के लिए आसान है। यह सुवाह्यता को बढ़ाता है, क्योंकि उन प्रणालियों से निपटने के लिए प्रोग्राम की आवश्यकता नहीं होती है, जिनके मेमोरी मैप अलग हो गए हैं या बैंक स्विचिंग की आवश्यकता है।
पृष्ठ पलटना
वीडियो डेटा के दो फ़्रेमों को संग्रहीत करने के लिए पर्याप्त मेमोरी के साथ फ़्रेम बफ़र डिज़ाइन किया जा सकता है। सामान्यतः डबल बफरिंग या अधिक विशेष रूप से पेज फ़्लिपिंग के रूप में जानी जाने वाली प्रयुक्त में, फ़्रेमबफ़र वर्तमान फ़्रेम को प्रदर्शित करने के लिए अपनी आधी मेमोरी का उपयोग करता है। जबकि वह मेमोरी प्रदर्शित की जा रही है, मेमोरी का दूसरा आधा हिस्सा अगले फ्रेम के लिए डेटा से भरा हुआ है। बार द्वितीयक बफ़र भर जाने के बाद, फ़्रेमबफ़र को इस के अतिरिक्त द्वितीयक बफ़र प्रदर्शित करने का निर्देश दिया जाता है। प्राथमिक बफ़र द्वितीयक बफ़र बन जाता है, और द्वितीयक बफ़र प्राथमिक बन जाता है। यह स्विच अधिकांशतः स्क्रीन के फटने से बचने के लिए लंबवत रिक्त अंतराल के बाद किया जाता है, जहां आधा पुराना फ्रेम और आधा नया फ्रेम साथ दिखाया जाता है।
पेज फ़्लिपिंग पीसी खेल प्रोग्रामर द्वारा उपयोग की जाने वाली मानक प्रयुक्त बन गई है।
ग्राफिक्स त्वरक
जैसे-जैसे उत्तम ग्राफिक्स की मांग बढ़ी, हार्डवेयर निर्माताओं ने फ्रेमबफर भरने के लिए आवश्यक सीपीयू समय की मात्रा को कम करने का विधि बनाया। इसे सामान्यतः ग्राफिक्स त्वरण कहा जाता है। सामान्य ग्राफिक्स ड्राइंग कमांड (उनमें से कई ज्यामितीय) ग्राफिक्स त्वरक को उनके कच्चे रूप में भेजे जाते हैं। त्वरक तब फ्रेमबफर को आदेश के परिणामों को रेखांकन करता है। यह विधि सीपीयू को अन्य कार्य करने के लिए मुक्त करती है।
प्रारंभिक त्वरक ने 2डी ग्राफिकल यूज़र इंटरफ़ेस प्रणालीके प्रदर्शन में सुधार पर ध्यान केंद्रित किया। इन 2डी क्षमताओं को बनाए रखते हुए, अधिकांश आधुनिक त्वरक वास्तविक समय में 3डी इमेजरी बनाने पर ध्यान केंद्रित करते हैं। सामान्य डिज़ाइन ओपनजीएल या डायरेक्ट3डी जैसी ग्राफिक्स लाइब्रेरी का उपयोग करता है जो त्वरक की ग्राफ़िक्स प्रोसेसिंग युनिट (जीपीयू) के निर्देशों के लिए प्राप्त आदेशों का अनुवाद करने के लिए ग्राफ़िक्स ड्राइवर के साथ इंटरफ़ेस करता है। जीपीयू रास्टराइज्ड परिणामों की गणना करने के लिए उन निर्देशों का उपयोग करता है और परिणाम फ्रेमबफर पर थोड़ा ब्लिट किए जाते हैं। फ़्रेमबफ़र का सिग्नल तब अंतर्निहित वीडियो ओवरले डिवाइस (सामान्यतः फ़्रेमबफ़र के डेटा को संशोधित किए बिना माउस कर्सर का उत्पादन करने के लिए उपयोग किया जाता है) और आउटपुट सिग्नल को संशोधित करके उत्पादित किसी भी अंतिम विशेष प्रभाव के संयोजन में निर्मित होता है। इस तरह के अंतिम विशेष प्रभावों का उदाहरण 3डीएफएक्स वूडू कार्ड द्वारा उपयोग की जाने वाली स्थानिक एंटी-अलियासिंग प्रयुक्त थी। ये कार्ड आउटपुट सिग्नल में हल्का धुंधलापन जोड़ते हैं जो रास्टराइज्ड ग्राफिक्स के अलियासिंग को बहुत कम स्पष्ट करता है।
समय ग्राफिक्स त्वरक के कई निर्माता थे, जिनमें सम्मिलित हैं: 3dfx इंटरएक्टिव; व्हाट टेक्नोलॉजीज ; हरक्यूलिस कंप्यूटर प्रौद्योगिकी; ट्राइडेंट माइक्रोसिस्टम्स; ए एनवीआईडीआईए ; त्रिज्या (हार्डवेयर कंपनी); एस3 ग्राफिक्स; सिलिकॉन एकीकृत प्रणाली और सिलिकॉन ग्राफिक्स। As of 2015[update] एक्स86-आधारित प्रणालीके लिए ग्राफिक्स त्वरक के लिए बाजार में एनवीआईडीआईए (2002 में 3डीएफएक्स का अधिग्रहण), एएमडी (जिसने 2006 में एटीआई का अधिग्रहण किया), और इंटेल का प्रभुत्व है।
तुलना
फ्रेमबफ़र के साथ, इलेक्ट्रॉन बीम (यदि प्रदर्शन प्रयुक्त का उपयोग करती है) को रेखापुंज स्कैन करने का आदेश दिया जाता है, जिस तरह से टेलीविजन प्रसारण संकेत प्रदान करता है। इस प्रकार स्क्रीन पर प्रदर्शित प्रत्येक बिंदु के लिए रंग की जानकारी को स्कैन के दौरान सीधे फ्रेमबफ़र से खींचा जाता है, असतत चित्र तत्वों का सेट बनाता है, अर्थात पिक्सेल।
फ़्रेमबफ़र वेक्टर प्रदर्शन से महत्वपूर्ण रूप से भिन्न होते हैं जो रास्टर ग्राफ़िक्स के आगमन से पहले आम थे (और, परिणामस्वरूप, फ़्रेमबफ़र की अवधारणा के लिए)। सदिश प्रदर्शन के साथ, ग्राफिक्स आदिम के केवल शीर्ष (ज्यामिति) संग्रहीत किए जाते हैं। आउटपुट डिस्प्ले की कैथोड किरण को फिर इन बिंदुओं के बीच के क्षेत्र में रेखा का पता लगाते हुए शीर्ष से शीर्ष पर जाने की आज्ञा दी जाती है।
इसी तरह, फ़्रेमबफ़र प्रारंभिक पाठ मोड डिस्प्ले में उपयोग की जाने वाली प्रयुक्त से भिन्न होते हैं, जहाँ बफ़र वर्णों के लिए कोड रखता है, व्यक्तिगत पिक्सेल नहीं। वीडियो डिस्प्ले डिवाइस फ्रेमबफर के समान रास्टर स्कैन करता है, किन्तुबफर में प्रत्येक वर्ण के पिक्सल उत्पन्न करता है क्योंकि यह बीम को निर्देशित करता है।
यह भी देखें
- बिट प्लेन
- स्कैनलाइन प्रतिपादन
- स्वैप चेन
- टाइल आधारित वीडियो गेम
- टाइल रेंडरिंग
संदर्भ
- ↑ "What is frame buffer? A Webopedia Definition". webopedia.com. June 1998.
- ↑ "फ़्रेम बफर अकसर किये गए सवाल". Retrieved 14 May 2014.
- ↑ Mueller, J. (2002). .NET Framework Solutions: In Search of the Lost Win32 API. Wiley. p. 160. ISBN 9780782141344. Retrieved 2015-04-21.
- ↑ "स्मार्ट कम्प्यूटिंग डिक्शनरी एंट्री - वीडियो बफर". Archived from the original on 2012-03-24. Retrieved 2015-04-21.
- ↑ 5.0 5.1 Gaboury, J. (2018-03-01). "The random-access image: Memory and the history of the computer screen". Grey Room. 70 (70): 24–53. doi:10.1162/GREY_a_00233. hdl:21.11116/0000-0001-FA73-4. ISSN 1526-3819. S2CID 57565564.
- ↑ Williams, F. C.; Kilburn, T. (March 1949). "बाइनरी-डिजिटल कंप्यूटिंग मशीनों के साथ उपयोग के लिए एक स्टोरेज सिस्टम". Proceedings of the IEE - Part III: Radio and Communication Engineering. 96 (40): 81–. doi:10.1049/pi-3.1949.0018.
- ↑ "Kilburn 1947 Report Cover Notes (Digital 60)". curation.cs.manchester.ac.uk. Retrieved 2019-04-26.
- ↑ D. Ophir; S. Rankowitz; B. J. Shepherd; R. J. Spinrad (June 1968), "BRAD: The Brookhave Raster Display", Communications of the ACM, vol. 11, no. 6, pp. 415–416, doi:10.1145/363347.363385, S2CID 11160780
- ↑ Noll, A. Michael (March 1971). "स्कैन-डिस्प्ले कंप्यूटर ग्राफिक्स". Communications of the ACM. 14 (3): 145–150. doi:10.1145/362566.362567. S2CID 2210619.
- ↑ 10.0 10.1 {{cite web |url=http://accad.osu.edu/~waynec/history/PDFs/Annals_final.pdf |archive-url=https://web.archive.org/web/20040612215245/http://accad.osu.edu/~waynec/history/PDFs/Annals_final.pdf |archive-date=2004-06-12 |title=सुपरपेंट: एक अर्ली फ्रेम बफर ग्राफिक्स सिस्टम|author=Richard Shoup |publisher=IEEE |work=Annals of the History of Computing |year=2001 |url-status=dead }
- ↑ Goldwasser, S.M. (June 1983). खंडित इमेजरी के इंटरएक्टिव डिस्प्ले के लिए कंप्यूटर आर्किटेक्चर. Computer Architectures for Spatially Distributed Data. Springer Science & Business Media. pp. 75-94 (81). ISBN 9783642821509.
- ↑ http://tldp.org/HOWTO/XFree86-Video-Timings-HOWTO/overd.html XFree86 Video Timings HOWTO: Overdriving Your Monitor
- ↑ "वीडियो कार्ड के लिए एक सचित्र गाइड". karbosguide.com.
- Alvy Ray Smith (May 30, 1997). "Digital Paint Systems: Historical Overview" (PDF). Microsoft Tech Memo 14. Archived from the original (PDF) on February 7, 2012.
- Wayne Carlson (2003). "Hardware advancements". A Critical History of Computer Graphics and Animation. The Ohio State University. Archived from the original on 2012-03-14.
- Alvy Ray Smith (2001). "Digital Paint Systems: An Anecdotal and Historical Overview" (PDF). IEEE Annals of the History of Computing. Archived from the original (PDF) on 2012-02-05.