Skip to main content
SUPERVISOR
Ali Fanian,Mohammad Ali Montazeri
علی فانیان (استاد مشاور) محمدعلی منتظری (استاد راهنما)
 
STUDENT
Aref Karimiafshar
عارف کریمی افشار

FACULTY - DEPARTMENT

دانشکده مهندسی برق و کامپیوتر
DEGREE
Master of Science (MSc)
YEAR
1389

TITLE

Scheduling Real Time Tasks in Heterogeneous Multicore Embedded Systems
The wide usage of embedded systems has affected their hardware and software significantly. The demands of new application, increasing amount of processing and the growth of technology encourages manufacturer to more powerful and high quality processors in such systems. The trend in growth of the personal computers toward heterogeneous processor, now has affected the modern embedded systems. Today’s embedded systems often have more than one core per state of the art processor and are changing to heterogeneous ones. These changes began from hardware and happened so fast that caused a gap and maybe mismatching between the hardware and the operating systems that used to manage the resources on them, of course the usage of HMC have had such advantages that seems it would be a popular trend in these systems in the future. In this project we deal with the scheduling of periodic real-time tasks on the HMC that which the existence of deadline make the scheduling more sensitive. The proposed method is a combination of scheduling methods on non-real-time HMC and scheduling methods on homogeneous processor. At first we categorized the task sets into the groups equal to the number of cores, then we assign them to the most matched cores. Now in each group a local scheduler with many well-known polices can be used. In this project we used Round Robin as local policy. Finally, when the system goes under heavy burdens, some tasks can be moved from higher priority queue to lower priority queue. This movement can be done in just one direction. Therefore, if one of the lower queue face with the congestion we can’t move some tasks to other queues. The performance of this method measured regards to the context switch penalty that we extract from a real processor, SPARC64™ VI of the SunSystem, we compare the proposed method with two other methods; Pfair and extended EDF, on WCET benchmarks. The results showed that on average deadlines would be satisfied with 10 percent improvement. In the other hands, the system’s performance had no significant changes and it takes O(n) to be run. So regards to improvement in satisfying the deadlines and keeping the performance in an already same leverage with the same order of complexity, we would have a more efficient system. Key words Embedded systems, realtime tasks scheduling, heterogeneous multicore processor, context switch penalty.
کاربرد وسیع سیستم های تعبیه شده بر روند رشد این سیستم ها، اعم از سخت افزار و نرم افزار، تاثیر قابل توجهی داشته است. تقاضا برای ایجاد کاربردهای جدید، افزایش حجم پردازش ها و رشد فناوری از سوی دیگر انتظاراتی را برای افزایش قدرت پردازشی و بهبود کیفیت در این گونه سیستم ها ایجاد کرده است. در پاسخ به این انتظارات همسو با روند رشد سیستم های کامپیوتری، سیستم های تعبیه شده بلادرنگ نیز به سمت استفاده از پردازنده هایی با تعداد بیشتری هسته و اخیرا پردازنده هایی با تعداد هسته های بیشتر و نامشابه (پردازنده های ناهمگن)، سوق داده شده است. با توجه به سرعت رشد و بروز این تغییرات سخت افزاری که در سال های اخیر رخ داده است، یک عدم تطابق در توسعه و ایجاد سیستم عامل مورد استفاده در این سیستم ها با قدرت پردازشی موجود درسخت افزار، مشاهده می شود. هر چند که هنوز خود مبحث پردازنده های ناهمگن و خصوصا استفاده از آن ها در سیستم های بلادرنگ موضوع بسیاری از تحقیقات در حال انجام می باشد. با افزایش سطح انتظارات عمومی از قدرت پردازشی یک سیستم تعبیه شده و توسعه این سیستم ها به حوزه های کاربردی جدید، پیش بینی می شود که این روند، استفاده از پردازنده های ناهمگن، روند غالب و طرح آتی مورد استفاده در سیستم های تعبیه شده باشد. لذا در این تحقیق به مسئله زمان بندی کارهای بلادرنگ بر روی یک پردازنده ناهمگن می پردازیم. روش پیشنهادی، ترکیبی از الگوریتم های زمان بندی سیستم های کامپیوتری(غیربلادرنگ) با پردازنده های ناهمگن و الگوریتم های زمان بندی پردازنده های چند هسته ای همگن بلادرنگ می باشد. در این روش ابتدا وظایف موجود در سیستم به دسته های مختلفی به تعداد واحدهای محاسباتی قابل زمان بندی، تقسیم شده و سپس هر دسته به مناسب ترین واحد محاسباتی نسبت داده می شود و در ادامه با توجه به ویژگی های گروه از سیاست های زمان بندی محلی، متفاوت یا یکسانی، جهت زمان بندی وظایف می توان استفاده کرد، که در این روش عمدتا از سیاست گردشی دوره ای با اندازه کوانتوم های متفاوت استفاده شد. در نهایت مواقعی که سیستم تحت بار کاری زیادی قرار می گیرد، وظایف می توانند بین واحدهای محاسباتی مختلف جابه جا شوند. این جابه جایی یک طرفه بوده و فقط از سمت دسته هایی با اولویت بالاتر به سمت دسته هایی با اولویت پایین تر صورت می پذیرد، بنابراین اگر صف محلی مربوط به دسته با اولویت پایین تر دچار ازدحام شود هیچ جابه جایی صورت نمی گیرد. عملکرد روش پیشنهادی باتوجه به سه پارامتر، کارایی، تامین مهلت زمانی و حداکثر بار با احتساب هزینه جابه جایی جهت انتقال یک وظیفه بین هسته ها یا نخ های مختلف بررسی گردید، که عموما در بسیاری از منابع مورد مطالعه تاثیر پارامتر هزینه جابه جایی وظایف در نظر گرفته نشده است. جهت اعمال هزینه جابه جایی محاسبات و شبیه سازی ها بر اساس ویژگی های یک پردازنده تجاری از شرکت سان سیستم صورت پذیرفت. نتایج حاصل از مقایسه روش پیشنهادی با سه روش، توزیع عادلانه وظایف، الگوریتم کوتاه ترین مهلت زمانی نسبی پارتیشن و توزیع متناسب بر اساس زمان مقیاس بندی شده، بر روی بنچمارک های استفاده شده حاکی از آن بود که الگوریتم پیشنهادی در مجموع سه پارامتر بهبود 13/5 درصدی نسبت به الگوریتم توزیع متناسب بر اساس زمان مقیاس بندی شده و بهبود 07/23 درصدی نسبت به الگوریتم کوتاه ترین مهلت زمانی نسبی پارتیشن و بهبود نزدیک 40 درصد نسبت به الگوریتم توزیع عادلانه داشته است. به لحاظ مرتبه زمانی اجرای الگوریتم، روش پیشنهادی دارای مرتبه O(n) می باشد. با توجه به تامین مهلت های زمانی بیشتر با حفظ میزان کارایی و پایین بودن نسبی مرتبه زمانی اجرای الگوریتم، کیفیت سیستم افزایش پیدا خواهد کرد. واژه های کلیدی: سیستم های تعبیه شده، زمان بندی وظایف بلادرنگ، پردازنده های چند هسته ای ناهمگن، هزینه جابه جایی وظایف.

ارتقاء امنیت وب با وف بومی