PAX (प्री-एलोकेट एक्सटेंशन) एक ओपन-सोर्स कंप्रेस्ड आर्काइव फॉर्मेट है जिसे माइक्रोसॉफ्ट द्वारा ZIP, RAR और tar जैसे मौजूदा फॉर्मेट के आधुनिक विकल्प के रूप में विकसित किया गया है। इसे आधुनिक सिस्टम और डिवाइस पर आर्काइव हैंडलिंग की कम्प्रेशन, परफॉर्मेंस, सिक्योरिटी और कार्यक्षमता को संबोधित करने और सुधारने के लिए डिज़ाइन किया गया था।
PAX फॉर्मेट की प्रमुख विभेदक विशेषताओं में आधुनिक एल्गोरिदम का उपयोग करके बढ़ी हुई कम्प्रेशन, आर्काइव के भीतर फाइलों तक कुशल रैंडम एक्सेस, नेटिव मल्टी-थ्रेडिंग सपोर्ट, एक्सटेंसिबल मेटाडेटा, बिल्ट-इन एन्क्रिप्शन और इंटीग्रिटी चेकिंग और व्यापक अपनाने और इंटरऑपरेबिलिटी को प्रोत्साहित करने के लिए एक प्रलेखित ओपन स्पेसिफिकेशन शामिल है।
PAX आर्काइव .pax फाइल एक्सटेंशन का उपयोग करते हैं और एक मल्टी-पार्ट इंटरनल स्ट्रक्चर होता है जिसमें एक हेडर, सेंट्रल डायरेक्टरी, कंप्रेस्ड डेटा ब्लॉक और एक फुटर होता है। यह आर्काइव कंटेंट, कम्प्रेशन पैरामीटर और इंटीग्रिटी हैश जैसी प्रमुख जानकारी को वास्तविक कंप्रेस्ड फाइल डेटा से अलग से स्टोर करने की अनुमति देता है।
PAX हेडर पहचान के लिए 4-बाइट मैजिक नंबर (हेक्स में 50 41 58 00) से शुरू होता है। इसमें PAX वर्जन, कम्प्रेशन मेथड, एन्क्रिप्शन मेथड, हैश मेथड, ब्लॉक साइज, पैरेलल कम्प्रेशन थ्रेड की संख्या और विभिन्न फ्लैग के लिए फील्ड होते हैं। हेडर आर्काइव के बारे में विवरण प्रदान करने वाले एक्सटेंसिबल XML मेटाडेटा के साथ समाप्त होता है।
हेडर के बाद PAX सेंट्रल डायरेक्टरी है। इसमें आर्काइव में प्रत्येक कंप्रेस्ड फाइल/फोल्डर के लिए एक एंट्री होती है, जो फुल पाथ, एट्रिब्यूट, साइज, ब्लॉक ऑफसेट और हैश को स्टोर करती है। इसे एक जगह रखने से आर्काइव कंटेंट को कुशलतापूर्वक लिस्ट करने और कंप्रेस्ड डेटा को स्कैन किए बिना अलग-अलग फाइलों तक रैंडम एक्सेस की अनुमति मिलती है।
PAX आर्काइव का बड़ा हिस्सा कंप्रेस्ड डेटा ब्लॉक की एक श्रृंखला है। प्रत्येक ब्लॉक में एक छोटा हेडर होता है जो अनकंप्रेस्ड और कंप्रेस्ड साइज को इंगित करता है, इसके बाद कॉन्फ़िगर किए गए एल्गोरिदम के साथ कंप्रेस्ड फाइल डेटा का एक हिस्सा होता है। ब्लॉक डिफ़ॉल्ट रूप से 1 एमबी आकार के होते हैं लेकिन यह आर्काइव हेडर में ट्यूनेबल है।
यदि कोई एन्क्रिप्शन मेथड निर्दिष्ट है तो कंप्रेस्ड डेटा ब्लॉक वैकल्पिक रूप से एन्क्रिप्ट किए जाते हैं। PAX, AES-256 जैसी आधुनिक एन्क्रिप्शन योजनाओं का समर्थन करता है। आर्काइव पासवर्ड का उपयोग एक कुंजी प्राप्त करने के लिए किया जाता है जो प्रत्येक ब्लॉक को स्वतंत्र रूप से एन्क्रिप्ट करती है, जिससे कुशल रैंडम एक्सेस की अनुमति मिलती है। प्रमाणीकरण के लिए, PAX एक सुरक्षित KDF के साथ पासवर्ड को हैश करता है।
कम्प्रेशन के लिए, PAX विभिन्न प्रकार के आधुनिक सामान्य-उद्देश्य वाले कोडेक का समर्थन करता है जो तेजी से डीकम्प्रेशन के लिए अनुकूलित हैं: LZMA, LZ4, Brotli, Zstandard, आदि। यह विशिष्ट फाइलटाइप पर आकार को और कम करने के लिए प्रीप्रोसेसर की भी अनुमति देता है (जैसे EXEs/DLLs पर डेल्टा एन्कोडिंग, x86 कोड पर E8E9 एन्कोडिंग)। कोडेक और प्रीप्रोसेसर एक पाइपलाइन में लागू किए जाते हैं।
कुशल मल्टी-थ्रेडेड कम्प्रेशन को सक्षम करने के लिए, फाइलों को स्वतंत्र रूप से कंप्रेस्ड ब्लॉक में विभाजित किया जाता है जिन्हें समानांतर कोडेक इंस्टेंस द्वारा संसाधित किया जा सकता है। PAX कंप्रेसर सभी उपलब्ध CPU कोर का उपयोग करने के लिए स्वचालित रूप से स्केल करता है। इसी तरह का विभाजन तेजी से निष्कर्षण के लिए समान ांतर डीकम्प्रेशन की अनुमति देता है।
PAX मूल और कंप्रेस्ड डेटा के हैश को स्टोर करके डेटा इंटीग्रिटी और छेड़छाड़ का पता लगाता है। आर्काइव में ट्रंकेशन का पता लगाने के लिए एक हेडर हैश होता है। फाइल मेटाडेटा के साथ छेड़छाड़ को रोकने के लिए सेंट्रल डायरेक्टरी को भी हैश किया जाता है। कंप्रेस्ड डेटा में बिट रोट को प्रत्येक ब्लॉक को हैश करके पकड़ा जाता है।
PAX आर्काइव के अंत में फुटर होता है। इसमें हेडर फील्ड की एक कॉपी, सेंट्रल डायरेक्टरी का ऑफसेट/साइज और एक संपूर्ण-आर्काइव हैश होता है। फुटर एक निश्चित आकार का होता है और हमेशा फाइल के अंत में होता है, जिससे PAX आर्काइव का आसान स्थान और सत्यापन होता है।
PAX आर्काइव को सेंट्रल डायरेक्टरी को संशोधित करके और बदले हुए डेटा ब्लॉक को जोड़कर कुशलतापूर्वक अपडेट किया जा सकता है, बनाम ZIP जैसे संपूर्ण आर्काइव को फिर से लिखना। मेटाडेटा को अपडेट करके और प्रासंगिक ब्लॉक को जोड़ने/हटाने से पूरी फाइलों को डाला, हटाया या बदला जा सकता है। आर्काइव को भी जल्दी से जोड़ा जा सकता है।
ज़िप-स्लिप भेद्यताओं को कम करने के लिए, PAX को स्पष्ट पथ (कोई ../ ट्रैवर्सल नहीं) की आवश्यकता होती है और निष्कर्षण रूट के बाहर लिखने से रोकता है। लंबे ZIP मेटाडेटा फ़ील्ड जो सेवा से इनकार को सक्षम करते हैं, प्रतिबंधित हैं। कम्प्रेशन अनुपात और मेमोरी उपयोग पर सीमा के माध्यम से कम्प्रेशन बम को कम किया जाता है।
PAX आर्काइव में फ़ाइल टाइमस्टैम्प 1-सेकंड की सटीकता के साथ तिथियों की एक विस्तृत श्रृंखला को कवर करने वाले एक मानक 64-बिट प्रारूप का उपयोग करते हैं। POSIX अनुमतियों और Windows ACL के लिए विशेषताएँ समर्थित हैं। PAX NTFS वैकल्पिक डेटा स्ट्रीम और संसाधन फोर्क को स्टोर कर सकता है। सिम्लिंक और हार्डलिंक भी प्रतिनिधित्व योग्य हैं।
ओपन-सोर्स PAX SDK, PAX आर्काइव को प्रोग्रामेटिक रूप से बनाने, निकालने, अपडेट करने और सत्यापित करने के लिए सरल API प्रदान करता है। यह PAX फॉर्मेट के सभी निम्न-स्तरीय विवरणों को हैंडल करता है। SDK कई भाषाओं में उपलब्ध है जिनमें C, C++, C#, Java, Python, JavaScript, Go और Rust शामिल हैं।
सारांश में, PAX आर्काइव फॉर्मेट ZIP जैसे सिद्ध फॉर्मेट की नींव पर बनाता है, जबकि आधुनिक विशेषताओं और अनुकूलन - कुशल कम्प्रेशन, मल्टी-थ्रेडिंग, रैंडम एक्सेस, सुरक्षा और एक खुले विनिर्देश को पेश करता है। यह PAX को आज के सिस्टम पर आर्काइवल परिदृश्यों की एक विस्तृत श्रृंखला के लिए आदर्श बनाता है।
फ़ाइल संपीड़न एक प्रक्रिया है जो डेटा फ़ाइलों के आकार को कुशलता के लिए कम करती है। इसका उपयोग विभिन्न एल्गोरिदमों का उपयोग करके डेटा को संकुचित करने के लिए होता है, जो अक्सर डेटा के आकार को मूल जानकारी के बिना चौंकसी से कम करता है।
फ़ाइल संपीड़न के दो मुख्य प्रकार हैं: नुकसानरहित और नुकसानदायक। जहाँ हर बिट डेटा महत्वपूर्ण हो, वहां नुकसानरहित संपीड़न की अनुमति देता है कि मूल डेटा को संपीडित डेटा से सही रूप से पुनर्निर्माण किया जा सके, जैसे कि पाठ या डेटाबेस फ़ाइलें। आम उदाहरण में ZIP और RAR फ़ाइल फ़ॉर्मेट्स शामिल हैं। दूसरी ओर, नुकसानदायक संपीड़न अधिक महत्वपूर्ण डेटा को हटाकर फ़ाइल आकार को अधिक गहराई से कम करता है, जो अक्सर ऑडियो, वीडियो, और चित्र फ़ाइलों में इस्तेमाल होता है। JPEGs और MP3s उन उदाहरणों में हैं जहां कुछ डेटा हानि सामग्री की अनुभूति गुणवत्ता को महत्वपूर्ण रूप से घटा नहीं सकती है।
फ़ाइल संपीड़न कई तरीकों से लाभकारी होता है। यह उपकरणों और सर्वरों पर संग्रहण स्थान की बचत करता है, लागत को कम करता है और कुशलता को बढ़ाता है। यह नेटवर्कों, इंटरनेट सहित, पर फ़ाइल स्थानांतरण समय को तेज करता है, जो विशेष रूप से बड़ी फ़ाइलों के लिए महत्वपूर्ण ह ै। साथ ही, संपीड़ित फ़ाइलें एक आर्काइव फ़ाइल में एकत्र की जा सकती हैं, जो संगठनात्मक और आसानी से परिवहन के लिए सहायता देता है।
हालांकि, फ़ाइल संपीड़न में कुछ नकारात्मक पहलू भी होते हैं। संपीड़न और विस्तारण प्रक्रिया के लिए संगणकीय संसाधनों की आवश्यकता होती है, जो विशेष रूप से बड़ी फ़ाइलों के लिए सिस्टम की प्रदर्शन को धीमा कर सकता है। साथ ही, नुकसानदायक संपीड़न के मामले में, कुछ मूल डेटा संपीड़न के दौरान खो जाता है, और परिणामस्वरूप गुणवत्ता सभी उपयोगों के लिए स्वीकार्य नहीं हो सकती है, विशेषकर उन पेशेवर अनुप्रयोगों के लिए जो उच्च गुणवत्ता मांगते हैं।
फ़ाइल संपीड़न आज की डिजिटल दुनिया में एक महत्वपूर्ण उपकरण है। इसने कुशलता में सुधार किया, संग्रहण स्थान की बचत की और डाउनलोड और अपलोड समयों को घटाया। फिर भी, यह स्वयं की सिस्टम प्रदर्शन और गुणवत्ता हानि की जोखिम लाता है। इसलि ए, विशेष डेटा आवश्यकताओं के लिए सही संपीड़न तकनीक को चुनने के लिए इन कारकों का ध्यान रखना आवश्यक है।
फ़ाइल संकुचन एक प्रक्रिया है जो फ़ाइल या फ़ाइलों का आकार घटाती है, आमतौर पर संग्रहण स्थान को बचाने या नेटवर्क पर संचार को तेज करने के लिए।
फ़ाइल संकुचन डाटा में रिडंडेंसी की पहचान और हटाने के द्वारा काम करता है। यह एल्गोरिदम का उपयोग करके मूल डेटा को एक छोटे स्थान में कोड करता है।
फ़ाइल संकुचन के दो मुख्य प्रकार हैं - नुकसान रहित और नुकसानदायक संकुचन। नुकसान रहित संकुचन की अनुमति है कि मूल फ़ ाइल को पूरी तरह से बहाल किया जा सके, जबकि नुकसानदायक संकुचन डेटा की गुणवत्ता में कुछ हानि की लागत पर अधिक आकार घटाव की अनुमति देता है।
फाइल संकुचन उपकरण का एक लोकप्रिय उदाहरण WinZip है, जो ZIP और RAR सहित कई संकुचन प्रारूपों का समर्थन करता है।
नुकसान रहित संकुचन के साथ, गुणवत्ता अपरिवर्तित रहती है। हालांकि, नुकसानदायक संकुचन के साथ, फ़ाइल का आकार अधिक ध्यान से घटाने के लिए कुछ कम महत्वपूर्ण डेटा को हटाने के कारण गुणवत्ता में ध्यान देने योग्य कमी हो सकती है।
हां, डेटा संरक्षण के संबंध में फ़ाइल संकुचन सुरक्षित है, खासकर नुकसान रहित संकुचन के साथ। हालांकि, कि सी भी फ़ाइल की तरह, संकुचित फ़ाइलों को मैलवेयर या वायरस के लक्ष्य के रूप में लिया जा सकता है, इसलिए यह हमेशा महत्त्वपूर्ण होता है कि प्रमुख सुरक्षा सॉफ़्टवेयर स्थापित हो।
लगभग सभी प्रकार की फ़ाइलें संकुचित की जा सकती हैं, जिसमें पाठ फ़ाइलें, चित्र, ऑडियो, वीडियो, और सॉफ़्टवेयर फ़ाइलें शामिल हैं। हालांकि, प्राप्त करने योग्य संकुचन का स्तर फ़ाइल प्रकारों के बीच महत्वपूर्ण रूप से अलग हो सकता है।
ZIP फ़ाइल एक प्रकार की फ़ाइल प्रारूप है जो नुकसान रहित संकुचन का उपयोग करके एक या अधिक फ़ाइलों के आकार को घटाती है। ZIP फ़ाइल में अनेक फ़ाइलें प्रभावी रूप से एक ही फ़ाइल में संग्रहित की जाती हैं, जो साझा करना भी आसान बनाती है।
तकनीकी रूप से, हां, हालांकि अतिरिक्त आकार घटाव न्यूनतम हो सकता है या यहां तक कि प्रतिकूल हो सकता है। पहले से संकुचित फ़ाइल को संकुचित करना कभी-कभी इसका आकार बढ़ सकता है क्योंकि संकुचन एल्गोरिदम द्वारा जोड़ी गई मेटाडाटा।
फ़ाइल को डिकम्प्रेस करने के लिए, आपको आमतौर पर एक डिकम्प्रेसन या अनज़िपिंग उपकरण की आवश्यकता होती है, जैसे WinZip या 7-Zip। ये उपकरण संपीडित प्रारूप से मूल फ़ाइलों को निकाल सकते हैं।