دانلود پایان نامه : سيستم عاملهای بلادرنگ

دانلود پایان نامه : سيستم عاملهای بلادرنگ

تعداد صفحات: 77

فرمت فایل: ورد

دسته بندی: -

قیمت: 4600 تومان

تعداد نمایش: 464 نمایش

ارسال توسط:

تاریخ ارسال: 23 نوامبر 2016

به روز رسانی در: 23 نوامبر 2016

خرید این محصول:

پس از پرداخت لینک دانلود برای شما نمایش داده می شود.

4600 تومان – خرید

دانلود پایان نامه : سيستم عاملهای بلادرنگ

فهرست مطالب:

·        فصل اول :  زمانبندی بلادرنگ………………………………………………………….7

مقدمه……………………………………………………………………………………………………..8

مشخصات سيستم های بلادرنگ…………………………………………………………………….9

زمانبندی بلادرنگ……………………………………………………………………………………14

رويکردهای ايستای مبتنی بر جدول……………………………………………………………..16

رويکردهای ايستای مبتنی بر اولويت و با قبضه کردن………………………………………16

رويکردهای پويا بر اساس برنامه ريزی………………………………………………………….16

رويکردهای پويا با بهترين کوشش……………………………………………………………….17

زمانبندی ايستا مبتنی بر جدول…………………………………………………………………..18

زمانبندی ايستای مبتنی بر اولويت و با قبضه کردن…………………………………………18

زمانبند مهلت زمانی…………………………………………………………………………………18

زمانبندی Linux  …………………………………………………………………………………26

زمانبندی Unix SVR4………………………………………………………………………….28

·        فصل دوم : الگوريتم های برنامه ريزی و حمايت سيستم های اجرايي برای سيستم های بلادرنگ….. ………………….31

خلاصه………………………………………………………………………………………………..32

برنامه ريزی بلادرنگ……………………………………………………………………………..35

متريک های اجرا در سيستم های بلادرنگ………………………………………………….36

الگوهای برنامه ريزی……………………………………………………………………………..38

الگوريتمهای برنامه ريزی برای اين الگوها……………………………………………..40

برنامه ريزی ثابت Table –Driven   ………………………………………………….41

برنامه ريزی priority driven preemptive   …………………………………..42

برنامه ريزی ديناميک …………………………………………………………………………43

برنامه ريزی Best –Effort  ديناميک………………………………………………….44

موضوعات برنامه ريزی مهم………………………………………………………………….45

برنامه ريزی با محدوديتهای  توان خطا……………………………………………………45

برنامه ريزی با احيای منابع…………………………………………………………………..46

سيستم اجرايي  بلادرنگ ……………………………………………………………………..46

هسته های کوچک ، سريع و اختصاصی……………………………………………………47

توسعه های زمان واقعی برای سيستم های اجرای بازرگانی…………………………..48

سيستم های اجرای تحقيق……………………………………………………………………..50

هسته MARS……………………………………………………………………………………..51

هسته SPRING………………………………………………………………………………….52

هستهMARUTI ………………………………………………………………………………….52

هسته ARTS ……………………………………………………………………………………..52

·        فصل سوم :  بررسی ارتباط ميان اجزای يک سيستم جامع بلادرنگ………… 55

خلاصه…………………………………………………………………………………………………..56

شرح رابط ميان RTOS  و برنامه کاربردی……………………………………………………58

شرح عملگرهای بهبوديافته…………………………………………………………………………63

تشريح مطالعات تجربی………………………………………………………………………………69

فصل چهارم : منابع…………………………………………………………………….73

مقدمه:

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

.

.

زمانبندی مهلت زمانی

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

