یکی از سؤالاتی که برخی میپرسند این است که روی فلش من نوشته مثلاً 8GB اما چرا کامپیوتر میگوید این فلش 7.48GB فضا دارد؟
مثلاً در تصویر زیر، هارد اکسترنال من که به نام ۵۰۰ گیگابایتی به من فروخته شده، ویندوز اعلام میکند که این هارد 465 گیگابایت فضا دارد:
برخیها ممکن است در پاسخ بگویند: «بخشی از فضای آن برای کارهای خود هارد (مثلاً Page Table و...) رزرو شده» و برخی هم که منفینگریشان بالا زده، ممکن است بگویند: کمفروشی کردهاند!!
اما پاسخ حقیقی این است که این تفاوت در عدد، به خاطر تفاوت در میزان «کیلو» در بازار و در رشته کامپیوتر است. در بازار، طبق سنت، هر گاه گفته میشود کیلو، منظور، ۱۰۰۰ است؛ اما دقت کنید که در کامپیوتر، در بحث ذخیرهسازی، هر کیلو معادل ۲ به توان ۱۰ یعنی ۱۰۲۴ است.
بنابراین، وقتی یک شرکت به شما میگوید من مثلاً ۸ گیگابایت فضا به تو فروختهام، به صورت بازاری حساب کرده یعنی 8x1000x1000x1000 بایت فضا؛ یعنی ۸ میلیارد بایت فضا به شما فروخته. اما وقتی این فلش قرار است در کامپیوتر استفاده شود، در دنیای کامپیوتر، کیلوها معمولاً معادل 1024 واحد هستند. پس کامپیوتر، 8,000,000,000 را سه بار تقسیم بر 1024 میکند:
8,000,000,000/1024/1024/1024=7.45
(البته اینکه چرا فلش من را در تصویر بالا به جای 7.45، 7.48 نشان میدهد؛ یعنی ۳۰ مگابایت بیشتر از حد معمول، جای سؤال است)
یا مثلاً هارد من که 500GB است یعنی 500,000,000,000 بایت فضا دارد؛ که اگر بر ۱۰۲۴ تقسیم کنیم مانند تصویر بالا داریم:
500,000,000,000/1024/1024/1024=465
پس هارد من، اندازهاش کمتر از چیزی که پولش را دادهام نیست...
گاهی عدم توجه به این تفاوتها، موجب سوء تفاهمهای جدی میشود؛ مثلاً یک نفر ممکن است شکایت کند که یک شرکت کمفروشی میکند... یا مثلاً یک گزارشگر اخبار، چند وقت پیش گزارشی در اعتراض به سرعت اینترنت تهیه کرده بود، در آن گزارش یک دختر خانم میگفت: من پلان ۱۰ مگ اینترنت را خریداری کردهام اما سرعت دانلودم ۲ مگ بیشتر نیست! دقت کنید: او حواسش نیست که در بحث انتقال داده، همیشه سرعت بر حسب bit بیان میشود (چون دادهها بیت به بیت ارسال میشوند) اما در بحث ذخیرهسازی، سرعت بر حسب Byte بیان میشود (چون دادهها کاراکتر به کاراکتر روی هارد ذخیره میشوند). در حقیقت سرعت اینترنت ایشان 10Mbps (مگابیت در ثانیه) بوده اما نرمافزار مدیریت دانلود (Download Manager) سرعت را بر حسب MBps (مگابایت در ثانیه) نشان میدهد. یعنی ایشان باید 10 را تقسیم بر 8 کند تا سرعت اینترنتش بر حسب مگابایت به دست آید: 10/8 میشود 1.25MB . در حقیقت آن شرکت سرعت بیشتری هم در اختیار این مشترک قرار داده ولی چون مشترک از این واحدها و جریانات آگاه نیست، فکر میکند آن شرکت دارد کمفروشی میکند! (به ویژه اینکه اگر شما از اینترنت موبایلی استفاده میکنید، خیالتان راحت، اپراتورها در بحث سرعت هر چقدر که بتوانند برای شما سرعت را افزایش میدهند چون بدشان نمیآید شما سرعتتان بالا باشد و همینطور بزنید دانلود... چون آنها پول حجم دانلود را از شما میگیرند؛ هر چه بیشتر و سریعتر دانلود کنید آنها خوشحالتر خواهند بود...)
فرق MiB و MB چیست؟
با توجه به مشکل بالا، و اینکه افراد ممکن است روی فلش خود را بخوانند و ببینند نوشته 8GB و فکر کنند که این G همان G در رشته کامپیوتر است (یعنی 1024*1024*1024)، برای رفع این سوء تفاهمها، از سال ۱۹۹۸ کمیسیون الکتروتکنیکی بینالمللی (IEC)، مفهومی به نام Mebibyte را ابداع کرد (مِبیبایت). این کلمه ترکیب Mega و Binary است و به طور مخفف به صورت MiB نشان داده میشود.
پس از آن، Kilo+Binary واحد Kibi را تشکیل داده و Giga+Binary واحد Gibi را تشکیل داده و به همین صورت تا واحدهای بالا...
و قرار بر این شد که از این پس هر کجا نوشته شد KB، منظور کیلوی بازاری است یعنی ۱۰۰۰ و اگر نوشته شد KiB، منظور KibiByte (کیلوی کامپیوتری) است یعنی ۱۰۲۴؛ بنابراین جدول زیر برای واحدهای اندازهگیری داده در کامپیوتر قابل تصور است:
پس الان که من در حال آپلود یک فایل با نرمافزار FileZilla به روی سایت هستم و این صفحه را میبینم:
منظور این نرمافزار این است که سرعت من 85 کیلوبایت کامپیوتری در ثانیه است.
اگر سؤال شما این است که چرا ویندوز این قانون را رعایت نمیکند و مثلاً در زیر درایو نمینویسد 20GiB یعنی با اینکه منظورش ۱۰۲۴ است اما مینویسد 20GB؛ پاسخ این سؤال را باید از مایکروسافت پرسید!! اما ظاهراً چون کاربران به این موضوع عادت کردهاند، نخواسته حساسیت ایجاد کند؛ اما در جاهایی مثل «سرعت انتقال در شبکه» (دانلود و آپلود) باید این مسائل به طور واضح از هم متمایز شوند؛ مثلاً ممکن است شما کیلوبایت را در بحث حافظه به صورت kb بنویسید و مشکلی هم نباشد اما در بحث شبکه اگر منظور شما بایت است، باید حتماً b به صورت بزرگ نوشته شود (B) که با بیت اشتباه گرفته نشود؛ و K هم دقیقاً بیان شود که کیلوی بازاری ملاک است یا کیلوی کامپیوتری؟ یعنی KB یا KiB ؟
موفق باشید؛
حمید رضا نیرومند