PDA

نسخه کامل مشاهده نسخه کامل : Bios چگونه کار میکند؟



mf_film2007
01-09-2006, 15:58
کی از رایج ترین کاربردهای flash memoryها در ساخت "بایوس" ، BIOS (Basic Input/Output System) است. BIOS درعمل از هماهنگی بین تراشه ها، دیسک های سخت، پورت ها و عملکرد CPU اطمینان حاصل میکند.

هر کامپیوتر desktop یا laptop یک ریزپردازنده یا Microprocessor بعنوان واحد پردازش مرکزی دارد. Microprocessor یک واحد سخت افزاری است. این واحد سخت افزاری برای اینکه بتواند کارهایی را انجام دهد، مجموعه ای از دستورات موسوم به نرم افزار یا Software را اجرا میکند.
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
شما احتمالا با دو نوع متفاوت از نرم افزارها آشنا هستید:


سیستم عامل _ سیستم عامل مجموعه ای از سرویسها را برای اجرای برنامه های کاربردی روی کامپیوتر فراهم میکند. همچنین interface (رابط کاربر) اولیه ای را برای کاربر فراهم میکند.

Windows98 و Linux نمونه ای از سیستم عامل ها هستند.
برنامه های کاربردی _ برنامه های کاربردی تکه نرم افزارهایی هستند که برای کاربردهای خاص نوشته شده اند.

مثلا همین الان ممکن است روی کامپیوتر شما برنامه هایی مثل browser، word، برنامه ارسال E_mail و برنامه های مشابهی نصب باشد.



پس بعبارتی میتوان گفت که BIOS سومین نوع نرم افزار است که کامپیوتر شما برای کارکردن به آن نیاز دارد. در این مقاله چیزهای زیادی راجع به BIOS خواهید آموخت. اینکه BIOS چه کاری انجام میدهد، تنظیمات چگونه روی آن اعمال میشود و اینکه چگونه میتوان آنرا update کرد.



BIOS چه کارهایی انجام میدهد؟



مهمترین کاری که BIOS انجام میدهد، Load کردن سیستم عامل است. وقتی شما کامپیوترتان را روشن میکنید و Microprocessor تلاش میکند تا اولین دستورات را اجرا کند، بایستی این دستورات را از جایی بگیرد.

Microprocessor نمیتواند این دستورات را از سیستم عامل بگیرد. چرا؟

چون سیستم عامل روی دیسک سخت (hard disk) کامپیوتر قرار دارد و بایستی دستورات اولیه ای باشد تا Microprocessor را برای مراجعه به hard disk راهنمایی کند. BIOS این دستورات اولیه را برای Microprocessor صادر میکند.

برخی کارهای رایج دیگر که BIOS انجام میدهد عبارتند از:


اجرای عملیات POST(power-on self-test) برای اجزای سخت افزاری پایه که روی کامپیوتر شما نصب شده و وجود آنها برای کارکردن سیستم ضروری است، تا از صحت عملکرد آنها اطمینان حاصل شود. (این عملیات به محض روشن شدن کامپیوتر شروع میشود و با ارسال سیگنال هایی به قطعات سخت افزاری پایه، و دریافت پاسخ از آنها کامل میگردد.)
فعال کردن سایر تراشه های BIOS موجود روی کارت های مختلفی که داخل case نصب شده اند. بعنوان مثال، کارت های SCSI و کارت های گرافیک، اغلب تراشه های BIOS مختص به خود را دارند.
فراهم کردن یک سری بسترهای مقدماتی از طریق اجرای تعدادی دستورات سطح پایین، که سیستم عامل از آنها در جهت برقراری ارتباط با سخت افزارهای مختلف استفاده میکند. درواقع نام BIOS بیشتر از این عملکردش گرفته شده. در این مرحله قطعات جانبی مثل صفحه کلید، صفحه نمایش، پورت های موازی و سریال و... (بخصوص هنگام بوت شدن کامپیوتر)، باهم هماهنگ میشوند.
اعمال یک سری تنظیمات برای hard disk ها، clock و...
BIOS نرم افزار ویژه ای است که ارتباط اجزای اصلی سخت افزاری را با سیستم عامل کامپیوترتان برقرار میکند. BIOS معمولا در یک تراشه ی حافظه ی flash که روی مادربورد قرار گرفته ذخیره میشود. البته بعضی وقتها، این تراشه از نوع دیگری از ROM است.
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
وقتی شما کامپیوترتان را روشن میکنید، BIOS چند کار را انجام میدهد.

این سلسله مراتب معمولا بترتیب زیر است:


