64 بیتیها چیستند؟
مهدی فرخی- دنیای کامپیوتر و ارتباطات اگر این روزها در فکر خرید یک کامپیوتر، نرمافزار یا سختافزار کامپیوتری باشید، یا فقط از کنار فروشگاههای عرضهکننده این محصولات بگذرید، حتما با کلمه سیستم عامل 64 بیتی، پردازنده 64 بیتی و یا نرمافزارهای قابل اجرا در یک سیستم عامل 64 بیتی برخوردهاید. در اینصورت ممکن است این سئوال برای شما پیش بیاید که مفهوم 64 بیت دقیقا یعنی چه و یک سیستم عامل 64 بیتی چه تفاوتی با نمونه 32 بیتی خود دارد؟ مفهوم 64 بیت یا 32 بیت به شیوه دستهبندی اطلاعات، توسط پردازشگر کامپیوتر برمیگردد. درواقع این اصطلاح در معماری کامپیوتر به آدرسهای حافظه یا واحدهای دادهای دیگری اطلاق میشود که 64 بیتی یا 8 اوکتتی (8 octet) هستند. از نظر مفاهیم معماری کامپیوتر 64 بیت را به این شکل میتوان معنی کرد: پردازندهها به طور معمول از نظر اعداد و ارقام به چند گروه تقسیم میشوند: عدد صحیح (integer)- ممیز شناور (floating point) -SIMD- کنترل و ... . در طراحیهای مدرن اصولا از توابع عدد صحیح، برای نشان دادن کارآیی یک پردازشگر استفاده میشود. بنابراین حدود مقدار حافظه به طور مستقیم نشان داده میشود. یعنی کامپیوتری که دارای معماری 64 بیتی است میتواند از هر داده یا آدرسی که 64 بیتی باشد، به طور مستقیم پشتیبانی کند. اما باید بدانیم که این 64 بیت که به طور عدد صحیح در پردازندهها ثبت میشود دارای نوعی محدودیت نیز هست. برای مثال پردازنده 64 بیتی AMD دارای محدودیت 52 بیتی در حافظه فیزیکی است و از نظر مجازی نیز تنها از 48 بیت داده یا آدرس، پشتیبانی میکند. CPUهای 64 بیتی از زمان حیات سوپر کامپیوترها، در حدود سال 1970 موجود بودند، اما از اوایل سالهای 2000 پا به دنیای کامپیوترهای شخصی گذاشتند و حالا با ویرایش هر دو نسخه 32 بیتی و 64 بیتی برای انواع سیستم عاملها، شاهد تغییر معماری کامپیوتر از 32 بیت به 64 بیت هستیم. این تغییر، تغییری اساسی است که بیشتر سیستم عاملها باید سطح کیفیت خود را ارتقاء بدهند و آن را با معماری جدید منطبق کنند. اما چه تفاوتهایی بین معماری 64 بیتی و نمونه 32 بیتی آن وجود دارد؟ بزگترین و اصلیترین تفاوت سیستم عاملهای 64 بیتی و 32 بیتی به عواملی چون دسترسی به حافظه، کنترل حافظه و کارکردهای امنیتی سیستم مربوط میشود. یکی از بزرگترین فواید استفاده از یک سیستم عامل 64 بیتی در این است که این سیستم عامل میتواند از حافظه 4GB و بیشتر استفاده کند حال آنکه یک سیستم 32 بیتی تنها میتواند از 3.5GB حافظه استفاده کند. بسیاری از کارآییهای بالاتر سیستم عاملهای 64 بیتی به دلیل همین برخورداری از حافظه بالاتر میباشد که در ادغام با یک پردازنده 64 بیتی به خوبی میتواند از این حافظه بیشتر استفاده کند. این تفاوت شاید برای یک کاربر معمولی که تنها از چند برنامه، به طور همزمان استفاده میکند و یا بانک اطلاعاتیاش حجم چشمگیری ندارد، چندان حائز اهمیت نباشد اما برای کاربرانی که نیاز به استفاده همزمان از چندین برنامه در حال اجرا دارند، این تفاوت بسیار چشمگیر و حائز اهمیت است، چرا که یک PC 64 بیتی به دلیل برخورداری از حافظه بالاتر توانایی مدیریت حجم بیشتری از اطلاعات را نسبت به یک PC 32 بیتی دارد و میتواند تمام برنامههای در حال اجرا را طوری تنظیم کند که سرعت سیستم دچار افت نشود. این تفاوت همچنین میتواند برای طرفداران پروپاقرص بازیهای کامپیوتری هم حائز اهمیت باشد. یک سیستم عامل 32 بیتی تنها قادر به آدرسدهی 4 بیلیون آدرس است. برای مثال در ویندوز XP 32 بیتی، سیستم عامل 2GB از حافظه را به برنامهها و 2GB از آن را به پشتیبانی سیستم عامل، کارت تصویر و سایر امور قابل آدرسدهی اختصاص میدهد. بنابراین هنگام نصب بسیاری از بازیهای کامپیوتری که به حافظه بالایی نیاز دارند کاربردچار مشکل میشود و برای رفع آن نیاز به تغییر این تقسیمبندی دارد. اما یک سیستم عامل 64 بیتی 1.6 به توان 14 آدرس را پشتیبانی میکند، بنابراین برای نصب انواع بازی کاربر دچار مشکل کمبود حافظه نخواهد بود! معماری 64 بیتی با مجموعه دادههای بزرگ مانند ویدئوهای دیجیتال، محاسبات علمی و پایگاه دادههای بزرگ، راحتتر کار میکند. اکثر سختافزارهای 64بیتی نسبت به مدلهای هم قیمت 32 بیتی خود، سریعتر و روانتر کار میکنند و قادر به اجرای روان سیستم عاملها و نرمافزارهای 32 بیتی میباشند. اما سرعت، تنها عامل مقایسهای در بررسی تفاوتهای پردازندههای 32 بیتی و 64 بیتی نمی باشد. عواملی چون کارآیی چندگانه (multi_tasking) - تست استرس (stress test) و محاسباتی با کارآیی بالا (clustering) عوامل قابل توجه دیگری هستند، که در مورد همه آنها معماری 64 بیتی در صورت استقرار مناسب، کارآیی بهتری از خود نشان میدهد. به همین خاطر سازمانهای بزرگی مانند IBM ،HP و Microsoft از پردازندههای 64 بیتی استفاده میکنند. اما نقطه ضعف اصلی معماری 64 بیتی نسبت به نمونه 32 بیتی این است که یک داده، با مشخصات یکسان، در سیستمی که توسط پردازنده 64 بیتی پشتیبانی میشود، فضای بیشتری را اشغال میکند. این افزایش حافظه مورد نیاز، برای انجام یک فرآیند مشخص، پردازنده را مجبور میکند که از حافظه نهان سیستم استفاده کند. حفظ بخشی از مدل 32 بیتی، یکی از راههای رسیدگی به این مشکل است که از لحاظ منطقی موثر به نظر میآید چرا که در اینصورت سیستم عامل از فضای آدرسدهی 31 بیتی برای کددهی به برنامهها استفاده میکند، در حالی که دادهها میتوانند به طور اختیاری در فضای 64 بیتی قرار بگیرند. نکته دیگری که شاید جز معایب سیستم عاملهای 64 بیتی باشد این است که این سیستم عاملها برای پشتیبانی از هر قطعه سختافزاری که برروی سیستم نصب میشود نیاز به یک درایور 64 بیتی دارد. درایور نرمافزاری است که به کامپیوتر اجازه برقراری ارتباط با سختافزار اتصالی را میدهد. برای مثال پرینتری که تنها دارای درایور 32 بیتی است قادر به کارکردن با یک سیستم عامل 64 بیتی نیست و برای نصب آن حتما باید از یک درایور 64 بیتی استفاده کرد. برخلاف درایورها اکثر برنامههایی که برای سیستم عامل 32 بیتی طراحی شدهاند (به استثنای آنتیویروسها) در سیستمعاملهای 64 بیتی هم به خوبی قابل اجرا میباشند. گرچه برنامههایی که از ابتدا برای سیستم عاملهای 64 بیتی طراحی شدهاند، سریعتر و روانتر اجرا میشوند. بنابراین بسته به کار شما با کامپیوتر و برنامههایی که از آنها استفاده میکنید، سیستم عامل 64 بیتی میتواند مفیدتر باشد و یا فرق چندانی با سیستم عامل 32 بیتی نداشته باشد. اما ازآنجایی که یک سیستم عامل 64 بیتی از هردو ورژن نرمافزارهای 32 و 64 بیتی پشتیبانی میکند و از حافظه بالاتری برخوردار است، با خرید یک کامپیوتر شخصی مجهز به پردازنده و سیستم عامل 64 بیتی، از مزایای بیشتری بهرهمند خواهید شد!
|