مقاله درباره رم و بایوس ram & bios
حافظه RAM
حافظه (RAM(Random Access Memory شناخته ترین نوع حافظه در دنیای کامپیوتر است . روش دستیابی به این نوع از حافظه ها تصادفی است . چون می توان به هر سلول حافظه مستقیما" دستیابی پیدا کرد . در مقابل حافظه های RAM ، حافظه های(SAM(Serial Access Memory وجود دارند. حافظه های SAM اطلاعات را در مجموعه ای از سلول های حافظه ذخیره و صرفا" امکان دستیابی به آنها بصورت ترتیبی وجود خواهد داشت. ( نظیر نوار کاست ) در صورتیکه داده مورد نظر در محل جاری نباشد هر یک از سلول های حافظه به ترتیب بررسی شده تا داده مورد نظر پیدا گردد. حافظه های SAM در مواردیکه پردازش داده ها الزاما" بصورت ترتیبی خواهد بود مفید می باشند ( نظیر حافظه موجود بر روی کارت های گرافیک ). داده های ذخیره شده در حافظه RAM با هر اولویت دلخواه قابل دستیابی خواهند بود.
مبانی حافظه های RAM
حافظه RAM، یک تراشه مدار مجتمع (IC) بوده که از میلیونها ترانزیستور و خازن تشکیل شده است. در اغلب حافظهها با استفاده و بکارگیری یک خازن و یک ترانزیستور میتوان یک سلول را ایجاد کرد. سلول فوق قادر به نگهداری یک بیت داده خواهد بود. خازن اطلاعات مربوط به بیت را که یک و یا صفر است، در خود نگهداری خواهد کرد. عملکرد ترانزیستور مشابه یک سوییچ بوده که امکان کنترل مدارات موجود بر روی تراشه حافظه را بمنظور خواندن مقدار ذخیره شده در خازن و یا تغییر وضعیت مربوط به آن، فراهم می نماید. خازن مشابه یک ظرف (سطل) بوده که قادر به نگهداری الکترونها است. بمنظور ذخیره سازی مقدار "یک" در حافظه، ظرف فوق میبایست از الکترونها پر گردد. برای ذخیره سازی مقدار صفر، می بایست ظرف فوق خالی گردد. مسئله مهم در رابطه با خازن، نشت اطلاعات است (وجود سوراخ در ظرف) بدین ترتیب پس از گذشت چندین میلیثانیه یک ظرف مملو از الکترون تخلیه می گردد. بنابراین بمنظور اینکه حافظه بصورت پویا اطلاعات خود را نگهداری نماید، می بایست پردازنده و یا "کنترل کننده حافظه" قبل از تخلیه شدن خازن، مکلف به شارژ مجدد آن بمنظور نگهداری مقدار "یک" باشند. بدین منظور کنترل کننده حافظه اطلاعات حافظه را خوانده و مجددا" اطلاعات را بازنویسی می نماید. عملیات فوق (Refresh)، هزاران مرتبه در یک ثانیه تکرار خواهد شد. علت نامگذاری DRAM بدین دلیل است که این نوع حافظه ها مجبور به بازخوانی اطلاعات بصورت پویا خواهند بود. فرآیند تکراری " بازخوانی / بازنویسی اطلاعات" در این نوع حافظه ها باعث می شود که زمان تلف و سرعت حافظه کند گردد.
سلول های حافظه بر روی یک تراشه سیلیکون و بصورت آرائه ای مشتمل از ستون ها (خطوط بیت) و سطرها (خطوط کلمات) تشکیل می گردند. نقطه تلاقی یک سطر و ستون بیانگر آدرس سلول حافظه است.
حافظه های DRAM با ارسال یک شارژ به ستون مورد نظر باعث فعال شدن ترانزیستور در هر بیت ستون، خواهند شد.در زمان نوشتن خطوط سطر شامل وضعیتی خواهند شد که خازن می بایست به آن وضغیت تبدیل گردد. در زمان خواندن Sense-amplifier ، سطح شارژ موجود در خازن را اندازه گیری می نماید. در صورتیکه سطح فوق بیش از پنجاه درصد باشد مقدار "یک" خوانده شده و در غیراینصورت مقدار "صفر" خوانده خواهد شد. مدت زمان انجام عملیات فوق بسیار کوتاه بوده و بر حسب نانوثانیه ( یک میلیاردم ثانیه ) اندازه گیری می گردد. تراشه حافظه ای که دارای سرعت 70 نانوثانیه است ، 70 نانو ثانیه طول خواهد کشید تا عملیات خواندن و بازنویسی هر سلول را انجام دهد.
سلول های حافظه در صورتیکه از روش هائی بمنظور اخذ اطلاعات موجود در سلول ها استفاده ننمایند، بتنهائی فاقد ارزش خواهند بود. بنابراین لازم است سلول های حافظه دارای یک زیرساخت کامل حمایتی از مدارات خاص دیگر باشند. مدارات فوق عملیات زیر را انجام خواهند داد:
* مشخص نمودن هر سطر و ستون (انتخاب آدرس سطر و انتخاب آدرس ستون )
* نگهداری وضعیت بازخوانی و باز نویسی داده ها ( شمارنده )
* خواندن و برگرداندن سیگنال از یک سلول ( Sense amplifier)
* اعلام خبر به یک سلول که می بایست شارژ گردد و یا ضرورتی به شارژ وجود ندارد ( Write enable)
* سایر عملیات مربوط به "کنترل کننده حافظه" شامل مواردی نظیر : مشخص نمودن نوع سرعت ، میزان حافظه و بررسی خطاء است .
حافظه های SRAM دارای یک تکنولوژی کاملا" متفاوت می باشند. در این نوع از حافظه ها از فلیپ فلاپ برای ذخیره سازی هر بیت حافظه استفاده می گردد. یک فلیپ فلاپ برای یک سلول حافظه، از چهار تا شش ترانزیستور استفاده می کند . حافظه های SRAM نیازمند بازخوانی / بازنویسی اطلاعات نخواهند بود، بنابراین سرعت این نوع از حافظه ها بمراتب از حافظه های DRAM بیشتر است .با توجه به اینکه حافظه های SRAM از بخش های متعددی تشکیل می گردد، فضای استفاده شده آنها بر روی یک تراشه بمراتب بیشتر از یک سلول حافظه از نوع DRAM خواهد بود. در چنین مواردی میزان حافظه بر روی یک تراشه کاهش پیدا کرده و همین امر می تواند باعث افزایش قیمت این نوع از حافظه ها گردد. بنابراین حافظه های SRAM سریع و گران و حافظه های DRAM ارزان و کند می باشند . با توجه به موضوع فوق ، از حافظه های SRAM بمنظور افزایش سرعت پردازنده ( استفاده از Cache) و از حافظه های DRAM برای فضای حافظه RAM در کامپیوتر استفاده می گردد.
ماژول های حافظه
تراشه های حافظه در کامییوترهای شخصی در آغاز از یک پیکربندی مبتنی بر Pin با نام (DIP(Dual line Package استفاده می کردند. این پیکربندی مبتنی بر پین، می توانست لحیم کاری درون حفره هائی برروی برداصلی کامپیوتر و یا اتصال به یک سوکت بوده که خود به برد اصلی لحیم شده است .همزمان با افزایش حافظه ، تعداد تراشه های مورد نیاز، فضای زیادی از برد اصلی را اشغال می کردند.از روش فوق تا زمانیکه میزان حافظه حداکثر دو مگابایت بود ، استقاده می گردید.
راه حل مشکل فوق، استقرار تراشه های حافظه بهمراه تمام عناصر و اجزای حمایتی در یک برد مدار چاپی مجزا (Printed circuit Board) بود. برد فوق در ادامه با استفاده از یک نوع خاص از کانکنور ( بانک حافظه ) به برد اصلی متصل می گردید. این نوع تراشه ها اغلب از یک پیکربندی pin با نام Small Outline J-lead ) soj ) استفاده می کردند . برخی از تولیدکنندگان دیگر که تعداد آنها اندک است از پیکربندی دیگری با نام Thin Small Outline Package )tsop) استفاده می نمایند. تفاوت اساسی بین این نوع پین های جدید و پیکربندی DIP اولیه در این است که تراشه های SOJ و TSOR بصورت surface-mounted در PCB هستند. به عبارت دیگر پین ها مستقیما" به سطح برد لحیم خواهند شد . ( نه داخل حفره ها و یا سوکت ) .
تراشههای حافظه از طریق کارتهائی که "ماژول" نامیده می شوند قابل دستیابی و استفاده می باشند. شاید تاکنون با مشخصات یک سیستم که میزان حافظه خود را بصورت 32 * 8 , یا 16 * 4 اعلام می نماید، برخورده کرده باشید. اعداد فوق تعداد تراشهها ضربدر ظرفیت هر یک از تراشهها را که بر حسب مگابیت اندازه گیری میگردند، نشان می دهد. بمنظور محاسبه ظرفیت، می توان با تقسیم نمودن آن بر هشت میزان مگابایت را بر روی هر ماژول مشخص کرد. مثلا" یک ماژول 32 * 4، بدین معنی است که ماژول دارای چهار تراشه 32 مگابیتی است. با ضرب 4 در 32 عدد 128 (مگابیت) بدست می آید. اگر عدد فوق را بر هشت تقسیم نمائیم به ظرفیت 16 مگابایت خواهیم رسید.
نوع برد و کانکتور استفاده شده در حافظه های RAM، طی پنج سال اخیر تفاوت کرده است. نمونههای اولیه اغلب بصورت اختصاصی تولید می گردیدند. تولید کنندگان متفاوت کامپیوتر بردهای حافظه را بگونهای طراحی میکردند که صرفا" امکان استفاده از آنان در سیستم های خاصی وجود داشت. در ادامه (SIMM (Single in-line memory مطرح گردید. این نوع از بردهای حافظه از 30 پین کانکتور استفاده کرده و طول آن حدود 3/5 اینچ و عرض آن یک اینچ بود ( یازده سانتیمتر در 2/5 سانتیمتر ). در اغلب کامپیوترها میبایست بردهای SIMM بصورت زوج هائی که دارای ظرفیت و سرعت یکسان باشند، استفاده گردد. علت این است که پهنای گذرگاه داده بیشتر از یک SIMM است. مثلا" از دو SIMM هشت مگابایتی برای داشتن 16 مگابایت حافظه بر روی سیستم استفاده میگردد. هر SIMM قادر به ارسال هشت بیت داده در هر لحظه خواهد بود با توجه به این موضوع که گذرگاه داده شانزده بیتی است از نصف پهنای باند استفاده شده و این امر منطقی بنظر نمی آید. در ادامه بردهای SIMM بزرگتر شده و دارای ابعاد 25 / 4 * 1 شدند (11 سانتیمتر در 2/5 سانتیمتر) و از 72 پین برای افزایش پهنای باند و امکان افزایش حافظه تا میزان 256 مگابایت بدست آمد.
بموازات افزایش سرعت و ظرفیت پهنای باند پردازندهها، تولیدکنندگان از استاندارد جدید دیگری با نام dual in-line memory module) DIMM) استفاده کردند. این نوع بردهای حافظه دارای 168 پین و ابعاد 1 * 5/4 اینچ (تقریبا" 14 سانتیمتر در 2/5 سانتیمتر) بودند. ظرفیت بردهای فوق در هر ماژول از هشت تا 128 مگابایت را شامل و می توان آنها را بصورت تک (زوج الزامی نیست) استفاده کرد. اغلب ماژولهای حافظه با 3/3 ولت کار میکنند. در سیستم های مکینتاش از 5 ولت استفاده مینمایند. یک استاندارد جدید دیگر با نام Rambus in-line memory module ، RIMM از نظر اندازه و پین با DIMM قابل مقایسه است ولی بردهای فوق ، از یک نوع خاص گذرگاه داده حافظه برای افزایش سرعت استفاده می نمایند.
اغلب بردهای حافظه در کامپیوترهای دستی (notebook) از ماژول های حافظه کاملا" اختصاصی استفاده می نمایند ولی برخی از تولیدکنندگان حافظه از استاندارد small outline dual in-line memory module) SODIMM استفاده می نمایند. بردهای حافظه SODIMM دارای ابعاد 1* 2 اینچ ( 5 سانتیمنتر در 5 /2 سانتیمنتر ) بوده و از 144 پین استفاده می نمایند. ظرفیت این نوع بردها ی حافظه در هر ماژول از 16 مگابایت تا 256 مگابایت می تواند باشد.
بررسی خطاء
اکثر حافظه هائی که امروزه در کامپیوتر استفاده می گردند دارای ضریب اعتماد بالائی می باشند.در اکثر سیستم ها ،" کنترل کننده حافظه " درزمان روشن کردن سیستم عملیات بررسی صحت عملکرد حافظه را انجام می دهد. تراشه های حافظه با استفاده از روشی با نام Parity ، عملیات بررسی خطاء را انحام می دهند. تراشه های Parity دارای یک بیت اضافه برای هشت بیت داده می باشند.روشی که Parity بر اساس آن کار می کند بسیار ساده است . در ابتداParity زوج بررسی می گردد. زمانیکه هشت بیت ( یک بایت) داده ئی را دریافت می دارند، تراشه تعداد یک های موجود در آن را محاسبه می نماید.در صورتیکه تعداد یک های موجود فرد باشد مقدار بیت Parity یک خواهد شد. در صورتیکه تعداد یک های موجود زوج باشد مقدار بیت parity صفر خواهد شد. زمانیکه داده از بیت های مورد نظر خوانده می شود ، مجددا" تعداد یک های موجود محاسبه و با بیت parity مقایسه می گردد.درصورتیکه مجموع فرد و بیت Parity مقدار یک باشد داده مورد نظر درست بوده و برای پردازنده ارسال می گردد. اما در صورتیکه مجموع فرد بوده و بیت parity صفر باشد تراشه متوجه بروز یک خطاء در بیت ها شده و داده مورد نظر کنار گذاشته می شود. parity فرد نیز به همین روش کار می کند در روش فوق زمانی بیت parity یک خواهد شد که تعداد یک های موجود در بایت زوج باشد.
مسئله مهم در رابطه با Parity عدم تصحیح خطاء پس از تشخیص است . در صورتیکه یک بایت از داده ها با بیت Parity خود مطابقت ننماید داده دور انداخته شده سیستم مجددا" سعی خود را انجام خواهد داد. کامپیوترها نیازمند یک سطح بالاتربرای برخورد با خطاء می باشند.برخی از سیستم ها از روشی با نام به error correction code)ECC) استفاده می نمایند. در روش فوق از بیت های اضافه برای کنترل داده در هر یک از بایت ها استفاده می گردد. اختلاف روش فوق با روش Parity در این است که از چندین بیت برای بررسی خطاء استفاده می گردد. ( تعداد بیت های استفاده شده بستگی به پهنای گذرگاه دارد ) حافظه های مبتنی بر روش فوق با استفاده از الگوریتم مورد نظر نه تنها قادر به تشخیص خطا بوده بلکه امکان تصحیح خطاهای بوجود آمده نیز فراهم می گردد. ECCهمچنین قادر به تشخیص خطاها در مواردی است که یک یا چندین بیت در یک بایت با مشکل مواجه گردند .
انواع حافظه RAM
*Static random access memory)SRAM) . این نوع حافظه ها از چندین ترانزیستور ( چهار تا شش ) برای هر سلول حافظه استفاده می نمایند. برای هر سلول از خازن استفاده نمی گردد. این نوع حافظه در ابتدا بمنظور cache استفاده می شدند.
*Dynamic random access memory)DRAM) . در این نوع حافظه ها برای سلول های حافظه از یک زوج ترانزیستورو خازن استفاده می گردد .
*Fast page mode dynamic random access memory)FPM DRAM) . شکل اولیه ای از حافظه های DRAM می باشند.در تراشه ای فوق تا زمان تکمیل فرآیند استقرار یک بیت داده توسط سطر و ستون مورد نظر، می بایست منتظر و در ادامه بیت خوانده خواهد شد.( قبل از اینکه عملیات مربوط به بیت بعدی آغاز گردد) .حداکثر سرعت ارسال داده به L2 cache معادل 176 مگابایت در هر ثانیه است .
*Extended data-out dynamic random access memory)EDO DRAM) . این نوع حافظه ها در انتظار تکمیل و اتمام پردازش های لازم برای اولین بیت نشده و عملیات مورد نظر خود را در رابطه با بیت بعد بلافاصله آغاز خواهند کرد. پس از اینکه آدرس اولین بیت مشخص گردید EDO DRAM عملیات مربوط به جستجو برای بیت بعدی را آغاز خواهد کرد. سرعت عملیات فوق پنج برابر سریعتر نسبت به حافظه های FPM است . حداکثر سرعت ارسال داده به L2 cache معادل 176 مگابایت در هر ثانیه است .
*Synchronous dynamic random access memory)SDRM) از ویژگی "حالت پیوسته " بمنظور افزایش و بهبود کارائی استفاده می نماید .بدین منظور زمانیکه سطر شامل داده مورد نظر باشد ، بسرعت در بین ستون ها حرکت و بلافاصله پس از تامین داده ،آن را خواهد خواند. SDRAM دارای سرعتی معادل پنج برابر سرعت حافظه های EDO بوده و امروزه در اکثر کامپیوترها استفاده می گردد.حداکثر سرعت ارسال داده به L2 cache معادل 528 مگابایت در ثانیه است .
*Ram bus dynamic random access memory )RDRAM) یک رویکرد کاملا" جدید نسبت به معماری قبلی DRAM است. این نوع حافظه ها از Ram bus in-line memory module)RIMM) استفاده کرده که از لحاظ اندازه و پیکربندی مشابه یک DIMM استاندارد است. وجه تمایز این نوع حافظه ها استفاده از یک گذرگاه داده با سرعت بالا با نام "کانال Ram bus " است . تراشه های حافظه RDRAM بصورت موازی کار کرده تا بتوانند به سرعت 800 مگاهرتز دست پیدا نمایند.
Credit card memory یک نمونه کاملا" اختصاصی از تولیدکنندگان خاص بوده و شامل ماژول های DRAM بوده که دریک نوع خاص اسلات ، در کامپیوترهای notebook استفاده می گردد .
PCMCIA memory card .نوع دیگر از حافظه شامل ماژول های DRAM بوده که در notebook استفاده می شود.
Flash Ram نوع خاصی از حافظه با ظرفیت کم برای استفاده در دستگاههائی نظیر تلویزیون، VCR بوده و از آن به منظور نگهداری اطلاعات خاص مربوط به هر دستگاه استفاده می گردد. زمانیکه این نوع دستگاهها خاموش باشند همچنان به میزان اندکی برق مصرف خواهند کرد. در کامپیوتر نیز از این نوع حافظه ها برای نگهداری اطلاعاتی در رابطه با تنظیمات هارد دیسک و ... استفاده می گردد.
Video Ram) VRAM) یک نوع خاص از حافظه های RAM بوده که برای موارد خاص نظیر : آداپتورهای ویدئو و یا شتا ب دهندگان سه بعدی استفاده می شود. به این نوع از حافظه ها multiport dynamic random access memory) MPDRAM) نیز گفته می شود.علت نامگذاری فوق بدین دلیل است که این نوع از حافظه ها دارای امکان دستیابی به اطلاعات، بصورت تصادفی و سریال می باشند . VRAM بر روی کارت گرافیک قرار داشته و دارای فرمت های متفاوتی است. میزان حافظه فوق به عوامل متفاوتی نظیر : " وضوح تصویر " و " وضعیت رنگ ها " بستگی دارد.
به چه میزان حافظه نیاز است؟
حافظه RAM یکی از مهمترین فاکتورهای موجود در زمینه ارتقاء کارآئی یک کامپیوتر است. افزایش حافظه بر روی یک کامپیوتر با توجه به نوع استفاده میتواند در مقاطع زمانی متفاوتی انجام گیرد. در صورتیکه از سیستمهای عامل ویندوز 95 و یا 98 استفاده میگردد حداقل به 32 مگابایت حافظه نیاز خواهد بود. (64 مگابایت توصیه میگردد). اگر از سیستم عامل ویندوز 2000 استفاده میگردد حداقل به 64 مگابایت حافظه نیاز خواهد بود. (128 مگابایت توصیه میگردد) سیستم عامل لینوکس صرفا" به 4 مگابایت حافظه نیاز دارد. در صورتیکه از سیستم عامل اپل استفاده می گردد به 16 مگابایت حافظه نیاز خواهد بود.( 64 مگابایت توصیه می گردد) میزان حافظه اشاره شده برای هر یک از سیستم های فوق بر اساس کاربردهای معمولی ارائه شده است. دستیابی به اینترنت، استفاده از برنامههای کاربردی خاص و سرگرم کننده، نرمافزارهای خاص طراحی، انیمیشن سه بعدی و ... مستلزم استفاده از حافظه بمراتب بیشتری خواهد بود
BIOS
يکی از متداولترين موارد کاربرد حافظه های Flash ، استفاده از آنان در BIOS)Basic Input/Output System) است . BIOS اين اطمينان را به عناصر سخت افزاری نظير : تراشه ها ، هارد يسک ، پورت ها ، پردازنده و ... خواهد داد که بدرستی عمليات خود را در کنار يکديگر انجام دهند.
هر کامپيوتر ( شخصی ، دستی ) دارای يک ريزپردازنده بعنوان واحد پردازشگر مرکزی است . ريزپردازنده يک المان سخت افزاری است .بمنظور الزام پردازنده برای انجام يک عمليات خاص، می بايست مجموعه ای از دستورالعمل ها که نرم افزار ناميده می شوند نوشته شده و در اختيار پردازنده قرار گيرد. از دو نوع نرم افزار استفاده می گردد :
- سيستم عامل : سيستم عامل مجموعه ای از خدمات مورد نياز برای اجرای يک برنامه را فراهم می نمايد. ويندوز 98 ، 2000 و يا لينوکس نمونه هائی از سيستم های عامل می باشند.
- برنامه های کاربردی : برنامه های کاربردی نرم افزارهائی هستند که بمنظور تامين خواسته های خاصی طراحی و در اختيار کاربران گذاشته می شوند. برنامه هائی نظير : Word ، Excel و ... نمونه هائی از اين نوع نرم افزارها می باشند.
BIOS در حقيقت نوع سومی از نرم افزارها بوده که کامپيوتر بمنظور عملکرد صحيح خود به آن نياز خواهد داشت.
خدمات ارائه شده توسط BIOS
نرم افزار BIOS دارای وطايف متعددی است . ولی بدون شک مهمترين وظيفه آن استقرار سيستم عامل در حافظه است . زمانيکه کامپيوتر روشن و ريزپردازنده سعی در اجرای اولين دستورالعمل های خود را داشته باشد ، می بايست دستورالعمل های اوليه از مکان ديگر در اختيار آن گذاشته شوند ( در حافظه اصلی کامپيوتر هنوز اطلاعاتی قرار نگرفته است ) دستورالعمل های مورد نظر را نمی توان از طريق سيستم عامل در اختيار پردازنده قرار داد چراکه هنوز سيستم عامل در حافظه مستقر نشده و همچنان بر روی هارد ديسک است . مشکل اينجاست که می بايست با استفاده از روشهائی به پردازنده اعلام گردد که سيستم عامل را به درون حافظه مستقر تا در ادامه زمينه استفاده از خدمات سيستم عامل فراهم گردد. BIOS دستورالعمل های لازم را در اين خصوص ارائه خواهد کرد. برخی از خدمات متداول که BIOS ارائه می دهد ، بشرح زير می باشد:
- يک برنامه تست با نام POST بمنظور بررسی صحت عملکرد عناصر سخت افراری
- فعال کردن تراشه های BIOS مربوط به ساير کارت های نصب شده در سيستم نظير : کارت گرافيک و يا کنترل کننده SCSI
- مديريت مجموعه ای از تنظيمات در رابطه با هارد ديسک،Clock و ...
BIOS ، يک نرم افزار خاص است که بعنوان اينترفيس ( ميانجی ) بين عناصر اصلی سخت افزارهای نصب شده بر روی سيستم و سيستم عامل ايفای وظيفه می نمايد. نرم افزار فوق اغلب در حافظه هائی از نوع Flash و بصورت يک تراشه بر روی برد اصلی نصب می گردد. در برخی حالات تراشه فوق يک نوع خاص از حافظه ROM خواهد بود.
زمانيکه کامپيوتر روشن می گردد BIOS عمليات متفاوتی را انجام خواهد داد:
- بررسی محتويات CMOS برای آگاهی از تنظيمات خاص انجام شده
- لود کردن درايورهای استاندارد و Interrupt handlers
- مقدار دهی اوليه ريجسترها و مديريت Power
- اجرای برنامه POST بمنظور اطمينان از صحت عملکرد عناصر سخت افزاری
- تشخيص درايوی که سيستم می بايست از طريق آن راه اندازی (Booting) گردد.
- مقدار دهی اوليه برنامه مربوط به استقرار سيستم عامل در حافظه (Bootstrap)
اولين موردی را که BIOS بررسی خواهد کرد، اطلاعات ذخيره شده در يک نوع حافظه RAM با ظرفيت 64 بايت است . اطلاعات فوق بر روی تراشه ای با نام CMOS)Complementry metal oxid semiconductor) ذخيره می گردند. CMOS شامل اطلاعات جزئی در رابطه با سيستم بوده و درصورت بروز هر گونه تغييردر سيستم، اطلاعات فوق نيز تغيير خواهند کرد. BIOS از اطلاعات فوق بمنظور تغيير و جايگزينی مقادير پيش فرض خود استفاده می نمايد.
Interrupt handlers نوع خاصی از نرم افزار بوده که بعنوان يک مترجم بين عناصر سخت افزاری و سيستم عامل ايفای وظيفه می نمايد.مثلا" زمانيکه شما کليدی را برروی صفحه کليد فعال می نمائيد، سيگنال مربوطه، برای Interrupt handler صفحه کليد ارسال شده تا از اين طريق به پردازنده اعلام گردد که کداميک از کليدهای صفحه کليد فعال شده اند.
درايورها يک نوع خاص ديگر از نرم افزارها بوده که مجموعه عمليات مجاز بر روی يک دستگاه را تبين و راهکارهای ( توابع ) مربوطه را ارائه خواهند. اغلب دستگاه های سخت افزاری نظير: صفحه کليد، موس ، هارد و فلاپی درايو دارای درايورهای اختصاصی خود می باشند. با توجه به اينکه BIOS بصورت دائم با سيگنال های ارسالی توسط عناصر سخت افزاری مواجه است ، معمولا" يک نسخه از آن در حافظه RAM تکثير خواهد شد.
راه اندازی ( بوتينگ، Booting) کامپيوتر
پس از روشن کردن کامپيوتر، BIOS بلافاصله عمليات خود را آغاز خواهد کرد. در اغلب سيستم ها ، BIOS در زمان انجام عمليات مربوطه پيام هائی را نيز نمايش می دهد ( ميزان حافظه، نوع هارد ديسک و ...) بمنظور آماده سازی کامپيوتر برای ارائه خدمات به کاربران، BIOS مجموعه ای از عمليات را انجام می دهد. پس از بررسی و آگاهی از تنظيمات موجود در CMOS و استقرار Interrupt handler در حافظه RAM ، کارت گرافيک بررسی می گردد. اغلب کارت های گرافيک ، دارای BIOS اختصاصی بوده که حافظه و پردازنده مربوط به کارت گرافيک را مقدار دهی اوليه می نمايد. در صورتيکه BIOS اختصاصی برای کارت گرافيک وجود نداشته باشد از درايور استانداری که در ROM ذخيره شده است ، استفاده و درايو مربوطه فعال خواهد شد ( درايور استاندارد کارت گرافيک ) در ادامه BIOS نوع راه اندازی ( راه اندازی مجدد (Rebbot) و يا راه اندازی اوليه (Cold Boot ) را تشخيص خواهد داد .برای تشخيص موضوع فوق، از محتويات آدرس 0000:0472 حافظه استفاده می گردد. در صورتيکه در آدررس فوق مقدار 123h موجود باشد ، بمنزله "راه اندازی مجدد" بوده و برنامه BOIS بررسی صحت عملکرد حافظه را انجام نخواهد داد. در غير اينصورت ( در صورت وجود هر مقدار ديگر در آدرس فوق ) يک "راه اندازی اوليه " تلقی می گردد. در اين حالت بررسی صحت عملکرد و سالم بودن حافظه انجام خواهد شد. در ادامه پورت های سريال و USB برای اتصال صفحه کليد وموس بررسی خواهند شد. در مرحله بعد کارت های PCI نصب شده بر روی سيستم بررسی می گردند. در صورتيکه در هر يک از مراحل فوق BIOS با اشکالی برخورد نمايد با نواختن چند Beep معنی دار، مورد خطاء را اعلام خواهد کرد. خطاهای اعلام شده اغلب به موارد سخت افزار سيستم مربوط می گردد.
برنامه BIOS اطلاعاتی در رابطه با نوع پردازنده ، فلاپی درايو ، هارد ديسک ، حافظه تاريخ و شماره ( ورژن ) برنامه BIOS ، نوع صفحه نمايشگر را نمايش خواهد داد. در صورتيکه بر روی سيستم از آداپتورهای SCSI استفاده شده باشد ، BIOS درايور مربوطه آن رااز BIOS اختصاصی آداپتور فعال و BIOS اختصاصی اطلاعاتی را در رابطه با آداپتور SCSI نمايش خواهد داد. در ادامه برنامه BIOS نوع درايوی را که می بايست فرآيند انتقال سيستم عامل از آن آغاز گردد را تشخيص خواهد داد. برای نيل به هدف فوق از تنظيمات موجود در CMOS استفاده می گردد. اولويت درايو مربوطه برای بوت سيستم متغير و به نوع سيستم بستگی دارد. اولويت فوق می تواند شامل مواردی نظير : A,C,CD و يا C,A,CD و ... باشد.(A نشاندهنده فلاپی درايو C نشاندهنده هاردديسک و CD نشاندهنده درايو CD-ROM است ) در صورتيکه درايو مشخص شده شامل برنامه های سيستم عامل نباشد پيام خطائی نمايش داده خواهد شد. (Non System disk or disk error )
پيکربندی BIOS
در بخش قبل اشاره گرديد که BIOS در موارد ضروری از تنظيمات ذخيره شده در CMOS استفاده می نمايد. برای تغيير دادن تنظيمات مربوطه می بايست برنامه پيکربندی CMOS فعال گردد. برای فعال کردن برنامه فوق می بايست در زمان راه اندازی سيستم کليدهای خاصی را فعال تا زمينه استفاده از برنامه فوق فراهم گردد. در اغلب سيستم ها بمنظور فعال شدن برنامه پيکربندی کليد Esc يا Del يا F1 يا F2 يا Ctrl-Esc يا Ctrl-Alt-Esc را می بايست فعال کرد.( معمولا" در زمان راه اندازی سيستم نوع کليدی که فشردن آن باعث فعال شدن برنامه پيکربندی می گردد، بصورت يک پيام بر روی صفحه نمايشگر نشان داده خواهد شد ) پس از فعال شدن برنامه پيکربندی با استفاده از مجموعه ای از گزينه های می توان اقدام به تغيير پارامترهای مورد نظر کرد. تنظيم تاريخ و زمان سيستم ، مشخص نمودن اولويت درايو بوت، تعريف يک رمز عبور برای سيستم ، پيکربندی درايوها ( هارد، فلاپی ، CD) و ... نمونه هائی از گزينه های موجود در اين زمينه می باشند. در زمان تغيير هر يک از تنظيمات مربوطه در CMOS می بايست دقت لازم را بعمل آورد چراکه در صورتيکه عمليات فوق بدرستی انجام نگيرد اثرات منفی بر روی سيستم گذاشته و حتی در مواردی باعث اختلال در راه اندازی سيستم خواهد شد.
BIOS از تکنولوژی CMOS بمنظور ذخيره کردن تنظيمات مربوطه استفاده می نمايد . در اين تکنولوژی يک باتری کوچک ليتيوم انرژی(برق) لازم برای نگهداری اطلاعات بمدت چندين سال را فراهم می نمايد.
ارتقاء برنامه BIOS
تغيير برنامه BIOS بندرت انجام می گيرد. ولی در موارديکه سيستم قديمی باشد، ارتقاء BIOS ضروری خواهد بود.با توجه به اينکه BIOS در نوع خاصی از حافظه ROM ذخيره می گردد، تغيير و ارتقاء آن مشابه ساير نرم افزارها نخواهد بود. بدين منظور به يک برنامه خاص نياز است . برنامه های فوق از طريق توليد کنندگان کامپيوتر و يا BIOS عرضه می گردند. در زمان راه اندازی سيستم می توان تاريخ ، شماره و نام توليد کننده BIOS را مشاهده نمود. پس از مشخص شدن نام سازنده BIOS ، با مراجعه به وب سايت سازنده ، اطمينان حاصل گردد که برنامه ارتقاء BIOS از طرف شرکت مربوطه عرضه شده است . در صورتيکه برنامه موجود باشد می بايست آن را Download نمود. پس از اخذ فايل( برنامه) مربوطه آن را بر روی ديسکت قرار داده و سيستم را از طريق درايو A ( فلاپی درايو) راه اندازی کرد. در اين حالت برنامه موجود بر روی ديسکت، BIOS قديمی را پاک و اطلاعات جديد را در BIOS می نويسد. در زمان ارتقاء BIOS حتما" می بايست به اين نکته توجه گردد که از نسخه ای که کاملا" با سيستم سازگاری دارد، استفاده گردد در غير اينصورت BIOS با اشکال مواجه شده و امکان راه اندازی سيستم وجود نخواهد داشت .!