چک کردن CMOS Setup برای بررسی تنظیمات خاص
Load کردن سیستم اعمال وقفه ها و درایورها (device drivers)
مقداردهی اولیه به registerها (ثبات ها) و مدیریت قدرت (برق)
اجرای عملیات POST
نمایش تنظیمات سیستم
شناسایی اجزای bootable
آغاز کردن سلسله مراتب لازم برای boot شدن سیستم



اولین کاری که BIOS انجام میدهد، چک کردن اطلاعاتی است که روی بخش کوچکی (64 bytes) از حافظه ی RAM قرار گرفته در یک آی سی (Complementary Metal Oxide Semiconductor) CMOS، ذخیره شده.

CMOS Setup اطلاعات جزئی که خاص سیستم شماست را نگهداری میکند و درصورت بوجود آمدن تغییراتی در سیستم میتواند تغییر کند.



BIOS از این اطلاعات ذخیره شده در CMOS، برای تغییر دادن یا تکمیل خود استفاده میکند. بعدها در مورد این ویژگی بیشتر بحث خواهیم کرد!

سیستم ایجاد وقفه درواقع تکه برنامه های کوچکی است که مثل رابط مترجم بین اجزای سخت افزاری و سیستم عامل عمل میکند. بعنوان مثال وقتی شما کلیدی را روی صفحه کلید فشار میدهید، سیگنالی تولید میشود. این سیگنال به سیستم تولید وقفه ی صفحه کلید ارسال میشود و به CPU اعلام میکند که این وقفه مربوط به چه چیزی است.

و در نهایت سیستم عامل تصمیم مناسب را اتخاذ میکند.



Device driverها هم تکه برنامه هایی هستند که اجزای سخت افزاری پایه مثل صفحه کلید، ماوس، هارد درایو و فلاپی درایو را شناسائی میکنند.



BIOS معمولا هنگام نیاز در RAM سیستم کپی میشود تا سریع تر اجرا شود.



بوت کردن کامپیوتر



هر وقت کامپیوترتان را روشن میکنید، اولین اتفاقی که می افتد این است که BIOS کار خود را انجام میدهد. در بسیاری از سیستم ها، BIOS متنی را نشان میدهد که توصیف کننده ی چیزهایی مثل مقدار حافظه ی RAM، نوع دیسک سخت و ... در آن سیستم است. این نشان میدهد که درطول فرآیند بوت شدن سیستم، BIOS مقدار قابل ملاحظه ای عملیات را انجام میدهد تا سیستم شما آماده به کار شود. در این قسمت برخی از این عملیات برای یک PC ی معمولی بطور خلاصه توصیف میشود:
پس از چک کردن CMOS Setup و فراخوانی سیستم اعمال وقفه ها، BIOS بررسی میکند که آیا کارت گرافیک کار میکند یا نه.

بیشتر کارت های گرافیک یک BIOS کوچک دارند که حافظه و پردازنده گرافیکی موجود روی آنها را مقدار دهی اولیه میکند. درغیر اینصورت BIOS اطلاعات مربوط به راه اندازی کارت گرافیک را از روی یک تراشه ROM موجود روی مادربورد میخواند.

بعد BIOS چک میکند که آیا Cold boot (Reset کردن سیستم بصورت سخت افزاری. مثلا با دکمه reset روی case) اتفاق افتاده یا Reboot (Reset کردن سیستم بصورت نرم افزاری مثلا با Alt+Ctrl+Del).



BIOS این کار را با چک کردن مقدار موجود در خانه حافظه با آدرس 0000:0472 انجام میدهد. اگر مقدار 1234h در این خانه ذخیره شده باشد، منظور Reboot است. بنابراین BIOS از انجام عملیات POST صرف نظر میکند و فقط سیستم را reset میکند.

هر مقداری غیر از 1234h نشاندهنده ی Cold boot است. (مثل اینکه سیستم تازه روشن شده _ POST هم انجام میشود.)



اگر Cold boot اتفاق افتاده باشد BIOS هریک از آدرسهای خانه های حافظه RAM را با نوشتن و خواندن مقداری در آنها آزمایش میکند.

همچنین پورت های PS/2 یا USB را هم برای صفحه کلید و ماوس بررسی میکند. BIOS بدنبال گذرگاه PCI (Peripheral Component Interconnect) هم میگردد و اگر آنرا پیدا کرد همه کارت های PCI را چک میکند.

