डिस्क बफर

From Vigyanwiki
इस हार्ड डिस्क ड्राइव पर, कंट्रोलर बोर्ड में डिस्क बफर के लिए उपयोग किया जाने वाला रैम इंटीग्रेटेड सर्किट होता है।
16 एमबी बफर के साथ 500 जीबी पश्चिमी डिजिटल हार्ड डिस्क ड्राइव

कंप्यूटर स्टोरेज में, डिस्क बफर (जिसे प्रायः डिस्क कैश या कैश बफर, अस्पष्ट रूप से कहा जाता है) हार्ड डिस्क ड्राइव (एचडीडी) या सॉलिड स्टेट ड्राइव (एसएसडी) में एम्बेडेड मेमोरी होती है जो कंप्यूटर के अन्य हिस्से और भौतिक हार्ड डिस्क प्लैटर या फ्लैश मेमोरी के मध्य बफर के रूप में कार्य करती है।[1] आधुनिक हार्ड डिस्क ड्राइव में 8 से 256 मेगाबाइट तक ऐसी मेमोरी होती है, जबकि सॉलिड स्टेट ड्राइव में 4 जीबी तक कैश मेमोरी होती है।[2] 1980 के दशक के बाद से, लगभग सभी डिस्क सूक्ष्म नियंत्रक और,आनुक्रमिक एटीए, एससीएसआई या तन्तु प्रणाली अंतरापृष्ठ विनिर्देश के साथ आते हैं। ड्राइव परिपथ सामान्यतः थोड़ी सी मेमोरी रखती है, जो डिस्क प्लेटर्स से आने वाले और जाने वाले डेटा को स्टोर करने के उपयोग में लायी जाती है।

डिस्क बफर भौतिक रूप से पेज कैश से अलग होता है और कंप्यूटर के मुख्य मेमोरी में संचित ऑपरेटिंग सिस्टम द्वारा सामान्यतः रखे जाने वाले पेज कैश से भिन्न तरीके से उपयोग किया जाता है। हार्ड डिस्क ड्राइव में सूक्ष्म नियंत्रक द्वारा डिस्क बफर को नियंत्रित किया जाता है, जबकि पेज कैश कंप्यूटर द्वारा नियंत्रित किया जाता है जिससे वह डिस्क से जुड़ा होता है। डिस्क बफर सामान्यतः बहुत छोटा होता है, 8 मेगाबाइट से 4 जीबी तक का, और पेज कैश सामान्यतः अपयोगित मेमोरी होता है। जबकि पेज कैश में डेटा कई बार पुनः प्रयोग किया जाता है, और डिस्क बफर में डेटा पुनः उपयोग नहीं किया जाता है। इस मानदंड के अनुसार, डिस्क कैश और कैश बफर शब्द गलत हैं; एम्बेडेड नियंत्रक की मेमोरी को उचित रूप से डिस्क बफर कहा जाना चाहिए।

ध्यान दें कि डिस्क सरणी नियंत्रक, डिस्क नियंत्रको के विपरीत, लगभग 0.5–8  जीबी की सामान्य कैश मेमोरी होती है।

उपयोग

रीड-फॉरवर्ड/रीड-बैक

जब एक डिस्क नियंत्रक भौतिक रीड को निष्पादित करता है, तो प्रेरक रीड/राइट हेड को सही सिलेंडर के पास ले जाता है। कुछ ठहराव के बाद रीड हेड को ठीक से सेट करने के उपरांत रीड हेड ट्रैक डेटा को लेना प्रारंभ कर देता है और पुनः उसे प्रतीक्षा करना होता है जब तक प्लेटर के घूमने से अनुरोधित डेटा उपलब्ध नहीं हो जाता।

इस प्रतीक्षा के समय अनुरोध से पहले पढ़ी गई डेटा अनुरोधित नहीं होती है लेकिन मुक्त होती है, इसलिए यह डिस्क बफर में सहेजा जाता है जिससे यदि बाद में इसे अनुरोध किया जाए तो उपलब्ध हो सके।

उसी तरह, डेटा मुक्त में पढ़ा जा सकता है जो अनुरोधित डेटा के पीछे होता है यदि हेड ट्रैक पर रह सकता है क्योंकि कोई अन्य इसी तरह, यदि हेड ट्रैक पर रह सकता है तो अनुरोध किए गए डेटा के पीछे डेटा को मुक्त में पढ़ा जा सकता है क्योंकि निष्पादित करने के लिए कोई अन्य रीड नहीं होता है या अगला प्रवर्तक बाद में प्रारंभ हो सकता है और अभी भी समय से पहले पूरा हो सकता है।[3]यदि कई अनुरोधित रीड एक ही ट्रैक पर हैं तो उन दोनों के मध्य के अधिकांश अनुरोधित डेटा आगे और पीछे दोनों ही पढ़ा जा सकता है।

गति मिलान

कंप्यूटर के लिए डिस्क के I/O इंटरफ़ेस की गति लगभग कभी भी उस गति से मेल नहीं खाती जिस पर बिट्स को हार्ड डिस्क प्लैटर में और उससे स्थानांतरित किया जाता है। डिस्क बफ़र का उपयोग किया जाता है ताकि I/O इंटरफ़ेस और डिस्क रीड/राइट हेड दोनों पूर्ण गति से काम कर सकें।कंप्यूटर से डिस्क के I/O इंटरफ़ेस की गति लगभग कभी-कभी हार्ड डिस्क प्लैट से बिट्स के स्थानांतरण की गति से मेल नहीं खाती है। डिस्क बफर का उपयोग इसलिए किया जाता है ताकि I/O अंतरापृष्ठ विनिर्देश और डिस्क रीड/राइट वाले हेड दोनों पूरी गति से काम कर सकें।

