پنج‌شنبه ۹ فروردین ۱۴۰۳ |  عضویت / ورود






[ بخش اصلی آموزشها | افزودن آموزش | داری بیشترین امتیاز | دارای بیشترین بیننده | جدیدترین نظرات ]

همه چیز در باره بایوس كامپیوترتان


Thursday, 2005 December 22   نویسنده: Hamid   تعداد بازدید: 5917 بار  #آموزش سخت افزار (Hardware)‏   امتیاز متوسط: امتیازی داده نشده است

اغلب برای افراد مشکل است که تفاوت بین سخت افزار و نرم افزار را درک نمایند و این به این دلیل است که این دو موضوع در طراحی،ساخت وپیاده سازی سیستم ها بسیار به هم وابسته اند . برای درک بهتر تفاوت بین آنها لازم است که ابتدا مفهوم BOIS را درک کنید.

BOISتنها کلمه ای است که می تواند تمام درایورهایی را که در یک سیستم به عنوان واسط سخت افزار سیستم و سیستم عامل کار می کنند ، را شرح دهد.
BOISدر حقیقت نرم افزار را به سخت افزار متصل می نماید . قسمتی از بایوس بر روی چیپ ROM مادربرد و قسمتی دیگر بر روی چیپ کارتهای وفق دهنده قرار دارد که FIRE WARE(یعنی میانه افزار یا سفت افزار) نامیده میشود .

یک PC می تواند شامل لایه هایی (بعضی نرم افزاری و بعضی سخت افزاری ) باشد که واسط بین یکدیگرند.
در اکثر اوقات شما می توانید یک کامپیوتر (PC) را به چهار لا یه تقسیم کنید که هر کدام از لایه ها به زیر مجموعه هایی کوچکتر تقسیم کنیم . در شکل 1-5 چهار لایه نمونه از یک PC را مشاهده می کنید . هدف از این نوع طراحی این است که سیستم عامل ها و نرم افزار های مختلف بر روی سخت افزار های مختلف اجرا شوند (حالت مستقل از سخت افزار ) . شکل 1-5 نشان می دهد که چگونه دو ماشین متفاوت با سخت افزار های مختلف که از یک نسخه بایوس استفاده می کنند ، می توانند انواع نرم افزارها و سیستم عامل های مختلف را اجرا کنند . بدین طریق دو ماشین با دو پردازنده مختلف، رسانه های ذخیره سازی متفاوت و دو نوع واحد گرافیکی و غیره ... ، یک نرم افزار را اجرا کنند .

در معماری این لایه ها برنامه های کاربردی با سیستم عامل از طریق API(Application Program Interface) ارتباط برقرار می کنند .
API بر اساس سیستم عاملی که مورد استفاده قرار می گیرد و مجموعه توابع و دستورالعملهایی که برای یک بسته نرم افزاری ارائه می دهد ، متغیر می باشد . به طور مثال یک بسته نرم افزاری می تواند از سیستم عامل برای ذخیره و بازیابی اطلاعات استفاده کند و خود نرم افزار مجبور نیست که این کارها را انجام دهد.
نرم افزارها طوری طراحی شده اند که ما می توانیم آنرا بر روی سیستمهای دیگر نصب و اجرا نمائیم و این به دلیل مجزا شدن سخت افزار از نرم افزار است و نرم افزار از سیستم عامل برای دستیابی به سخت اقزار سیستم استفاده می کند . سپس سیستم عامل از طریق واسط ها به لایه های بایوس دستیابی پیدا می کند .بایوس شامل نرم افزارهای گرداننده ای است که بین سخت افزار و سیستم عامل ارتباط برقرار می کند . به خودی خود سیستم عامل هیچگاه نمی تواند مستقیما به سخت افزار دستیابی پیدا کند ، در عوض مجبور است از طریق برنامه های گرداننده ای که به این کار تخصیص یافته اند عمل کند .
یکی از وظایف تولید کنندگان قطعات سخت افزاری آن است که گرداننده ای برای قطعات تولیدی خود ارائه دهند ، و چون گرداننده ها باید بین سخت افزار و نرم افزار عمل نمایند ، باید گرداننده های هر سیستم عامل مجزا تولید شوند . بنابراین کارخانه سازنده قطعات باید گرداننده های مختلفی ارائه دهد تا قطعه مورد نظر بتواند بر روی سیستم عاملهای مزسوم کار کند .