اگر در حین انجام عملیات POST اشکالی بوجود بیاید، BIOS با بوق اخطار یا پیغامی که روی صفحه نمایش نشان داده میشود، بروز اشکال را به شما اعلام میکند. معمولا اگر در این مرحله اشکالی پیدا شود، این اشکال سخت افزاری است.



سپس BIOS جزئیاتی راجع به سیستم تان نمایش میدهد. که معمولا این اطلاعات مربوط میشود به:


پردازنده
فلاپی درایو و هارد درایو
حافظه
نسخه BIOS (ورژن)

هر درایور خاصی، مثل درایورهای مربوط به آداپتورهای SCSI (small computer system interface)

از آداپتور فراخوانی میشود و BIOS اطلاعات را نمایش میدهد.

سپس BIOS ترتیب و توالی ابزارهای ذخیره سازی که در CMOS Setup بعنوان مرجعی برای boot شدن سیستم تعیین شده اند را چک میکند.

Boot از Bootstrap آمده. Bootstrap را "خود راه انداز" ترجمه کرده اند. همچنان که در اصطلاح قدیمی “Lift yourself up by your bootstraps.” کلمه Boot اشاره دارد به مجموعه عملیاتی که منجر به بالا آمدن سیستم عامل میشود.



BIOS سعی میکند برای Boot کردن سیستم از اولین مرجع تعیین شده استفاده کند. اگر نتیجه نگرفت به سراغ دومین درایو تعیین شده میرود. اگر فایلهای مورد نظر برای boot کردن سیستم در هیچ یک از درایوهای مشخص شده پیدا نشد، روند startup متوقف میشود.

اگر دیسکتی در فلاپی درایو باشد، وقتی سیستم را restart میکنید، احتمالا با این پیغام مواجه خواهید شد:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
چون BIOS سعی میکند فایلهای راه انداز سیستم را از روی دیسکت بخواند و وقتی آنها را پیدا نکند، با این پیغامBIOSاین پیغام را میدهد و منتظر دیسکتی میشود که حاوی فایلهای مناسب برای راه اندازیمواجه میشوید. BIOSسیستم باشد. البته این مشکل خاصی نیست. میتوانید دیسکت را خارج کنید و کلیدی را فشار دهید تا BIOS
کردن سیستم استفاده کندbootکار خود را ادامه دهد و احتمالا از درایو دیگری برای
پیکربندی BIOS



در قسمت های قبلی متوجه شدید که BIOS ، CMOS Setup را برای تنظیمات خاص بررسی میکند. در ادامه به نحوه تغییر دادن این تنظیمات می پردازیم.

برای ورود به CMOS Setup، باید هنگامی که سیستم در حال اجرای عملیات مربوط به startup است از یک کلید خاص یا ترکیبی از چند کلید استفاده کنید. بیشتر سیستمها از کلیدهای “Esc” ، “Del” ، “F1” ، “F2” ، “Ctrl-Esc” یا “Ctrl-Alt-Esc” برای این منظور استفاده میکنند. معمولا به محض روشن شدن کامپیوتر، در قسمت پایینی صفحه نمایش یک خط توضیحات برای اشاره به کلید یا کلیدهای مورد استفاده جهت ورود به قسمت تنظیمات BIOS دیده میشود.

"برای ورود به Setup کلید ... را فشار دهید."



وقتی وارد Setup شدید، مجموعه ای از صفحات متنی را به همراه تعدادی گزینه برای تنظیمات مختلف می بینید. برخی از این تنظیمات استاندارد است درحالیکه سایر گزینه ها را شرکت سازنده BIOS طبق معیارهای خودش انتخاب می کند.

برخی از معمول ترین و رایج ترین گزینه های این قسمت عبارتند از:


System Time/Date : برای تنظیم ساعت و تاریخ
Boot Sequence : برای مشخص کردن محل فایلهای مخصوص Boot کردن سیستم به ترتیب اولویت (از این فایل ها برای Load کردن سیستم عامل استفاده میشود.)
Plug and Play : استانداردی برای یافتن و شناسایی اجزای سخت افزاری جانبی بصورت خودکار; اگر کامپیوتر و سیستم عامل شما هر دو از این امکان پشتیبانی می کنند، بایستی گزینه Yes برای آن فعال باشد.
Mouse/keyboard : گزینه هایی مثل “Enable Num Lock” ، “Enable the Keyboard” ، “Auto-Detect Mouse” و ...
Drive Configuration : برای تنظیم و پیکربندی hard drive ، CD-ROM ، floppy drive و ...
Memory : خط دادن به BIOS و راهنمائی کردن آن برای مراجعه به آدرس خاصی از حافظه
Security : در این قسمت میتوان Password ی را برای کنترل دسترسی به سیستم اعمال کرد.
Power Management : سیستم مدیریت انرژی که امکاناتی چون مشخص کردن مدت زمان توقف در حالت standby و suspend هم به همراه آن ارائه میشود و قابل تنظیم است.
Exit : انتخاب کنید، آیا تغییراتی که اعمال کردید ذخیره شود، یا نادیده گرفته شود، یا تنظیمات سیستم به حالت پیش فرض شرکت سازنده set شود.
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
ر تنظیمات Setup را تغییر میدهید بسیار مراقب باشید. تنظیمات غلط ممکن است مانع از boot شدن سیستمتان شود. وقتی همه تغییرات مورد نظرتان را در Setup ایجاد کردید، باید Save Changes را انتخاب کنید و خارج شوید. در اینصورت BIOS سیستم شما را restart خواهد کرد تا تنظیمات جدید تاثیر گذار شوند.



