نام پژوهشگر: عارف کریمی افشار

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

کاربرد وسیع سیستم های تعبیه شده بر روند رشد این سیستم ها، اعم از سخت افزار و نرم افزار، تاثیر قابل توجهی داشته است. تقاضا برای ایجاد کاربردهای جدید، افزایش حجم پردازش ها و رشد فناوری از سوی دیگر انتظاراتی را برای افزایش قدرت پردازشی و بهبود کیفیت در این گونه سیستم ها ایجاد کرده است. در پاسخ به این انتظارات همسو با روند رشد سیستم های کامپیوتری، سیستم های تعبیه شده بلادرنگ نیز به سمت استفاده از پردازنده هایی با تعداد بیشتری هسته و اخیرا پردازنده هایی با تعداد هسته های بیشتر و نامشابه (پردازنده های ناهمگن)، سوق داده شده است. با توجه به سرعت رشد و بروز این تغییرات سخت افزاری که در سال های اخیر رخ داده است، یک عدم تطابق در توسعه و ایجاد سیستم عامل مورد استفاده در این سیستم ها با قدرت پردازشی موجود درسخت افزار، مشاهده می شود. هر چند که هنوز خود مبحث پردازنده های ناهمگن و خصوصا استفاده از آن ها در سیستم های بلادرنگ موضوع بسیاری از تحقیقات در حال انجام می باشد. با افزایش سطح انتظارات عمومی از قدرت پردازشی یک سیستم تعبیه شده و توسعه این سیستم ها به حوزه های کاربردی جدید، پیش بینی می شود که این روند، استفاده از پردازنده های ناهمگن، روند غالب و طرح آتی مورد استفاده در سیستم های تعبیه شده باشد. لذا در این تحقیق به مسئله زمان بندی کارهای بلادرنگ بر روی یک پردازنده ناهمگن می پردازیم. روش پیشنهادی، ترکیبی از الگوریتم های زمان بندی سیستم های کامپیوتری(غیربلادرنگ) با پردازنده های ناهمگن و الگوریتم های زمان بندی پردازنده های چند هسته ای همگن بلادرنگ می باشد. در این روش ابتدا وظایف موجود در سیستم به دسته های مختلفی به تعداد واحدهای محاسباتی قابل زمان بندی، تقسیم شده و سپس هر دسته به مناسب ترین واحد محاسباتی نسبت داده می شود و در ادامه با توجه به ویژگی های گروه از سیاست های زمان بندی محلی، متفاوت یا یکسانی، جهت زمان بندی وظایف می توان استفاده کرد، که در این روش عمدتا از سیاست گردشی دوره ای با اندازه کوانتوم های متفاوت استفاده شد. در نهایت مواقعی که سیستم تحت بار کاری زیادی قرار می گیرد، وظایف می توانند بین واحدهای محاسباتی مختلف جابه جا شوند. این جابه جایی یک طرفه بوده و فقط از سمت دسته هایی با اولویت بالاتر به سمت دسته هایی با اولویت پایین تر صورت می پذیرد، بنابراین اگر صف محلی مربوط به دسته با اولویت پایین تر دچار ازدحام شود هیچ جابه جایی صورت نمی گیرد. عملکرد روش پیشنهادی باتوجه به سه پارامتر، کارایی، تامین مهلت زمانی و حداکثر بار با احتساب هزینه جابه جایی جهت انتقال یک وظیفه بین هسته ها یا نخ های مختلف بررسی گردید، که عموما در بسیاری از منابع مورد مطالعه تاثیر پارامتر هزینه جابه جایی وظایف در نظر گرفته نشده است. جهت اعمال هزینه جابه جایی محاسبات و شبیه سازیها بر اساس ویژگیهای یک پردازنده تجاری از شرکت سان سیستم صورت پذیرفت. نتایج حاصل از مقایسه روش پیشنهادی با سه روش، توزیع عادلانه وظایف، الگوریتم کوتاهترین مهلت زمانی نسبی پارتیشن و توزیع متناسب بر اساس زمان مقیاسبندی شده، بر روی بنچمارکهای استفاده شده حاکی از آن بود که الگوریتم پیشنهادی در مجموع سه پارامتر بهبود 13/5 درصدی نسبت به الگوریتم توزیع متناسب بر اساس زمان مقیاسبندی شده و بهبود 07/23 درصدی نسبت به الگوریتم کوتاهترین مهلت زمانی نسبی پارتیشن و بهبود نزدیک 40 درصد نسبت به الگوریتم توزیع عادلانه داشته است. به لحاظ مرتبه زمانی اجرای الگوریتم، روش پیشنهادی دارای مرتبه (n)o میباشد. با توجه به تامین مهلتهای زمانی بیشتر با حفظ میزان کارایی و پایین بودن نسبی مرتبه زمانی اجرای الگوریتم، کیفیت سیستم افزایش پیدا خواهد کرد. واژه های کلیدی: سیستم های تعبیه شده، زمان بندی وظایف بلادرنگ، پردازنده های چند هسته ای ناهمگن، هزینه جابه جایی وظایف.