Disk compression
ڈسک کمپریشن سافٹ ویئر یوٹیلیٹی معلومات کی مقدار میں اضافہ کرتی ہے جسے دی گئی سائز کی ہارڈ ڈسک ڈرائیو پر محفوظ کیا جا سکتا ہے۔ فائل کمپریشن یوٹیلیٹی کے برعکس، جو صرف مخصوص فائلوں کو کمپریس کرتی ہے-اور جس کے لیے صارف کو فائلوں کو کمپریس کرنے کے لیے نامزد کرنے کی ضرورت ہوتی ہے-ایک آن-دی-فلائی ڈسک کمپریشن یوٹیلیٹی صارف کو اس کے وجود سے آگاہ کیے بغیر رہائشی سافٹ ویئر کے ذریعے خود بخود کام کرتی ہے۔ اس لیے آن-دی-فلائی ڈسک کمپریشن کو شفاف، ریئل ٹائم یا آن لائن ڈسک کمپریشن کے نام سے بھی جانا جاتا ہے۔ جب معلومات کو ہارڈ ڈسک میں محفوظ کرنے کی ضرورت ہوتی ہے، تو افادیت معلومات کو کمپریس کرتی ہے۔ جب معلومات کو پڑھنے کی ضرورت ہوتی ہے، تو یوٹیلیٹی معلومات کو منقطع کر دیتی ہے۔ ڈسک کمپریشن یوٹیلیٹی معیاری آپریٹنگ سسٹم کے معمولات کو ختم کرتی ہے۔ چونکہ تمام سافٹ ویئر ایپلی کیشنز ان معمولات کا استعمال کرتے ہوئے ہارڈ ڈسک تک رسائی حاصل کرتی ہیں، اس لیے وہ ڈسک کمپریشن انسٹال ہونے کے بعد بھی کام کرتے رہتے ہیں۔ ڈسک کمپریشن یوٹیلیٹیز خاص طور پر 1990 کی دہائی کے اوائل میں مقبول تھیں، جب مائیکرو کمپیوٹر ہارڈ ڈسک اب بھی نسبتا چھوٹی (20 سے 80 میگا بائٹس) تھیں۔ اس وقت ہارڈ ڈرائیوز بھی کافی مہنگی تھیں، جن کی قیمت تقریبا 10 امریکی ڈالر فی میگا بائٹ تھی۔ ڈسک کمپریشن ایپلی کیشنز خریدنے والے صارفین کے لیے، سافٹ ویئر مختصر مدت میں اپنی موجودہ ڈرائیو کو بڑی ڈرائیو سے تبدیل کرنے کے بجائے زیادہ ڈسک کی جگہ حاصل کرنے کا ایک زیادہ اقتصادی ذریعہ ثابت ہوا۔ ایک اچھی ڈسک کمپریشن یوٹیلیٹی، اوسطا، نہ ہونے کے برابر رفتار کے نقصان کے ساتھ دستیاب جگہ کو دوگنا کر سکتی ہے۔ ڈسک کمپریشن 1990 کی دہائی کے آخر تک ناکارہ ہو گیا، کیونکہ ہارڈ ڈرائیو ٹیکنالوجی اور مینوفیکچرنگ میں پیشرفت کی وجہ سے صلاحیتوں میں اضافہ ہوا اور قیمتیں کم ہوئیں۔ عام ڈسک کمپریشن حل اسٹینڈ ایلون ہارڈ ویئر کچھ ابتدائی ڈسک کمپریشن حل ہارڈ ویئر کی مدد سے تھے اور سافٹ ویئر ڈرائیور کے علاوہ ایڈ آن کمپریسر/ڈیکمپریسر کوپروسیسر کارڈ استعمال کیے گئے تھے۔ معروف حلوں میں شامل ہیں: اسٹیکر ایکس ٹی/8 اور اسٹیکر اے ٹی/16 اسٹیک الیکٹرانکس ایکسپینز سے! اور ایکسپینز! پلس از انفوچپ سسٹمز ڈسک ڈوبلر ڈی ڈی 2000 از دتران کارپوریشن ایم آر سی آئی (مائیکروسافٹ ریئل ٹائم کمپریشن انٹرفیس) از مائیکروسافٹ اسٹینڈ ایلون سافٹ ویئر بڑھتے ہوئے پی سی پروسیسر پاور سافٹ ویئر کے ساتھ زیادہ تر منظرناموں میں ہارڈ ویئر کی مدد سے حل کی کارکردگی تک پہنچنا یا اس سے بھی بہتر کارکردگی کا مظاہرہ کرنا شروع کر دیا۔ یہ کمپریشن یوٹیلیٹیز آزادانہ طور پر فروخت کی گئیں۔ صارف کو سافٹ ویئر کو انسٹال اور ترتیب دینے کے لیے خاص طور پر انتخاب کرنا پڑتا تھا۔ اسٹیک الیکٹرانکس سے سنڈوگ سافٹ ویئر اسٹیکر سے سکویش اور سکویش پلس انٹیگریٹڈ انفارمیشن ٹیکنالوجی (آئی آئی ٹی) سے سپر اسٹور اور ایڈ اسٹور سے سپر اسٹور پرو اور جے اے ایم سافٹ ویئر، کیف، یوکرین سے ورٹی سافٹ سسٹمز جے اے ایم (JAM.SYS) سے ڈبل ڈسک گولڈ ڈیٹا بیکر بنڈلڈ سافٹ ویئر سے سیلینٹ سافٹ ویئر ڈبل ڈینسٹی سے ڈسک ڈبلر نئی مشینوں میں ڈسک کمپریشن کو بنڈل کرنے کے خیال نے ری سیلرز اور صارفین کو اپیل کی۔ ری سیلرز نے پسند کیا کہ وہ مزید اسٹوریج کی جگہ کا دعوی کر سکتے ہیں ؛ صارفین نے پسند کیا کہ انہیں سافٹ ویئر کو ترتیب دینے کی ضرورت نہیں ہے۔ بنڈلڈ یوٹیلیٹیز شامل ہیں (تاریخی ترتیب میں): ڈیجیٹل ریسرچ سے ڈی آر ڈی او ایس 6.0 (1991) میں ایڈ اسٹور کے سپر اسٹور کا ایک کسٹم ورژن شامل تھا۔ (ڈیجیٹل ریسرچ حاصل کرنے کے بعد) ناول سے پالم ڈاس 1 (1992) میں سپر اسٹور کا ڈی پی ایم ایس فعال ورژن شامل کیا گیا۔ مائیکروسافٹ کے ایم ایس-ڈاس 6 (1993) میں ڈبل اسپیس شامل تھا، جو جزوی طور پر ورٹی سافٹ سسٹمز کے ڈبل ڈسک پر مبنی تھا۔ ایم ایس-ڈاس 6 نے نام نہاد ڈاس پری لوڈ اے پی آئی متعارف کرایا، جو ایک غیر دستاویزی چیلنج-رسپانس ٹائپ انٹرفیس ہے جس نے ڈسک کمپریشن سافٹ ویئر (CONFIG.SYS پر کارروائی ہونے سے پہلے ہی خود بخود لوڈ ہونے کی اجازت دی تھی۔ پی سی ڈی او ایس 6.1 (1993)، آئی بی ایم سے، جبکہ اصل ریلیز میں ڈسک کمپریسر شامل نہیں تھا، سپر اسٹور/ڈی ایس کا ایک کسٹم ورژن (ایڈ اسٹور حاصل کرنے کے بعد) بعد کی ریلیز میں شامل کیا گیا، جس نے پی سی ڈی او ایس لائن میں پری لوڈ اے پی آئی کو بھی متعارف کرایا۔ مائیکروسافٹ سے ایم ایس-ڈاس 6.2 (1993) میں ڈبل اسپیس کا ایک بہتر ورژن شامل کیا گیا۔ ناول ڈی او ایس 7 (1993)، ناول سے، اسٹیک الیکٹرانکس سے اسٹیکر 3.12 (STACKER.BIN) کا ڈی پی ایم ایس سے فعال ورژن شامل کیا گیا، جس نے ریموٹ نیٹ ویئر اور پی این ڈبلیو سرورز کے ساتھ کمپریسڈ ڈیٹا ایکسچینج کی بھی حمایت کی تاکہ فائلوں کو کاپی کرتے وقت غیر ضروری ریکمپریشن سے بچا جا سکے۔ اس نے ملٹی بوٹ منظرناموں میں مائیکروسافٹ کے ڈبل اسپیس کے ساتھ مطابقت برقرار رکھنے کے لیے DOS 6 پری لوڈ API کے لیے سپورٹ بھی متعارف کرائی۔ اختیاری سنگل یا ملٹی یوزر سیکیورٹی جزو کو لوڈ کرنے کے لیے اسی طرح کا طریقہ کار استعمال کیا گیا تھا۔ فزٹیک سافٹ سے پی ٹی ایس-ڈاس ایکسٹینڈڈ 6.4 (1994) میں، آئی بی ایم سے فولڈر (FOLDER.SYS) پی سی ڈاس 6.3 (1994) نامی ڈسک کمپریشن جزو شامل تھا، جس میں سپر اسٹور/ڈی ایس کا ایک ورژن شامل تھا۔ مائیکروسافٹ سے ایم ایس-ڈاس 6.22 (1994) میں ڈرائیو اسپیس شامل تھا، جو کہ ایک مختلف کمپریشن الگورتھم (DRVSPACE.BIN) کے ساتھ ڈبل اسپیس تھا، اس کے بعد کہ ایم ایس-ڈاس 6.21 کو قانونی وجوہات کی بنا پر بغیر کسی ڈسک کمپریشن سافٹ ویئر کے بھیجنا پڑا۔ آئی بی ایم سے پی سی ڈی او ایس 7 (1995) میں اسٹیک الیکٹرانکس سے اسٹیکر 4.02 کا ڈی پی ایم ایس سے فعال ورژن شامل تھا۔ مائیکروسافٹ سے ونڈوز 95 (1995) میں ڈرائیو اسپیس 2 کا ایک تازہ ترین ورژن شامل کیا گیا۔ مائیکروسافٹ کی ونڈوز 95 او ایس آر 2 (1996) میں ڈرائیو اسپیس 3 کا ایک اسٹرپ ڈاؤن ورژن شامل تھا۔ ونڈوز 95 پلس! (1996)، مائیکروسافٹ سے، DriveSpace 3 کا مکمل ورژن شامل کیا۔ اوپن ڈاس 7.01 (1997)، کالڈیرا سے (ناول ڈاس حاصل کرنے کے بعد)، اسٹیکر 3.12 کا ڈی پی ایم ایس سے فعال ورژن شامل کیا۔ کالڈیرا سے تعلق رکھنے والے ڈی آر-ڈاس 7.02 (1998) میں اسٹیکر 3.12 کا ڈی پی ایم ایس فعال ورژن شامل تھا۔ ڈی آر-ڈاس 7.02 نے مائیکروسافٹ کے ڈرائیو اسپیس کے لیے بھی سپورٹ شامل کی۔ آئی بی ایم کے پی سی ڈی او ایس 2000 (1998) میں اسٹیکر 4.02 کا ڈی پی ایم ایس فعال ورژن شامل تھا۔ مائیکروسافٹ کی ونڈوز 98 (1998) میں ڈرائیو اسپیس 3 کا مکمل ورژن شامل تھا۔ کالڈیرا سے تعلق رکھنے والے ڈی آر-ڈاس 7.03 (1999) میں اسٹیکر 3.12 کا ڈی پی ایم ایس فعال ورژن شامل تھا۔ مائیکروسافٹ کی ونڈوز 98 ایس ای (1999) میں ڈرائیو اسپیس 3 کا مکمل ورژن شامل تھا۔ پیراگون ٹیکنالوجی سافٹ ویئر سے پی ٹی ایس-ڈاس پرو 2000 (1999) میں ڈیٹاکامپ نامی ڈسک کمپریشن جزو شامل تھا۔ دوسرے حل سکویز، لوٹس 1-2-3 کے لیے ایک رہائشی DOS فائل کمپریسر اور سنڈوگ سافٹ ویئر سے ٹرنر ہال پبلشنگ سکویش پلس ROM سے لوٹس سمفنی فائلیں، لیکن خصوصی طور پر پرسنلائزڈ سافٹ ویئر (اب تھاڈیوس کمپیوٹنگ) کے ذریعے تقسیم کی گئیں، ایک خصوصی ROM چپ تھی جس میں سکویش پلس کا ایک کسٹم ورژن تھا جس میں صرف 36 KB فٹ پرنٹ HP پورٹیبل پلس کے لیے ڈھال لیا گیا تھا۔ ایڈسٹر سے ڈبل اسپیس کے لیے ڈبل ٹولز ایک اضافی پروڈکٹ تھا، جو ایم ایس-ڈاس 6 کے ساتھ بنڈل ڈبل اسپیس کی فعالیت کو بڑھاتا ہے۔ ہیلکس سافٹ ویئر سے ملٹی میڈیا اسٹیکر اسٹیک کے ڈی پی ایم ایس سے فعال اسٹیکر 4.1 کا ایک بنڈل تھا جو ہیلکس کلاکنگ اور یوٹیلیٹیز کے ساتھ مل کر کلاکنگ کے بلٹ ان ڈی پی ایم ایس سرور کو محفوظ موڈ میں منتقل کرنے اور چلانے کے لیے استعمال کرتا تھا۔ THS فائل سسٹم (1994-1996 بذریعہ تھامس شیورمین)، لینکس کے لیے ایک کمپریسڈ فائل سسٹم ڈرائیور، جو کچھ CVF پڑھ سکتا تھا۔ ڈی ایم ایس ڈی او ایس (1996)، ایک لینکس کرنل ڈرائیور، جو ڈبل اسپیس، ڈرائیو اسپیس 2 اور 3 کے ساتھ ساتھ اسٹیکر 3 اور 4 جلدوں کو پڑھنے اور لکھنے میں مدد کرتا ہے۔ جبکہ مائیکروسافٹ کے ونڈوز ایکس پی میں ایک مقامی سپورٹ اور ایک کمانڈ دونوں شامل تھے جس کا نام این ٹی ایف ایس سسٹمز پر فائلوں کو کمپریس کرتا ہے، جسے اوپر کی طرح علیحدہ "کمپریسڈ ڈرائیو" کے طور پر لاگو نہیں کیا جاتا ہے۔ آپریشن ڈسک کمپریشن عام طور پر ایک بڑی فائل بناتی ہے، جو ورچوئل ہارڈ ڈرائیو بن جاتی ہے۔ یہ اسی طرح ہے کہ کس طرح ایک جسمانی ہارڈ ڈرائیو کو متعدد ورچوئل ڈرائیوز میں تقسیم کیا جا سکتا ہے۔ کمپریسڈ ڈرائیو تک ڈیوائس ڈرائیور کے ذریعے رسائی حاصل کی جاتی ہے۔ موجودہ ڈرائیوز کو کمپریس کرنا ابتدائی طور پر تمام ڈرائیوز خالی ہوں گی۔ ڈرائیو بنانے کی افادیت عام طور پر "موجودہ ڈرائیو کو کمپریس کرنے" کی پیشکش کرتی ہے۔ اس کا مطلب یہ تھا کہ افادیت: ایک خالی کمپریسڈ ڈرائیو بنائیں، جو موجودہ ڈرائیو پر محفوظ ہے۔ پرانی ڈرائیو پر موجود موجودہ فائلوں کو نئی کمپریسڈ ڈرائیو میں منتقل کریں۔ مزید فائلوں کو ایڈجسٹ کرنے اور مکمل ہونے پر خالی جگہ کی اجازت دینے کے لیے ضرورت کے مطابق نئی کمپریسڈ ڈرائیو کا سائز بڑھائیں۔ جب تمام فائلیں منتقل کر دی جائیں گی تو ڈرائیو کے خطوط تبدیل کر دیے جائیں گے۔ عام طور پر کچھ سسٹم فائلیں منتقل نہیں کی جائیں گی۔ مثال کے طور پر، او ایس سویپ فائلیں صرف میزبان ڈرائیو پر رہیں گی۔ بوٹ ڈرائیو کو کمپریس کرنا ایک ڈیوائس ڈرائیور کو کمپریسڈ ڈرائیو تک رسائی کے لیے لوڈ کرنا پڑتا تھا۔ ایک کمپریسڈ ڈرائیو سی: بوٹ کے عمل میں مطلوبہ تبدیلیاں مندرجہ ذیل ہیں: سسٹم بائیوس پہلی فزیکل ہارڈ ڈرائیو (ماسٹر بوٹ ریکارڈ) کے سیکٹر 0 کو لوڈ کرتا ہے۔ پارٹیشن سیکٹر بوٹ ایبل پارٹیشن (والیوم بوٹ ریکارڈ) کے سیکٹر 0 کو لوڈ کرتا ہے۔ اس صورت میں، یہ میزبان ڈرائیو ہے۔ میزبان ڈرائیو سیکٹر 0 لوڈ (DOS کے معاملے میں) DOS BIOS (IO.SYS، IBMBIO.COM وغیرہ) ورژن پر منحصر ہے، فائل کے صرف پہلے چند سیکٹروں یا پوری فائل کو میموری میں لوڈ کیا جا سکتا ہے۔ پہلی صورت میں، لوڈ شدہ اسٹب میں ایک اور لوڈر ہوتا ہے جو باقی فائل کو ڈسک سے لوڈ کرتا ہے۔ ڈی آر-ڈاس کے معاملے میں، بی آئی او ایس پیک کیا جاتا ہے اور ایک سرایت شدہ ڈمپریشن روٹین کے ذریعے خود کو ڈمپریس کرے گا۔ DOS BIOS پھر DOS دانا (MSDOS.SYS، IBMDOS.COM وغیرہ) کو لوڈ کرتا ہے۔ اگر DOS پری لوڈ API کی حمایت کرتا ہے، تو DOS BIOS میزبان ڈرائیو کے جڑ سے پہلے سے لوڈ ہونے والے کمپریشن ڈرائیور (DBLSPACE.BIN، DRVSPACE.BIN یا STACKER.BIN) کو لوڈ کرنے کی کوشش کرتا ہے اور DOS پری لوڈ API کے ذریعے اس کے ساتھ بات چیت کرنے کی کوشش کرتا ہے۔ اگر ڈرائیور توقع کے مطابق جواب دیتا ہے، تو DOS BIOS ڈرائیور کو رکھے گا، اگر نہیں، تو اسے پھینک دیا جائے گا۔ اگر اسی کے مطابق رکھا اور ترتیب دیا جائے تو ڈرائیو کے حروف تبدیل ہو سکتے ہیں، تاکہ کمپریسڈ ڈرائیو C: بن جائے۔ DOS BIOS بوٹ ڈرائیو کے جڑ میں فائل کو ڈھونڈ کر CONFIG.SYS پروسیسنگ شروع کرتا ہے۔ ڈی آر-ڈاس کے معاملے میں، اگر موجود ہو تو ڈی CONFIG.SYS کو CONFIG.SYS پر ترجیح دی جاتی ہے۔ پری لوڈ اے پی آئی کے ذریعے لوڈ نہ کیے گئے کمپریشن ڈرائیوروں کو ڈیوائس اسٹیٹمنٹ کے ذریعے لوڈ کیا جا سکتا ہے۔ ترتیب پر منحصر ہے اور اگر یہ پہلے سے نہیں ہوا ہے، تو ڈرائیو کے حروف تبدیل ہو سکتے ہیں، تاکہ کمپریسڈ ڈرائیو C: بن جائے۔ کمپریسڈ ڈرائیو سے پروسیسنگ جاری رہتی ہے۔ کارکردگی کا اثر سست ہارڈ ڈرائیو والے سسٹمز پر، ڈسک کمپریشن دراصل سسٹم کی کارکردگی کو بڑھا سکتا ہے۔ یہ دو طریقوں سے انجام دیا گیا: ایک بار کمپریس ہونے کے بعد، ذخیرہ کرنے کے لیے کم ڈیٹا تھا۔ کارکردگی کے لیے ڈسک تک رسائی اکثر ایک ساتھ رکھی جاتی تھی۔ اگر سسٹم کو ہارڈ ڈرائیو تک رسائی کے لیے بار بار انتظار کرنا پڑے (I/O پابند) ہارڈ ڈرائیو کو کمپریسڈ ڈرائیوز میں تبدیل کرنا سسٹم کو نمایاں طور پر تیز کر سکتا ہے۔ ڈیٹا کا کمپریشن اور ڈمپریشن سی پی یو کے استعمال میں اضافہ کرتا ہے۔ اگر نظام پہلے سے ہی سی پی یو سے جڑا ہوا تھا، تو ڈسک کمپریشن مجموعی کارکردگی کو کم کر دیتا ہے۔ ڈسک کمپریشن کے استعمال میں کچھ عام خرابیاں: تمام کمپریشن یوٹیلیٹیز ڈسک کو کمپریس کرنے سے پہلے ایف اے ٹی فائل سسٹم میں غلطیوں کی عدم موجودگی کی تصدیق نہیں کریں گی۔ کچھ غلطیاں، جیسے کراس لنکڈ فائلیں، منتقلی کے عمل کے دوران اضافی ڈیٹا کے نقصان کا باعث بن سکتی ہیں۔ کمپریسڈ ڈرائیو صرف اس صورت میں نظر آتی ہے جب ڈیوائس ڈرائیور لوڈ ہو اور کمپریسڈ ڈرائیو نصب ہو۔ مثال کے طور پر، بوٹ ڈسک میں ڈرائیور نہیں ہو سکتا۔ (یہ عام طور پر ان حلوں کے لیے کوئی مسئلہ نہیں تھا جو آپریشن سسٹمز کے ساتھ بنڈل میں آتے تھے جب تک کہ غیر ملکی آپریٹنگ سسٹمز کو بوٹ نہ کیا جائے، کیونکہ ایس وائی ایس جیسی سسٹم یوٹیلیٹیز کو کمپریشن ڈرائیوروں کو ڈیفالٹ طور پر بوٹ ڈسک میں کاپی کرنے کے لیے تبدیل کیا گیا تھا، اور متعلقہ آپریشن سسٹمز بھی بوٹ ڈسک کے علاوہ دیگر ڈرائیوز پر ان کی تلاش کے لیے واپس آ جائیں گے اگر وہ وہاں نہیں مل سکتے تھے۔) اگر کمپریسڈ ڈسک پر ڈیٹا کا توسیعی سائز عام ڈسک کی گنجائش سے بڑا تھا تو ان انسٹال کرنا دشواری کا باعث تھا۔ صارفین کو ہمیشہ یہ احساس نہیں ہوتا تھا کہ میزبان ڈرائیو پر موجود بڑی فائل میں کمپریسڈ ڈرائیو موجود ہے۔ اگرچہ یہ عام طور پر ڈیفالٹ طور پر "پوشیدہ" ہوتا تھا، لیکن جن صارفین کو بڑی فائل متجسس یا مشکوک لگی تھی وہ اسے حذف کرنے کے قابل تھے۔ اس کے نتیجے میں عام طور پر ڈیٹا ضائع ہو جاتا ہے۔ رام کمپریشن ڈیٹا کمپریشن ڈسک فریگمینٹیشن ایگزیکٹوبل کمپریشن سیلف ایکسٹریکٹنگ آرکائیو cramfs e2compr اسکواش ایف ایس ایم ڈی ایف اے ٹی (ڈبل اسپیس) بٹ ایف اے ٹی (ڈبل اسپیس) ایم ڈی بی پی بی (ڈبل اسپیس) نوٹ حوالہ جات بیرونی لنکس ایف ایف دیکھیں۔ کمپریشن کمپریشن یوٹیلیٹی سافٹ ویئر کی اقسام کمپریشن فائل سسٹم