एप्पल फाइल सिस्टम

एप्पल फाइल प्रणाली (एपीएफएस) मालिकाना सॉफ़्टवेयर फ़ाइल प्रणाली है जिसे एप्पल Inc. द्वारा मैकओएस सिएरा (10.12.4) एवं पश्चात के संस्करण, iOS10.3 एवं पश्चात संस्करण tvOS 10.2 एवं वॉचओएस 3.2 एवं पश्चात का संस्करण, एवं आईपैडओएस के सभी संस्करण के लिए विकसित और तैनात किया गया है। इसका लक्ष्य इन ऑपरेटिंग प्रणालियों पर एपीएफएस के पूर्ववर्ती, एचएफएस प्लस (जिसे मैक ओएस एक्सटेंडेड भी कहा जाता है) की आलोचनाओं को ठीक करना है। एपीएफएस को सॉलिड-स्टेट ड्राइव स्टोरेज के लिए अनुकूलित किया गया है एवं यह अन्य क्षमताओं के अतिरिक्त कूटलेखन, स्नैपशॉट एवं विस्तृत डेटा अखंडता का समर्थन करता है।

इतिहास
एप्पल फाइल प्रणाली की घोषणा जून 2016 में एप्पल के एप्पल वर्ल्डवाइड डेवलपर्स कॉन्फ्रेंस (डब्ल्यूडब्ल्यूडीसी) में एचएफएस+ के प्रतिस्थापन के रूप में की गई थी, जो 1998 से उपयोग में था। एपीएफएस को 64-बिट आईओएस उपकरणों के लिए 27 मार्च, 2017 को आईओएस 10.3 की प्रस्तावना के साथ, एवं मैकओएस उपकरणों के लिए 25 सितंबर, 2017 को मैकओएस 10.13 की प्रस्तावना के साथ प्रारम्भ किया गया था।  एप्पल ने सितंबर 2018 में एपीएफएस के लिए आंशिक विनिर्देश प्रस्तावित किया जो अनवीनन्क्रिप्टेड, अन्य-फ़्यूज़न स्टोरेज डिवाइस पर एप्पल फ़ाइल प्रणाली तक केवल-पढ़ने के लिए पहुंच का समर्थन करता है। सॉफ़्टवेयर कूटलेखन के विनिर्देशन को पश्चात में प्रलेखित किया गया था।

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

विभाजन विधि

एपीएफएस GUID विभाजन तालिका विभाजन विधि का उपयोग करता है। जीपीटी विधि के अंतर्गत या अधिक एपीएफएस कंटेनर हैं। (विभाजन प्रकार GUID 7C3457EF-0000-11AA-AA11-00306543ECAC है) प्रत्येक कंटेनर के अंदर या अधिक एपीएफएस वॉल्यूम होते हैं, जो सभी कंटेनर के आवंटित स्थान की समिति करते हैं, एवं प्रत्येक वॉल्यूम में एपीएफएस वॉल्यूम भूमिकाएँ हो सकती हैं। मैकओएस कैटालिना (मैकओएस 10.15) ने एपीएफएस वॉल्यूम समूह प्रस्तुत किया, जो वॉल्यूम के समूह हैं जिन्हें फाइंडर वॉल्यूम के रूप में प्रदर्शित करता है। एपीएफएस फर्मलिं हार्ड लिंक एवं सॉफ्ट लिंक एवं वॉल्यूम के मध्य लिंक के मध्य स्थित हैं।

मैकओएस कैटालिना में प्रणाली वॉल्यूम भूमिका (सामान्यतः मैकिंटोश एचडी नाम दिया गया) केवल पढ़ने के लिए बन गई, एवं मैकओएस बिग सुर (मैकओएस 11) में यह हस्ताक्षरित प्रणाली वॉल्यूम (एसएसवी) बन गया एवं केवल वॉल्यूम स्नैपशॉट माउंट किए गए हैं। वह डेटा वॉल्यूम भूमिका (सामान्यतः इसका नाम मैकिंटोश एचडी डेटा है) का उपयोग ओवरले या छाया के रूप में किया जाता है। प्रणाली एवं डेटा वॉल्यूम दोनों समान वॉल्यूम समूह का भाग होते हैं एवं फाइंडर में एक के रूप में प्रदर्शित किए गए हैं।

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

