واضح آرشیو وب فارسی:تبیان: درایورهای لایه ایدر مقاله قبلی در مورد برنامه ربات های امداد و نجات (Rescue) گفتگو نمودیم و همچنین برنامه های کاربردی و چگونگی تهیه درایور پرداختیم در ادامه به معرفی درایور های لایه ای می پردازیمدر مدل درایورهای لایه ای که برای ارتباط USB استفاده می شوند هر لایه انجام بخشی از پروسه ارتباط را برعهده می گیرد.
تقسیم کردن ارتباط به لایه های مختلف کار موثری است چون دستگاههای متفاوت در یک سری وظائف مشترک هستند که می توانند برای انجام آنها از یک نرم افزار مشترک استفاده کنند.قسمتی از ویندوز که ارتباط با دستگاه را رهبری می کند زیر سیستم I/O است. زیرسیستم دارای چندین لایه است که هر کدام دارای یک یاچند درایور برای کارهای مرتبط با خود هستند. خواسته ها از یک لایه به لایه بعد با توالی فرستاده می شود. یکی از قسمتهایی که در زیرسیستم I/O قرار دارد زیرسیستم USB است که دارای درایورهایی است که ارتباطهای ویژه USB مربوط به همه دستگاهها را رهبری می کند.یک درایور کاربردی برنامه کاربردی را قادر می سازد تا توسط تابعهای API با دستگاه USB بحث کنند. تابعهای API بخشی از زیر سیستم win32 ویندوز هستند که مسئولیت تابعهای کاربر مانند راه اندازی برنامه کاربردی، رهبری ورود کاربر ازطریق صفحه کلید و ماوس و خروجیهای نمایش روی صفحه نمایش را نیز برعهده دارد. برای ارتباط با دستگاه USB برنامه کاربردی احتیاجی ندارد که همه چیز را درباره پروتکل USB بداند. درایور کاربردی همچنین از نحوه ارتباط با درایورهای سطح پایین که سخت افزار را کنترل می کند آگاه است. عمومآ از درایورهای کاربردی با لفظ درایور دستگاه یاد می شود.دستگاه ممکن است از یک درایور شخصی استفاده کند یا درایور کلاس اضافه کند احتمالآ به قابلیتهای بیشتر از قابلیتهای موجود در کلاس احتیاج دارد. برای این کار می تواند از درایورهای فیلتر فوقانی یا درایورهای فیلتر تحتانی استفاده کند.یک درایور باس USB از درایور هاب ریشه ، درایور کلاس باس و درایور کنترلر میزبان تشکیل شده است که تمامی آنها در ویندوز وجود دارند.
برای اجرای طرح، احتیاج به یک برنامه کاربردی که قابلیت ارتباط با سخت افزار را داشته باشد داریم. من ویژوال بیسیک را برای ایجاد برنامه کاربردی در نظر گرفتم . ویژوال بیسیک محدودیتهایی در زمینه خصوصا" دسترسی به سخت افزار کامپیوتر مثلا" پورت ها دارد. دراین موارد می توان دست به دامان DLL ها شد. DLL ها دردل خود توابعی دارند که می توان این توابع را در جاهای مختلف برنامه فراخوانی کرد و از آن استفاده کرد ولی قبلا" لازم است هرکدام از این توابع را معرفی کرده باشیم . خود ویندوز دارای توابعی بنام API است. این توابع دردل DLL های ویندوز قرار دارد. لازم بذکر است که DLL را می توان با ++ Visual C و یا دلفی ایجاد کرد اما توابع ویندوز اغلب با C و یا ++ C نوشته می شوند.اگر بعضی از مفاهیم برای شما گنگ به نظر می رسد نگران نباسید در مقالات بعدی می توانید جواب سوالات خود را بگیرید مثلا در مقاله بعدی به معرفی مفهوم API می پردازیم. تهیه و تنظیم : سیدخاموشی
این صفحه را در گوگل محبوب کنید
[ارسال شده از: تبیان]
[مشاهده در: www.tebyan.net]
[تعداد بازديد از اين مطلب: 489]