به طور کلی کاربردهای بلادرنگ نه در مورد سرعت،بلکه در مورد تکميل (يا آغاز) به موقع وظيفه حساس هستند، که عليرغم تقاضاهای پويای منبع ،اضافه بارهای پردازش و خطاهای سخت افزاری و نرم افزاری خيلی زود يا دير نشوند . پس اولويتها ابزار خامی هستند و جوابگوی نياز تکميل (يا آغاز ) به موقع فرايند در با ارزشترين زمان نمی باشند.

در سالهای اخير ، پيشنهادهايي برای رويکردهای مناسبتر و توانمندتر برای زمانبندی وظيفه های بلادرنگ ارائه شده است . تمام اينها براين اساس هستندکه اطلاعات بيشتری از هر وظيفه داشته باشيم. در کلی ترين صورت ،اطلاعات زيردر مورد هر وظيفه می تواند به کار آيد:

·       زمان آمادگی:

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

·       مهلت زمانی شروع:

زمانی که وظيفه بايد در آن شروع گردد.

·       مهلت زمانی کامل شدن:

زمانی که وظيفه بايد تا آن موقع تکميل شود.معمولاً يک کاربرد بلادرنگ،يا دارای مهلت زمانی شروع يا دارای مهلت زمانی تکميل است و هر دو را ندارد

·       زمان پردازش:

زمان لازم برای اجرا وتکميل وظيفه، در برخی موارد اين زمان داده می شود. در موارد ديگر سيستم عامل يک متوسط نمايي را حساب می کند. در بعضی از سيستمهای زمانبندی ، اين اطلاعات به کار نمی رود.

·       منابع مورد نياز:

مجموعه منابعی (به جز پردازنده) که در زمان اجرا مورد نياز وظيفه است.

·       اولويت:

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

·       ساختار زير وظيفه:

يک وظيفه می تواند به يک زير وظيفه اجباری و يک زير وظيفه اختياری تجزيه شود. فقط زير وظيفه اجباری دارای مهلت زمانی سخت است.

ابعاد متعددی بر عمل زمانبندی بلادرنگ در موقعی که مهلتهای زمانی به حساب می آيد مرتب است:

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

مسئله مهم ديگر طراحی، قبضه کردن است. موقعی که مهلتهای زمانی شروع مشخص شده باشند، زمانبند بدون قبضه کردن معنی دارد. در اين مورد ،اين مسئوليت خود وظيفه بلادرنگ است که پس از تکميل اجرای بخش اجباری يا بحرانی ، خودش را مسدودکند و ارضای ساير مهلتهای زمانی را ميسر سازد. اين برای الگوی شکل 1-1 ب مناسب است . برای سيستمی با مهلتهای زمانی در کامل شدن، راهبرد قبضه کردن (شکل 1-1 ج يا د) مناسبترين است . مثلاً اگر وظيفهX در حال اجرا و وظيفه Y در حالت آماده باشد ، ممکن است در شرايطی تنها راه برای اينکه X وY  مهلتهای زمانی تکميل خود را برآورده کنند، قبضه کردن X ، اجرای Y تا کامل شدن و سپس از سرگيری X تا کامل شدن باشد .

به عنوان مثالی از زمانبندی وظيفه های متناوب با مهلتهای زمانی در تکميل ،سيستمی را در نظر بگيريدکه داده ها را از دو حس کننده A و B جمع آوری و پردازش می کند. مهلت زمانی برای جمع آوری داده ها از حس کننده A هر20 ميلی ثانيه يک بار و برای حس کننده B هر 50 ميلی ثانيه يک بار است. برای پردازش و سربار سيستم عامل هر نمونه داده از حس کننده A مدت 10 ميلی ثانيه و برای هر نمونه از حس کننده B مدت 25 ميلی ثانيه زمان لازم است. جدول 1-1 اطلاعات اجرای دو وظيفه را خلاصه کرده است.