چون لایه های بایوس همانند یک سیستم عامل به نظر می رسند ، مهم نیست که با چه سخت افزاری کار می کند ، و ما می توانیم سیستم عاملها را بر روی هر کامپیوتری و با هر نوع مشخصات سخت افزاری نصب و استفاده نمائیم .
برای مثال شما می توانید Windows 98 را بر روی دو سیستم متفاوت با پردازنده ،هارد دیسک،و کارت گرافیکی و ... که متفاوت از یکدیگرند نصب و اجرا کنید، اما بر روی هر دو سیستم همان کارائی خود را داراست، و زیرا که گرداننده ها همان عملکرد پایه را انجام می دهند و مهم نیست که بر روی چه سخت افزاری کار می کنند .

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

بایوس در سیستم به سه صورت وجود دارد :
1-ROM BIOS نصب شده بر روی مادر برد.
2- بایوس نصب شده بر روی کارتهای وفق دهنده (همانند کارت ویدئویی)
3- بارگذاری شده از دیسک(گرداننده ها)

چون بایوس مادربرد مقدمات لازم را برای گردادننده ها و نرم افزارها ی مورد نیاز فراهم میکند ،د اکثرا به صورت سخت افزاری که شامل یک چیپ ROM می باشد موجود است.
سالهای پیش هنگامی که سیستم عامل DOS بر روی سیستم اجرا میشد خود به تنهائی کافی بود و گرداننده ای (Driver) مورد نیاز نداشت . بایوس مادربرد به طور عادی شامل گرداننده هایی است که برای یک سیستم پایه همانند صفحه کلید، فلاپی درایو، هارد دیسک ، پورتهای سزیال و موازی و غیره ... است.

به جای اینکه برای دستکاههای جدید لازم باشد که بایوس مادربرد را ارتقاء دهید، یک نسخه از گرداننده آن را بر روی سیستم عامل خود نصب می نمائید تا سیستم عامل پیکربندی لازم را در هنگام بوت شدن سیستم را برای استفاده ار آن دستگاه انجام دهد ، برای مثال می توانیم CD ROM،Scanner،Printer،گرداننده های PC CARD را نام برد.چون این دستکاهها لازم نیستند که در هنگام راه اندازی سیستم فعال باشند ، سیستم ابتدا از هارد دیسک راه اندازی می شود وسپس گرداننده های آنرا بار گذاری می نماید.
البته بعضی از دستگاهها لازم است که در طول راه اندازی سیستم عامل فعال باشند ، اما این امر چگونه امکان پذیر است مثلا قبل از آنکه گرداننده کارت ویدئویی از ROM BIOS و یا از روی هارد دیسک فراخوانی شود شما چگونه می توانید اطلاعات را بر روی مانیتور ببینید ..
یک جواب این است که در ROM تمام گرداننده های کارت گرافیکی وحود داشته باشد اما این کار غیر ممکن نیست زیرا کارتهای بسیار متنوعی وجو دارد که هر کدام گرداننهده مربوط به خود را داراست که این خود باعث می شود صدها نوع ROM مادربرد به وجود آید که هر کدام مربوط به یک کارت گرافیکی می باشد.
اما هنگامی که IBM،PC های اولیه خود را اختراع نمود راه حل بهتری ارائه داد . او ROM مادربرد را طوری طراحی کرد که شکاف (Slot)کارت گرافیکی را برای پیدا کردن ROM نصب شده روی کارت گرافیکی را جستجو کند .

