फ्लैश फाइल सिस्टम: Difference between revisions

From Vigyanwiki
(Created page with "एक फ्लैश फाइल सिस्टम एक फाइल सिस्टम है जिसे कम्प्यूटर फाइल को ...")
 
No edit summary
Line 1: Line 1:
एक फ्लैश [[फाइल सिस्टम]] एक फाइल सिस्टम है जिसे [[ कम्प्यूटर फाइल ]] को [[फ्लैश मेमोरी]]-आधारित स्टोरेज डिवाइस पर स्टोर करने के लिए डिज़ाइन किया गया है। जबकि फ्लैश फाइल सिस्टम सामान्य रूप से फाइल सिस्टम से निकटता से संबंधित हैं, वे फ्लैश मेमोरी की प्रकृति और विशेषताओं के लिए अनुकूलित हैं (जैसे कि लेखन प्रवर्धन से बचने के लिए), और विशेष [[ऑपरेटिंग सिस्टम]] में उपयोग के लिए।
एक फ्लैश [[फाइल सिस्टम|संचिका तंत्र]] एक संचिका तंत्र है जिसे [[ कम्प्यूटर फाइल |कम्प्यूटर संचिका]] को [[फ्लैश मेमोरी]]-आधारित संचय उपकरण पर संग्रह करने के लिए डिज़ाइन किया गया है। जबकि फ्लैश संचिका तंत्र सामान्य रूप से संचिका तंत्र से निकटता से संबंधित हैं, वे फ्लैश मेमोरी की प्रकृति (जैसे कि लेखन प्रवर्धन से बचने के लिए) और विशेषताओं के लिए और विशेष [[ऑपरेटिंग सिस्टम|संचालन तंत्र]] में उपयोग के लिए अनुकूलित हैं ।


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


* इरेजिंग ब्लॉक्स: फ्लैश मेमोरी ब्लॉक्स को लिखे जाने से पहले स्पष्ट रूप से मिटाना होगा। ब्लॉक को मिटाने में लगने वाला समय महत्वपूर्ण हो सकता है, इस प्रकार डिवाइस के निष्क्रिय होने पर अप्रयुक्त ब्लॉक को मिटाना फायदेमंद होता है।
* निर्लेखन खंडक: फ्लैश मेमोरी खंडक को लिखे जाने से पहले स्पष्ट रूप से विलेखन करना होगा। खंडक को विलेखन करने में लगने वाला समय महत्वपूर्ण हो सकता है, इस प्रकार युक्ति के निष्क्रिय होने पर अप्रयुक्त खंडक को विलेखन करना लाभदायक होता है।
* [[रैंडम एक्सेस]]: सामान्य-उद्देश्य फ़ाइल सिस्टम [[डिस्क की तलाश]] खोज से बचने के लिए जब भी संभव हो, उच्च लागत के कारण अनुकूलित किया जाता है। फ्लैश मेमोरी डिवाइस नो सीक लेटेंसी लगाते हैं।
* [[रैंडम एक्सेस|यादृच्छिक अभिगम]]: सामान्य-उद्देश्य संचिका तंत्र [[डिस्क की तलाश]] खोज से बचने के लिए जब भी संभव हो, उच्च लागत के कारण अनुकूलित किया जाता है। फ्लैश मेमोरी युक्ति कोई खोज विलंबता नहीं लगाते हैं।
* [[समतलन पुराना होना]]: फ्लैश मेमोरी डिवाइस खराब हो जाते हैं जब एक ही ब्लॉक को बार-बार ओवरराइट किया जाता है; फ़्लैश फ़ाइल सिस्टम को लिखने को समान रूप से फैलाने के लिए डिज़ाइन किया गया है।
* [[समतलन पुराना होना|परिघर्षण समतलन]]: फ्लैश मेमोरी युक्ति निकृष्ट हो जाते हैं जब एक ही खंडक को बार-बार ओवरराइट किया जाता है; फ़्लैश संचिका तंत्र को लिखने को समान रूप से फैलाने के लिए डिज़ाइन किया गया है।


