بایوس

بایوس یا سامانه ورودی/خروجی پایه به مجموعه‌ای از رویه‌ها یا برنامه‌های ذخیره شده در تراشه حافظه فقط خواندنی یا «رام» ROM در رایانه‌های شخصی سازگار با آی‌بی‌ام گفته می‌شود. این برنامه‌ها همه عملکردهای ورودی-خروجی را اداره می‌کنند. وجود این برنامه‌ها در رایانه موجب می‌شود که برنامه‌های کاربردی به‌طور مستقیم برای کنترل سخت‌افزار، برنامه نداشته باشند و از سرویسهای رایانه استفاده کنند. بایوس یک رایانه، نخستین کدی است که هنگام روشن کردن آن اجرا می‌شود و وظیفه ابتدایی آن بارگذاری و آغاز کردن سیستم عامل است. وقتی رایانه روشن می‌شود، نخستین کار بایوس، تشخیص قطعات سیستم مانند کارت گرافیکی، صفحه کلید و موشواره، دیسک سخت، دیسک‌گردانهای نوری و سایر سخت افزارهاست. بایوس سپس نرم‌افزاری را که در دیسک سخت یا لوح فشرده برای بالاآمدن یا بوت شدن ذخیره شده، تشخیص داده و آنرا اجرا می‌کند.
BIOS مادربرد
همه مادربردها شامل یک چیپ مخصوص هستند که بر روی آن نرم‌افزاری قرار دارد که BIOS یا ROM BIOS نامیده می‌شود. این چیپ ROM شامل برنامه‌های راه‌اندازی و گرداننده‌هایی است که در هنگام راه‌اندازی سیستم مورد نیاز است و یک واسطه به سخت‌افزار پایه سیستم است.
اغلب به CMOS RAM حافظه پاک نشدنی NVRAM(Non-Volatile) نیز می‌گویند چون با یک میلیونیوم آمپر فعال می‌شود و تا هنگامی که باتری لیتیوم فعال باشد داده‌ها باقی می‌مانند.
BIOS مجموعه‌ای از برنامه‌هایی است که در یک یا چند چیپ ذخیره شده‌است، که در طول راه‌اندازی سیستم این مجموعه برنامه‌ها قبل از هر برنامه‌ای حتی سیستم عامل بارگذاری می‌شوند.
BIOS در اکثر سیستم‌های PC شامل چهار تابع است:
1- POST(Power Self On Test):این برنامه پردازنده، حافظه، چیپست‌ها، وفق دهنده ویدئویی، کنترل‌کننده دیسک، دیسک‌گردان، صفحه کلید و… را تست می‌کند.
2- Blos Setup: برنامه‌ای است که در طول اجرای برنامه POST با فشار دادن کلید خاصی فعال می‌شود و به شما اجازه می‌دهد مادربرد را پیکربندی کنید و تنظیم پارامترهایی همانند ساعت و تاریخ و پسورد و… را انجام دهید. در سیستم‌های ۲۸۶ و ۳۸۶ برنامه Setup در ROM آنها وجود ندارد و لازم است که شما سیستم را توسط دیسک مخصوص Setup راه اندازی نمائید.
Boot Strap (بارگذار کننده یا لودر): سیستم را برای پیدا کردن سیستم Boot جستجو می‌کند.
BIOS: که مجموعه‌ای از گرداننده‌هایی است که واسط بین سخت‌افزار و نرم‌افزار است.
BIOS در حقیقت نرم‌افزار را به سخت‌افزار متصل می‌نماید. قسمتی از بایوس بر روی چیپ ROM و قسمت دیگر بر روی چیپ کارتهای وفق دهنده قرار دارد که FIRMWARE (میانه افزار) نامیده می‌شود.
مجموعه اصطلاحات
اصطلاح BIOS (پایه‌های ورودی / خروجی سیستم) توسط Gary Kildall برای اولین بار اختراع شده بود و در سیستم عامل CP/M در سال ۱۹۷۶ ظاهر شد، بخشی از دستگاه خاصی از CP/M لود شده در زمان بوت شدن است که ارتباط مستقیم با سخت‌افزار ۵(یک ماشین CP/M معمولا تنها یک بوت لودر ساده در ROM است).
نسخه‌های بعدی از CP/M (و همچنین همزمان CP/M، همزمان DOS, DOS Plus, DOS چند کاربره، سیستم مدیریت و REAL/32) با XIOS (توسعه یافته ورودی / خروجی سیستم) به جای استفاده از BIOS می‌آیند.
اکثر نسخه‌های DOS یک فایل به نام "IO.SYS", "IBMBIO.COM", "IBMBIO.SYS"، یا "DRBIOS.SYS"؛ این فایل به عنوان "DOS BIOS"شناخته شده‌است، که شبیه به "CP/M BIOS است ".
میان طبقات دیگر از کامپیوترها عمومی قوانین و مقررات نظارت بر بوت، بوت لودر، و BOOT ROM به‌طور معمول استفاده می‌شود. بعضی SUN و پاور PC مبتنی بر کامپیوترها استفاده نرم‌افزار باز برای این منظور است. چند جایگزین برای " Legacy BIOS" در جهان معماری x86 وجود: رابط نرم‌افزار توسعه پذیر، نرم‌افزار باز (OLPC XO-1 استفاده)، و coreboot.
برنامه‌ریزی BIOS
در رایانه‌های شخصی مدرن BIOS در حافظه‌ای که قابلیت دوباره نویسی در خود دارد ذخیره می‌شود و اجازه می‌دهد محتویات جابه‌جا یا "بازنویسی" شوند. این بازنویسی از مطالب است که گاهی اوقات Termed Flashing نامیده می‌شوند. این می‌تواند توسط یک برنامه خاص، که معمولا توسط کارخانه سازنده سیستم ارائه شده، یا در POST، با یک Image در یک هارد دیسک یا فلش درایو USB BIOS انجام شود. یک فایل که حاوی مطالب چنین است که گاهی اوقات به "یک IMAGE BIOS نامیده می‌شوند.BIOS ممکن است به منظور ارتقاء به نسخه‌های جدیدتر برای رفع اشکالات و بهبود عملکرد یا برای پشتیبانی از سخت‌افزارهای جدیدتر برنامه‌ریزی گردد، یا جهت یک عملیات reflashing ممکن است لازم باشد برای رفع BIOSهای آسیب دیده. همچنین ممکن است BIOS دوباره بازنویسی شود توسط قرار دادن این فایل در ریشه یک درایو USB و بوت شدن آن.
آسیب‌پذیری‌های تراشه BIOS
تراشه‌های EEPROM سودمند هستند چون آنها را می‌توان به راحتی توسط کاربر به روز رسانی نمود، اغلب تولیدکنندگان سخت‌افزار به روز رسانی BIOS را جهت به روز رسانی محصولات خود، بهبود سازگاری و حذف اشکالات منتشر می‌کنند.
با این حال، این خطر وجود دارد که یک بروز رسانی BIOS که به صورت نادرست اجرا شده یا لغو گریده است می‌تواند کامپیوتر یا دستگاه راغیر قابل استفاده نماید. برای اجتناب از این شرایط BIOSها از یک " boot block " استفاده می‌کنند، بخشی از BIOS که ابتدا باید اجرا شود به روز رسانی آن نیز به‌طور جداگانه انجام می‌گیرد. این کد در صورتی تایید می‌شود که BIOS دست نخورده مانده باشد (با استفاده از روش hash checksums یا روش‌های دیگر) قبل از اینکه کنترل به آن انتقال پیدا کند. اگر boot block هر گونه خرابی ومشکل را در BIOS اصلی تشخیص دهد، به‌طور معمول به کاربر هشداری در جهت اجرای فرایند بازیابی به وسیله بوت شدن از رسانه‌های جداشدنی (مانند floppy , CD یا USB memory) می‌دهد به طوری که کاربر می‌تواند سعی در برنامه‌ریزی دوباره BIOS نماید. برخی از مادربردها دارای یک BIOS پشتیبان (که گاهی اوقات DualBIOS boards نامیده می‌شود) برای بهبود بخشیدن به خرابی BIOS هستند.
Overclocking (تغییر فرکانس‌های پردازنده)
برخی تراشه‌های BIOS اجازه اورکلاک را می‌دهند، این عملی است که در آن CPU به سرعت ساعت بالاتر از پیش تعیین شده کارخانه خود تنظیم می‌شود. اورکلاک ممکن است با این حال قابلیت اطمینان سیستم در کامپیوتر اندازه کافی سرد به خطر بیندازد و به‌طور کلی طول عمر اجزا را کوتاه نماید. اورکلاکی که نادرست انجام شود همچنین ممکن است باعث به سرعت برافروخته شدن اجزای آنها شده و آنها را نابود کند.
حملات ویروس
حداقل چهار حمله ویروسی شناخته شده به BIOS وجود دارد، که دوتای آنها برای مقاصد ظاهری ونمایشی بود. اولین نوع وحشی آن Mebromiبود و هدف آن هم کاربران چینی بود.
معماری سخت‌افزار و نرم‌افزار بایوس
بایوس نرم‌افزاری است که شامل گرداننده‌های مختلفی است که رابط بین سخت‌افزار و سیستم‌عامل هستند یعنی بایوس نرم‌افزاری است که همه آن از روی دیسک بارگذاری نمی‌شود بلکه قسمتی از آن، قبلا بر روی چیپهای موجود بر روی سیستم یا بر روی کارتهای وفق دهنده نصب شده‌اند.
بایوس در سیستم به سه صورت وجود دارد:
ROM BIOS نصب شده بر روی مادر برد
بایوس نصب شده بر روی کارتهای وفق دهنده (همانند کارت ویدئویی)
بارگذاری شده از دیسک (گرداننده‌ها)
چون بایوس مادربرد مقدمات لازم را برای گرداننده‌ها و نرم‌افزارهای مورد نیاز فراهم می‌کند، اکثرا به صورت سخت‌افزاری که شامل یک چیپ ROM می‌باشد موجود است.
سالها پیش، هنگامی که سیستم‌عامل DOS بر روی سیستم اجرا می‌شد خود به تنهایی کافی بود و گرداننده‌ای (Driver) مورد نیاز نداشت. بایوس مادر برد به‌طور عادی شامل گرداننده‌هایی است که برای یک سیستم‌عامل پایه همانند صفحه کلید، فلاپی درایو، هارد دیسک، پورتهای سریال، موازی و… است.
BIOS وCMOS RAM
اکثر افراد BIOS را با CMOS RAM اشتباه می‌گیرند، این از آنجا سرچشمه می‌گیرد که برنامه Setup برای پیکربندی BIOS و ذخیره آن در CMOS RAM استفاده می‌شود.
در حقیقت BIOS و CMOS RAM دو چیز متفاوت از هم می‌باشند. بایوس مادر برد در یک چیپ ROM به‌طور ثابت ذخیره شده‌است.
همچنین بر روی مادر برد یک چیپ است که RTC/NVRAM نامیده می‌شود که زمان سیستم را نگهداری می‌کند و یک حافظه فرار و ثابت است که اولین بار در چیپ MC۱۴۶۸۱۸ ساخت شرکت موتورلا استفاده شده‌است و ظرفیت آن ۶۴ بایت است که ۱۰ بایت آن مربوط به توابع ساعت است و…
اگرچه این چیپ غیرفعال نامیده می‌شود اما با قطع برق، ساعت و تاریخ تنظیم شده در آن و داده‌های درون RAM پاک می‌شود.
درز حقیقت غیرفعال نامیده می‌شود چون با استفاده از تکنیک
CMOS(Complementarry Metal-Oxide Semicondector)
ساخته شده‌است، در نتیجه با یک جریان بسیارکم که به‌وسیله باتری سیستم تامین می‌گردد، پایدار باقی می‌ماند که اکثر مردم به این چیپ،CMOS RAM می‌گویند.
هنگامی که وارد BIOS Setup و پارامترهای خود را تنظیم و ذخیره می‌نمایید، این تنظیمات در ناحیه از چیپ RTC/NVRAM ذخیره می‌شود (که همچنین CMOS RAM نیز نامیده می‌شود).
در هر موقع که سیستم خود را راه اندازی می‌کنید پارامترها از CMOS RAM خوانده می‌شود و تعیین می‌کند که سیستم چگونه پیکربندی شود.
تجارت BIOS
اکثریت قریب به اتفاق از تامین کنندگان مادربرد PC گواهینامه استفاده از BIOS و ابزار تجاری را از یک شرکت ثالث شناخته شده مانند " independent BIOS vendor " یا IBV تهیه می‌کنند. پس از آن کارخانه سازنده مادربرد این BIOS را با توجه به سخت‌افزار خاص خود سفارشی وتنظیم می‌کند. به همین دلیل، BIOSهای به روز رسانی شده معمولا به‌طور مستقیم از تولیدکننده مادربرد به دست آمده می‌آیند.
فروشندگان عمده BIOS شامل " American Megatrends (AMI), Insyde Software Phoenix Technologies and Byosoft می‌باشند.
فروشندگان سابق شامل Award Software و Microid Research که توسط شرکت Phoenix Technologies در سال ۱۹۹۸ خریداری شدند؛ شرکت Phoenix نام Award را از دور خارج کرد. General Software نیز که توسط Phoenix در سال ۲۰۰۷ به دست گرفته شده، BIOSهای فروخته شده برای پردازنده‌های اینتل مبتنی بر سیستم‌های جاسازی شده هستند.
UEFI
با ارائه ویندوزهای ۸ و ۱۰ دیگر اکثر کامپیوترها به جای بایوس از UEFI استفاده می‌کنند علت این امر سرعت بالاتر آن و امکانات بیشتر آن در مقایسه با بایوس است. تقریبا تمام کامپیوترهایی که در کارخانه بر روی آنها ویندوزهای ۸ و مخصوصا ویندوز ۱۰ نصب شده باشد از UEFI پشتیبانی می‌کنند، چون ویندوز ۱۰ سازگاری بسیار بالایی با UEFI دارد. همچنین تمام تبلت‌های ویندوزی دیگر قابلیت پشتیبانی از بایوس در آنها وجود ندارد و فقط از UEFI پشتیبانی می‌کنند. متاسفانه در بین کاربران معمولی از UEFI به عنوان بایوس نام می‌برند و تفاوت این دو را نمی‌دانند. بایوس دیگر توسط کامپیوترهای جدید پشتیبانی نمی‌شود و تقریبا از رده خارج است.