مهندسی نرم افزار
دانلود پایاننامه کارشناسی ارشد مهندسی نرمافزار زمانبندی کارها در رایانش ابری و ارائه الگوریتمی بهینه برای بهبود بازدهی آن چکیده : با پیشرفت سختافزارهای و سپس سیستمعاملها و در دنباله آن نرمافزارهای ، درخواست سرویسهای بیشتر و سرعت و قدرت بالاتر هم افزایش یافت و این وضعیت بهجایی رسیده که کاربران بدون سختافزار مناسب نمیتوانند نرمافزار دلخواه خود را اجرا نمایند . با تولید و ایجاد نسخههای بالاتر و نرمافزارهای مختلف به صورتی تولید و ایجاد میشود که توانایی اینکه سختافزار مربوطه هم به همان سرعت تغییر یابد برای کاربران به دلیل هزینه بیشازاندازه امکانپذیر نخواهد بود ازاینرو ابرها ایجاد گردید تا نرمافزار و سرویسها و ... بر روی آنها فعال گردید و کاربران با پرداخت هزینه اندک و بدون نگرانی در مورد از دست دادن اطلاعات و خرابیهای سختافزاری بتوانند از سرویس خود استفاده نمایند . ازاینرو ابرها نیازمند نرمافزارهایی برای کنترل منابع و سرویسها و سختافزارهای گوناگون دیگر درخواستهای کاربران هستند که این مقوله به قسمتهای مختلفی تقسیمشده است که یکی از موارد زمانبندی کار در ابرها میباشد در این پایان نامه سعی بر این داشتهایم تا بتوانیم طرحی را ایجاد و بهینه نماییم تا با کمترین هزینه بیشترین بازدهی در زمان تقسیم کارهای مختلف به ابرهای مختلف را داشته باشد . کلمات کلیدی: رایانش ابری زمانبندی کارها ارائه الگوریتمی بهینه مقدمه بحث زمانبندی کار در سیستمهای عامل یکی از بحثهای مهم بوده و خواهد بود زیرا راهکاری که بتواند با کمترین زمان بهینهترین روش را پیادهسازی نماید همیشه مورد توجه بوده و هست . این مبحث در ابرها هم بسیار پررنگ تر ظاهر شده است ، چرا که در اینجا کارها از چندین کاربرو حتی در موقعیتهای جغرافیایی متفاوت با درخواستهای متفاوت ارسال میگردد و این درخواستها را بابد به گونه ای مدیریت نمود که ، هر یک دارای سرویسهای مختلفی هستند را بررسی و در بهینهترین زمان پاسخ دهد . ازاینرو ما مبحث زمانبندی کارها را در محاسبات ابری مورد بحث و بررسی قرار دادیم و سعی خود را بر این داشته ایم که بتوانیم الگوریتمی را ارائه دهیم که با توجه به محدودیت زمانی و تفاوت سخت افزارها راهکار بهینه تری را ارائه دهد. پردازش ابری ، رؤیایی دور و دراز در انجام محاسبات است که اکنون به عنوان دیاگرامی جدید در عرصه پردازش با مقیاسهای وسیع است که میتواند میزان زیادی از منابع پردازشی قابل سنجش و حتی نامتناجس و به صورت مجازی بررسی کرده و با کمترین پردازش و زمان دادهها را منتشر کرده و درخواست کاربر را جواب بدهد .یکی از اصلیترین کاربرد پردازش ابری از نظر اقتصادی میباشد که کاربر تنهای چیزی را که نیاز دارد استفاده میکند و تنها هزینه آنچه را که واقعاً استفاده کرده میپردازد و منابع در هر زمانی و هر موقعیتی در دسترس از طریق ابر (اینترنت) میباشد . در اینجا دیتاسنترها به میزان چشمگیر و فزاینده ای از انرژی استفاده میکند که به صورت متوسط به دیتاسنتر معمولی به اندازه ۲۵۰۰۰ سیستم خانگی انرژی مصرف میکند و مسله مهم دو زمان پاسخگویی به درخواست کاربران است که باید حداقل زمانی که برای کاربران اهمیت دارد سیستم پاسخگو باشد و حالتی از بلادرنگ را رعایت کند به طور مثال کاربری که از طریق سرورهای ابری مشغول بازی کردن است هنگامی که شلیک میکند باید برخورد گلوله آن در مدت زمانی خاص برای او به نمایش در آید تا بتواند حرکت بعدی خود را برنامه ریزی و اجرا کند . در کل در سیستمهای پردازش ابری چندین معقوله برای اجرای درخواست کاربر اهمیت فراوانی دارد که در آنها منابع ، قابلیت اطمینان ، کاهش مصرف انرژی و زمان پاسخ در کل سیستم بسیار مهم میباشد و با استفاده از الگوریتمهای زمانبندی های مختلف سعی بر این هست تا بهترین و بهینهترین الگوریتمی ایجاد شود تا بتوان بهرین بالانسی بین موارد مورد نظر ایجاد شود . فهرست مطالب چکیده فصل یک کلیات تحقیق ۱-۱ مقدمه ۱-۲ بیان مسئله ۱-۳ اهمیت ضرورت تحقیق ۱-۳-۱ انواع سیستمعاملها ۱-۳-۲ زمانبندی کار در سیستمعاملها ۱-۴ مبانی نظری و بیشینه تحقیق فصل دو مروری بر ادبیات تحقیق ۲-۱ مقدمه ۲-۲ تاریخچه ۲-۳ مدل معماری ۲-۴ گونههای رایانش ابری ۲-۵ چالشها ۲-۶ سرویسهای رایج بر روی ابرها ۲-۷ الگوریتمهای زمانبندی موجود در ابرها فصل سه کلیات تحقیق ۳-۱ خلاصه ۳-۲ مقدمه ۳-۳ زمانبندی کار ۳-۴ مدل معماری ۳-۵ مسئله فرمولبندی ۳-۶ تابع هدف MO_GA ۳-۷ زمانبندی الگوریتم فصل چهار یافتههای تحقیق ۴-۱ شرح اولیه ۴-۲ شرح بهینهسازی فصل پنج نتیجهگیری و مقایسه ۵-۱ شرح اولیه ۵-۲ روند اجرا و مقایسه ۵-۳ پیشنهادها و نگاهی به آینده منابع فهرست اشکال شکل ۲-۱ ساختار معماری شکل ۲-۲ نمایی از لایهها شکل ۳- ۱ عملکرد مدل معماری شکل ۳-۲ ماتریس دو ستونه ابرها و برنامهها شکل ۳-۳ متقاطع کردن شکل ۳-۴ کارهای ما را ایجاد میکند که شبیهسازی کارهای ورودی توسط کاربر شکل ۳-۵ نمایشدهنده خروجی الگوریتم شکل ۴-۱ نمایی از اجرای برنامه بهبودیافته شکل ۵-۱ الگوریتم پروژه بهینه یافته شکل ۵-۲ الگوریتم پروژه الگوریتم ژنتیک شکل ۵-۳ نمودار مقایسه زمانی دو الگوریتم شکل ۵-۴ نمودار مقایسه تکمیلنشدهها شکل ۵-۵ نمودار مقایسه هزینه شکل ۵-۶ شکل الگوریتم ژنتیک شکل ۵-۷ شکل الگوریتم بهینهشده شکل ۵-۸ نمودار مقایسه زمانی دو الگوریتم شکل ۵-۹ مقایسه تعداد تکمیلنشدههای دو الگوریتم شکل ۵-۱۰ مقایسه هزینهای دو الگوریتم