एक्सएफएस: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 4: Line 4:


{{Infobox filesystem
{{Infobox filesystem
| name                  = XFS
| name                  = एक्सएफएस
| full_name              = XFS
| full_name              = एक्सएफएस
| developer              = {{Unbulleted list | [[Silicon Graphics]] | [[Red Hat]]}}
| developer              = {{Unbulleted list | [[सिलिकॉन आलेखी]] | [[रेड हैट]]}}
| introduction_os        = [[IRIX]] 5.3
| introduction_os        = [[IRIX]] 5.3
| introduction_date      = {{Start date and age|1994}}
| introduction_date      = {{Start date and age|1994}}
| partition_id          = {{unbulleted list
| partition_id          = {{unbulleted list
| '''[[Master boot record|MBR]]''': 0x83: Linux filesystem
| '''[[Master boot record|एमबीआर]]''': 0x83: लिनक्स
| '''[[GUID Partition Table|GPT]]''': 0FC63DAF-8483-4772-8E79-3D69D8477DE4: Linux filesystem<ref>{{Cite web|url=https://wiki.archlinux.org/index.php/GPT_fdisk|title = GPT fdisk - ArchWiki}}</ref>
संचिका प्रणाली
| '''[[GUID Partition Table|जीपीटी]]''': 0एफसी63डीएएफ-8483-4772-8इ79-3डी69डी8477डीइ4: लिनक्स संचिका प्रणाली <ref>{{Cite web|url=https://wiki.archlinux.org/index.php/GPT_fdisk|title = GPT fdisk - ArchWiki}}</ref>
}}
}}
| directory_struct      = [[B+ tree]]s
| directory_struct      = [[बी+ ट्री]]s
| file_struct            = B+ trees
| file_struct            = बी+ ट्री
| bad_blocks_struct      =  
| bad_blocks_struct      =  
| max_filename_size      = 255&nbsp;[[byte]]s
| max_filename_size      = 255&nbsp;[[बाइट]]s
| max_volume_size        = 8&nbsp;[[exbibyte]]s&nbsp;− 1 byte
| max_volume_size        = 8&nbsp;[[एक्सबी बाइट]]s&nbsp;− 1 बाइट
| max_file_size          = 8&nbsp;[[exbibyte]]s&nbsp;− 1 byte
| max_file_size          = 8&nbsp;[[[एक्सबीबाइट]]s&nbsp;− 1 बाइट
| max_files_no          = 2<sup>64</sup><ref>{{cite web
| max_files_no          = 2<sup>64</sup><ref>{{cite web
  | url  = https://www.quora.com/What-is-the-maximum-number-of-inodes-in-Linux-filesystems-I-found-suggestion-that-for-Ext4-it-is-4-billion-files-32-bit-number-Is-it-true-for-XFS-and-or-BtrFS
  | url  = https://www.quora.com/What-is-the-maximum-number-of-inodes-in-Linux-filesystems-I-found-suggestion-that-for-Ext4-it-is-4-billion-files-32-bit-number-Is-it-true-for-XFS-and-or-BtrFS
Line 58: Line 59:
}}
}}


एक्सएफएस एक उच्च-प्रदर्शन [[64-बिट कंप्यूटिंग]] | 64-बिट [[जर्नलिंग फाइल सिस्टम|जर्नलिंग संचिका प्रणाली]] है जिसे 1993 में सिलिकॉन ग्राफिक्स, इंक। सिलिकॉन ग्राफिक्स, इंक (एसजीआई) द्वारा बनाया गया था।<ref>{{cite web |url=http://xfs.org/docs/xfsdocs-xml-dev/XFS_User_Guide/tmp/en-US/html/ch01s02.html |title=xFS: The Extension of EFS - "x" for To-be-Determined (but the Name Stuck) |archive-url=https://web.archive.org/web/20140714224038/http://xfs.org/docs/xfsdocs-xml-dev/XFS_User_Guide/tmp/en-US/html/ch01s02.html |archive-date=2014-07-14 |website=XFS.org}}</ref> यह एसजीआई के आईआरआईएक्स संचालन प्रणाली में इसके संस्करण 5.3 से प्रारंभ होने वाली डिफ़ॉल्ट संचिका प्रणाली थी। एक्सएफएस को 2001 में लिनक्स कर्नेल में पोर्ट किया गया था; जून 2014 तक, एक्सएफएस अधिकांश [[लिनक्स वितरण]]ों द्वारा समर्थित है; [[Red Hat Enterprise Linux|Red Hat Enterprise लिनक्स]] इसे अपने तयशुदा संचिका तंत्र के रूप में प्रयोग करता है.
एक्सएफएस 1993 में सिलिकॉन आलेखी, (एसजीआई) द्वारा बनाया गया एक उच्च-प्रदर्शन 64-बिट [[जर्नलिंग फाइल सिस्टम|यथारूपता संचिका प्रणाली]] है।<ref>{{cite web |url=http://xfs.org/docs/xfsdocs-xml-dev/XFS_User_Guide/tmp/en-US/html/ch01s02.html |title=xFS: The Extension of EFS - "x" for To-be-Determined (but the Name Stuck) |archive-url=https://web.archive.org/web/20140714224038/http://xfs.org/docs/xfsdocs-xml-dev/XFS_User_Guide/tmp/en-US/html/ch01s02.html |archive-date=2014-07-14 |website=XFS.org}}</ref> यह एसजीआई के आईआरआईएक्स संचालन प्रणाली में इसके संस्करण 5.3 से प्रारंभ होने वाली स्वतः निर्धारित संचिका प्रणाली थी। एक्सएफएस को 2001 में लिनक्स कर्नेल में पोर्ट किया गया था; जून 2014 तक, एक्सएफएस अधिकांश [[लिनक्स वितरण|लिनक्स वितरणों]] द्वारा समर्थित है; [[Red Hat Enterprise Linux|रेड हैट उद्यम लिनक्स]] इसे अपने स्वतः निर्धारित संचिका प्रणाली के रूप में प्रयोग करता है।


एक्सएफएस अपने प्रारुप के कारण समानांतर इनपुट/आउटपुट (आई/) संचालन के निष्पादन में उत्कृष्टता प्राप्त करता है, जो [[आवंटन समूह]]ों पर आधारित है (भौतिक वॉल्यूम का एक प्रकार का उपखंड जिसमें एक्सएफएस का उपयोग किया जाता है- एजी को भी छोटा किया जाता है)। इस वजह से, एक्सएफएस कई भौतिक भंडारण उपकरणों को फैलाते समय I/O थ्रेड्स, संचिका प्रणाली बैंडविड्थ, और संचिकाों के आकार और स्वयं संचिका प्रणाली की अत्यधिक मापनीयता को सक्षम करता है। एक्सएफएस [[ मेटा डेटा ]] जर्नलिंग संचिका प्रणाली को नियोजित करके और लेखन बाधाओं का समर्थन करके डेटा की निरंतरता सुनिश्चित करता है। अंतरिक्ष आवंटन [[बी + पेड़]]ों में संग्रहीत डेटा संरचनाओं के साथ [[ हद (फाइल सिस्टम) | हद (संचिका प्रणाली)]] के माध्यम से किया जाता है, संचिका प्रणाली के समग्र प्रदर्शन में सुधार करता है, खासकर जब बड़ी संचिकाों को संभालता है। [[विलंबित आवंटन]] संचिका प्रणाली विखंडन की रोकथाम में सहायता करता है; ऑनलाइन [[defragmentation]] भी समर्थित है। एक्सएफएस की अनूठी विशेषता एक पूर्व-निर्धारित दर पर I/O बैंडविड्थ का पूर्व-आवंटन है; यह कई रीयल-टाइम अनुप्रयोगों के लिए उपयुक्त है। हालाँकि, यह सुविधा केवल [[IRIX]] पर और केवल विशेष हार्डवेयर के साथ ही समर्थित थी।
एक्सएफएस अपने प्रारुप के कारण समानांतर इनपुट/आउटपुट (I/O) संचालन के निष्पादन में उत्कृष्टता प्राप्त करता है, जो [[आवंटन समूह|आवंटन समूहों]] पर आधारित है (भौतिक आयतन  का एक प्रकार का उपखंड जिसमें एक्सएफएस का उपयोग किया जाता है- जिसे एजी के लिए भी छोटा किया जाता है)। इस कारण से, एक्सएफएस कई भौतिक भंडारण उपकरणों को विस्तरित करते समय I/O क्रम, संचिका प्रणाली बैंड विस्तार और संचिकाओं के आकार और स्वयं संचिका प्रणाली की अत्यधिक मापनीयता को सक्षम करता है। एक्सएफएस [[ मेटा डेटा |मेटाडेटा]] यथारूपता और लेखन बाधाओं का समर्थन करके डेटा की निरंतरता सुनिश्चित करता है। स्थान आवंटन [[बी + पेड़|बी + ट्री]] में संग्रहीत डेटा संरचनाओं के माध्यम से किया जाता है, संचिका प्रणाली के समग्र प्रदर्शन में सुधार करता है, विशेष रूप से बड़ी संचिकाओं को नियंत्रित करता है। [[विलंबित आवंटन]] संचिका प्रणाली विखंडन की रोकथाम में सहायता करता है; ऑनलाइन [[defragmentation|एकीकरण]] भी समर्थित है। एक्सएफएस की अद्वितीय विशेषता एक पूर्व-निर्धारित दर पर आई/ओ बैंड विस्तार का पूर्व-आवंटन है; यह कई वास्तविक समय अनुप्रयोगों के लिए उपयुक्त है। हालाँकि, यह सुविधा केवल [[IRIX|आईआरआईएक्स]] पर और केवल विशेष हार्डवेयर के साथ ही समर्थित थी।


== इतिहास ==
== इतिहास ==
[[सिलिकॉन ग्राफिक्स]] ने एक्सएफएस का विकास प्रारंभ किया<ref>{{cite book
[[सिलिकॉन ग्राफिक्स|सिलिकॉन आलेखी]] ने 1993 में एक्सएफएस<ref>{{cite book
  |last1            = Smith
  |last1            = Smith
  |first1          = Roderick W.
  |first1          = Roderick W.
Line 78: Line 79:
  |archive-date    = 2016-08-21
  |archive-date    = 2016-08-21
  |url-status      = live
  |url-status      = live
}}</ref> (X को बाद में भरना था लेकिन कभी नहीं) 1993 में।
}}</ref> (X को बाद में भरा जाना था परन्तु कभी नहीं भरा जाना था) का विकास प्रारंभ किया।


संचिका प्रणाली मई 1999 में [[जीएनयू जनरल पब्लिक लाइसेंस]] (जीपीएल) के तहत जारी किया गया था।<ref>{{cite web | url= https://slashdot.org/story/99/05/20/0243235/sgi-open-sourcing-xfs | title= SGI ओपन-सोर्सिंग XFS| website= [[slashdot.org]] | date= 1999-05-19 | access-date= 2023-04-12 | url-status= live }}</ref> SGI में स्टीव लॉर्ड के नेतृत्व में एक टीम ने इसे लिनक्स में पोर्ट किया,<ref>{{cite web | url= http://olstrans.sourceforge.net/release/OLS2000-xfs/OLS2000-xfs.html | title= XFS को Linux में पोर्ट करना| website= Olstrans.SourceForge.net | date= 2000-07-21 | access-date= 2013-04-29 | archive-url= https://web.archive.org/web/20130225112334/http://olstrans.sourceforge.net/release/OLS2000-xfs/OLS2000-xfs.html | archive-date= 2013-02-25 | url-status= live }}</ref> और लिनक्स वितरण द्वारा पहला समर्थन 2001 में आया। यह समर्थन धीरे-धीरे लगभग सभी लिनक्स वितरणों में उपलब्ध हो गया।{{citation needed|date=March 2016}}
संचिका प्रणाली मई 1999 में [[जीएनयू जनरल पब्लिक लाइसेंस|जीएनयू सामान्य जनता अनुज्ञापत्र]] (GPL) के अंतर्गत जारी किया गया था।<ref>{{cite web | url= https://slashdot.org/story/99/05/20/0243235/sgi-open-sourcing-xfs | title= SGI ओपन-सोर्सिंग XFS| website= [[slashdot.org]] | date= 1999-05-19 | access-date= 2023-04-12 | url-status= live }}</ref> एसजीआई में स्टीव लॉर्ड के नेतृत्व में एक समूह ने इसे लिनक्स में पोर्ट किया<ref>{{cite web | url= http://olstrans.sourceforge.net/release/OLS2000-xfs/OLS2000-xfs.html | title= XFS को Linux में पोर्ट करना| website= Olstrans.SourceForge.net | date= 2000-07-21 | access-date= 2013-04-29 | archive-url= https://web.archive.org/web/20130225112334/http://olstrans.sourceforge.net/release/OLS2000-xfs/OLS2000-xfs.html | archive-date= 2013-02-25 | url-status= live }}</ref> और लिनक्स वितरण द्वारा पहला समर्थन 2001 में आया। यह समर्थन धीरे-धीरे लगभग सभी लिनक्स वितरणों में उपलब्ध हो गया।{{citation needed|date=मार्च 2016}}


लिनक्स कर्नेल में एक्सएफएस के लिए प्रारंभिक समर्थन SGI से [[पैच (कंप्यूटिंग)]] के माध्यम से आया। यह 2.6 श्रृंखला के लिए [[लिनक्स कर्नेल मेनलाइन]] में विलय हो गया, और फरवरी 2004 में अलग से 2.4 श्रृंखला संस्करण 2.4.25 में विलय कर दिया गया,<ref>{{cite web | url= https://www.kernel.org/pub/linux/kernel/v2.4/ChangeLog-2.4.25 | title= Linux kernel 2.4.25 changelog | website= [[kernel.org]] | date= 2004-02-18 | access-date= 2014-08-14 | archive-url= https://web.archive.org/web/20140819083123/https://www.kernel.org/pub/linux/kernel/v2.4/ChangeLog-2.4.25 | archive-date= 2014-08-19 | url-status= live }}</ref> लिनक्स प्रणाली पर एक्सएफएस को लगभग सार्वभौमिक रूप से उपलब्ध कराना।<ref>{{cite web |title= Common threads: Advanced filesystem implementor's guide, Part 9, Introducing XFS |author= Daniel Robbins |work= Developer Works |publisher= IBM |date= January 1, 2002 |url= http://www.ibm.com/developerworks/library/l-fs9/index.html | access-date=November 6, 2011 | url-status= dead | archive-url= https://web.archive.org/web/20150904032700/http://www.ibm.com/developerworks/library/l-fs9/index.html| archive-date= September 4, 2015 }}</ref> [[Gentoo Linux|Gentoo लिनक्स]] 2002 के मध्य में डिफ़ॉल्ट संचिका प्रणाली के रूप में एक्सएफएस के लिए एक विकल्प प्रस्तुत करने वाला पहला लिनक्स वितरण बन गया।<ref>{{cite web | title = Common threads: Advanced filesystem implementor's guide, Part 10, Deploying XFS | author = Daniel Robbins | work = Developer Works | publisher = IBM | date = April 1, 2002 | url = http://www.ibm.com/developerworks/linux/library/l-fs10/index.html | access-date = November 6, 2011 | archive-url = https://web.archive.org/web/20111224220036/http://www.ibm.com/developerworks/linux/library/l-fs10/index.html | archive-date = December 24, 2011 | url-status = live }}</ref>
लिनक्स कर्नेल में एक्सएफएस के लिए प्रारंभिक समर्थन एसजीआई से [[पैच (कंप्यूटिंग)|पैच]] के माध्यम से आया। यह 2.6 श्रृंखला के लिए [[लिनक्स कर्नेल मेनलाइन|लिनक्स कर्नेल प्रमुख मार्ग]] में विलय हो गया और अलग से फरवरी 2004 में संस्करण 2.4.25 में 2.4 श्रृंखला में विलय कर दिया गया,<ref>{{cite web | url= https://www.kernel.org/pub/linux/kernel/v2.4/ChangeLog-2.4.25 | title= Linux kernel 2.4.25 changelog | website= [[kernel.org]] | date= 2004-02-18 | access-date= 2014-08-14 | archive-url= https://web.archive.org/web/20140819083123/https://www.kernel.org/pub/linux/kernel/v2.4/ChangeLog-2.4.25 | archive-date= 2014-08-19 | url-status= live }}</ref> जिससे एक्सएफएस लिनक्स प्रणाली पर लगभग सार्वभौमिक रूप से उपलब्ध हो गया।<ref>{{cite web |title= Common threads: Advanced filesystem implementor's guide, Part 9, Introducing XFS |author= Daniel Robbins |work= Developer Works |publisher= IBM |date= January 1, 2002 |url= http://www.ibm.com/developerworks/library/l-fs9/index.html | access-date=November 6, 2011 | url-status= dead | archive-url= https://web.archive.org/web/20150904032700/http://www.ibm.com/developerworks/library/l-fs9/index.html| archive-date= September 4, 2015 }}</ref> [[Gentoo Linux|जेंटू लिनक्स]] 2002 के मध्य में स्वतः निर्धारित संचिका प्रणाली के रूप में एक्सएफएस के लिए एक विकल्प प्रस्तुत करने वाला पहला लिनक्स वितरण बन गया।<ref>{{cite web | title = Common threads: Advanced filesystem implementor's guide, Part 10, Deploying XFS | author = Daniel Robbins | work = Developer Works | publisher = IBM | date = April 1, 2002 | url = http://www.ibm.com/developerworks/linux/library/l-fs10/index.html | access-date = November 6, 2011 | archive-url = https://web.archive.org/web/20111224220036/http://www.ibm.com/developerworks/linux/library/l-fs10/index.html | archive-date = December 24, 2011 | url-status = live }}</ref>
[[FreeBSD]] ने दिसंबर 2005 में एक्सएफएस के लिए [[फ़ाइल सिस्टम अनुमतियाँ|संचिका प्रणाली अनुमतियाँ]] | केवल-पढ़ने के लिए समर्थन जोड़ा और जून 2006 में प्रायोगिक लेखन समर्थन प्रस्तुत किया। हालांकि, यह केवल लिनक्स से माइग्रेशन में सहायता के रूप में अभिप्रेत था, मुख्य संचिका प्रणाली के रूप में नहीं। FreeBSD 10 ने एक्सएफएस के लिए समर्थन हटा दिया।<ref name="freebsdremoved">{{cite web | url = http://lists.freebsd.org/pipermail/freebsd-questions/2013-October/254143.html | title = Has FreeBSD 10 Dropped Support For XFS? | website = Lists.freebsd.org | date = 2013-10-27 | access-date = 2014-03-30 | archive-url = https://web.archive.org/web/20140330082123/http://lists.freebsd.org/pipermail/freebsd-questions/2013-October/254143.html | archive-date = 2014-03-30 | url-status = live }}</ref>
 
2009 में, 64-बिट Red Hat Enterprise लिनक्स (RHEL) लिनक्स वितरण के संस्करण 5.4 में एक्सएफएस संचिका प्रणाली के निर्माण और उपयोग के लिए आवश्यक कर्नेल समर्थन सम्मिलित था, लेकिन संबंधित कमांड लाइन उपकरण की कमी थी। [[CentOS]] से उपलब्ध उपकरण उस उद्देश्य के लिए कार्य कर सकते थे, और Red Hat ने उन्हें अनुरोध पर RHEL ग्राहकों को भी प्रदान किया।<ref>{{cite web | title = Bug 521173 -xfsprogs is missing in RHEL-5.4 | date = May 24, 2010 | website = RedHat.com | url = http://bugzilla.redhat.com/show_bug.cgi?id=521173 | access-date = November 6, 2011 | archive-url = https://archive.today/20120710060100/http://bugzilla.redhat.com/show_bug.cgi?id=521173 | archive-date = July 10, 2012 | url-status = live }}</ref> RHEL 6.0, 2010 में जारी किया गया, जिसमें Red Hat के स्केलेबल संचिका प्रणाली ऐड-ऑन के हिस्से के रूप में शुल्क के लिए एक्सएफएस समर्थन सम्मिलित है।<ref>{{cite web | title = Red Hat Enterprise Linux स्केलेबल फ़ाइल सिस्टम ऐड-ऑन| url = http://ca.redhat.com/products/enterprise-linux-add-ons/file-systems/ | access-date = 2014-05-22 | website = RedHat.com | archive-url = https://web.archive.org/web/20140529025913/http://ca.redhat.com/products/enterprise-linux-add-ons/file-systems/ | archive-date = 2014-05-29 | url-status = live }}</ref> 2011 में जारी [[Oracle Linux|Oracle लिनक्स]] 6 में एक्सएफएस का उपयोग करने का एक विकल्प भी सम्मिलित है।<ref>{{cite web
[[FreeBSD|फ्रीबीएसडी]] ने दिसंबर 2005 में एक्सएफएस के लिए केवल-पढ़ने के लिए समर्थन जोड़ा और जून 2006 में प्रायोगिक लेखन समर्थन प्रस्तुत किया। हालांकि, यह केवल लिनक्स से अभिगमन में सहायता के रूप में अभिप्रेत था, मुख्य संचिका प्रणाली के रूप में नहीं। [[FreeBSD|फ्रीबीएसडी]] 10 ने एक्सएफएस के लिए समर्थन हटा दिया।<ref name="freebsdremoved">{{cite web | url = http://lists.freebsd.org/pipermail/freebsd-questions/2013-October/254143.html | title = Has FreeBSD 10 Dropped Support For XFS? | website = Lists.freebsd.org | date = 2013-10-27 | access-date = 2014-03-30 | archive-url = https://web.archive.org/web/20140330082123/http://lists.freebsd.org/pipermail/freebsd-questions/2013-October/254143.html | archive-date = 2014-03-30 | url-status = live }}</ref>
 
2009 में, 64-बिट रेड हैट उद्यम लिनक्स (RHEL) लिनक्स वितरण के संस्करण 5.4 में एक्सएफएस संचिका प्रणाली के निर्माण और उपयोग के लिए आवश्यक कर्नेल समर्थन सम्मिलित था, परन्तु संबंधित समादेश रेखा उपकरण की कमी थी। [[CentOS|सेंटओएस]] से उपलब्ध उपकरण उस उद्देश्य के लिए कार्य कर सकते थे और रेड हैट ने उन्हें अनुरोध पर आरएचईएल ग्राहकों को भी प्रदान किया।<ref>{{cite web | title = Bug 521173 -xfsprogs is missing in RHEL-5.4 | date = May 24, 2010 | website = RedHat.com | url = http://bugzilla.redhat.com/show_bug.cgi?id=521173 | access-date = November 6, 2011 | archive-url = https://archive.today/20120710060100/http://bugzilla.redhat.com/show_bug.cgi?id=521173 | archive-date = July 10, 2012 | url-status = live }}</ref> 2010 में जारी आरएचईएल 6.0 में रेड हैट के मापनीय संचिका प्रणाली पूरक के भाग के रूप में शुल्क के लिए एक्सएफएस समर्थन सम्मिलित है।<ref>{{cite web | title = Red Hat Enterprise Linux स्केलेबल फ़ाइल सिस्टम ऐड-ऑन| url = http://ca.redhat.com/products/enterprise-linux-add-ons/file-systems/ | access-date = 2014-05-22 | website = RedHat.com | archive-url = https://web.archive.org/web/20140529025913/http://ca.redhat.com/products/enterprise-linux-add-ons/file-systems/ | archive-date = 2014-05-29 | url-status = live }}</ref> 2011 में जारी [[Oracle Linux|दिव्यवक्ता लिनक्स]] 6 में एक्सएफएस का उपयोग करने का एक विकल्प भी सम्मिलित है।<ref>{{cite web
  |url          = https://oss.oracle.com/el6/docs/RELEASE-NOTES-GA-en.html
  |url          = https://oss.oracle.com/el6/docs/RELEASE-NOTES-GA-en.html
  |title        = Oracle Linux 6 Release Notes
  |title        = Oracle Linux 6 Release Notes
Line 95: Line 98:
  |url-status  = live
  |url-status  = live
}}</ref>
}}</ref>
RHEL 7.0, जून 2014 में जारी किया गया, एक्सएफएस को अपने डिफ़ॉल्ट संचिका प्रणाली के रूप में उपयोग करता है,<ref>{{cite web
 
आरएचईएल 7.0, जून 2014 में जारी किया गया, एक्सएफएस को अपने स्वतः निर्धारित संचिका प्रणाली के रूप में उपयोग करता है,<ref>{{cite web
  |url          = http://www.redhat.com/about/news/press-archive/2014/6/red-hat-unveils-rhel-7
  |url          = http://www.redhat.com/about/news/press-archive/2014/6/red-hat-unveils-rhel-7
  |title        = Red Hat Unveils Red Hat Enterprise Linux 7, Redefining the Enterprise Operating System
  |title        = Red Hat Unveils Red Hat Enterprise Linux 7, Redefining the Enterprise Operating System
Line 104: Line 108:
  |archive-date = 2014-06-13
  |archive-date = 2014-06-13
  |url-status  = live
  |url-status  = live
}}</ref> के लिए एक्सएफएस का उपयोग करने के लिए समर्थन सहित <code>/boot</code> विभाजन, जो पहले [[GRUB]] बूटलोडर में बग के कारण व्यावहारिक नहीं था।<ref>{{cite web | title = Bug 250843 -grub-install hangs on xfs | date = May 4, 2009 | website = Redhat.com | url = http://bugzilla.redhat.com/show_bug.cgi?id=250843 | access-date = November 6, 2011 | archive-url = https://archive.today/20120710160608/http://bugzilla.redhat.com/show_bug.cgi?id=250843 | archive-date = July 10, 2012 | url-status = live }}</ref>
}}</ref> जिसमें <code>/बूट</code> विभाजन के लिए एक्सएफएस का उपयोग करने के लिए समर्थन सम्मिलित है, जो पहले [[GRUB|जीआरयूबी]] बूटलोडर में दोष के कारण व्यावहारिक नहीं था।<ref>{{cite web | title = Bug 250843 -grub-install hangs on xfs | date = May 4, 2009 | website = Redhat.com | url = http://bugzilla.redhat.com/show_bug.cgi?id=250843 | access-date = November 6, 2011 | archive-url = https://archive.today/20120710160608/http://bugzilla.redhat.com/show_bug.cgi?id=250843 | archive-date = July 10, 2012 | url-status = live }}</ref>
लिनक्स कर्नेल 4.8 अगस्त 2016 में एक नई सुविधा, रिवर्स मैपिंग जोड़ा गया। यह नियोजित सुविधाओं के एक बड़े समुच्चय की नींव है: [[ स्नैपशॉट (कंप्यूटर भंडारण) ]], [[लिखने पर नकल]] (COW) डेटा, [[डेटा डुप्लिकेशन]], रीलिंक कॉपी, ऑनलाइन डेटा और मेटाडेटा [[डेटा स्क्रबिंग]], डेटा हानि या खराब क्षेत्रों की अत्यधिक सटीक रिपोर्टिंग , और क्षतिग्रस्त या दूषित संचिका प्रणाली के पुनर्निर्माण में काफी सुधार हुआ है। इस कार्य के लिए एक्सएफएस के ऑन-डिस्क स्वरूप में परिवर्तन की आवश्यकता है।<ref>{{cite web|url=https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=0cbbc422d56668528f6efd1234fe908010284082|title=kernel/git/torvalds/linux.git - Linux kernel source tree|website=git.kernel.org}}</ref><ref>{{Cite web |url=https://kernelnewbies.org/Linux_4.8#XFS_reverse_mapping |title=Linux_4.8 - Linux Kernel Newbies |access-date=2018-10-19 |archive-url=https://web.archive.org/web/20181019164144/https://kernelnewbies.org/Linux_4.8#XFS_reverse_mapping |archive-date=2018-10-19 |url-status=live }}</ref>
 
लिनक्स कर्नेल 5.10, दिसंबर 2020 में जारी किया गया था, जिसमें पारंपरिक 32-बिट सेकंड प्रत्युत्तर के बजाय 64-बिट नैनोसेकंड प्रत्युत्तर के रूप में इनोड टाइमस्टैम्प को स्टोर करने के लिए बिगटाइम प्रस्तुत किया गया था। यह पिछले [[वर्ष 2038 की समस्या]] को वर्ष 2486 तक के लिए स्थगित कर देता है।<ref name="bigtime"/>
लिनक्स कर्नेल 4.8 अगस्त 2016 में एक नई सुविधा, प्रतिलोम प्रतिचित्रण जोड़ा गया। यह नियोजित सुविधाओं के एक बड़े समुच्चय की नींव है: [[ स्नैपशॉट (कंप्यूटर भंडारण) |आशुचित्र]] [[लिखने पर नकल|प्रतिलिपि पर लेखन]] (COW) डेटा, [[डेटा डुप्लिकेशन|डेटा प्रेषण]], रीलिंक प्रतियां, ऑनलाइन डेटा और मेटाडेटा [[डेटा स्क्रबिंग|डेटा मार्जन]], डेटा हानि या अनुपयोगी खंडों की अत्यधिक सटीक प्रतिवेदन और क्षतिग्रस्त या दूषित संचिका प्रणाली के पुनर्निर्माण में काफी सुधार हुआ है। इस कार्य के लिए एक्सएफएस के डिस्क स्वरूप में परिवर्तन की आवश्यकता है।<ref>{{cite web|url=https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=0cbbc422d56668528f6efd1234fe908010284082|title=kernel/git/torvalds/linux.git - Linux kernel source tree|website=git.kernel.org}}</ref><ref>{{Cite web |url=https://kernelnewbies.org/Linux_4.8#XFS_reverse_mapping |title=Linux_4.8 - Linux Kernel Newbies |access-date=2018-10-19 |archive-url=https://web.archive.org/web/20181019164144/https://kernelnewbies.org/Linux_4.8#XFS_reverse_mapping |archive-date=2018-10-19 |url-status=live }}</ref>
 
लिनक्स कर्नेल 5.10, दिसंबर 2020 में जारी किया गया था, जिसमें पारंपरिक 32-बिट सेकंड प्रत्युत्तर के बजाय 64-बिट नैनोसेकंड प्रत्युत्तर के रूप में इनोड टाइमस्टैम्प को संग्रहीत करने के लिए बिगटाइम प्रस्तुत किया गया था। यह पिछले [[वर्ष 2038 की समस्या]] को वर्ष 2486 तक के लिए स्थगित कर देता है।<ref name="bigtime" />
 




Line 112: Line 119:


=== क्षमता ===
=== क्षमता ===
एक्सएफएस एक 64-बिट संचिका प्रणाली है<ref>{{cite web |url=http://oss.sgi.com/projects/xfs/index.html |title=एक्सएफएस अवलोकन|publisher=Silicon Graphics International Corp |date=2013-07-02 |access-date=2013-07-02 |url-status=dead |archive-url=https://web.archive.org/web/20130606024601/http://oss.sgi.com/projects/xfs/index.html |archive-date=2013-06-06 }}</ref> और 8 [[exbibit]] माइनस एक बाइट के अधिकतम संचिका प्रणाली आकार का समर्थन करता है (2<sup>63</sup> − 1 बाइट्स), लेकिन होस्ट संचालन प्रणाली द्वारा लगाई गई सीमाएं इस सीमा को कम कर सकती हैं। [[32-बिट]] लिनक्स प्रणाली संचिका और संचिका प्रणाली दोनों के आकार को 16 [[ tebibite ]]्स तक सीमित करता है।
एक्सएफएस एक 64-बिट संचिका प्रणाली है<ref>{{cite web |url=http://oss.sgi.com/projects/xfs/index.html |title=एक्सएफएस अवलोकन|publisher=Silicon Graphics International Corp |date=2013-07-02 |access-date=2013-07-02 |url-status=dead |archive-url=https://web.archive.org/web/20130606024601/http://oss.sgi.com/projects/xfs/index.html |archive-date=2013-06-06 }}</ref> और 8 एक्सबिबाइट न्यूनतम एक बाइट (2<sup>63</sup> − 1 बाइट) के अधिकतम संचिका प्रणाली आकार का समर्थन करता है, परन्तु होस्ट संचालन प्रणाली द्वारा लगाई गई सीमाएं इस सीमा को कम कर सकती हैं। [[32-बिट]] लिनक्स प्रणाली संचिका और संचिका प्रणाली दोनों के आकार को 16 [[ tebibite |टेबीबाइट]] तक सीमित करता है।


=== जर्नलिंग ===
=== यथारूपता ===
{{Details|Journaling file system}}
{{Details|यथारूपता संचिका प्रणाली}}


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


एक्सएफएस जर्नल को संचिका प्रणाली के डेटा सेक्शन (आंतरिक लॉग के रूप में), या डिस्क विवाद को कम करने के लिए एक अलग उपकरण पर संग्रहीत किया जा सकता है।
एक्सएफएस यथारूप को संचिका प्रणाली के डेटा अनुभाग (आंतरिक लॉग के रूप में), या डिस्क विवाद को कम करने के लिए एक भिन्न उपकरण पर संग्रहीत किया जा सकता है।


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


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


=== आवंटन समूह ===
=== आवंटन समूह ===
एक्सएफएस संचिका प्रणाली आंतरिक रूप से आवंटन समूहों में विभाजित होते हैं, जो संचिका प्रणाली के भीतर समान आकार के रैखिक क्षेत्र होते हैं। [[कम्प्यूटर फाइल|कम्प्यूटर संचिका]] और निर्देशिकाएँ आवंटन समूहों को फैला सकती हैं। प्रत्येक आवंटन समूह अपने स्वयं के [[इनोड]]्स और मुक्त स्थान को अलग से प्रबंधित करता है, मापनीयता और समानता प्रदान करता है इसलिए कई थ्रेड्स और प्रक्रियाएं एक ही संचिका प्रणाली पर एक साथ I / O संचालन कर सकती हैं।
एक्सएफएस संचिका प्रणाली आंतरिक रूप से आवंटन समूहों में विभाजित होते हैं, जो संचिका प्रणाली के भीतर समान आकार के रैखिक क्षेत्र होते हैं। [[कम्प्यूटर फाइल|संचिकाएँ]] और निर्देशिकाएँ आवंटन समूहों को विस्तार कर सकती हैं। प्रत्येक आवंटन समूह अपने स्वयं के [[इनोड]] और मुक्त स्थान को अलग से प्रबंधित करता है, मापनीयता और समानता प्रदान करता है इसलिए अनेक क्रम और प्रक्रियाएं एक ही संचिका प्रणाली पर एक साथ आई/ संचालन कर सकती हैं।


यह आर्किटेक्चर कई प्रोसेसर और/या कोर वाले प्रणाली पर समानांतर I/O प्रदर्शन को अनुकूलित करने में मदद करता है, क्योंकि मेटाडेटा अपडेट को भी समानांतर किया जा सकता है। आवंटन समूहों द्वारा प्रदान किया गया आंतरिक विभाजन विशेष रूप से फायदेमंद हो सकता है जब संचिका प्रणाली कई भौतिक उपकरणों को फैलाता है, अंतर्निहित भंडारण घटकों के थ्रूपुट के इष्टतम उपयोग की अनुमति देता है।
यह आर्किटेक्चर कई प्रोसेसर और/या कोर वाले प्रणाली पर समानांतर I/O प्रदर्शन को अनुकूलित करने में मदद करता है, क्योंकि मेटाडेटा अपडेट को भी समानांतर किया जा सकता है। आवंटन समूहों द्वारा प्रदान किया गया आंतरिक विभाजन विशेष रूप से फायदेमंद हो सकता है जब संचिका प्रणाली कई भौतिक उपकरणों को फैलाता है, अंतर्निहित भंडारण घटकों के थ्रूपुट के इष्टतम उपयोग की अनुमति देता है।


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


=== विस्तार आधारित आवंटन ===
=== विस्तार आधारित आवंटन ===
एक्सएफएस संचिका प्रणाली पर संग्रहीत संचिकाों में उपयोग किए जाने वाले खंड को चर लंबाई सीमा (संचिका प्रणाली) के साथ प्रबंधित किया जाता है, जहां एक सीमा एक या अधिक सन्निहित खंडों का वर्णन करती है। यह संचिका प्रणाली की तुलना में खंड की सूची को काफी छोटा कर सकता है, जो संचिका द्वारा व्यक्तिगत रूप से उपयोग किए जाने वाले सभी खंडों को सूचीबद्ध करता है।
एक्सएफएस संचिका प्रणाली पर संग्रहीत संचिकाओं में उपयोग किए जाने वाले खंड को चर लंबाई सीमा (संचिका प्रणाली) के साथ प्रबंधित किया जाता है, जहां एक सीमा एक या अधिक सन्निहित खंडों का वर्णन करती है। यह संचिका प्रणाली की तुलना में खंड की सूची को काफी छोटा कर सकता है, जो संचिका द्वारा व्यक्तिगत रूप से उपयोग किए जाने वाले सभी खंडों को सूचीबद्ध करता है।


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


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


=== विलंबित आवंटन ===
=== विलंबित आवंटन ===
Line 147: Line 154:


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


=== विस्तारित गुण ===
=== विस्तारित गुण ===
एक्सएफएस संचिकाों के लिए कई डेटा स्ट्रीम प्रदान करता है; यह विस्तारित संचिका विशेषताओं के कार्यान्वयन से संभव हुआ है। ये संचिका से जुड़े कई नाम/मूल्य जोड़े के भंडारण की अनुमति देते हैं। नाम रद्द-समाप्त प्रिंट करने योग्य कैरेक्टर स्ट्रिंग्स हैं जिनकी लंबाई 256 बाइट तक होती है, जबकि उनसे जुड़े मानों में 64 [[किलोबाइट]] तक बाइनरी डेटा हो सकता है।
एक्सएफएस संचिकाओं के लिए कई डेटा स्ट्रीम प्रदान करता है; यह विस्तारित संचिका विशेषताओं के कार्यान्वयन से संभव हुआ है। ये संचिका से जुड़े कई नाम/मूल्य जोड़े के भंडारण की अनुमति देते हैं। नाम रद्द-समाप्त प्रिंट करने योग्य कैरेक्टर स्ट्रिंग्स हैं जिनकी लंबाई 256 बाइट तक होती है, जबकि उनसे जुड़े मानों में 64 [[किलोबाइट]] तक बाइनरी डेटा हो सकता है।


उन्हें आगे दो नामस्थानों में विभाजित किया गया है: <code>root</code> और <code>user</code>. रूट नेमस्पेस में संग्रहीत विस्तारित विशेषताओं को केवल सुपरयूजर द्वारा संशोधित किया जा सकता है, जबकि यूजर नेमस्पेस में विशेषताओं को किसी भी उपयोगकर्ता द्वारा संचिका में लिखने की अनुमति के साथ संशोधित किया जा सकता है।
उन्हें आगे दो नामस्थानों में विभाजित किया गया है: <code>root</code> और <code>user</code>. रूट नेमस्पेस में संग्रहीत विस्तारित विशेषताओं को केवल सुपरयूजर द्वारा संशोधित किया जा सकता है, जबकि यूजर नेमस्पेस में विशेषताओं को किसी भी उपयोगकर्ता द्वारा संचिका में लिखने की अनुमति के साथ संशोधित किया जा सकता है।
Line 157: Line 164:


===प्रत्यक्ष I/O===
===प्रत्यक्ष I/O===
डिस्क के लिए उच्च थ्रूपुट की आवश्यकता वाले अनुप्रयोगों के लिए, एक्सएफएस एक प्रत्यक्ष I/O कार्यान्वयन प्रदान करता है जो गैर-कैश्ड I/O संचालन को सीधे उपयोक्ता स्थान पर अनुप्रयुक्त करने की अनुमति देता है। डेटा को एप्लिकेशन के बफर और डिस्क के मध्य [[ प्रत्यक्ष मेमोरी एक्सेस ]] का उपयोग करके स्थानांतरित किया जाता है, जो अंतर्निहित डिस्क उपकरणों के पूर्ण I/O बैंडविड्थ तक पहुंच की अनुमति देता है।
डिस्क के लिए उच्च थ्रूपुट की आवश्यकता वाले अनुप्रयोगों के लिए, एक्सएफएस एक प्रत्यक्ष I/O कार्यान्वयन प्रदान करता है जो गैर-कैश्ड I/O संचालन को सीधे उपयोक्ता स्थान पर अनुप्रयुक्त करने की अनुमति देता है। डेटा को एप्लिकेशन के बफर और डिस्क के मध्य [[ प्रत्यक्ष मेमोरी एक्सेस ]] का उपयोग करके स्थानांतरित किया जाता है, जो अंतर्निहित डिस्क उपकरणों के पूर्ण I/O बैंड विस्तार तक पहुंच की अनुमति देता है।


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


गारंटी-दर I/O केवल IRIX के तहत समर्थित था, और उस उद्देश्य के लिए विशेष हार्डवेयर की आवश्यकता थी।<ref>{{Cite mailing list |url= http://oss.sgi.com/archives/xfs/2012-07/msg00432.html |title= Re: Re: realtime section bugs still around |author= John Nelson |date= July 30, 2012 |mailing-list= XFS mailing list |publisher= SGI |access-date= April 13, 2014 |archive-url= https://web.archive.org/web/20140414085238/http://oss.sgi.com/archives/xfs/2012-07/msg00432.html |archive-date= April 14, 2014 |url-status= live }}</ref>
गारंटी-दर I/O केवल IRIX के तहत समर्थित था, और उस उद्देश्य के लिए विशेष हार्डवेयर की आवश्यकता थी।<ref>{{Cite mailing list |url= http://oss.sgi.com/archives/xfs/2012-07/msg00432.html |title= Re: Re: realtime section bugs still around |author= John Nelson |date= July 30, 2012 |mailing-list= XFS mailing list |publisher= SGI |access-date= April 13, 2014 |archive-url= https://web.archive.org/web/20140414085238/http://oss.sgi.com/archives/xfs/2012-07/msg00432.html |archive-date= April 14, 2014 |url-status= live }}</ref>
Line 166: Line 173:


=== [[डीएमएपीआई]] ===
=== [[डीएमएपीआई]] ===
एक्सएफएस ने IRIX में पदानुक्रमित संग्रहण प्रबंधन का समर्थन करने के लिए DMAPI इंटरफ़ेस अनुप्रयुक्त किया। अक्टूबर 2010 तक, एक्सएफएस के लिनक्स कार्यान्वयन ने डीएमएपीआई कार्यान्वयन के लिए आवश्यक ऑन-डिस्क मेटाडेटा का समर्थन किया, लेकिन कर्नेल समर्थन कथित तौर पर प्रयोग करने योग्य नहीं था। कुछ समय के लिए, एसजीआई ने एक कर्नेल ट्री की मेजबानी की जिसमें डीएमएपीआई हुक सम्मिलित थे, लेकिन इस समर्थन को पर्याप्त रूप से बनाए नहीं रखा गया है, हालांकि कर्नेल विकासक्स ने इस समर्थन को अद्यतित करने का इरादा बताया है।<ref>{{Cite mailing list |url= http://oss.sgi.com/archives/xfs/2010-10/msg00025.html |title= Re: Linux and DMAPI |author= Christoph Hellwig |date= October 3, 2010 |mailing-list= XFS mailing list |publisher= SGI |access-date= November 6, 2011 |archive-url= https://web.archive.org/web/20110927020239/http://oss.sgi.com/archives/xfs/2010-10/msg00025.html |archive-date= September 27, 2011 |url-status= dead }}</ref>
एक्सएफएस ने IRIX में पदानुक्रमित संग्रहण प्रबंधन का समर्थन करने के लिए DMAPI इंटरफ़ेस अनुप्रयुक्त किया। अक्टूबर 2010 तक, एक्सएफएस के लिनक्स कार्यान्वयन ने डीएमएपीआई कार्यान्वयन के लिए आवश्यक ऑन-डिस्क मेटाडेटा का समर्थन किया, परन्तु कर्नेल समर्थन कथित तौर पर प्रयोग करने योग्य नहीं था। कुछ समय के लिए, एसजीआई ने एक कर्नेल ट्री की मेजबानी की जिसमें डीएमएपीआई हुक सम्मिलित थे, परन्तु इस समर्थन को पर्याप्त रूप से बनाए नहीं रखा गया है, हालांकि कर्नेल विकासक्स ने इस समर्थन को अद्यतित करने का इरादा बताया है।<ref>{{Cite mailing list |url= http://oss.sgi.com/archives/xfs/2010-10/msg00025.html |title= Re: Linux and DMAPI |author= Christoph Hellwig |date= October 3, 2010 |mailing-list= XFS mailing list |publisher= SGI |access-date= November 6, 2011 |archive-url= https://web.archive.org/web/20110927020239/http://oss.sgi.com/archives/xfs/2010-10/msg00025.html |archive-date= September 27, 2011 |url-status= dead }}</ref>




=== स्नैपशॉट ===
=== आशुचित्र ===
एक्सएफएस अभी तक नहीं है<ref>{{cite web|url=https://lwn.net/Articles/638546/|title=XFS: There and back ... and there again? [LWN.net]|website=lwn.net|access-date=2016-10-27|archive-url=https://web.archive.org/web/20161027192827/https://lwn.net/Articles/638546/|archive-date=2016-10-27|url-status=live}}</ref> स्नैपशॉट के लिए प्रत्यक्ष समर्थन प्रदान करें, क्योंकि यह वर्तमान में वॉल्यूम मैनेजर द्वारा स्नैपशॉट प्रक्रिया को अनुप्रयुक्त करने की अपेक्षा करता है। एक्सएफएस संचिका प्रणाली का स्नैपशॉट लेने से संचिका प्रणाली में I/O को अस्थायी रूप से रोकना सम्मिलित है <code>एक्सएफएस_freeze</code> उपयोगिता, वॉल्यूम प्रबंधक होने से वास्तविक स्नैपशॉट निष्पादित होता है, और उसके बाद सामान्य संचालन जारी रखने के लिए I/O को फिर से प्रारंभ करना। स्नैपशॉट को बैकअप उद्देश्यों के लिए केवल पढ़ने के लिए माउंट किया जा सकता है।
एक्सएफएस अभी तक नहीं है<ref>{{cite web|url=https://lwn.net/Articles/638546/|title=XFS: There and back ... and there again? [LWN.net]|website=lwn.net|access-date=2016-10-27|archive-url=https://web.archive.org/web/20161027192827/https://lwn.net/Articles/638546/|archive-date=2016-10-27|url-status=live}}</ref> आशुचित्र के लिए प्रत्यक्ष समर्थन प्रदान करें, क्योंकि यह वर्तमान में आयतन  मैनेजर द्वारा आशुचित्र प्रक्रिया को अनुप्रयुक्त करने की अपेक्षा करता है। एक्सएफएस संचिका प्रणाली का आशुचित्र लेने से संचिका प्रणाली में I/O को अस्थायी रूप से रोकना सम्मिलित है <code>एक्सएफएस_freeze</code> उपयोगिता, आयतन  प्रबंधक होने से वास्तविक आशुचित्र निष्पादित होता है, और उसके बाद सामान्य संचालन जारी रखने के लिए I/O को फिर से प्रारंभ करना। आशुचित्र को बैकअप उद्देश्यों के लिए केवल पढ़ने के लिए माउंट किया जा सकता है।


आईआरआईएक्स में एक्सएफएस के रिलीज में एक्सएलवी नामक एक एकीकृत मात्रा प्रबंधक सम्मिलित है। इस वॉल्यूम मैनेजर को लिनक्स में पोर्ट नहीं किया गया है, और इसके बजाय एक्सएफएस लिनक्स प्रणाली में मानक [[लॉजिकल वॉल्यूम मैनेजर (लिनक्स)]] के साथ कार्य करता है।
आईआरआईएक्स में एक्सएफएस के रिलीज में एक्सएलवी नामक एक एकीकृत मात्रा प्रबंधक सम्मिलित है। इस आयतन  मैनेजर को लिनक्स में पोर्ट नहीं किया गया है, और इसके बजाय एक्सएफएस लिनक्स प्रणाली में मानक [[लॉजिकल वॉल्यूम मैनेजर (लिनक्स)|लॉजिकल आयतन  मैनेजर (लिनक्स)]] के साथ कार्य करता है।


हाल के लिनक्स कर्नेल में, <code>एक्सएफएस_freeze</code> कार्यक्षमता VFS परत में कार्यान्वित की जाती है, और वॉल्यूम मैनेजर की स्नैपशॉट कार्यक्षमता अनुप्रयुक्त होने पर स्वचालित रूप से निष्पादित होती है। यह एक बार एक मूल्यवान लाभ था क्योंकि [[ext3]] संचिका प्रणाली को निलंबित नहीं किया जा सकता था<ref>{{cite web|url=http://www.linuxquestions.org/questions/programming-9/how-to-freeze-ext3-file-system-229937/|title=How to freeze ext3 file system|website=www.linuxquestions.org|access-date=2011-08-24|archive-url=https://web.archive.org/web/20110428190523/http://www.linuxquestions.org/questions/programming-9/how-to-freeze-ext3-file-system-229937/|archive-date=2011-04-28|url-status=live}}</ref> और वॉल्यूम प्रबंधक अत्यधिक व्यस्त डेटाबेस का बैक अप लेने के लिए लगातार हॉट स्नैपशॉट बनाने में असमर्थ था।<ref>{{cite web|url=http://www.linuxquestions.org/questions/linux-server-73/lvm-snapshots-how-to-use-622084/|title=LVM snapshots: How to use?|website=www.linuxquestions.org|access-date=2010-04-17|archive-url=https://web.archive.org/web/20110117044017/http://www.linuxquestions.org/questions/linux-server-73/lvm-snapshots-how-to-use-622084/|archive-date=2011-01-17|url-status=live}}</ref> सौभाग्य से अब ऐसा नहीं है। लिनक्स 2.6.29 के बाद से, संचिका प्रणाली ext3, [[ext4]], [[GFS2]] और JFS (संचिका प्रणाली) में फ्रीज सुविधा भी है।<ref>{{cite web|url=https://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c4be0c1dc4cdc37b175579be1460f15ac6495e9a|title=kernel/git/torvalds/linux.git - Linux kernel source tree|website=git.kernel.org}}</ref>
हाल के लिनक्स कर्नेल में, <code>एक्सएफएस_freeze</code> कार्यक्षमता VFS परत में कार्यान्वित की जाती है, और आयतन  मैनेजर की आशुचित्र कार्यक्षमता अनुप्रयुक्त होने पर स्वचालित रूप से निष्पादित होती है। यह एक बार एक मूल्यवान लाभ था क्योंकि [[ext3]] संचिका प्रणाली को निलंबित नहीं किया जा सकता था<ref>{{cite web|url=http://www.linuxquestions.org/questions/programming-9/how-to-freeze-ext3-file-system-229937/|title=How to freeze ext3 file system|website=www.linuxquestions.org|access-date=2011-08-24|archive-url=https://web.archive.org/web/20110428190523/http://www.linuxquestions.org/questions/programming-9/how-to-freeze-ext3-file-system-229937/|archive-date=2011-04-28|url-status=live}}</ref> और आयतन  प्रबंधक अत्यधिक व्यस्त डेटाबेस का बैक अप लेने के लिए लगातार हॉट आशुचित्र बनाने में असमर्थ था।<ref>{{cite web|url=http://www.linuxquestions.org/questions/linux-server-73/lvm-snapshots-how-to-use-622084/|title=LVM snapshots: How to use?|website=www.linuxquestions.org|access-date=2010-04-17|archive-url=https://web.archive.org/web/20110117044017/http://www.linuxquestions.org/questions/linux-server-73/lvm-snapshots-how-to-use-622084/|archive-date=2011-01-17|url-status=live}}</ref> सौभाग्य से अब ऐसा नहीं है। लिनक्स 2.6.29 के बाद से, संचिका प्रणाली ext3, [[ext4]], [[GFS2]] और JFS (संचिका प्रणाली) में फ्रीज सुविधा भी है।<ref>{{cite web|url=https://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c4be0c1dc4cdc37b175579be1460f15ac6495e9a|title=kernel/git/torvalds/linux.git - Linux kernel source tree|website=git.kernel.org}}</ref>




=== ऑनलाइन डीफ़्रेग्मेंटेशन ===
=== ऑनलाइन डीफ़्रेग्मेंटेशन ===
हालांकि एक्सएफएस की सीमा-आधारित प्रकृति और इसके द्वारा उपयोग की जाने वाली विलंबित आवंटन रणनीति विखंडन की समस्याओं के लिए संचिका प्रणाली के प्रतिरोध में काफी सुधार करती है, एक्सएफएस एक संचिकाप्रणाली डीफ्रैग्मेंटेशन उपयोगिता प्रदान करता है (<code>एक्सएफएस_fsr</code>, एक्सएफएस संचिका प्रणाली रीऑर्गनाइजर के लिए छोटा) जो माउंटेड और सक्रिय एक्सएफएस संचिका प्रणाली पर संचिकाों को डीफ्रैग्मेंट कर सकता है।<ref>[http://bitubique.com/content/defragment-xfs-file-system Bitubique.com] {{webarchive |url=https://web.archive.org/web/20090401211105/http://bitubique.com/content/defragment-xfs-file-system |date=April 1, 2009 }}</ref>
हालांकि एक्सएफएस की सीमा-आधारित प्रकृति और इसके द्वारा उपयोग की जाने वाली विलंबित आवंटन रणनीति विखंडन की समस्याओं के लिए संचिका प्रणाली के प्रतिरोध में काफी सुधार करती है, एक्सएफएस एक संचिकाप्रणाली डीफ्रैग्मेंटेशन उपयोगिता प्रदान करता है (<code>एक्सएफएस_fsr</code>, एक्सएफएस संचिका प्रणाली रीऑर्गनाइजर के लिए छोटा) जो माउंटेड और सक्रिय एक्सएफएस संचिका प्रणाली पर संचिकाओं को डीफ्रैग्मेंट कर सकता है।<ref>[http://bitubique.com/content/defragment-xfs-file-system Bitubique.com] {{webarchive |url=https://web.archive.org/web/20090401211105/http://bitubique.com/content/defragment-xfs-file-system |date=April 1, 2009 }}</ref>




=== ऑनलाइन विकास ===
=== ऑनलाइन विकास ===
एक्सएफएस प्रदान करता है <code>एक्सएफएस_growfs</code> एक्सएफएस संचिका प्रणाली का ऑनलाइन विस्तार करने के लिए यूटिलिटी। एक्सएफएस संचिका प्रणाली को तब तक विकसित किया जा सकता है जब तक कि संचिका प्रणाली को रखने वाले उपकरण पर खाली जगह बची हो। यह सुविधा सामान्यतः वॉल्यूम प्रबंधन के संयोजन के साथ प्रयोग की जाती है, अन्यथा संचिका प्रणाली को धारण करने वाले [[डिस्क विभाजन]] को अलग से विस्तार करने की आवश्यकता होगी।
एक्सएफएस प्रदान करता है <code>एक्सएफएस_growfs</code> एक्सएफएस संचिका प्रणाली का ऑनलाइन विस्तार करने के लिए यूटिलिटी। एक्सएफएस संचिका प्रणाली को तब तक विकसित किया जा सकता है जब तक कि संचिका प्रणाली को रखने वाले उपकरण पर खाली जगह बची हो। यह सुविधा सामान्यतः आयतन  प्रबंधन के संयोजन के साथ प्रयोग की जाती है, अन्यथा संचिका प्रणाली को धारण करने वाले [[डिस्क विभाजन]] को अलग से विस्तार करने की आवश्यकता होगी।


== नुकसान ==
== हानि ==
* एक्सएफएस संचिकाप्रणाली नहीं कर सकता ({{as of|2022|07|lc=on}}) जगह में सिकुड़ जाना,<ref>[http://xfs.org/index.php/XFS_FAQ#Q:_Is_there_a_way_to_make_a_XFS_filesystem_larger_or_smaller.3F XFS.org] {{Webarchive|url=https://web.archive.org/web/20090105174540/http://www.xfs.org/index.php/XFS_FAQ#Q:_Is_there_a_way_to_make_a_XFS_filesystem_larger_or_smaller.3F |date=2009-01-05 }}, FAQ</ref> हालांकि कई संभावित समाधानों पर चर्चा की गई है।<ref>{{Cite mailing list |url= http://oss.sgi.com/archives/xfs/2002-01/msg02379.html |title= Re: Shrink an XFS filesystem? (LVM) |author= Eric Sandeen |date= Jan 18, 2002 |mailing-list=XFS mailing list |publisher= SGI | url-status=dead |archive-url=https://web.archive.org/web/20160203194451/http://oss.sgi.com/archives/xfs/2002-01/msg02379.html |archive-date=2016-02-03}}</ref>
* एक्सएफएस संचिका प्रणाली नहीं कर सकता ({{as of|2022|07|lc=on}}) जगह में सिकुड़ जाना,<ref>[http://xfs.org/index.php/XFS_FAQ#Q:_Is_there_a_way_to_make_a_XFS_filesystem_larger_or_smaller.3F XFS.org] {{Webarchive|url=https://web.archive.org/web/20090105174540/http://www.xfs.org/index.php/XFS_FAQ#Q:_Is_there_a_way_to_make_a_XFS_filesystem_larger_or_smaller.3F |date=2009-01-05 }}, FAQ</ref> हालांकि कई संभावित समाधानों पर चर्चा की गई है।<ref>{{Cite mailing list |url= http://oss.sgi.com/archives/xfs/2002-01/msg02379.html |title= Re: Shrink an XFS filesystem? (LVM) |author= Eric Sandeen |date= Jan 18, 2002 |mailing-list=XFS mailing list |publisher= SGI | url-status=dead |archive-url=https://web.archive.org/web/20160203194451/http://oss.sgi.com/archives/xfs/2002-01/msg02379.html |archive-date=2016-02-03}}</ref>
* एक्सएफएस में मेटाडेटा संचालन बाद में अनुप्रयुक्त किए गए जर्नलिंग संचिका प्रणाली की तुलना में धीमा था और बहुत बड़े लॉग के साथ कार्य करने के लिए डिज़ाइन किया गया था, उदाहरण के लिए, बड़ी संख्या में संचिकाों को हटाने जैसे संचालन के साथ धीमा प्रदर्शन। हालाँकि, जॉन नेल्सन द्वारा अनुप्रयुक्त की गई एक नई एक्सएफएस सुविधा और विलंबित लॉगिंग कहा जाता है, जो लिनक्स कर्नेल मेनलाइन के संस्करण 2.6.39 के बाद से उपलब्ध है, इसे हल करने के लिए कहा जाता है;<ref>{{cite web |title= जर्नल ओवरहेड को कम करके मेटाडेटा प्रदर्शन में सुधार|date= December 23, 2010 |work= XFS.org wiki |first= John |last=Nelson |url= http://xfs.org/index.php/Improving_Metadata_Performance_By_Reducing_Journal_Overhead |access-date= November 6, 2011 |archive-url= https://web.archive.org/web/20111006152854/http://xfs.org/index.php/Improving_Metadata_Performance_By_Reducing_Journal_Overhead |archive-date= October 6, 2011 |url-status= live }}</ref> 2010 में विकासक द्वारा किए गए प्रदर्शन बेंचमार्क ने प्रदर्शन स्तर को कम थ्रेड काउंट पर ext4 के समान और उच्च थ्रेड काउंट पर बेहतर होने का खुलासा किया।<ref>{{Cite mailing list |title=Re: PATCH 0/12 xfs: delayed logging V6 |first=John |last=Nelson |url=http://oss.sgi.com/archives/xfs/2010-05/msg00329.html |mailing-list=XFS Mailing List Message |date=May 24, 2010 |access-date=November 6, 2011 |archive-url=https://web.archive.org/web/20111205021317/http://oss.sgi.com/archives/xfs/2010-05/msg00329.html |archive-date=December 5, 2011 |url-status=live }}</ref>
* एक्सएफएस में मेटाडेटा संचालन बाद में अनुप्रयुक्त किए गए यथारूपता संचिका प्रणाली की तुलना में धीमा था और बहुत बड़े लॉग के साथ कार्य करने के लिए डिज़ाइन किया गया था, उदाहरण के लिए, बड़ी संख्या में संचिकाओं को हटाने जैसे संचालन के साथ धीमा प्रदर्शन। हालाँकि, जॉन नेल्सन द्वारा अनुप्रयुक्त की गई एक नई एक्सएफएस सुविधा और विलंबित लॉगिंग कहा जाता है, जो लिनक्स कर्नेल मेनलाइन के संस्करण 2.6.39 के बाद से उपलब्ध है, इसे हल करने के लिए कहा जाता है;<ref>{{cite web |title= जर्नल ओवरहेड को कम करके मेटाडेटा प्रदर्शन में सुधार|date= December 23, 2010 |work= XFS.org wiki |first= John |last=Nelson |url= http://xfs.org/index.php/Improving_Metadata_Performance_By_Reducing_Journal_Overhead |access-date= November 6, 2011 |archive-url= https://web.archive.org/web/20111006152854/http://xfs.org/index.php/Improving_Metadata_Performance_By_Reducing_Journal_Overhead |archive-date= October 6, 2011 |url-status= live }}</ref> 2010 में विकासक द्वारा किए गए प्रदर्शन बेंचमार्क ने प्रदर्शन स्तर को कम थ्रेड काउंट पर ext4 के समान और उच्च थ्रेड काउंट पर बेहतर होने का खुलासा किया।<ref>{{Cite mailing list |title=Re: PATCH 0/12 xfs: delayed logging V6 |first=John |last=Nelson |url=http://oss.sgi.com/archives/xfs/2010-05/msg00329.html |mailing-list=XFS Mailing List Message |date=May 24, 2010 |access-date=November 6, 2011 |archive-url=https://web.archive.org/web/20111205021317/http://oss.sgi.com/archives/xfs/2010-05/msg00329.html |archive-date=December 5, 2011 |url-status=live }}</ref>
* जर्नलिंग अक्षम नहीं की जा सकती। हालाँकि, एक्सएफएस इसके बजाय एक अलग खंड  उपकरण पर बाहरी जर्नल को लिख सकता है।<ref>{{cite web |title=बाहरी एक्सएफएस पत्रिकाओं के बारे में|url=https://docs.oracle.com/cd/E37670_01/E37355/html/ol_extjnl_xfs.html |website=oracle.com |access-date=16 November 2022}}</ref>
* यथारूपता अक्षम नहीं की जा सकती। हालाँकि, एक्सएफएस इसके बजाय एक अलग खंड  उपकरण पर बाहरी यथारूप को लिख सकता है।<ref>{{cite web |title=बाहरी एक्सएफएस पत्रिकाओं के बारे में|url=https://docs.oracle.com/cd/E37670_01/E37355/html/ol_extjnl_xfs.html |website=oracle.com |access-date=16 November 2022}}</ref>





Revision as of 07:18, 14 June 2023

एक्सएफएस
Developer(s)
Full nameएक्सएफएस
Introduced1994; 30 years ago (1994) with IRIX 5.3
Partition identifier
  • एमबीआर: 0x83: लिनक्स संचिका प्रणाली
  • जीपीटी: 0एफसी63डीएएफ-8483-4772-8इ79-3डी69डी8477डीइ4: लिनक्स संचिका प्रणाली [1]
Structures
Directory contentsबी+ ट्रीs
File allocationबी+ ट्री
Limits
Max. volume sizeएक्सबी बाइटs − 1 बाइट
Max. file size8 [[[एक्सबीबाइट]]s − 1 बाइट
Max. number of files264[2]
Max. filename length255 बाइटs
Allowed characters in filenamesAll except NULL and "/"
Features
Dates recordedatime, mtime, ctime,[3] version 5: crtime[4]
Date rangeDecember 13, 1901 – July 2, 2486[5]
Date resolution1 ns
AttributesYes
File system permissionsYes
Transparent compressionNo
Transparent encryptionNo (provided at the block device level)
Data deduplicationExperimental, Linux only[6]
Other
Supported operating systems

एक्सएफएस 1993 में सिलिकॉन आलेखी, (एसजीआई) द्वारा बनाया गया एक उच्च-प्रदर्शन 64-बिट यथारूपता संचिका प्रणाली है।[7] यह एसजीआई के आईआरआईएक्स संचालन प्रणाली में इसके संस्करण 5.3 से प्रारंभ होने वाली स्वतः निर्धारित संचिका प्रणाली थी। एक्सएफएस को 2001 में लिनक्स कर्नेल में पोर्ट किया गया था; जून 2014 तक, एक्सएफएस अधिकांश लिनक्स वितरणों द्वारा समर्थित है; रेड हैट उद्यम लिनक्स इसे अपने स्वतः निर्धारित संचिका प्रणाली के रूप में प्रयोग करता है।

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

इतिहास

सिलिकॉन आलेखी ने 1993 में एक्सएफएस[8] (X को बाद में भरा जाना था परन्तु कभी नहीं भरा जाना था) का विकास प्रारंभ किया।

संचिका प्रणाली मई 1999 में जीएनयू सामान्य जनता अनुज्ञापत्र (GPL) के अंतर्गत जारी किया गया था।[9] एसजीआई में स्टीव लॉर्ड के नेतृत्व में एक समूह ने इसे लिनक्स में पोर्ट किया[10] और लिनक्स वितरण द्वारा पहला समर्थन 2001 में आया। यह समर्थन धीरे-धीरे लगभग सभी लिनक्स वितरणों में उपलब्ध हो गया।[citation needed]

लिनक्स कर्नेल में एक्सएफएस के लिए प्रारंभिक समर्थन एसजीआई से पैच के माध्यम से आया। यह 2.6 श्रृंखला के लिए लिनक्स कर्नेल प्रमुख मार्ग में विलय हो गया और अलग से फरवरी 2004 में संस्करण 2.4.25 में 2.4 श्रृंखला में विलय कर दिया गया,[11] जिससे एक्सएफएस लिनक्स प्रणाली पर लगभग सार्वभौमिक रूप से उपलब्ध हो गया।[12] जेंटू लिनक्स 2002 के मध्य में स्वतः निर्धारित संचिका प्रणाली के रूप में एक्सएफएस के लिए एक विकल्प प्रस्तुत करने वाला पहला लिनक्स वितरण बन गया।[13]

फ्रीबीएसडी ने दिसंबर 2005 में एक्सएफएस के लिए केवल-पढ़ने के लिए समर्थन जोड़ा और जून 2006 में प्रायोगिक लेखन समर्थन प्रस्तुत किया। हालांकि, यह केवल लिनक्स से अभिगमन में सहायता के रूप में अभिप्रेत था, मुख्य संचिका प्रणाली के रूप में नहीं। फ्रीबीएसडी 10 ने एक्सएफएस के लिए समर्थन हटा दिया।[14]

2009 में, 64-बिट रेड हैट उद्यम लिनक्स (RHEL) लिनक्स वितरण के संस्करण 5.4 में एक्सएफएस संचिका प्रणाली के निर्माण और उपयोग के लिए आवश्यक कर्नेल समर्थन सम्मिलित था, परन्तु संबंधित समादेश रेखा उपकरण की कमी थी। सेंटओएस से उपलब्ध उपकरण उस उद्देश्य के लिए कार्य कर सकते थे और रेड हैट ने उन्हें अनुरोध पर आरएचईएल ग्राहकों को भी प्रदान किया।[15] 2010 में जारी आरएचईएल 6.0 में रेड हैट के मापनीय संचिका प्रणाली पूरक के भाग के रूप में शुल्क के लिए एक्सएफएस समर्थन सम्मिलित है।[16] 2011 में जारी दिव्यवक्ता लिनक्स 6 में एक्सएफएस का उपयोग करने का एक विकल्प भी सम्मिलित है।[17]

आरएचईएल 7.0, जून 2014 में जारी किया गया, एक्सएफएस को अपने स्वतः निर्धारित संचिका प्रणाली के रूप में उपयोग करता है,[18] जिसमें /बूट विभाजन के लिए एक्सएफएस का उपयोग करने के लिए समर्थन सम्मिलित है, जो पहले जीआरयूबी बूटलोडर में दोष के कारण व्यावहारिक नहीं था।[19]

लिनक्स कर्नेल 4.8 अगस्त 2016 में एक नई सुविधा, प्रतिलोम प्रतिचित्रण जोड़ा गया। यह नियोजित सुविधाओं के एक बड़े समुच्चय की नींव है: आशुचित्र प्रतिलिपि पर लेखन (COW) डेटा, डेटा प्रेषण, रीलिंक प्रतियां, ऑनलाइन डेटा और मेटाडेटा डेटा मार्जन, डेटा हानि या अनुपयोगी खंडों की अत्यधिक सटीक प्रतिवेदन और क्षतिग्रस्त या दूषित संचिका प्रणाली के पुनर्निर्माण में काफी सुधार हुआ है। इस कार्य के लिए एक्सएफएस के डिस्क स्वरूप में परिवर्तन की आवश्यकता है।[20][21]

लिनक्स कर्नेल 5.10, दिसंबर 2020 में जारी किया गया था, जिसमें पारंपरिक 32-बिट सेकंड प्रत्युत्तर के बजाय 64-बिट नैनोसेकंड प्रत्युत्तर के रूप में इनोड टाइमस्टैम्प को संग्रहीत करने के लिए बिगटाइम प्रस्तुत किया गया था। यह पिछले वर्ष 2038 की समस्या को वर्ष 2486 तक के लिए स्थगित कर देता है।[5]


विशेषताएं

क्षमता

एक्सएफएस एक 64-बिट संचिका प्रणाली है[22] और 8 एक्सबिबाइट न्यूनतम एक बाइट (263 − 1 बाइट) के अधिकतम संचिका प्रणाली आकार का समर्थन करता है, परन्तु होस्ट संचालन प्रणाली द्वारा लगाई गई सीमाएं इस सीमा को कम कर सकती हैं। 32-बिट लिनक्स प्रणाली संचिका और संचिका प्रणाली दोनों के आकार को 16 टेबीबाइट तक सीमित करता है।

यथारूपता

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

एक्सएफएस यथारूप को संचिका प्रणाली के डेटा अनुभाग (आंतरिक लॉग के रूप में), या डिस्क विवाद को कम करने के लिए एक भिन्न उपकरण पर संग्रहीत किया जा सकता है।

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

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

आवंटन समूह

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

यह आर्किटेक्चर कई प्रोसेसर और/या कोर वाले प्रणाली पर समानांतर I/O प्रदर्शन को अनुकूलित करने में मदद करता है, क्योंकि मेटाडेटा अपडेट को भी समानांतर किया जा सकता है। आवंटन समूहों द्वारा प्रदान किया गया आंतरिक विभाजन विशेष रूप से फायदेमंद हो सकता है जब संचिका प्रणाली कई भौतिक उपकरणों को फैलाता है, अंतर्निहित भंडारण घटकों के थ्रूपुट के इष्टतम उपयोग की अनुमति देता है।

धारीदार आवंटन

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

विस्तार आधारित आवंटन

एक्सएफएस संचिका प्रणाली पर संग्रहीत संचिकाओं में उपयोग किए जाने वाले खंड को चर लंबाई सीमा (संचिका प्रणाली) के साथ प्रबंधित किया जाता है, जहां एक सीमा एक या अधिक सन्निहित खंडों का वर्णन करती है। यह संचिका प्रणाली की तुलना में खंड की सूची को काफी छोटा कर सकता है, जो संचिका द्वारा व्यक्तिगत रूप से उपयोग किए जाने वाले सभी खंडों को सूचीबद्ध करता है।

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

परिवर्तनीय खंड आकार

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

विलंबित आवंटन

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

विरल संचिकाें

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

विस्तारित गुण

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

उन्हें आगे दो नामस्थानों में विभाजित किया गया है: root और user. रूट नेमस्पेस में संग्रहीत विस्तारित विशेषताओं को केवल सुपरयूजर द्वारा संशोधित किया जा सकता है, जबकि यूजर नेमस्पेस में विशेषताओं को किसी भी उपयोगकर्ता द्वारा संचिका में लिखने की अनुमति के साथ संशोधित किया जा सकता है।

विस्तारित विशेषताओं को किसी भी प्रकार के एक्सएफएस इनोड से जोड़ा जा सकता है, जिसमें प्रतीकात्मक लिंक, उपकरण नोड, निर्देशिका आदि सम्मिलित हैं। attr e> उपयोगिता का उपयोग कमांड लाइन से विस्तारित विशेषताओं में हेरफेर करने के लिए किया जा सकता है, और एक्सएफएसdump और एक्सएफएसrestore उपयोगिताओं को विस्तारित विशेषताओं के बारे में पता है, और उनकी सामग्री का बैक अप और पुनर्स्थापित करेगा। अधिकांश अन्य बैकअप प्रणाली विस्तारित विशेषताओं के साथ कार्य करने का समर्थन नहीं करते हैं।

प्रत्यक्ष I/O

डिस्क के लिए उच्च थ्रूपुट की आवश्यकता वाले अनुप्रयोगों के लिए, एक्सएफएस एक प्रत्यक्ष I/O कार्यान्वयन प्रदान करता है जो गैर-कैश्ड I/O संचालन को सीधे उपयोक्ता स्थान पर अनुप्रयुक्त करने की अनुमति देता है। डेटा को एप्लिकेशन के बफर और डिस्क के मध्य प्रत्यक्ष मेमोरी एक्सेस का उपयोग करके स्थानांतरित किया जाता है, जो अंतर्निहित डिस्क उपकरणों के पूर्ण I/O बैंड विस्तार तक पहुंच की अनुमति देता है।

गारंटी-दर I/O

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

गारंटी-दर I/O केवल IRIX के तहत समर्थित था, और उस उद्देश्य के लिए विशेष हार्डवेयर की आवश्यकता थी।[23]


डीएमएपीआई

एक्सएफएस ने IRIX में पदानुक्रमित संग्रहण प्रबंधन का समर्थन करने के लिए DMAPI इंटरफ़ेस अनुप्रयुक्त किया। अक्टूबर 2010 तक, एक्सएफएस के लिनक्स कार्यान्वयन ने डीएमएपीआई कार्यान्वयन के लिए आवश्यक ऑन-डिस्क मेटाडेटा का समर्थन किया, परन्तु कर्नेल समर्थन कथित तौर पर प्रयोग करने योग्य नहीं था। कुछ समय के लिए, एसजीआई ने एक कर्नेल ट्री की मेजबानी की जिसमें डीएमएपीआई हुक सम्मिलित थे, परन्तु इस समर्थन को पर्याप्त रूप से बनाए नहीं रखा गया है, हालांकि कर्नेल विकासक्स ने इस समर्थन को अद्यतित करने का इरादा बताया है।[24]


आशुचित्र

एक्सएफएस अभी तक नहीं है[25] आशुचित्र के लिए प्रत्यक्ष समर्थन प्रदान करें, क्योंकि यह वर्तमान में आयतन मैनेजर द्वारा आशुचित्र प्रक्रिया को अनुप्रयुक्त करने की अपेक्षा करता है। एक्सएफएस संचिका प्रणाली का आशुचित्र लेने से संचिका प्रणाली में I/O को अस्थायी रूप से रोकना सम्मिलित है एक्सएफएस_freeze उपयोगिता, आयतन प्रबंधक होने से वास्तविक आशुचित्र निष्पादित होता है, और उसके बाद सामान्य संचालन जारी रखने के लिए I/O को फिर से प्रारंभ करना। आशुचित्र को बैकअप उद्देश्यों के लिए केवल पढ़ने के लिए माउंट किया जा सकता है।

आईआरआईएक्स में एक्सएफएस के रिलीज में एक्सएलवी नामक एक एकीकृत मात्रा प्रबंधक सम्मिलित है। इस आयतन मैनेजर को लिनक्स में पोर्ट नहीं किया गया है, और इसके बजाय एक्सएफएस लिनक्स प्रणाली में मानक लॉजिकल आयतन मैनेजर (लिनक्स) के साथ कार्य करता है।

हाल के लिनक्स कर्नेल में, एक्सएफएस_freeze कार्यक्षमता VFS परत में कार्यान्वित की जाती है, और आयतन मैनेजर की आशुचित्र कार्यक्षमता अनुप्रयुक्त होने पर स्वचालित रूप से निष्पादित होती है। यह एक बार एक मूल्यवान लाभ था क्योंकि ext3 संचिका प्रणाली को निलंबित नहीं किया जा सकता था[26] और आयतन प्रबंधक अत्यधिक व्यस्त डेटाबेस का बैक अप लेने के लिए लगातार हॉट आशुचित्र बनाने में असमर्थ था।[27] सौभाग्य से अब ऐसा नहीं है। लिनक्स 2.6.29 के बाद से, संचिका प्रणाली ext3, ext4, GFS2 और JFS (संचिका प्रणाली) में फ्रीज सुविधा भी है।[28]


ऑनलाइन डीफ़्रेग्मेंटेशन

हालांकि एक्सएफएस की सीमा-आधारित प्रकृति और इसके द्वारा उपयोग की जाने वाली विलंबित आवंटन रणनीति विखंडन की समस्याओं के लिए संचिका प्रणाली के प्रतिरोध में काफी सुधार करती है, एक्सएफएस एक संचिकाप्रणाली डीफ्रैग्मेंटेशन उपयोगिता प्रदान करता है (एक्सएफएस_fsr, एक्सएफएस संचिका प्रणाली रीऑर्गनाइजर के लिए छोटा) जो माउंटेड और सक्रिय एक्सएफएस संचिका प्रणाली पर संचिकाओं को डीफ्रैग्मेंट कर सकता है।[29]


ऑनलाइन विकास

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

हानि

  • एक्सएफएस संचिका प्रणाली नहीं कर सकता (as of July 2022) जगह में सिकुड़ जाना,[30] हालांकि कई संभावित समाधानों पर चर्चा की गई है।[31]
  • एक्सएफएस में मेटाडेटा संचालन बाद में अनुप्रयुक्त किए गए यथारूपता संचिका प्रणाली की तुलना में धीमा था और बहुत बड़े लॉग के साथ कार्य करने के लिए डिज़ाइन किया गया था, उदाहरण के लिए, बड़ी संख्या में संचिकाओं को हटाने जैसे संचालन के साथ धीमा प्रदर्शन। हालाँकि, जॉन नेल्सन द्वारा अनुप्रयुक्त की गई एक नई एक्सएफएस सुविधा और विलंबित लॉगिंग कहा जाता है, जो लिनक्स कर्नेल मेनलाइन के संस्करण 2.6.39 के बाद से उपलब्ध है, इसे हल करने के लिए कहा जाता है;[32] 2010 में विकासक द्वारा किए गए प्रदर्शन बेंचमार्क ने प्रदर्शन स्तर को कम थ्रेड काउंट पर ext4 के समान और उच्च थ्रेड काउंट पर बेहतर होने का खुलासा किया।[33]
  • यथारूपता अक्षम नहीं की जा सकती। हालाँकि, एक्सएफएस इसके बजाय एक अलग खंड उपकरण पर बाहरी यथारूप को लिख सकता है।[34]


यह भी देखें

संदर्भ

  1. "GPT fdisk - ArchWiki".
  2. "What is the maximum number of inodes in Linux filesystems?". 2014-06-17.
  3. "XFS Filesystem Structure 2nd Edition, Revision 1" (PDF). p. 25. Archived from the original (PDF) on 2017-10-31.
  4. "ondisk_inode.asciidoc\XFS_Filesystem_Structure\design - xfs/xfs-documentation.git - XFS AsciiDoc Documentation tree". git.kernel.org.
  5. 5.0 5.1 Darrick J. Wong (2020-08-10). "xfs: widen timestamps to deal with y2038".
  6. "Duperemove". GitHub. Archived from the original on 6 March 2016. Retrieved 21 August 2016.
  7. "xFS: The Extension of EFS - "x" for To-be-Determined (but the Name Stuck)". XFS.org. Archived from the original on 2014-07-14.
  8. Smith, Roderick W. (2007). Linux Administrator Street Smarts: A Real World Guide to Linux Certification Skills. Street smarts series. John Wiley & Sons. p. 204. ISBN 9780470116746. Archived from the original on 2016-08-21. Retrieved 2016-03-21. Silicon Graphics (SGI) created its Extents File System (XFS) for its IRIX OS and [...] later donated the code to Linux.
  9. "SGI ओपन-सोर्सिंग XFS". slashdot.org. 1999-05-19. Retrieved 2023-04-12.{{cite web}}: CS1 maint: url-status (link)
  10. "XFS को Linux में पोर्ट करना". Olstrans.SourceForge.net. 2000-07-21. Archived from the original on 2013-02-25. Retrieved 2013-04-29.
  11. "Linux kernel 2.4.25 changelog". kernel.org. 2004-02-18. Archived from the original on 2014-08-19. Retrieved 2014-08-14.
  12. Daniel Robbins (January 1, 2002). "Common threads: Advanced filesystem implementor's guide, Part 9, Introducing XFS". Developer Works. IBM. Archived from the original on September 4, 2015. Retrieved November 6, 2011.
  13. Daniel Robbins (April 1, 2002). "Common threads: Advanced filesystem implementor's guide, Part 10, Deploying XFS". Developer Works. IBM. Archived from the original on December 24, 2011. Retrieved November 6, 2011.
  14. "Has FreeBSD 10 Dropped Support For XFS?". Lists.freebsd.org. 2013-10-27. Archived from the original on 2014-03-30. Retrieved 2014-03-30.
  15. "Bug 521173 -xfsprogs is missing in RHEL-5.4". RedHat.com. May 24, 2010. Archived from the original on July 10, 2012. Retrieved November 6, 2011.
  16. "Red Hat Enterprise Linux स्केलेबल फ़ाइल सिस्टम ऐड-ऑन". RedHat.com. Archived from the original on 2014-05-29. Retrieved 2014-05-22.
  17. "Oracle Linux 6 Release Notes". Oracle Corporation. February 2011. Archived from the original on 2012-03-28. Retrieved 2013-04-07. Oracle Linux 6 includes many new features, including [...] XFS [:] Oracle Linux 6 includes XFS as an optional filesystem.
  18. "Red Hat Unveils Red Hat Enterprise Linux 7, Redefining the Enterprise Operating System". Red Hat. 2014-06-10. Archived from the original on 2014-06-13. Retrieved 2014-06-10.
  19. "Bug 250843 -grub-install hangs on xfs". Redhat.com. May 4, 2009. Archived from the original on July 10, 2012. Retrieved November 6, 2011.
  20. "kernel/git/torvalds/linux.git - Linux kernel source tree". git.kernel.org.
  21. "Linux_4.8 - Linux Kernel Newbies". Archived from the original on 2018-10-19. Retrieved 2018-10-19.
  22. "एक्सएफएस अवलोकन". Silicon Graphics International Corp. 2013-07-02. Archived from the original on 2013-06-06. Retrieved 2013-07-02.
  23. John Nelson (July 30, 2012). "Re: Re: realtime section bugs still around". XFS mailing list (Mailing list). SGI. Archived from the original on April 14, 2014. Retrieved April 13, 2014.
  24. Christoph Hellwig (October 3, 2010). "Re: Linux and DMAPI". XFS mailing list (Mailing list). SGI. Archived from the original on September 27, 2011. Retrieved November 6, 2011.
  25. "XFS: There and back ... and there again? [LWN.net]". lwn.net. Archived from the original on 2016-10-27. Retrieved 2016-10-27.
  26. "How to freeze ext3 file system". www.linuxquestions.org. Archived from the original on 2011-04-28. Retrieved 2011-08-24.
  27. "LVM snapshots: How to use?". www.linuxquestions.org. Archived from the original on 2011-01-17. Retrieved 2010-04-17.
  28. "kernel/git/torvalds/linux.git - Linux kernel source tree". git.kernel.org.
  29. Bitubique.com Archived April 1, 2009, at the Wayback Machine
  30. XFS.org Archived 2009-01-05 at the Wayback Machine, FAQ
  31. Eric Sandeen (Jan 18, 2002). "Re: Shrink an XFS filesystem? (LVM)". XFS mailing list (Mailing list). SGI. Archived from the original on 2016-02-03.
  32. Nelson, John (December 23, 2010). "जर्नल ओवरहेड को कम करके मेटाडेटा प्रदर्शन में सुधार". XFS.org wiki. Archived from the original on October 6, 2011. Retrieved November 6, 2011.
  33. Nelson, John (May 24, 2010). "Re: PATCH 0/12 xfs: delayed logging V6". XFS Mailing List Message (Mailing list). Archived from the original on December 5, 2011. Retrieved November 6, 2011.
  34. "बाहरी एक्सएफएस पत्रिकाओं के बारे में". oracle.com. Retrieved 16 November 2022.


अग्रिम पठन


बाहरी संबंध