SDCardFS बहिष्करण

SDCardFS उन डिवाइसों पर अप्रचलित है जो Android 11 या उच्चतर के साथ लॉन्च होते हैं और कर्नेल संस्करण 5.4 या उच्चतर चलाते हैं। ऐसे उपकरणों पर, वीटीएस परीक्षण एसडीकार्डएफएस के रूप में सूचीबद्ध माउंटेड फ़ाइल सिस्टम की अनुमति नहीं देता है। वे डिवाइस जो Android 11 या उच्चतर के साथ लॉन्च होते हैं लेकिन कर्नेल संस्करण 4.19 या उससे कम पर चलते हैं, SDCardFS का उपयोग जारी रख सकते हैं, लेकिन Google अतिरिक्त समर्थन प्रदान नहीं करता है।

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

SDCardFS प्रतिस्थापन कार्यक्षमता

SDCardFS का प्रतिस्थापन समान परिणाम प्राप्त करने के लिए कई Linux कर्नेल फ़ाइल सिस्टम सुविधाओं का उपयोग करता है। मामले की असंवेदनशीलता को सीधे फ़ाइल सिस्टम द्वारा नियंत्रित किया जाता है; इसके परिणामस्वरूप केस-सेंसिटिव और केस-इनसेंसिटिव फ़ोल्डरों में लुकअप समय लगभग समान हो जाता है, जिससे SDCardFS से बड़े फ़ोल्डर की गति धीमी हो जाती है। कोटा ट्रैकिंग जो एसडीकार्डएफएस सेटिंग्स के लिए स्टोरेज डेटा को जल्दी से इकट्ठा करने के लिए कर रहा था, अब प्रोजेक्ट कोटा का उपयोग करके यूजरस्पेस से कॉन्फ़िगर किया गया है। कुछ प्रदर्शन-संवेदनशील संदर्भों में, निर्देशिकाओं को जगह-जगह बाइंड माउंट किया जाता है। एक नया FUSE कार्यान्वयन सीधे फ़ाइल सिस्टम एक्सेस के लिए स्कोप्ड स्टोरेज प्रदान करता है, मुख्य रूप से स्थान जानकारी के संशोधन का समर्थन करने के लिए।

एसडीकार्ड प्रतिस्थापन कार्यक्षमता कॉन्फ़िगर करें

एंड्रॉइड 11 या उच्चतर के साथ लॉन्च किए गए डिवाइस पर SDCardFS के बिना एमुलेटेड स्टोरेज के लिए प्रोजेक्ट कोटा और केस फोल्डिंग को सक्षम करने के लिए, device.mk फ़ाइल में emulated_storage.mk से इनहेरिट करें:

$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk)

चेतावनी: एंड्रॉइड 10 या उससे पहले के संस्करण के साथ लॉन्च किए गए उपकरणों पर ऐसा करें, क्योंकि फ़ाइल सिस्टम मूल केस-असंवेदनशीलता ऐसे उपकरणों पर उपयोग की जाने वाली फ़ाइल-आधारित एन्क्रिप्शन सेटिंग्स के साथ असंगत है। ऐसे उपकरणों पर SDCardFS का उपयोग करते रहना आवश्यक है।

SDCardFS को अस्वीकृत करने के कारण

SDCardFS को अस्वीकृत करने के कई कारण हैं।

स्थिरता

SDCardFS केस संवेदनशीलता से संबंधित कई दौड़ स्थितियों के साथ-साथ कम मेमोरी परिस्थितियों से संबंधित कुछ मुद्दों से ग्रस्त है। बड़ी निर्देशिकाओं में केस-असंवेदनशील लुकअप काफी धीमा हो सकता है क्योंकि वैकल्पिक मामलों को खोजने के लिए लुकअप को निचली निर्देशिका में चलना पड़ता है। एक ही समय में ऊपरी और निचले फ़ाइल सिस्टम तक पहुँचने से भी समस्याएँ हो सकती हैं।

अपस्ट्रीम समता

SDCardFS को बाइंड माउंट पर बदलते विकल्पों का समर्थन करने के लिए VFS में अतिरिक्त पैच की आवश्यकता होती है। ये पैच इन क्षेत्रों में अपस्ट्रीम परिवर्तनों को स्वीकार करने के लिए अतिरिक्त कार्य का कारण बनते हैं। इस समस्या को दूर करते हुए SDCardFS की विशेषताओं को अपस्ट्रीम घटकों द्वारा दोहराया जा सकता है।

एपीआई के साथ फीचर समानता

एंड्रॉइड की पिछली रिलीज में, स्कोप्ड स्टोरेज ने विशेष प्रकार के मेटाडेटा तक पहुंच सीमित कर दी थी। SDCardFS के माध्यम से डायरेक्ट स्टोरेज एक्सेस इन स्कोप्ड स्टोरेज सुविधाओं का समर्थन नहीं करता है।