BIOS برای ذخیره کردن هرگونه تغییری که در Setup سیستم داده میشود از فنآوری CMOS استفاده میکند. با استفاده از این فناوری یک باتری کوچک lithium یا Ni-Cad میتواند انرژی کافی برای نگهداری داده های ذخیره شده را در طول چند سال فراهم کند. حتی در بعضی تراشه های جدید یک باتری lithium خیلی کوچک درست در داخل تراشه CMOS جاسازی میشود که میتواند برای مدت ١٠ سال انرژی لازم را تامین کند!



Update کردن BIOS



گاهی لازم میشود که BIOS یک کامپیوتر update شود. بخصوص در مورد سیستم های قدیمی تر. از آنجا که اجزای سخت افزاری جدید و استانداردها روز به روز تغییر میکند تا بهتر شود، BIOS هم لازم است تغییر کند تا بتواند با سخت افزار جدید هماهنگ شود. از آنجا که BIOS روی انواع خاصی از ROM ذخیره میشود، بنابراین تغییر دادن آن نسبت به سایر انواع نرم افزارها کمی مشکل تر است.



برای تغییر دادن خود BIOS ، احتمالا به یک برنامه خاص که شرکت سازنده کامپیوتر یا BIOS سیستم ارائه میکند نیاز دارید. برای اینکه بفهمید BIOS سیستم شما از چه نوع یا نسخه ای است، به مشخصات نسخه و تاریخ BIOS که در startup سیستم نمایش داده میشود دقت کنید. سپس به Web Site شرکت سازنده BIOS سری بزنید و ببینید که آیا نسخه مورد استفاده ی شما upgrade شده یا نه. اگر چنین است نسخه upgrade و برنامه کمکی (utility) همراه آنرا که برای نصب این نسخه جدید لازم است download کنید. بعضی وقتها برنامه utility و نسخه upgrade بصورت یکجا داخل یک فایل ارائه میشود. برنامه utility و نسخه upgrade را روی یک دیسکت کپی کنید و بعد از قرار دادن آن در floppy drive سیستم را restart کنید تا از روی floppy drive بوت شود. برنامه از روی دیسکت خوانده میشود، BIOS قدیمی را پاک میکند و نسخه جدید را جایگزین آن میکند. شما میتوانید برای چک کردن BIOS سیستمتان از یک برنامه BIOS Wizard در آدرس BIOS Upgrades استفاده کنید.





مهمترین شرکتهای تولیدکننده BIOS :

· American Megatrends Inc. (AMI)

· Phoenix Technologies

· ALi

· Winbond



درست مثل زمانیکه CMOS Setup را دستکاری میکردید، اینجا هم مراقب باشید. مطمئن شوید BIOSتان را به نسخه ای upgrade میکنید که با سیستم کامپیوترتان سازگار است. به عبارت دیگر، درصورت بی دقتی ممکن است BIOS سیستم را خراب کنید و دیگر قادر به بوت کردن کامپیوتر نباشید.

برای بدست آوردن اطلاعات بیشتر راجع به BIOS و موضوعات مرتبط با آن، میتوانید به لینکهای زیر مراجعه کنید:
Webopedia: BIOS
PC Guide: System BIOS
Kingston's Ultimate Memory Guide
A Brief History of Microprogramming
TweakBIOS
Wim's BIOS
American Megatrends (AMI)
Phoenix Technologies
ALi
Winbond
How Flash Memory Works
How PCs Work
How Bits and Bytes Work
How Microprocessors Work
How Hard Disks Work
How Operating Systems Work
How Electronic Gates Work
How Boolean Logic Works
Why does my computer have a battery?