نوشته شده توسط: مسعود عبدی
biosچیست؟ (شماره 1173)
منبع: 4download و آکادمیست
از رایج ترین کاربردهای flash memoryها در ساخت "بایوس" ، BIOS (Basic Input/Output System) است. BIOS درعمل از هماهنگی بین تراشه ها، دیسک های سخت، پورت ها و عملکرد CPU اطمینان حاصل میکند.
هر کامپیوتر desktop یا laptop یک ریزپردازنده یا Microprocessor بعنوان واحد پردازش مرکزی دارد. Microprocessor یک واحد سخت افزاری است. این واحد سخت افزاری برای اینکه بتواند کارهایی را انجام دهد، مجموعه ای از دستورات موسوم به نرم افزار یا Software را اجرا میکند.
شما احتمالا با دو نوع متفاوت از نرم افزارها آشنا هستید:
سیستم عامل _ سیستم عامل مجموعه ای از سرویسها را برای اجرای برنامه های کاربردی روی کامپیوتر فراهم میکند. همچنین interface (رابط کاربر) اولیه ای را برای کاربر فراهم میکند.
windows?? و 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 انجام میدهد، چک کردن اطلاعاتی است که روی بخش کوچکی (?? 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 این کار را با چک کردن مقدار موجود در خانه حافظه با آدرس ????:???? انجام میدهد. اگر مقدار ????h در این خانه ذخیره شده باشد، منظور Reboot است. بنابراین BIOS از انجام عملیات POST صرف نظر میکند و فقط سیستم را reset میکند.
هر مقداری غیر از ????h نشاندهنده ی Cold boot است. (مثل اینکه سیستم تازه روشن شده _ POST هم انجام میشود.)
اگر Cold boot اتفاق افتاده باشد BIOS هریک از آدرسهای خانه های حافظه RAM را با نوشتن و خواندن مقداری در آنها آزمایش میکند.
همچنین پورت های PS/? یا USB را هم برای صفحه کلید و ماوس بررسی میکند. BIOS بدنبال گذرگاه PCI (Peripheral Component Interconnect) هم میگردد و اگر آنرا پیدا کرد همه کارت های PCI را چک میکند.
اگر در حین انجام عملیات POST اشکالی بوجود بیاید، BIOS با بوق اخطار یا پیغامی که روی صفحه نمایش نشان داده میشود، بروز اشکال را به شما اعلام میکند. معمولا اگر در این مرحله اشکالی پیدا شود، این اشکال سخت افزاری است.
سپس BIOS جزئیاتی راجع به سیستم تان نمایش میدهد. که معمولا این اطلاعات مربوط میشود به:
پردازنده
فلاپی درایو و هارد درایو
حافظه
نسخه BIOS (ورژن)