تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO)

تعداد صفحات: 21 فرمت فایل: word کد فایل: 9739
سال: مشخص نشده مقطع: مشخص نشده دسته بندی: مهندسی کامپیوتر
قیمت قدیم:۱۲,۵۰۰ تومان
قیمت: ۸,۰۰۰ تومان
دانلود مقاله
  • خلاصه
  • فهرست و منابع
  • خلاصه تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO)

    یکی از عملکردهای بسیار مهم و اصلی سیستم عامل کنترل و مدیریت دستگاه های ورودی/ خروجی (I/O) در کامپیوتر است. سیستم عامل باید فرمانهایی را به این دستگاهها بفرستد، وقفه ها را بگیرد و خطاها را اداره کند. و همچنین باید یک رابط بین دستگاهها و بقیه سیستم به منظور استفاده ساده تر از آنها فراهم نماید.

    اصول سخت افزاری I/O

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

    1- دستگاههای بلوکی BLOCK DEVICE

    2- دستگاههای کارکتری CHARACTER DEVICE

    یک دستگاه بلوکی وسیله ای است که اطلاعات را در یک بلوک با اندازه معین ذخیره می کند که هر کدام با آدرس خودشان مشخص شده اند. حدود اندازه بلوک‌های معمولی از 512 بایت تا 32768 بایت می باشند خاصیت اساسی یک دستگاه بلوکی این است که خواندن و نوشتن هر بلوک را بطور مستقل از بقیه ممکن می سازد دیسکها از متداولترین دستگاههای بلوکی هستند.

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

    1- قابل خواندن توسط انسان:

    مناسب برای ارتباط با کاربر، مانند پایانه های نمایش دهنده تصویر، صفحه کلید و…

    2- خواندن توسط ماشین:

    مناسب برای ارتباط با وسائل الکترونیکی، مانند گردانندهای دیسک و نوار، حس کننده‌ها، کنترل کننده ها و محرکها.

    3- ارتباطات:

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

    نرخ انتقال، کاربرد، پیچیدگی کنترل، واحد انتقال، نمایش داده ها، شرایط خطا.

    سازمان عمل ورودی/ خروجی

    الف) ورودی/ خروجی برنامه ریزی شده: پردازنده یک فرمان ورودی/ خروجی را از جانب فرایندی به یک مولفه ورودی/ خروجی صادر می کند. سپس آن فرایند قبل از ادامه، تا کامل شدن عمل ورودی/ خروجی به انتظار می ماند.

    ب) ورودی/ خروجی مبتنی بر وقفه: پردازنده یک فرمان ورودی/ خروجی را از  جانب فرایند صادر می کند، سپس به اجرای دستورالعملهای بعدی ادامه می دهد و با کامل شدن عمل ورودی/ خروجی یا وقفه مولفه ورودی/ خروجی مواجه می شود. دستورالعملهای بعدی می توانند از همان فرایند باشند البته به شرطی که فرایند نیازی به انتظار برای تکمیل ورودی/ خروجی نداشته باشد. در غیر این صورت فرایند در انتار وقفه معلق می گردد و کار دیگری انجام می گیرد.

    پ) دسترسی مستقیم به حافظه DMA: مولفه DMA تبادل داده ها بین حافظه اصلی و مولفه ورودی/ خروجی را کنترل می کند. پردازنده تقاضایی برای انتقال یک بلوک از داده ها را به مولفه DMA می فرستد و فقط پس از انتقال کل بلوک مورد وقفه قرار می گیرد.

    تکامل عمل ورودی/ خروجی

    می توان گامهای تکاملی را بصورت زیر خلاصه نمود:

    1- کنترل دستگاه جانبی بطور مستقیم.

    2- یک کنترل کننده یا مولفه ورودی/ خروجی افزوده شده است. پردازنده از ورودی/ خروجی برنامه ریزی شده بدون وقفه استفاده می کند. با این گام پردازنده از جزئیات اختصاصی واسط های دستگاه خارجی جدا می گردد.

    3- همان پیکربندی گام دوم، ولی این بار از وقفه استفاده شده است. دیگر وقت پردازنده تلف نمی شود.

    4- از طریق DMA کنترل مستقیم حافظه به مولفه ورودی/ خروجی داده شده است. حال می توان بلوکی از داده را بدون دخالت پردازنده به/ از حافظه انتقال داد.

    5- مولفه ورودی/ خروجی تا حد پردازنده ای مجزا، با مجموعه ای دستورالعملهای خاصی برای ورودی/ خروجی ارتقاء یافته است. پردازنده مرکزی (CPU)، پردازنده ورودی/ خروجی را برای اجرای برنامه ورودی/ خروجی از حافظه هدایت می کند، پردازنده ورودی/ خروجی این دستورالعملها را بدون دخالت پردازنده مرکزی واکنشی و اجرا می کند.

    6- مولفه ورودی/ خروجی دارای حافظه محلی اختصاصی و در واقع به نوبه خود یک کامپیوتر است. با این معماری، مجموعه بزرگی از دستگاههای ورودی/ خروجی با حداقل دخالت پردازنده مرکزی می تواند کنترل شود.

    دسترسی مستقیم به حافظه

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

    - اینکه درخواست خواندن یا نوشتن.

    - آدرس دستگاه ورودی/ خروجی درگیر.

    - آدرس مکان شروع خواندن یا نوشتن در حافظه.

    - تعداد کلماتی که باید خوانده یا نوشته شود.

    سپس پردازنده به کارهای دیگر پرداخته و عمل ورودی/ خروجی را به مولفه DMA محول می کند. مولفه DMA همه بلوک داده ها را به صورت یک کلمه در هر زمان به طور مستقیم و بدون عبور از پردازنده به/ از حافظه انتقال می دهد. هنگامیکه انتقال کامل شده مولفه DMA یک علامت وقفه به پردازنده ارسال می کند. بنابراین پردازنده فقط در آغاز و پایان انتقال درگیر می باشد.

    اصول نرم افزاری I/O

    هدف اصلی نرم افزار I/O، سازماندهی نرم افزار بصورت یک سری از لایه ها است که کار لایه های پایینی پنهان ساختن ویژگی های پیچیده سخت افزار از لایه های بالاتر و کار لایه های بالایی نشان دادن یک واسطه منظم، ساده و شفاف برای استفاده کننده است. از این اهداف می توان به موارد زیر اشاره نمود.

    - برنامه ها تا حد ممکن باید از دستگاه مستقل باشند. یعنی باید بتوانیم برنامه هایی بنویسیم که قادر باشد فایلهای روی یک دیسک نرم، دیسک سخت و یا CD-ROM را بخواند.

    - یکی دیگر از اهداف نرم افزار I/O که ارتباط نزدیکی با مفهوم نرم افزار مستقل دستگاه دارد، نامگذاری یکسان می باشد. نام یک فایل یا یک دستگاه بطور ساده باید یک رشته یا یک عدد صحیح باشد و به هیچ وجه به دستگاه بستگی نداشته باشد.

    - دیگر اینکه نرم افزار I/O بتواند خطاها را اداره کند. بطور کلی خطاها باید در حد امکان نزدیک به سخت افزار اداره شوند. اگر کنترل کننده یک خطای خواندن را کشف کند باید سعی کند که اگر می تواند خودش خطا را اصلاح کند و اگر نمی تواند این کار را به گرداننده دستگاه (لایه بعدی) بسپارد.

    - هدف دیگر، که یک موضوع کلیدی است، انتقال همگام (بلوکه کردن)در مقابل انتقال های ناهمگام (مبتنی بر وقفه) می باشد.

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

    اهدافی که در بالا بیان شد. با روشی قابل درک و موثر با ساختن نرم افزار I/O در چهار لایه بدست می آید:

    الف) اداره کننده های وقفه

    ب) گرداننده های دستگاه

    پ) نرم افزار سیستم عامل مستقیم از دستگاه

    ج) نرم افزار سطح کاربر

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

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

    بن بست

    در سیستم های کامپیوتری منابع بسیاری وجود دارد که در هر لحظه فقط توسط یک پروسس مورد استفاده قرار می گیرند. مثالهایی از این منابع، پلاترها و یا پرینترها، CD-ROM،… می باشند. اگر دو فرایند بطور همزمان بر روی یک چاپگر بنویسند، نتایج نادرست بدست خواهد آمد. استفاده همزمان دو فرآیند از یک درآیه جدول فرآیند موجب سقوط و از کار افتادن سیستم خواهد شد بنابراین در کلیه سیستم عاملها توانایی واگذاری انحصاری یک منبع خاص جهت دستیابی یک فرآیند (بطور موقت) وجود دارد.

    بن بست زمانی اتفاق می افتد که فرایندها می توانند بطور انحصاری به دستگاهها، فایلها و دیگر اشیاء دست یابند. بطور کلی به هر یک از این اشیاء منبع گفته می‌شود. منابع می توانند سخت افزاری و یا یک رکورد از یک بانک اطلاعاتی باشد. منابع به دو گروه تقسیم می شوند.

  • فهرست و منابع تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO)

    فهرست:

     

    ندارد
     

    منبع:

    سیستمهای عامل              اندرو اس تتباوم، آلبرت وودهال

    سیستم های عامل              ویلیام استالینگ

تحقیق در مورد تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO) , مقاله در مورد تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO) , تحقیق دانشجویی در مورد تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO) , مقاله دانشجویی در مورد تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO) , تحقیق درباره تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO) , مقاله درباره تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO) , تحقیقات دانش آموزی در مورد تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO) , مقالات دانش آموزی در مورد تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO) ، موضوع انشا در مورد تحقیق مقاله کنترل و مدیریت دستگاه های ورودی - خروجی (IO)
ثبت سفارش
عنوان محصول
قیمت