PAX (প্রি-অ্যালোকেট এক্সটেনশন) হল একটি ওপেন-সোর্স সংকুচিত আর্কাইভ ফরম্যাট যা মাইক্রোসফট দ্বারা ZIP, RAR এবং tar এর মতো বিদ্যমান ফরম্যাটের একটি আধুনিক বিকল্প হিসাবে তৈরি করা হয়েছে। এটি আধুনিক সিস্টেম এবং ডিভাইসে আর্কাইভ হ্যান্ডলিংয়ের সংকোচন, কর্মক্ষমতা, সুরক্ষা এবং কার্যকারিতার সীমাবদ্ধতা এবং উন্নতির জন্য ডিজাইন করা হয়েছে।
PAX ফরম্যাটের মূল পার্থক্যকারী বৈশিষ্ট্যগুলির মধ্যে রয়েছে আধুনিক অ্যালগরিদম ব্যবহার করে উন্নত সংকোচন, আর্কাইভের মধ্যে ফাইলগুলিতে দক্ষ র্যান্ডম অ্যাক্সেস, নেটিভ মাল্টি-থ্রেডিং সমর্থন, এক্সটেনসিবল মেটাডেটা, অন্তর্নির্মিত এনক্রিপশন এবং অখণ্ডতা পরীক্ষা এবং একটি ডকুমেন্টেড ওপেন স্পেসিফিকেশন যা ব্যাপক গ্রহণ এবং ইন্টারঅপারেবিলিটিকে উত্সাহিত করে।
PAX আর্কাইভগুলি .pax ফাইল এক্সটেনশন ব্যবহার করে এবং একটি মাল্টি-পার্ট অভ্যন্তরীণ কাঠামো রয়েছে যার মধ্যে একটি হেডার, সেন্ট্রাল ডিরেক্টরি, সংকুচিত ডেটা ব্লক এবং একটি ফুটার রয়েছে। এটি আর্কাইভের বিষয়বস্তু, সংকোচন পরামিতি এবং অখণ্ডতা হ্যাশের মতো মূল তথ্যগুলিকে প্রকৃত সংকুচিত ফাইল ডেটা থেকে আলাদাভাবে সংরক্ষণ করতে দেয়।
PAX হেডার একটি 4-বাইট ম্যাজিক নম্বর (হেক্সে 50 41 58 00) দিয়ে শুরু হয়। এরপরে এতে PAX সংস্করণ, সংকোচন পদ্ধতি, এনক্রিপশন পদ্ধতি, হ্যাশ পদ্ধতি, ব্লক আকার, সমান্তরাল সংকোচন থ্রেডের সংখ্যা এবং বিভিন্ন ফ্ল্যাগের জন্য ক্ষেত্র রয়েছে। হেডারটি আর্কাইভ সম্পর্কে বিশদ তথ্য সরবরাহকারী এক্সটেনসিবল XML মেটাডেটা দিয়ে শেষ হয়।
হেডারের পরে PAX সেন্ট্রাল ডিরেক্টরি রয়েছে। এটিতে আর্কাইভের প্রতিটি সংকুচিত ফাইল/ফোল্ডারের জন্য একটি এন্ট্রি রয়েছে, যা পুরো পাথ, অ্যাট্রিবিউট, আকার, ব্লক অফসেট এবং হ্যাশ সংরক্ষণ করে। এটি এক জায়গায় রাখা সংকুচিত ডেটা স্ক্যান না করেই আর্কাইভের বিষয়বস্তু দক্ষতার সাথে তালিকাভুক্ত করতে এবং পৃথক ফাইলগুলিতে র্যান্ডম অ্যাক্সেস করতে দেয়।
একটি PAX আর্কাইভের বেশিরভাগ অংশ হল সংকুচিত ডেটা ব্লকের একটি সিরিজ। প্রতিটি ব্লকে একটি ছোট হেডার রয়েছে যা সংকুচিত এবং সংকুচিত আকার নির্দেশ করে, তারপরে কনফিগার করা অ্যালগরিদম দ্বারা সংকুচিত ফাইল ডেটার একটি অংশ। ব্লকগুলির ডিফল্ট আকার 1 MB তবে এটি আর্কাইভ হেডারে টিউন করা যায়।
এনক্রিপশন পদ্ধতি নির্দিষ্ট করা হলে সংকুচিত ডেটা ব্লকগুলি ঐচ্ছিকভাবে এনক্রিপ্ট করা হয়। PAX AES-256 এর মতো আধুনিক এনক্রিপশন স্কিমগুলিকে সমর্থন করে। আর্কাইভ পাসওয়ার্ডটি একটি কী তৈরি করতে ব্যবহৃত হয় যা প্রতিটি ব্লককে স্বাধীনভাবে এনক্রিপ্ট করে, দক্ষ র্যান্ডম অ্যাক্সেসের অনুমতি দেয়। প্রমাণীকরণের জন্য, PAX একটি নিরাপদ KDF দিয়ে পাসওয়ার্ড হ্যাশ করে।
সংকোচনের জন্য, PAX দ্রুত ডিকম্প্রেশনের জন্য অপ্টিমাইজ করা বিভিন্ন আধুনিক সাধারণ-উদ্দেশ্যের কোডেককে সমর্থন করে: LZMA, LZ4, Brotli, Zstandard, ইত্যাদি। এটি নির্দিষ্ট ফাইলটাইপগুলিতে আরও আকার হ্রাসের জন্য প্রিপ্রসেসরকেও অনুমতি দেয় (যেমন EXEs/DLLs-এ ডেল্টা এনকোডিং, x86 কোডে E8E9 এনকোডিং)। কোডেক এবং প্রিপ্রসেসর একটি পাইপলাইনে প্রয়োগ করা হয়।
দক্ষ মাল্টি-থ্রেডেড সংকোচন সক্ষম করার জন্য, ফাইলগুলিকে স্বাধীনভাবে সংকুচিত ব্লকগুলিতে বিভক্ত করা হয় যা সমান্তরাল কোডেক ইনস্ট্যান্স দ্বারা প্রক্রিয়া করা যেতে পারে। PAX কম্প্রেসর স্বয়ংক্রিয়ভাবে সমস্ত উপলব্ধ CPU কোর ব্যবহার করতে স্কেল করে। অনুরূপ বিভাজন দ্রুত নিষ্কাশনের জন্য সমান্তরাল ডিকম্প্রেশনের অনুমতি দেয়।
PAX মূল এবং সংকুচিত ডেটার হ্যাশ সংরক্ষণ করে ডেটা অখণ্ডতা এবং ট্যাম্পার সনাক্তকরণ প্রদান করে। আর্কাইভগুলি ট্রাঙ্কেশন সনাক্ত করার জন্য একটি হেডার হ্যাশ বহন করে। ফাইল মেটাডেটা নিয়ে ছিঁড়ছিঁড়ি প্রতিরোধ করতে সেন্ট্রাল ডিরেক্টরিও হ্যাশ করা হয়। সংকুচিত ডেটাতে বিট রট প্রতিটি ব্লক হ্যাশ করে ধরা হয়।
একটি PAX আর্কাইভের শেষে ফুটার রয়েছে। এটিতে হেডার ক্ষেত্রগুলির একটি কপি, সেন্ট্রাল ডিরেক্টরির অফসেট/আকার এবং একটি পুরো-আর্কাইভ হ্যাশ রয়েছে। ফুটারটি একটি নির্দিষ্ট আকার এবং সর্বদা ফাইলের শেষে থাকে, যা PAX আর্কাইভগুলির সহজ অবস্থান এবং যাচাইকরণের অনুমতি দেয়।
ZIP-স্লিপ দুর্বলতাগুলি হ্রাস করার জন্য, PAX-এ স্পষ্ট পাথের প্রয়োজন (../ ট্র্যাভার্সাল নেই) এবং নিষ্কাশন রুটের বাইরে লেখা প্রতিরোধ করে। ডিনিয়াল-অফ-সার্ভিস সক্ষম করা দীর্ঘ ZIP মেটাডেটা ক্ষেত্রগুলি সীমাবদ্ধ করা হয়েছে। সংকোচন অনুপাত এবং মেমরি ব্যবহারের সীমার মাধ্যমে সংকোচন বোমাগুলি হ্রাস করা হয়।
PAX আর্কাইভে ফ
ফাইল সংকোচন হলো কোন ডেটা ফাইলের আকার সংগ্রহ অথবা সম্প্রেষণের জন্য ক্ষুদ্র করা একটি প্রক্রিয়া। এটি বিভিন্ন এলগরিদম ব্যবহার করে ডেটা সংকোচন করে অপরিহার্যতা চিহ্নিত করে এবং অপসারণ করে যা প্রায়শই মূল তথ্যগুলি হারানো ছাড়াই ডেটার আকারকে ব্যাপক ভাবে কমিয়ে দেয়।
ফাইল সংকোচনের দুটি প্রধান ধরন রয়েছে: লসলেস এবং লসি। লসলেস সংকোচন মূল ডেটা কে সংকোচিত ডেটা থেকে সম্পূর্ণভাবে পুনর্নির্মাণ করার অবকাঠামো দেয়, যা প্রতিটি ডেটা গুরুত্বপূর্ণ হিসাবে গণনা করা হয়, যেমন টেক্সট অথবা ডাটাবেস ফাইল। সাধারণ উদাহরণ হলে জিপ এবং আরএআর ফাইল ফরম্যাট। অন্যদিকে, লসি সংকোচন অগুরুত্বপূর্ণ ডেটা মুছে ফেলে ফাইলের আকারকে আরও গুরুত্ব সহকারে হ্রাস করে, যা প্রায়শই অডিও, ভিডিও এবং চিত্র ফাইলে ব্যবহৃত হয়। জেপেগস এবং এমপিথ্রি এমন উদাহরণ যেখানে কিছু ডেটা হ্রাস সামগ্রীর আপাত্তিকর গুণমান ব্যাপকভাবে ক্ষয় করে না।
ফাইল সংকোচন অনেকগুলি উপায়ে সুবিধাজনক। এটি ডিভাইস এবং সার্ভারের উপর স্টোরেজ স্পেস সংরক্ষণ করে, যা খরচ হ্রাস করে এবং কার্যক্ষমতা বাড়ায়। এটি নেটওয়ার্কের মাধ্যমে ফাইল স্থানান্তর সময়কে ত্বরান্বিত করে, যা বিশেষ গুরুত্ব সহকারে বড় ফাইলের জন্য। আরও তাই, সংকোচিত ফাইল একটি আর্কাইভ ফাইলে একত্রিত করা যেতে পারে, যা সংগঠন এবং একাধিক ফাইলের সহজ পরিবহনে সাহায্য করে।
তবে, ফাইল সংকোচনের কিছু অনুকূলতা রয়েছে। সংকোচন এবং সংকোচন মুক্তি প্রক্রিয়া গণনায়ন সম্পদ প্রয়োজন করে, যা বিশেষ করে বড় ফাইলের জন্য সিস্টেমের কার্যক্ষমতা ধীর করতে পারে। এছাড়া, লসি সংকোচনের ক্ষেত্রে, কিছু মূল ডেটা সংকোচন সময়ে হারিয়ে যায়, এবং ফলাফলের মান সমস্ত ব্যবহারের জন্য স্বীকার্য হতে পারে না, বিশেষ করে সেই পেশাদার অ্যাপ্লিকেশন যা উচ্চ মান চাই।
ফাইল সংকোচন আজকের ডিজিটাল পৃথিবীতে একটি গুরুত্বপূর্ণ সরঞ্জাম। এটি কার্যক্ষমতা বাড়ায়, স্টোরেজ স্পেস সংরক্ষণ করে এবং ডাউনলোড এবং আপলোড সময় হ্রাস করে। তবে, এর সঙ্গে সিস্টেম কার্যক্ষমতা এবং গুণগত মান হ্রাসের জোখিম বিপরীতে এটি নিজের একটি সেট নিয়ে আসে। তাই, এটি স্পেসিফিক ডেটা প্রয়োজনীয়তার জন্য সঠিক সংকোচন পদ্ধতি চয়নের ক্ষেত্রে এই ঘটনাগুলির প্রতি সচেতন হতে প্রয়োজন।
ফাইল কম্প্রেশন হলো একটি প্রক্রিয়া যা একটি বা একাধিক ফাইলের সাইজ কমানো, সাধারণত স্টোরেজ স্পেস সংরক্ষণ বা নেটওয়ার্কের মাধ্যমে সংপ্রেষণ দ্রুততর করার জন্য।
ফাইল কম্প্রেশন ডেটায় পুনরাবৃত্তিতে চিন্হিত এবং অপসারণ এর মাধ্যমে কাজ করে। এটি অ্যালগরিদম ব্যবহার করে মূল ডেটা ক্ষুদ্র স্পেস এ এনকোড করে।
ফাইল কম্প্রেশনের দুটি প্রধান নিধিবিধিই হ্লসলস এবং লসই কম্প্রেশন। লসলেস কম্প্রেশন মূল ফাইলটি সম্পূর্ণ পুনরুদ্ধার করতে সহায়তা করে, জবাবদিহিতা লসই কম্প্রেশন ডেটা মানের কিছু হ্রাসের মূল্যায় আরও বেশি সাইজের কমানো সম্ভব।
ফাইল কম্প্রেশন সরঞ্জামের একটি জনপ্রিয় উদাহরণ হলো WinZip, যা ZIP এবং RAR সহ একাধিক কম্প্রেশন ফরম্যাট সমর্থন করে।
লসলেস কম্প্রেশনের সাথে, মান পরিবর্তন না হয়। যদিও, লসই কম্প্রেশনের সাথে, ফাইলের সাইজটি আরও উল্লেখযোগ্যভাবে হ্রাস করার জন্য কম-গুরুত্বপূর্ণ ডেটা মুছে ফেলা যেতে পারে, তার ফলে মানে নজরদার করে নেওয়া যেতে পারে।
হ্যাঁ, ডেটা অখণ্ডতার দৃষ্টিকে নিয়ে ফাইল কম্প্রেশন নিরাপদ, বিশেষ করে লসলেস কম্প্রেশনের সাথে। যাই হোক, যেমন যেকোন ফাইল, কম্প্রেস ফাইলগুলিও ম্যালওয়ার বা ভাইরাসের লক্ষ্য হতে পারে, তাই সর্বদা সুপরিচিত নিরাপত্তি সফটওয়্যার স্থাপন করা গুরুত্বপূর্ণ।
প্রায় সমস্ত ধরনের ফাইল কম্প্রেস করা যায়, যেমন টেক্সট ফাইল, চিত্র, অডিয়ো, ভিডিও, এবং সফটওয়্যার ফাইল। যাই হোক, কম্প্রেশন সাধনযোগ্য স্তর ফাইল প্রকারের মধ্যে অনেক বেশি পরিবর্তন হতে পারে।
একটি ZIP ফাইল হলো একটি ফাইল ফরম্যাট ধরন যা লসলেস কম্প্রেশন ব্যবহার করে এক বা একাধিক ফাইলের আকার হ্রাস করে। ZIP ফাইলে মাল্টিপল ফাইলগুলি মোটামুটি একটি Single ফাইলে একত্র করে, যা শেয়ার করা সহজতর করেও তোলে।
প্রযুক্তিগতভাবে, হ্যাঁ, যদিও অতিরিক্ত সাইজ হ্রাস নিম্ন বা এমনসমূহ প্রতিক্রিয়াশীল হতে পারে। ইতিমধ্যে কম্প্রেসযুক্ত ফাইলটি কম্প্রেস করা মাঝে মাঝে তার আকার বড় করে তোলে কম্প্রেশন এলগরিদম দ্বারা যুক্ত করা মেটাডেটাকে আকার বড় করতে পারে।
একটি ফাইল ডিকম্প্রেস করতে, আপনি সাধারণত একটি ডিকম্প্রেশন বা আনজিপিঙ সরঞ্জাম প্রয়োজন, যেমন WinZip বা 7-Zip. এই সরঞ্জামগুলি কম্প্রেস ফরম্যাটে থেকে মূল ফাইলগুলি বাহির করতে পারে।