کامپيوتر قادر است تا هر 10 ميلی ثانيه يک تصميم زمانبندی بگيرد. فرض کنيد تحت اين اين شرايط ، سعی در استفاده از يک طرح زمانبندی اولويت دار بنماييم . دو نمودار زمانی اول شکل 1-2 نتيجه را نشان می دهند. اگر اولويت A بيشتر باشد، به اولين مورد وظيفه B فقط 20 ميلی ثانيه زمان پردازش داده خواهد شد( در دو قطعه 10 ميلی ثانيه ای) ، تا اينکه مهلت زمانی آن فرا می رسد ودر نتيجه شکست می خورد. اگر اولويت بالاتر به B داده شود، A اولين مهلت زمانی خود را از دست خواهد داد. آخرين نمودار زمانی استفاده از زمانبندی زودترين مهلت زمانی را نشان می دهد . در زمان t=0 ،A1 وB 1  وارد می شوند. از آنجا که A1 دارای زودترين مهلت زمانی است ، اول زمانبندی می شود. وقتی A1 تکميل می گردد پردازنده به B1 داده می شود. در t=20 ،A2 وارد می شود. به دليل اينکه مهلت زمانی A2 زودتر از B1 است ،B1 دچار وقفه شده و A2 تا تکميل اجرا می گردد. سپس B1 در t=30 از سر گرفته می شود. در t=40 ،A3 وارد می شود.ولی B1دارای مهلت زمانی پايان زودتری است و مجاز

است تا تکميل در t=45 ، ادامه يابد. سپس پردازنده به A3 داده می شود و در t=55 به پايان می رسد.

در اين مثال ، از طريق زمانبندی وقبضه کردن در هر نقطه ، برای دادن اولويت به وظيفه ای که زودترين مهلت زمانی را دارد، تمام نيازهای سيستم برآورده می شود. از آنجا که وظيفه ها متناوب و قابل پيش بينی هستند، يک روکرد زمانبندی ايستای مبتنی بر جدول به کار رفته است.

حال طرحی را برای اداره وظيفه های نا منتاوب با مهلت زمانی شروع در نظر بگيريد . قسمت بالای شکل 1-2 زمانهای ورود و مهلتهای زمانی شروع برای مثالی که شامل پنج وظيفه است را نشان می دهد. هر وظيفه دارای زمان اجرای 20 ميلی ثانيه است. در جدول 1-1 اطلاعات اجرای اين پنج وظيفه خلاصه شده است .

يک طرح سر راست و ساده ، زمانبندی وظيفه با زودترين مهلت زمانی و اجازه اجرا تا تکميل آن است . با استفاده از اين رويکرد در مثال شکل 1-3 ، عليرغم اينکه وظيفه B به خدمت فوری نياز دارد ، اين خدمت دريغ شده است . اين خطر برخورد با وظيفه های نامتناوب ، به خصوص در مورد مهلتهای زمانی در شروع است. تصحيحی در اين سياست کارآمدی را بهبود می بخشد به شرطی که بتوانيم مهلتهای زمانی را پيش از زمانی که وظيفه آماده گردد، بدانيم . اين سياست که زودترين مهلت زمانی با زمانهای بی کار غير اجباری نام دارد به صورت زير کار می کند: همواره وظيفه واجد شرايط با داشتن زودترين مهلت زمانی را زمانبندی کرده و اجازه می دهد آن وظيفه تا تکميل ادامه يابد. ممکن است وظيفه واجد شرايط آماده نباشد، که می تواند موجب بی کاری پردازنده (حتی اگر وظيفه های آماده موجود باشند) گردد. در مثال مورد نظر، با وجود اينکه A تنها وظيفه آماده است ، سيستم از زمانبندی آن خودداری می کند . نتيجه اين است که گرچه پردازنده با حداکثر کارايي به کار گرفته نشده است ولی کليه نيازهای  زمانبندی برآورده شده اند . برای مقايسه ، سياست خدمت به ترتيب ورود (FCFS) نيز نمايش داده شده است . در اين حالت وظيفه های B و  E به مهلتهای زمانی خود نمی رسند.

پاسخ دهید