त्वरण लिखें

डिस्क में समाहित सूक्ष्म नियंत्रक डिस्क डेटा लिखने से पहले ही मुख्य कंप्यूटर को संकेत दे सकता है कि डिस्क लिखना पूर्ण हो गया है। यह संकेत मुख्य कंप्यूटर को इस बात की अनुमति देता है कि वह डेटा लिखने के बाद भी काम जारी रख सकता है। यह कुछ हद तक खतरनाक हो सकता है, क्योंकि यदि डेटा को चुंबकीय मीडिया में स्थायी रूप से फिक्स करने से पहले विद्युत की आपूर्ति कट जाती है, तो डिस्क बफर से डेटा खो जाएगा और डिस्क पर फ़ाइल सिस्टम असंगत अवस्था में रह सकता है।

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

दूसरे विकल्प के रूप में, डेटा की अखंडता लिखने के प्रदर्शन से अधिक महत्वपूर्ण माना जाता हो, तो कैशिंग सीधे बंद की जा सकती है। एक और विकल्प है कि डेटा को एक सावधानीपूर्वक प्रबंधित क्रम में डिस्क में भेजा जाए और सही जगहों पर "कैश फ्लश" आदेश जारी किए जाएं, जिसे सामान्यतः लिखने के बैरियर के कार्यान्वयन के रूप में जाना जाता है।

आदेश कतार

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

एनसीक्यू सामान्यतः सक्षम लेखन बफरिंग के संयोजन में प्रयोग किया जाता है। यदि एक रीड / राइट एफपीडीएमए आदेश के साथ फोर्स यूनिट एक्सेस (एफयूए) बिट 0 पर सेट और सक्षम लेखन बफर के साथ, तो ऑपरेटिंग सिस्टम डेटा को वास्तविक रूप से मीडिया में लिखने से पहले लिखने के पूर्ण होने को देख सकता है यदि एफयूए बिट 1 पर सेट होता है और सक्षम लेखन बफरिंग होती है, तो डेटा को वास्तविक रूप से मीडिया में लिखने के बाद ही लेखन आदेश लौटता है। होस्ट से कैश नियंत्रण

होस्ट से कैश नियंत्रण

कैश फ्लशिंग

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

फोर्स यूनिट एक्सेस (एफयूए)

फोर्स यूनिट एक्सेस (एफयूए) एक I/O लेखन आदेश विकल्प है जो लिखे गए डेटा को स्थिर संग्रहित स्थान तक पहुंचाने के लिए बल देता है।(एफयूए) लेखन आदेश,के सापेक्ष,डिवाइस में व्रित कैशिंग सक्षम हो या न हो, सीधे मीडिया में डेटा लिखते हैं। एफयूए लेखन आदेश तब तक वापस नहीं आता है जब तक डेटा मीडिया में लिखा नहीं जाता, इसलिए फिर चाहे फ्लश कैश आदेश जारी करने से पहले डिवाइस बंद हो जाए, एफयूए द्वारा पूरा किया गया लेखा गया डेटा स्थाई मीडिया पर होता है। एफयूए एससीएसआई कमांड सेट में आया था, और बाद में एनसीक्यू के साथ साटा द्वारा अपनाया गया था।एफयूए अधिक फाइन-ग्रेन्ड है क्योंकि यह एकल लेखन ऑपरेशन को स्थायी मीडिया पर बल देने की अनुमति देता है और इसलिए डिस्क कैश को पूरी तरह से फ्लश करने वाले कमांडों (जैसे एटीए फ्लश कैश संबंधी आदेश ) से तुलना करने पर कुल द्रव्यमान पर असर कम होता है।,विंडोज (विस्ता और उससे ऊपर) में लेन-देन एनटीएफएस के रूप में एफयूए का समर्थन किया जाता है, लेकिन ऐसे सीएससी या फाइबर चैनल डिस्क के लिए जहां एफयूए का समर्थन सामान्य होता है। यह नहीं जाना जाता कि एफयूए राइट आदेश का समर्थन करने वाला एक साटा ड्राइव वास्तव में आदेश के अनुसार डेटा को डिस्क प्लैटर पर लिखेगा या नहीं। इसलिए, विंडोज 8 और विंडोज सर्वर 2012 कुछ लिखने के बाद डिस्क लिखने कैश को फ्लश करने के लिए आदेश भेजते हैं। लिनक्स कर्नल ने 2007 के आस-पास एनसीक्यू का समर्थन प्राप्त किया था, यद्यपि 2012 में परिक्षण के समय एफयूए के समर्थन के लिए कर्नल में एक सीरीज़ के बदलावों के चलते एफयूए को त्रुटि रूप से अक्षम रखा गया है।


यह भी देखें

संदर्भ

  1. Mark Kyrnin. "What to Look for in a Hard Drive". about.com. Retrieved 2014-12-20. A drive's buffer is an amount of RAM on the drive to store frequently accessed data from the drive.
  2. "Samsung SSD 860 PRO | Samsung V-NAND Consumer SSD | Samsung Semiconductor Global Website". Samsung. Archived from the original on April 6, 2018. Retrieved July 16, 2018. CACHE MEMORY: 4 GB Low Power DDR4 (4,096 GB)
  3. Disks for Data Centers.
  4. Christoph Hellwig; Theodore Ts'o. "Does ext4 send FUA to flush disk cache". spinics.net. Retrieved 2014-03-18.