لینک دانلود و خرید پایین توضیحات
دسته بندی : وورد
نوع فایل : word (..doc) ( قابل ویرایش و آماده پرینت )
تعداد صفحه : 22 صفحه
قسمتی از متن word (..doc) :
دانشگاه آزاد اسلامی واحداراک
دانشکده فنی مهندسی
گره کامپیوتر
عنوان :
سخت افزار
در باره بایوس کامپیوتربیشتر بدانید؟
اغلب برای افراد مشکل است که تفاوت بین سخت افزار و نرم افزار را درک نمایند و این به این دلیل است که این دو موضوع در طراحی،ساخت وپیاده سازی سیستم ها بسیار به هم وابسته اند . برای درک بهتر تفاوت بین آنها لازم است که ابتدا مفهوم 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
لینک دانلود و خرید پایین توضیحات
دسته بندی : وورد
نوع فایل : word (..doc) ( قابل ویرایش و آماده پرینت )
تعداد صفحه : 15 صفحه
قسمتی از متن word (..doc) :
1
2
به نام خدا
موضوع تحقیق :
ویژوال سی
فهرست مطالب
برنانه نویسی سخت افزار به کمک ویژال سی ................................. 4 و5 و 6
تاریخچه ........................................................................ 6 و 7
ویژگی ........................................................................... 7 و 8 و 9
زبان برنامه نویسی ............................................................ 9
ویژوال سی درون کار ........................................................ 10
نمونه یک برنامه ........................................................... 10و 11
پارادایم ها ..................................................................... 11
4
نمونه هایی از برنامه ویسی ............................................. 12 و13و14و15
برنامه نویسی سخت افزار به کمک ویژوال سی
یه مدت بود که دنبال این میگشتم که چطوری توی وی بی میشه با پورتها و سخت افزارهای دست ساز ارتباط برقرار کرد .بالاخره پیداش کردم و برای شما دوستان می زارمش اینجا !!
فقط باید ویژوال سی هم داشته باشید تا بتونید DLL مربوطه رو کامپایل کنید !
شاید تابحال خواسته باشید از طریق پورت پرینتر و یا پورت سریال یا باس ISA با سخت افزاری که خودتان ساخته اید ارتباط برقرار کنید . برای این کار شما نیاز به برنامه ای دارید که بوسیله دستورات I/O با سخت افزار شما ارتباط برقرار کند . چون ویژوال بیسیک دارای دستورات کار با پورتهای I/O نیست بایستی توسط ویژوال سی یک Dll برای کار با این پورتها بسازیم و تو وی بی فایل کامپایل شده رو به طور مشابه توابع آی پی آی به کار بگیرید.
DLL و کاربردهای آن
اگر شما در DOS برنامه نویسی کرده باشید با دستورات INPUT و OUPUT در زبان QuickBasic و با دستورات inp و outp در C آشنا هستید . این توابع در VB پیاده سازی نشده اند . این توابع برای سازندگان سخت افزار برای PC و نیز برنامه نویسان سیستم حیاتی هستند زیرا به شما اجازه خواندن از پورت و نوشتن به پورت را می دهند . برای ایجاد امکان استفاده ار پورت در VB باید از Dll یا کتابخانه های دینامیک استفاده کنیم . Dll ها به VB اجازه می دهند تا یک کد نوشته شده به یک زبان دیگر را در زمان اجرا ( بطور دینامیک ) به برنامه لینک شود . چون ویژوال سی دارای توابع خواندن و نوشتن پورت است بنابراین ما از این زبان برای ساخت Dll موردنظر استفاده می کنیم .
نوشتن DLL در VC
برای ساخت Dll ما بایستی دو فایل را ایجاد کنیم . اولین فایل یک فایل define یا DEF است و دومین فایل ، یک فایل C++ source یا CPP می باشد . هر دو فایل را می توانید توسط Notepad ایجاد کنید . لیست کد این دو فایل بصورت زیر است :
پس از نوشتن این دو فایل آنها را در یک دایرکتوری قرار دهید ( مثلاً
4
C:port ) و سپس وارد محیط ویژوال سی شوید . از منوی File مورد New را انتخاب کنید و در کادری که ظاهر می شود در قسمت Projects مورد Win32 Dynamic-Link Library را انتخاب کنید . همچنین در سمت راست همان صفحه در کادر Project name عبارت port را وارد کنید و در کادر Location عبارت C:portport را وارد کنید و آنگاه OK را کلیک کنید .
Port.def file :
LIBRARY Port
DESCRIPTION DLL FOR I/O PORT
EXPORTS
Outp @1
Inp @2
Port.cpp file :
include "conio.h"x#
short _stdcall Outp(int PortAddress,int PortData){
short Dummy;
Dummy=(short)(_outp(PortAddress,PortData));
return(Dummy);
;}
short _stdcall Inp(int PortAddress)
{
short PortData;
PortData=(short)(_inp(PortAddress));
return(PortData);
;}
در مرحله بعدی بایستی فایل های def و cpp را به workspace ایجاد شده اضافه کنیم . برای اینکار در برگه FileView روی عبارت Port files کلیک راست کرده و مورد Add Files to Project را انتخاب کنید .
در کادری که ظاهر می شود فایل port.cpp را انتخاب کنید . با همین روش فایل port.def را نیز به پروژه اضافه نمائید .
حال وارد منوی