شنبه, ۱ اردیبهشت, ۱۴۰۳ / 20 April, 2024
مجله ویستا

تاثیر حافظه اصلی بر کارآئی سیستم


تاثیر حافظه اصلی بر کارآئی سیستم
در هر کامپیوتر از مجموعه ای منابع سخت افزاری و نرم افزاری استفاده می گردد که هر یک دارای جایگاه مختص به خود می باشند . سیستم عامل ،‌ مسئولیت مدیریت منابع موجود در یک کامپیوتر را برعهده دارد . مجموعه پتانسیل های سخت افزاری و نرم افزاری موجود و نحوه مدیریت آنان توسط سیستم عامل ، میزان مفید بودن و کارآئی یک کامپیوتر را مشخص می نماید.
حافظه اصلی ( RAM ) یکی از مهمترین منابع سخت افزاری موجود در کامپیوتر است که با توجه به نقش محوری آن در اجرای برنامه های کامپیوتری ، همواره در معرض پرسش های فراوانی از جانب کاربران کامپیوتر است. به عنوان نمونه ، شاید این سوال برای شما نیز مطرح شده باشد که تاثیر افزایش حافظه اصلی بر سرعت کامپیوتر چیست و در صورت افزایش حافظه اصلی ، آیا کارائی سیستم نیز به همان میزان افزایش خواهد یافت ؟
در این مطلب به بررسی این موضوع خواهیم پرداخت که چرا حافظه اصلی دارای یک نقش مهم و غیرقابل انکار در کارائی سیستم است . ادامه بحث را با در نظر گرفتن دو فرضیه دنبال می نمائیم .
۱) این که بر روی کامپیوتر از یکی از نسخه های سیستم عامل ویندوز ۲۰۰۰ ، XP و یا ۲۰۰۳ سی و دو بیتی استفاده می گردد و
۲) این که از یک کامیپوتر مدل جدید با پتانسیل های سخت افزاری مناسب ، استفاده می شود .
هر سیستم عامل از یک مدل خاص برای مدیریت منبع ارزشمند حافظه اصلی استفاده می نماید . نحوه مدیریت حافظه توسط سیستم عامل ، یکی از شاخص های مهم ارزیابی موفقیت یک سیستم عامل محسوب می گردد . ویندوز نیز به عنوان یک سیستم عامل از این قاعده مستثنی نمی باشد.
● ویندوز و مدیریت حافظه
زمانی که اولین نسخه ویندوز ارائه شده بود ،‌ امکان مدیریت حافظه اندکی توسط آن وجود داشت . در آن زمان ، حافظه گران بود و حتی در صورتی که استفاده کنندگان توان مالی تهیه آن را داشتند ، کامپیوترهای آن دوره قادر به استفاده از آن نبودند . این وضعیت تا اواسط دهه ۹۰ میلادی ادامه داشت و بسیاری از افرادی که دارای کامپیوتر بودند ،‌ صرفا" از ۸ مگابایت حافظه اصلی استفاده می کردند که امکان ارتقاء آن به حداکثر ۶۴ مگابایت وجود داشت .
قیمت بالا و ظرفیت بردهای اصلی سیستم ( مادر برد ) ، از جمله محدودیت های اساسی کامپیوترها در گذشته ای نه چندان دور است که قطعا" هم اینک این وضعیت بهبود یافته است و استفاده کنندگان کامپیوتر از این بایت کمتر دچار مشکل می گردند.
در اکثر نسخه های ویندوز امکان استفاده از حافظه مجازی وجود دارد . با توجه به این که قیمت حافظه هارد دیسک نسبت به حافظه اصلی بمراتب کمتر است ، ویندوز از فضای ذخیره سازی هارد دیسک به منظور جبران کمبود حافظه اصلی سیستم استفاده می نماید .
حافظه مجازی ، یک راه حل مناسب به منظور غلبه بر محدودیت حافظه اصلی است که دارای چالش های مختص به خود نیز می باشد :
● کند بودن سرعت هارد دیسک نسبت به حافظه اصلی :
هارد دیسک دارای سرعتی بمراتب پائین تر ( کندتر ) نسبت به حافظه اصلی است . دستیابی به حافظه اصلی بر اساس نانوثانیه و سرعت هارد دیسک بر اساس میلی ثانیه اندازه گیری می شود .
● عدم امکان استفاده مستقیم از حافظه مجازی :
یکی دیگر از مسائل در ارتباط با حافظه مجازی ، عدم امکان استفاده مستقیم از آن است . مثلا" فرض کنید که یک صفحه اطلاعات از حافظه اصلی بر روی هارد دیسک ( حافظه مجازی ) نوشته گردد . در صورتی که در ادامه به اطلاعات موجود در این صفحه نیاز باشد ، کامپیوتر نمی تواند مستقیما" به آن دستیابی داشته باشد . در چنین مواردی ، می بایست قبل از این که کامپیوتر بتواند از داده استفاده نماید ، داده درون حافظه اصلی مستقر گردد . به فرآیند فوق paging گفته می شود .
Paging باعث کند شدن یک سیستم می گردد چراکه کامپیوتر مجبور است در زمانی که داده از هارد دیسک به درون حافظه اصلی منتقل می گردد ، عملیات جاری خود را متوقف و منتظر بماند . در واقع ، علت اصلی استفاده از حافظه مجازی نیاز کامپیوتر به حافظه و عدم وجود ظرفیت لازم برای تامین خواسته های سیستم عامل است . در صورتی که حافظه سیستم تکمیل شده باشد ، کامپیوتر نمی تواند یک نسخه از صفحه داده را از هارد دیسک به درون حافظه اصلی منتقل نماید . در چنین مواردی فضائی برای استقرار داده در حافظه اصلی وجود نداشته و سیستم عامل می بایست یک صفحه داده موجود در حافظه اصلی را به حافظه مجازی منتقل نماید تا فضای لازم برای داده ئی که به وجود آن نیاز است ، ایجاد گردد . ( داده ئی که می بایست از هارد دیسک به درون حافظه اصلی کامپیوتر منتقل شود )
paging ، فرآیندی است که می بایست مدیریت گردد . کامپیوتر می بایست از مکانی در حافظه اصلی به منظور ثبت وضعیت استفاده از حافظه استفاده نماید . بنابراین ، سیستم می بایست قسمتی از حافظه خود را برای ثبت وضعیت صفحات و این که کدام صفحه در حافظه اصلی و کدام صفحه در حافظه مجازی است ، در نظر بگیرد. علاوه بر این ، سیستم از سیکل های متعدد پردازنده ( CPU ) به منظور انتقال داده بین حافظه اصلی و حافظه مجازی استفاده می نماید . در صورتی که نگرانی خاصی در رابطه با Paging وجود نداشته باشد ، کامپیوتر به سرعت وظایف خود را انجام خواهد داد .
حافظه بیشتر، کاهش وابستگی ویندوز به حافظه مجازی ، عدم استفاده از زمان پردازنده و منابع دیگری نظیر هارد دیسک را به دنبال خواهد داشت .
شاید بهترین گزینه این باشد که به اندازه ای حافظه به سیستم اضافه گردد تا درصد استفاده از حافظه مجازی به حداقل مقدار ممکن کاهش یابد . با این که گزینه فوق ممکن است به عنوان یک راه حل عملی باشد ، ولی نمی توان زمینه استفاده از حافظه مجازی را از ویندوز سلب نمود . ویندوز بگونه ای طراحی شده است که بتواند از حافظه مجازی استفاده نماید و سیستم عامل این انتظار را دارد که حافظه مجازی موجود و برای وی در دسترس باشد . هر اندازه که به سیستم حافظه فیزیکی اضافه گردد ، وابستگی آن به حافظه مجازی کمتر خواهد شد.
شاید از بحث فوق اینگونه برداشت شود که علت اصلی استفاده از حافظه مجازی ، جبران کمبود حافظه اصلی است . برداشت فوق با این که درست است ولی بیانگر تمامی ابعاد موضوع نمی باشد و تنها نیمی از حقیقت را شامل می شود .
به عنوان یک قانون ، شرکت مایکروسافت توصیه می نماید که پیکربندی حافظه مجازی بر اساس میزان حافظه فیزیکی ( RAM ) نصب شده بر روی ماشین ، انجام شود و حداقل ، حافظه مجازی ۵ / ۱ برابر حافظه اصلی باشد . این بدان معنی است که اگر ماشینی دارای ۵۱۲ مگابایت حافظه اصلی باشد ، ویندوز انتظار دارد که بتواند به حداقل ۷۶۸ مگابایت حافظه مجازی دستیابی داشته باشد . فرض کنید که به این نتیجه رسیده اید که ۵۱۲ مگابایت حافظه اصلی نیاز شما را تامین نمی نماید و تصمیم می گیرید حافظه ماشین خود را به یک گیگابایت ارتقاء دهید.با این کار شما نیاز ویندوز به حافظه مجازی را هم افزایش داده اید.در چنین شرایطی ویندوز این انتظار را دارد که بتواند به حافظه مجازی با ظرفیتی معادل ۵ / ۱ گیگابایت دستیابی داشته باشد .
علیرغم این که ظرفیت Pagefile ماشین ( فایلی که از آن به عنوان حافظه مجازی استفاده می شود ) افزایش می یابد، این بدان معنی نخواهد بود که ماشین از pagefile به سختی استفاده می نماید . عموما" عکس این موضوع صادق است . نصب حافظه بیشتر ، باعث می شود که ویندوز کمتر مجبور به paging گردد . حتی اگر ویندوز همچنان مجبور به استفاده از حافظه مجازی باشد ، حافظه اضافه نصب شده این اطمینان را ایجاد می نماید که page مرتبط با برنامه در حال اجراء ، در حافظه اصلی موجود است و سیستم عامل به دلیل کمبود حافظه مجبور نخواهد بود که آن را بر روی فضای ذخیره سازی حافظه جانبی منتقل نماید . بدین ترتیب برنامه ها با سرعت بیشتری اجراء شده و در زمانی مطلوب نیاز کاربران را تامین و در نهایت کارآئی سیستم افزایش خواهد یافت .
● آیا محدودیتی در ارتباط با حافظه وجود دارد ؟
در ابتدای بحث اشاره گردید که اطلاعات موجود در این مقاله صرفا" برای سیستم های ۳۲ بیتی مفید بوده و در ارتباط با سیستم های ۶۴ بیتی نمی باشد . حقیقت این است که حتی سیستم های ۶۴ بیتی نیز در ارتباط با حافظه مجازی می باشند ولی نسخه های ۳۲ بیتی و ۶۴ بیتی بطور کامل از مدل های حافظه مختلفی استفاده می نمایند . سیستم های ۳۲ بیتی صرفا" دارای ۳۲ بیت بوده و می توانند حداکثر ۴ گیگابایت حافظه اصلی را آدرس دهی نمایند . یک سیستم ۶۴ بیتی از لحاظ تئوری قادر به آدرس دهی ۱۶ اگزابایت ( بیش از ۱۶،۰۰۰،۰۰۰ گیگابایت حافظه RAM ) می باشد. تولید یک ماشین که بتواند از این میزان حافظه حمایت نماید در حال حاضر هزینه بالائی داشته و مقرون به صرفه نمی باشد . اکثر سیستم های ۶۴ بیتی موجود میزان حافظه اصلی را محدود بین ۸ گیگابایت و ۲۵۶ ترابایت نموده اند .
محدودیت فضای آدرس دهی ۴ گیگابایتی برای ماشین های ۳۲ بیتی که برروی آنان ویندوز نصب شده است ، چه پیامدهائی را به دنبال دارد ؟
ویندوز بگونه ای طراحی شده است تا بتواند بطور کامل ۴ گیگابایت حافظه را آدرس دهی نماید . ویندوز فضای چهار گیگابایتی را به دو بخش مساوی تقسیم می نماید . یکی از بخش ها توسط سیستم عامل و از بخش دیگر به منظور User mode ( یا برنامه ها ) استفاده می گردد .
در صورت نیاز می توان پیکربندی پیش فرض فوق را تغییر داد . بدین منظور از فایل Boot.ini استفاده می گردد . به عنوان نمونه می توان در فایل فوق از سوئیچ ۳GB / استفاده نمود . بدین ترتیب ویندوز پیکربندی پیش فرض خود را تغییر و از یک فضای یک گیگابایتی برای خود و از یک فضای ۳ گیگاباتیی برای user mode استفاده می نماید . بدین ترتیب ویندوز می تواند مدیریت بهتری را به منظور تامین خواسته برنامه های بزرگی نظیر Exchange server انجام دهد(هر گز از سوئیچ اشاره شده بر روی Small Business Server و یا یک کنترل کننده domain استفاده نگردد) .
منبع : آسمونی


همچنین مشاهده کنید