स्नैपशॉट
एपीएफएस वॉल्यूम फ़ाइल प्रणाली का पॉइंट-इन-टाइम, रीड-ओनली इंस्टेंस बनाने के लिए स्नैपशॉट (कंप्यूटर स्टोरेज) का समर्थन करता है।

कूटलेखन

एप्पल फ़ाइल प्रणाली मूल रूप से डिस्क कूटलेखन का समर्थन करता है, एवं निम्नलिखित विकल्पों के साथ फ़ाइल कूटलेखन:
 * कोई कूटलेखन नहीं है।
 * एकल कुंजी कूटलेखन है।
 * बहु-कुंजी कूटलेखन, जहां प्रत्येक फ़ाइल को भिन्न कुंजी के साथ एन्क्रिप्ट किया जाता है, एवं मेटा डेटा को भिन्न कुंजी के साथ एन्क्रिप्ट किया जाता है।

फ़ाइलों की अधिकतम संख्या में वृद्धि

एपीएफएस 64-बिट इनोड संख्याओं का समर्थन करता है, एकल वॉल्यूम पर 9 क्विंटिलियन (263) से अधिक फ़ाइलों का समर्थन करता है।

डेटा अखंडता

एप्पल फ़ाइल प्रणाली मेटाडेटा के लिए डेटा अखंडता सुनिश्चित करने के लिए चेकसम, का उपयोग करता है।

दुर्घटना सुरक्षा

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

कम्प्रेशन

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

अंतरिक्ष समितिकरण

एपीएफएस ही कंटेनर में एकाधिक लॉजिकल ड्राइव (वॉल्यूम (कंप्यूटिंग) के रूप में संदर्भित) रखने की क्षमता जोड़ता है जहां उस कंटेनर (ब्लॉक डिवाइस) में सभी वॉल्यूम के लिए रिक्त स्थान उपलब्ध है।

सीमाएँ
जबकि एपीएफएस में अपने पूर्ववर्ती, एचएफएस+ की अपेक्षा में कई सुधार सम्मिलित हैं, कई सीमाएँ नोट की गई हैं।

उपयोगकर्ता डेटा के लिए सीमित अखंडता शोध
एपीएफएस उपयोगकर्ता डेटा के लिए चेकसम प्रदान नहीं करता है। यह बाइट-एड्रेसेबल अन्य-वाष्पशील रैंडम-्सेस मेमोरी का भी लाभ नहीं उठाता है।

हार्ड डिस्क ड्राइव पर प्रदर्शन

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

मैकओएस 11 से पूर्व टाइम मशीन के साथ संगतता

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

सुरक्षा मुद्दे

 * मार्च 2018 में, हाई सिएरा में एपीएफएस ड्राइवर में  बग पाया गया जिसके कारण डिस्क कूटलेखन पासवर्ड प्लेनटेक्स्ट में लॉग इन हो जाता है।
 * जनवरी 2021 में, iOS <14.4, मैकओएस <11.2, वॉचओएस <7.3, एवं tvOS <14.4 में  एपीएफएस ड्राइवर में बग पाया गया जो स्थानीय उपयोगकर्ता को उनकी अनुमतियों का विचार किए बिना फ़ाइलों को पढ़ने की अनुमति देता था।

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

आईओएस, टीवीओएस, एवं वॉचओएस
आईओएस 10.3, tvOS 10.2, एवं वॉचओएस 3.2 संगत उपकरणों पर उपस्थित एचएफएसएक्स फ़ाइल प्रणाली को एपीएफएस में परिवर्तित करते हैं।

तृतीय-पक्ष उपयोगिताएँ

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

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

यह भी देखें

 * फ़ाइल प्रणाली की अपेक्षा

बाहरी संबंध

 * एप्पल Developer: एप्पल File System Guide
 * एप्पल Developer: एप्पल File System Reference
 * डब्ल्यूडब्ल्यूडीसी 2016: Introduction of एपीएफएस by एप्पल software engineers Dominic Giampaolo and Eric Tamura
 * Detailed Overview of एपीएफएस by independent file system developer Adam Leventhal