[[लॉग-संरचित फाइल सिस्टम]] में फ्लैश फाइल सिस्टम के लिए सभी वांछनीय गुण होते हैं।<ref>{{cite web|url=https://lwn.net/Articles/428584/|title=लिनक्स को सस्ते फ्लैश ड्राइव के साथ अनुकूलित करना|author=Arnd Bergmann|date=2011-02-18|publisher=[[LWN.net]]|access-date=2013-01-26}}</ref> ऐसे फ़ाइल सिस्टम में [[JFFS2]] और [[YAFFS]] शामिल हैं।
[[लॉग-संरचित फाइल सिस्टम|लॉग-संरचित संचिका तंत्र]] में फ्लैश संचिका तंत्र के लिए सभी वांछनीय गुण होते हैं।<ref>{{cite web|url=https://lwn.net/Articles/428584/|title=लिनक्स को सस्ते फ्लैश ड्राइव के साथ अनुकूलित करना|author=Arnd Bergmann|date=2011-02-18|publisher=[[LWN.net]]|access-date=2013-01-26}}</ref> ऐसे संचिका तंत्र में [[JFFS2|जेएफएफएस2]] और [[YAFFS|वाईएएफएफएस]] सम्मिलित हैं।


फ्लैश मेमोरी की विशेष विशेषताओं के कारण, इसका उपयोग या तो [[ फ्लैश मेमोरी नियंत्रक ]] के साथ वियर लेवलिंग और [[ त्रुटि सुधार ]] या विशेष रूप से डिजाइन की गई फ्लैश फाइल सिस्टम के लिए किया जाता है, जो मीडिया पर लिखता है और NAND फ्लैश ब्लॉक के लंबे समय तक मिटाने से निपटता है। . फ्लैश फाइल सिस्टम के पीछे मूल अवधारणा है: जब फ्लैश स्टोर को अपडेट किया जाना है, तो फाइल सिस्टम बदले हुए डेटा की एक नई कॉपी को एक नए ब्लॉक में लिख देगा, फाइल पॉइंटर्स को रीमैप करेगा, फिर पुराने ब्लॉक को बाद में मिटा देगा। समय।
फ्लैश मेमोरी की विशेष विशेषताओं के कारण, इसका उपयोग या तो [[ फ्लैश मेमोरी नियंत्रक |फ्लैश मेमोरी नियंत्रक]] के साथ परिघर्षण समतलन और [[ त्रुटि सुधार |त्रुटि सुधार]] या विशेष रूप से डिजाइन की गई फ्लैश संचिका तंत्र के लिए किया जाता है, जो मीडिया पर लिखता है और NAND फ्लैश खंडक के लंबे समय तक विलेखन करने से निपटता है। फ्लैश संचिका तंत्र के पीछे मूल अवधारणा है: जब फ्लैश संग्रह को अद्यतन किया जाना है, तो संचिका तंत्र बदले हुए डेटा की एक नवीन प्रति को एक नवीन खंडक में लिख देगा, संचिका संकेत को पुनः मानचित्र करेगा, फिर पूर्व खंडक को बाद में विलेखन कर देगा जब उसके निकट समय होगा।


व्यवहार में, फ्लैश फाइल सिस्टम का उपयोग केवल [[मेमोरी टेक्नोलॉजी डिवाइस]]ेस (एमटीडी) के लिए किया जाता है, जो एम्बेडेड फ्लैश मेमोरी होती है जिसमें नियंत्रक नहीं होता है। हटाने योग्य फ्लैश [[मेमोरी कार्ड]] और [[ उ स बी फ्लैश ड्राइव ]] में समर्पित एल्गोरिदम के साथ एमटीडी को प्रबंधित करने के लिए अंतर्निहित नियंत्रक हैं,<ref>{{Cite web |url=http://www.phison.com/English/ProductView.asp?ID=115&SortID=6 |title=Phison's USBkey controller PS2251-63 |access-date=2011-05-26 |archive-url=https://web.archive.org/web/20110728121112/http://www.phison.com/English/ProductView.asp?ID=115&SortID=6 |archive-date=2011-07-28 |url-status=dead }}</ref><ref>[https://code.google.com/p/opennfm/ OpenNFM: An open source NAND FTL for SSD and embedded storage module]</ref> जैसे वियर लेवलिंग, खराब ब्लॉक रिकवरी, पावर लॉस रिकवरी, कचरा संग्रह और त्रुटि सुधार, इसलिए फ्लैश फाइल सिस्टम के उपयोग से सीमित लाभ होता है।
व्यवहार में, फ्लैश संचिका तंत्र का उपयोग मात्र [[मेमोरी टेक्नोलॉजी डिवाइस|मेमोरी तकनीक युक्ति]] (एमटीडी) के लिए किया जाता है, जो अंतःस्थापित फ्लैश मेमोरी होती है जिसमें नियंत्रक नहीं होता है। अपनेय फ्लैश [[मेमोरी कार्ड]] और [[ उ स बी फ्लैश ड्राइव |यूएसबी फ्लैश ड्राइव]] में समर्पित एल्गोरिदम के साथ एमटीडी को प्रबंधित करने के लिए अंतर्निहित नियंत्रक हैं,<ref>{{Cite web |url=http://www.phison.com/English/ProductView.asp?ID=115&SortID=6 |title=Phison's USBkey controller PS2251-63 |access-date=2011-05-26 |archive-url=https://web.archive.org/web/20110728121112/http://www.phison.com/English/ProductView.asp?ID=115&SortID=6 |archive-date=2011-07-28 |url-status=dead }}</ref><ref>[https://code.google.com/p/opennfm/ OpenNFM: An open source NAND FTL for SSD and embedded storage module]</ref> जैसे परिघर्षण समतलन, निकृष्ट खंडक पुनः प्राप्ति, विद्युत् हानि पुनः प्राप्ति, कचरा संग्रहण और त्रुटि सुधार, इसलिए फ्लैश संचिका तंत्र के उपयोग से सीमित लाभ होता है।


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


== उत्पत्ति ==
== उत्पत्ति ==
सबसे पहली फ्लैश फाइल सिस्टम, स्वतंत्र रूप से लिखने योग्य डिस्क के रूप में फ्लैश की एक सरणी का प्रबंधन, इजरायल के [[ M- सिस्टम्स ]]्स द्वारा ट्रूएफएफएस था, जिसे जुलाई 1992 में कैलिफोर्निया के सांता क्लारा में पीसी-कार्ड एक्सपो में एक सॉफ्टवेयर उत्पाद के रूप में प्रस्तुत किया गया और 1993 में पेटेंट कराया गया।<ref name="autogenerated1">{{cite patent |country=US |number=5404485 |status=patent |title=Flash file system, Amir Ban}}</ref>
सबसे पहली फ्लैश संचिका तंत्र, स्वतंत्र रूप से लिखने योग्य डिस्क के रूप में फ्लैश की एक सरणी का प्रबंधन, इजरायल के [[ M- सिस्टम्स |M- तंत्र]] द्वारा ट्रूएफएफएस था, जिसे जुलाई 1992 में कैलिफोर्निया के सांता क्लारा में पीसी-कार्ड एक्सपो में एक सॉफ्टवेयर उत्पाद के रूप में प्रस्तुत किया गया और 1993 में पेटेंट कराया गया।<ref name="autogenerated1">{{cite patent |country=US |number=5404485 |status=patent |title=Flash file system, Amir Ban}}</ref>
[[MS-DOS]] के साथ उपयोग के लिए, शरद ऋतु 1992 में जारी सबसे शुरुआती फ्लैश फ़ाइल सिस्टमों में से एक [[Microsoft]] का FFS2 था।<ref>[http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&p=1&u=%2Fnetahtml%2FPTO%2Fsearch-bool.html&r=1&f=G&l=50&co1=AND&d=PTXT&s1=5392427.PN.&OS=PN/5392427&RS=PN/5392427 Microsoft FFS2 patent]</ref> FFS2 से पहले FFS नामक एक पुराने उत्पाद से पहले था, जो हालांकि एक फ्लैश फ़ाइल सिस्टम होने से कम हो गया था, एक स्वतंत्र रूप से लिखने योग्य डिस्क के बजाय एक फ्लैश ऐरे को लिखने के रूप में कई (WORM) स्थान को पढ़ने के लिए प्रबंधित करता है।


1994 के आसपास, [[ PCMCIA ]], एक उद्योग समूह, ने एम-सिस्टम्स के ट्रूएफएफएस के डिजाइन के आधार पर फ्लैश ट्रांसलेशन लेयर (एफटीएल) विनिर्देश को मंजूरी दी। विनिर्देश M-Systems और [[Identiv]] द्वारा लिखित और संयुक्त रूप से प्रस्तावित किया गया था, जिन्होंने FTL का पहला कार्य कार्यान्वयन भी प्रदान किया था। इंटेल द्वारा समर्थित,<ref>{{cite web
[[MS-DOS|एमएस-डॉस]] के साथ उपयोग के लिए, शरद ऋतु 1992 में जारी सबसे प्रारंभिक फ्लैश संचिका तंत्रों में से एक [[Microsoft|माइक्रोसॉफ्ट]] का एफएफएस2 था।<ref>[http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&p=1&u=%2Fnetahtml%2FPTO%2Fsearch-bool.html&r=1&f=G&l=50&co1=AND&d=PTXT&s1=5392427.PN.&OS=PN/5392427&RS=PN/5392427 Microsoft FFS2 patent]</ref> एफएफएस2 से पहले एफएफएस नामक एक पूर्व उत्पाद से पहले था, जो यद्यपि एक फ्लैश संचिका तंत्र होने से कम हो गया था, एक स्वतंत्र रूप से लिखने योग्य डिस्क के अतिरिक्त एक फ्लैश सरणी को लिखने के रूप में कई (डब्ल्यूओआरएम) स्थान को पढ़ने के लिए प्रबंधित करता है।
 
1994 के आसनिकट, [[ PCMCIA |PCMCIA]] , एक उद्योग समूह, ने एम-तंत्र्स के ट्रूएफएफएस के डिजाइन के आधार पर फ्लैश ट्रांसलेशन लेयर (एफटीएल) विनिर्देश को मंजूरी दी। विनिर्देश M-Systems और [[Identiv]] द्वारा लिखित और संयुक्त रूप से प्रस्तावित किया गया था, जिन्होंने FTL का पहला कार्य कार्यान्वयन भी प्रदान किया था। इंटेल द्वारा समर्थित,<ref>{{cite web
  | url = http://staff.ustc.edu.cn/~jpq/paper/flash/2006-Intel%20TR-Understanding%20the%20flash%20translation%20layer%20%28FTL%29%20specification.pdf
  | url = http://staff.ustc.edu.cn/~jpq/paper/flash/2006-Intel%20TR-Understanding%20the%20flash%20translation%20layer%20%28FTL%29%20specification.pdf
  | archive-url = https://web.archive.org/web/20140719185353/http://staff.ustc.edu.cn/~jpq/paper/flash/2006-Intel%20TR-Understanding%20the%20flash%20translation%20layer%20%28FTL%29%20specification.pdf
  | archive-url = https://web.archive.org/web/20140719185353/http://staff.ustc.edu.cn/~jpq/paper/flash/2006-Intel%20TR-Understanding%20the%20flash%20translation%20layer%20%28FTL%29%20specification.pdf
  | title = Understanding the Flash Translation Layer (FTL) Specification
  | title = Understanding the Flash Translation Layer (FTL) Specification
  | date = December 1998 | access-date = 2015-07-27 | archive-date = 2014-07-19
  | date = December 1998 | access-date = 2015-07-27 | archive-date = 2014-07-19
  | publisher = [[Intel]] }}</ref> एफटीएल गैर-पीसीएमसीआईए मीडिया में भी एक लोकप्रिय फ्लैश फाइल सिस्टम डिजाइन बन गया।
  | publisher = [[Intel]] }}</ref> एफटीएल गैर-पीसीएमसीआईए मीडिया में भी एक लोकप्रिय फ्लैश संचिका तंत्र डिजाइन बन गया।


== [[लिनक्स]] फ्लैश फाइलसिस्टम ==
== [[लिनक्स]] फ्लैश संचिकातंत्र ==
; [[जेएफएफएस]], जेएफएफएस2 और वाईएएफएफएस
; [[जेएफएफएस]], जेएफएफएस2 और वाईएएफएफएस
: जेएफएफएस लिनक्स के लिए पहला फ्लैश-विशिष्ट फाइल सिस्टम था, लेकिन मूल रूप से एनओआर फ्लैश के लिए विकसित जेएफएफएस2 ने इसका स्थान ले लिया। फिर YAFFS को 2002 में रिलीज़ किया गया, विशेष रूप से NAND फ्लैश के साथ काम करते हुए, और JFFS2 को NAND फ्लैश को भी सपोर्ट करने के लिए अपडेट किया गया था।
: जेएफएफएस लिनक्स के लिए पहला फ्लैश-विशिष्ट संचिका तंत्र था, लेकिन मूल रूप से एनओआर फ्लैश के लिए विकसित जेएफएफएस2 ने इसका स्थान ले लिया। फिर वाईएएफएफएस को 2002 में रिलीज़ किया गया, विशेष रूप से NAND फ्लैश के साथ काम करते हुए, और जेएफएफएस2 को NAND फ्लैश को भी सपोर्ट करने के लिए अद्यतन किया गया था।


; [[यूबीआईएफएस]]
; [[यूबीआईएफएस]]
: Linux 2.6.22 के बाद से UBIFS का विलय कर दिया गया है<ref>{{cite web|url=https://lwn.net/Articles/276025/|title=यूबीआईएफएस|publisher=LWN|author=Jonathan Corbet|date=2008-04-02}}</ref> 2008 में। UBIFS को इसके प्रारंभिक मर्ज से सक्रिय रूप से विकसित किया गया है।<ref>{{cite web|url=https://lwn.net/Articles/517422/|title=UBI: Fastmap request for inclusion|publisher=LKML|author=Richard Weinberger|date=2012-09-24}}</ref> UBIFS ने JFFS2 और MTD ड्राइवरों के साथ [http://www.linux-mtd.infradead.org/doc/ubifs.html प्रलेखन] infradead.org पर होस्ट किया है। कुछ प्रारंभिक तुलना F2FS की तुलना में तेजी से संपीड़न के साथ UBIFS दिखाती है।<ref>{{cite web|url=https://lwn.net/Articles/528617/|title=JFFS2, UBIFS, and the growth of flash storage|publisher=LWN|author=Neil Brown|date=2012-12-11}}</ref>
: Linux 2.6.22 के बाद से UBIFS का विलय कर दिया गया है<ref>{{cite web|url=https://lwn.net/Articles/276025/|title=यूबीआईएफएस|publisher=LWN|author=Jonathan Corbet|date=2008-04-02}}</ref> 2008 में। UBIFS को इसके प्रारंभिक मर्ज से सक्रिय रूप से विकसित किया गया है।<ref>{{cite web|url=https://lwn.net/Articles/517422/|title=UBI: Fastmap request for inclusion|publisher=LKML|author=Richard Weinberger|date=2012-09-24}}</ref> UBIFS ने जेएफएफएस2 और MTD ड्राइवरों के साथ [http://www.linux-mtd.infradead.org/doc/ubifs.html प्रलेखन] infradead.org पर होस्ट किया है। कुछ प्रारंभिक तुलना F2FS की तुलना में तेजी से संपीड़न के साथ UBIFS दिखाती है।<ref>{{cite web|url=https://lwn.net/Articles/528617/|title=JFFS2, UBIFS, and the growth of flash storage|publisher=LWN|author=Neil Brown|date=2012-12-11}}</ref>
; [[लॉगएफएस]]
; [[लॉगएफएस]]
: LogFS, एक अन्य Linux फ्लैश-विशिष्ट फाइल सिस्टम है {{As of|2010|alt=currently}} JFFS2 की मापनीयता संबंधी समस्याओं का समाधान करने के लिए विकसित किया जा रहा है।
: LogFS, एक अन्य Linux फ्लैश-विशिष्ट संचिका तंत्र है {{As of|2010|alt=currently}} जेएफएफएस2 की मापनीयता संबंधी समस्याओं का समाधान करने के लिए विकसित किया जा रहा है।


; [[F2FS]]
; [[F2FS]]
: F2FS (फ्लैश-फ्रेंडली फाइल सिस्टम) को [[लिनक्स कर्नेल]] 3.8 में जोड़ा गया था।<ref>{{cite web|url=http://www.h-online.com/open/features/Kernel-Log-Coming-in-3-8-Part-1-Filesystems-and-storage-1788524.html|title=फाइलसिस्टम और स्टोरेज|work=Kernel Log - Coming in 3.8|publisher=[[The H]]<!--  intentional wikilink to redirect -->|date=2013-01-21|access-date=2013-01-23}}</ref> अपरिष्कृत फ़्लैश उपकरणों से सीधे बात करने पर लक्षित होने के बजाय, F2FS को फ्लैश-आधारित भंडारण उपकरणों पर उपयोग करने के लिए डिज़ाइन किया गया है जिसमें पहले से ही एक फ्लैश अनुवाद परत शामिल है, जैसे [[एसडी कार्ड]]।<ref>{{cite web
: F2FS (फ्लैश-फ्रेंडली संचिका तंत्र) को [[लिनक्स कर्नेल]] 3.8 में जोड़ा गया था।<ref>{{cite web|url=http://www.h-online.com/open/features/Kernel-Log-Coming-in-3-8-Part-1-Filesystems-and-storage-1788524.html|title=फाइलसिस्टम और स्टोरेज|work=Kernel Log - Coming in 3.8|publisher=[[The H]]<!--  intentional wikilink to redirect -->|date=2013-01-21|access-date=2013-01-23}}</ref> अपरिष्कृत फ़्लैश उपकरणों से सीधे बात करने पर लक्षित होने के अतिरिक्त, F2FS को फ्लैश-आधारित भंडारण उपकरणों पर उपयोग करने के लिए डिज़ाइन किया गया है जिसमें पहले से ही एक फ्लैश अनुवाद परत सम्मिलित है, जैसे [[एसडी कार्ड]]।<ref>{{cite web
  | url = https://lwn.net/Articles/518988/
  | url = https://lwn.net/Articles/518988/
  | title = An f2fs teardown
  | title = An f2fs teardown
Line 45: Line 46:




== यूनियन फाइलसिस्टम ==
== यूनियन संचिकातंत्र ==
{{Unreferenced section|date=December 2015}}
Overlayfs, Unionfs, और aufs यूनियन संचिका तंत्र हैं, जो कई संचिका तंत्र को संयोजित करने की अनुमति देते हैं और उपयोगकर्ता को एक ट्री के रूप में प्रस्तुत करते हैं। यह तंत्र डिज़ाइनर को संचालन तंत्र के उन हिस्सों को रखने की अनुमति देता है जो सामान्य पढ़ने-लिखने वाले क्षेत्रों में अलग-अलग मीडिया पर मात्र-पढ़ने के लिए होते हैं। [[OpenWrt]] आमतौर पर FTL के बिना कच्चे फ्लैश चिप पर स्थापित होता है। यह जेएफएफएस2 के साथ कंप्रेस्ड रीड-ओनली [[SquashFS]] को संयोजित करने के लिए overlayfs का उपयोग करता है।
 
Overlayfs, Unionfs, और aufs यूनियन फाइल सिस्टम हैं, जो कई फाइल सिस्टम को संयोजित करने की अनुमति देते हैं और उपयोगकर्ता को एक ट्री के रूप में प्रस्तुत करते हैं। यह सिस्टम डिज़ाइनर को ऑपरेटिंग सिस्टम के उन हिस्सों को रखने की अनुमति देता है जो सामान्य पढ़ने-लिखने वाले क्षेत्रों में अलग-अलग मीडिया पर केवल-पढ़ने के लिए होते हैं। [[OpenWrt]] आमतौर पर FTL के बिना कच्चे फ्लैश चिप्स पर स्थापित होता है। यह JFFS2 के साथ कंप्रेस्ड रीड-ओनली [[SquashFS]] को संयोजित करने के लिए overlayfs का उपयोग करता है।


== {{Anchor|FTL}} अनुवाद परतें ==
== अनुवाद परतें ==
{{Main articles|Flash translation layer}}
{{Main articles|Flash translation layer}}


== यह भी देखें ==
== यह भी देखें ==
* List_of_file_systems#File_systems_optimized_for_flash_memory.2C_solid_state_media
* List_of_file_systems#File_systems_optimized_for_flash_memory.2C_solid_state_media
* समतलन पुराना होना
* परिघर्षण समतलन
* प्रवर्धन लिखें
* प्रवर्धन लिखें



Revision as of 17:57, 13 June 2023

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

अवलोकन

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

  • निर्लेखन खंडक: फ्लैश मेमोरी खंडक को लिखे जाने से पहले स्पष्ट रूप से विलेखन करना होगा। खंडक को विलेखन करने में लगने वाला समय महत्वपूर्ण हो सकता है, इस प्रकार युक्ति के निष्क्रिय होने पर अप्रयुक्त खंडक को विलेखन करना लाभदायक होता है।
  • यादृच्छिक अभिगम: सामान्य-उद्देश्य संचिका तंत्र डिस्क की तलाश खोज से बचने के लिए जब भी संभव हो, उच्च लागत के कारण अनुकूलित किया जाता है। फ्लैश मेमोरी युक्ति कोई खोज विलंबता नहीं लगाते हैं।
  • परिघर्षण समतलन: फ्लैश मेमोरी युक्ति निकृष्ट हो जाते हैं जब एक ही खंडक को बार-बार ओवरराइट किया जाता है; फ़्लैश संचिका तंत्र को लिखने को समान रूप से फैलाने के लिए डिज़ाइन किया गया है।

लॉग-संरचित संचिका तंत्र में फ्लैश संचिका तंत्र के लिए सभी वांछनीय गुण होते हैं।[1] ऐसे संचिका तंत्र में जेएफएफएस2 और वाईएएफएफएस सम्मिलित हैं।

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

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

जैसे-जैसे मोबाइल उपकरणों की संख्या बढ़ रही है, फ्लैश-आधारित मेमोरी युक्ति अधिक प्रचलित होते जा रहे हैं, प्रति मेमोरी आकार की लागत घटती जा रही है और फ्लैश मेमोरी चिप की क्षमता बढ़ती जा रही है।

उत्पत्ति

सबसे पहली फ्लैश संचिका तंत्र, स्वतंत्र रूप से लिखने योग्य डिस्क के रूप में फ्लैश की एक सरणी का प्रबंधन, इजरायल के M- तंत्र द्वारा ट्रूएफएफएस था, जिसे जुलाई 1992 में कैलिफोर्निया के सांता क्लारा में पीसी-कार्ड एक्सपो में एक सॉफ्टवेयर उत्पाद के रूप में प्रस्तुत किया गया और 1993 में पेटेंट कराया गया।[4]

एमएस-डॉस के साथ उपयोग के लिए, शरद ऋतु 1992 में जारी सबसे प्रारंभिक फ्लैश संचिका तंत्रों में से एक माइक्रोसॉफ्ट का एफएफएस2 था।[5] एफएफएस2 से पहले एफएफएस नामक एक पूर्व उत्पाद से पहले था, जो यद्यपि एक फ्लैश संचिका तंत्र होने से कम हो गया था, एक स्वतंत्र रूप से लिखने योग्य डिस्क के अतिरिक्त एक फ्लैश सरणी को लिखने के रूप में कई (डब्ल्यूओआरएम) स्थान को पढ़ने के लिए प्रबंधित करता है।

1994 के आसनिकट, PCMCIA , एक उद्योग समूह, ने एम-तंत्र्स के ट्रूएफएफएस के डिजाइन के आधार पर फ्लैश ट्रांसलेशन लेयर (एफटीएल) विनिर्देश को मंजूरी दी। विनिर्देश M-Systems और Identiv द्वारा लिखित और संयुक्त रूप से प्रस्तावित किया गया था, जिन्होंने FTL का पहला कार्य कार्यान्वयन भी प्रदान किया था। इंटेल द्वारा समर्थित,[6] एफटीएल गैर-पीसीएमसीआईए मीडिया में भी एक लोकप्रिय फ्लैश संचिका तंत्र डिजाइन बन गया।

लिनक्स फ्लैश संचिकातंत्र

जेएफएफएस, जेएफएफएस2 और वाईएएफएफएस
जेएफएफएस लिनक्स के लिए पहला फ्लैश-विशिष्ट संचिका तंत्र था, लेकिन मूल रूप से एनओआर फ्लैश के लिए विकसित जेएफएफएस2 ने इसका स्थान ले लिया। फिर वाईएएफएफएस को 2002 में रिलीज़ किया गया, विशेष रूप से NAND फ्लैश के साथ काम करते हुए, और जेएफएफएस2 को NAND फ्लैश को भी सपोर्ट करने के लिए अद्यतन किया गया था।
यूबीआईएफएस
Linux 2.6.22 के बाद से UBIFS का विलय कर दिया गया है[7] 2008 में। UBIFS को इसके प्रारंभिक मर्ज से सक्रिय रूप से विकसित किया गया है।[8] UBIFS ने जेएफएफएस2 और MTD ड्राइवरों के साथ प्रलेखन infradead.org पर होस्ट किया है। कुछ प्रारंभिक तुलना F2FS की तुलना में तेजी से संपीड़न के साथ UBIFS दिखाती है।[9]
लॉगएफएस
LogFS, एक अन्य Linux फ्लैश-विशिष्ट संचिका तंत्र है currently जेएफएफएस2 की मापनीयता संबंधी समस्याओं का समाधान करने के लिए विकसित किया जा रहा है।
F2FS
F2FS (फ्लैश-फ्रेंडली संचिका तंत्र) को लिनक्स कर्नेल 3.8 में जोड़ा गया था।[10] अपरिष्कृत फ़्लैश उपकरणों से सीधे बात करने पर लक्षित होने के अतिरिक्त, F2FS को फ्लैश-आधारित भंडारण उपकरणों पर उपयोग करने के लिए डिज़ाइन किया गया है जिसमें पहले से ही एक फ्लैश अनुवाद परत सम्मिलित है, जैसे एसडी कार्ड[11]


यूनियन संचिकातंत्र

Overlayfs, Unionfs, और aufs यूनियन संचिका तंत्र हैं, जो कई संचिका तंत्र को संयोजित करने की अनुमति देते हैं और उपयोगकर्ता को एक ट्री के रूप में प्रस्तुत करते हैं। यह तंत्र डिज़ाइनर को संचालन तंत्र के उन हिस्सों को रखने की अनुमति देता है जो सामान्य पढ़ने-लिखने वाले क्षेत्रों में अलग-अलग मीडिया पर मात्र-पढ़ने के लिए होते हैं। OpenWrt आमतौर पर FTL के बिना कच्चे फ्लैश चिप पर स्थापित होता है। यह जेएफएफएस2 के साथ कंप्रेस्ड रीड-ओनली SquashFS को संयोजित करने के लिए overlayfs का उपयोग करता है।

अनुवाद परतें

यह भी देखें

  • List_of_file_systems#File_systems_optimized_for_flash_memory.2C_solid_state_media
  • परिघर्षण समतलन
  • प्रवर्धन लिखें

संदर्भ

  1. Arnd Bergmann (2011-02-18). "लिनक्स को सस्ते फ्लैश ड्राइव के साथ अनुकूलित करना". LWN.net. Retrieved 2013-01-26.
  2. "Phison's USBkey controller PS2251-63". Archived from the original on 2011-07-28. Retrieved 2011-05-26.
  3. OpenNFM: An open source NAND FTL for SSD and embedded storage module
  4. US patent 5404485, "Flash file system, Amir Ban" 
  5. Microsoft FFS2 patent
  6. "Understanding the Flash Translation Layer (FTL) Specification" (PDF). Intel. December 1998. Archived from the original (PDF) on 2014-07-19. Retrieved 2015-07-27.
  7. Jonathan Corbet (2008-04-02). "यूबीआईएफएस". LWN.
  8. Richard Weinberger (2012-09-24). "UBI: Fastmap request for inclusion". LKML.
  9. Neil Brown (2012-12-11). "JFFS2, UBIFS, and the growth of flash storage". LWN.
  10. "फाइलसिस्टम और स्टोरेज". Kernel Log - Coming in 3.8. The H. 2013-01-21. Retrieved 2013-01-23.
  11. Neil Brown (2012-10-10). "An f2fs teardown". LWN.net. Retrieved 2014-04-09.


बाहरी संबंध