و اگر ROM روی کارت را می توانست پیدا می کرد ، مرحله اولیه راه اندازی را قبل از اینکه سیستم عامل از روی دیسک فراخوانی (Load) شود ،اجرا می نمود. بدین وسیله از تعویض ROM قرار داده شده بر روی مادربرد برای استفاده و فعال کردن دستگاه مورد نظر،ممانعت می کند.
کارتهای مختلفی که تقریبا بر روی همه آنها ROM وجود دارد ، شامل موارد زیر هستند :
کارتهای ویدئویی که همیشه دارای BIOS می باشند.
وفق دهنده های SCSI که امکان استفاده از دستگاههای با اتصالات SCSI را فراهم می آورد .
کارتهای شبکه که امکان راه اندازی سیستم با استفاده از فایل سرور که معمولا Boot Rom یا IPL(Initial Program Load) ROM نامیده می شوند، را فراهم می آورد ..
استفاده از دستگاههای IDE
بردهای Y2K که برای کامل کردن CMOS RAM هستند .

BIOS و CMOS RAM
اکثر افراد BIOS رابا CMOS RAM اشتباه می گیرند ، این از آنجا سرچشمه می گیرد که برنامه Setup برای پیکربندی BIOS و ذخیره آن در CMOS RAM می شود استفاده می شود.
در حقیقت BIOS و CMOS RAM دو چیز متفاوت از هم می باشند. بایوس مادربرد در یک چیپ ROM به طور ثابت ذخیره شده است.
همچنین بر روی مادربرد یک چیپ است که RTC/NVRAM نامیده می شود ، که زمان سیستم را نگهداری می کند و یک حافظه فرار و ثابت است که اولین بار در چیپ MC146818 ساخت شرکت موتورلا استفاده شده است، و ظرفیت آن 64 بایت است که 10 بایت آن مربوط به توابع ساعت است ..
اگرچه این چیپ غیر فرار نامیده می شود اما با قطع برق ، ساعت و تاریخ تنظیم شده در آن و داده های درون RAM پاک می شود .
در حقیقت غیر فرار نامیده می شود چون با استفاده از تکنولوژی CMOS(Complementarry Metal-Oxide Semicondector) ساخته شده است ، در نتیجه با یک جریان بسیار کم که بوسیله باطری سیستم تامین می گردد ، پایدار باقی می ماند که اکثر مردم به این چیپ ،CMOS RAM می گویند .
هنگامی که وارد BIOS Setup می شوید و پارامترهای خود راتنظیم و ذخیره می نمایید ، این تنظیمات در ناحیه ای از چیپ RTC/NVRAM ذخیره می شوند(که همچنین CMOS RAM نیز نامیده می شود).
و در هر موقع که سیستم خود را راه اندازی می کنید پارامترها از CMOS RAM خوانده می شوند و تعیین می کنند که سیستم چگونه پیگربندی شده است.

BIOS مادربرد :
همه مادربردها شامل یک چیپ مخصوص هستند که بر روی آن نرم افزاری قرار دارد که BIOS یا ROM BIOS نامیده می شود . این چیپ ROM شامل برنامه های راه اندازی و گرداننده هایی است که که در هنگام راه اندازی سیستم مورد نیاز است و یک واسطه به سخت افزار پایه سیستم است .
اغلب به CMOS RAM (حافظه پاک نشدنی NVRAM(Non-Volatile نیز می گویند ، چون با 1 میلینیوم آمپر فعال می شود و تا هنگامی که باطری لیتیوم فعال باشد ، داده ها باقی می مانند.
BIOS مجموعه ای از برنامه هایی است که در یک یا چند چیپ ذخیره شده است ، که در طول راه اندازی سیستم این مجموعه از برنامه ها قبل از هر برنامه ای حتی سیستم عامل بارگذاری می شوند .
BIOS در اکثر سیستمهای PC ها شامل چهار تابع است:
POST(Power Self On Test): این برنامه پردازنده، حافظه ،چیپستها ،وفق دهنده ویدوئویی ، دیسک کنترلر ،گرداننده های دیسکی ،صفحه کلید ،و مدارات دیگر را تست می کند.
BIOS Setup: برنامه ای است که در طول اجرای برنامه POST بافشار دادن کلید خاصی فعال می شود و به شما اجازه می دهد مادربرد را پیکربندی کنید و تنظیم پارامترهایی همانند ساعت و تاریخ و پسورد و ... را انجام دهید. در سیستمهای 286 و 386 برنامه Setup در ROM آنها وجود ندارد و لازم است که شما سیستم را توسط دیسک مخصوص Setup راه اندازی نمائید.
بارگذارکننده یا لودر BootStrap :روالی است که سیستم ار برای پیدا کردن سکتور Boot جستجو می کند .
BIOS: که مجموعه ای از گرداننده هایی است که واسط بین سخت افزار و سیستم عامل است.

سخت افزار ROM:
ROM نوعی از حافظه است که که داده ها را به طور دائم یا غیر دائم نگهداری می کند .به آن فقط خواندنی می گویند زیرا یک بار بر روی آن می نویسند و بارها آنرا می خوانند و اگر دوباره قابل نوشتن باشد بسیار دشوار است ..
ROM به حافظه غیر فرار نیز معروف است ، زیرا هر داده ای که در آن ذخیره شود با قطع برق سیستم پاک نمی شود . توجه داشته باشید که RAM و ROM تناقضی با یکدیگر ندارند .
در حقیقت تکنولوژی ROM زیر مجموعه ای از سیستم RAM می باشد به طور خلاصه قسمتی از فضای حافظه RAM به یک یا چند چیپ اشاره می کنند.
به طور مثال هنگامی که کامپیوتر را روشن می کنیم پردازنده به طور خودکار به آدرس FFFF0h پرش می کند.که در این آدرس دستوراتی است که به پردازنده می گویند چه کاری انجام دهد .

این محل 16 بایتی درست در انتهای اولین مگابایت RAM و همچنین در پایان حافظه ROM قرار گرفته است.معمولا سیستم ROM از آدرس F0000h شروع میشود که 64 کیلو بایت قبل از انتهای اولین مگابایت می باشد ، و معمولا چون اندازه ROM 64 کیلو بایت است 64 کیلو بایت آخر اولین مگابایت را اشغال می کند و در آدرس FFF0h دستورات راه اندازی سیستم قرار دارد .

افراد بسیاری تعجب می کنند که یک PC با اجرای دستورات 16 بایت از حافظه ROM می تواند راه اندازی شود ، اما این طراحی کاملا حساب شده است.
این طراحی بدین گونه است که در 16 بایت آخر ROM یک دستور JMP به اول ROM است و کنترل برنامه را به ابتدای ROM می برد ، پس به این طریق می توانیم اندازه ROM را به هر قدر که بخواهیم افزایش دهیم . ROM BIOS اصلی که برروی مادربرد است شامل یک چیپ ROM است.چون قسمت اصلی BIOS در ROM است ، ما اغلب آنرا ROM BIOS می نامیم .
کارت های وفق دهنده ای که در طول راه اندازی سیستم مورد نیاز هستند دارای یک ROM بر روی بردشان می باشند . که از این کارتها می توان کارت ویدئو ،اکثر Small Small Cmputer System Interface) SCSI( ها ، کارت کنترلر IDE توسعه یافته، برخی از کارتهای شبکه (برای راه اندازی توسط Server) .

ROMهایی که بر روی کارتهای وفق دهنده هستند توسط برنامه POST در طول راه اندازی سیستم اسکن و خوانده می شوند. ROM مادربرد قسمت خاصی ازRAM (از آدرس C00000h-DFFFFh) را رزرو می کند و سپس دوبایت از آدرس 55AAh را می خواند که در آن آدرس شروع ROM قرار دارد .
سومین بایت اندازه ROM را در واحد 512 بایت(که Paragraphنامیده می شود) نشان می دهد و چهارمین بایت شروع برنامه راه انداز میباشد. یکبایت نیز به منظور تست کردن توسط ROM مادربرد استفاده می شود.


.



ارسال سؤال یا نظر
Tutorials ©