تحقیق مقاله سیستم های چند برنامگی Multiprogramming

تعداد صفحات: 11 فرمت فایل: مشخص نشده کد فایل: 20498
سال: مشخص نشده مقطع: مشخص نشده دسته بندی: مهندسی فناوری اطلاعات IT
قیمت قدیم:۸,۵۰۰ تومان
قیمت: ۶,۰۰۰ تومان
دانلود مقاله
کلمات کلیدی: N/A
  • خلاصه
  • فهرست و منابع
  • خلاصه تحقیق مقاله سیستم های چند برنامگی Multiprogramming

    در نسل سوم کامپیوتر ها (80-1965) از مدارات مجتمع (Integrated Circuit=IC) برای ساخت کامپیوترها استفاده شد. به طور کلی برنامه را می توان به دو دسته تقسیم کرد: یکی برنامه ها با تنگنای محاسباتی (CPU bound یا CPU Limited) مانند محاسبات علمی سنگین که بیشتر زمان کامپیوتر صرف محاسبات CPU می شود و دیگری برنامه ها با تنگنای (I/O Limited) I/O مانند برنامه های تجاری که بیشتر زمان کامپیوتر صرف ورود داده ها و خروج اطلاعات می شود.

    یک اشکال مهم سیستم های دسته ای این است که وقتی کار جاری برای تکمیل عملیات I/O مثلاًٌ بر روی نوار گردان منتظر می شود، در این حال CPU بیکار می ماند مجبور است صبر کند تا عملیات I/O به اتمام برسد. در برنامه های CPU Limited این اتلاف وقت اندک است ولی در برنامه های I/OLimited ممکن است حدود 80 تا 90 درصد وقت CPU به هدر برود.

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

    پس سیستم های چند برنامگی فقط یک پردازنده دارند و به کمک مکانیزم وقفه بین کارهای I/OLimited , CPU-limited سوئیچ می شود و به ظاهر اجرای این برنامه ها به صورت موازی و همزمان صورت می گیرد و بدین ترتیب بهره وری از سیستم افزایش می یابد.

    یک شیوه برای بالا بردن راندمان CPU آن است که تعداد کار CPU – Limited را با I/OLimited مخلوط کنیم. ولی در عمل امکان تقسیم بندی کارها قبل از اجراء شدنشان وجود ندارد. از طرف دیگر برنامه ای ممکن است در ابتدا CPU – Limited باشد ولی در حین اجراء تبدیل به I/OLimited گردد.

     

    سیستم های اشتراک زمانی Time –Sharing

    این سیستم ها از اویل سالهای 1970 در نسل سوم کامپیوترها معمول شدند. سیستم اشتراک زمانی در واقع تعمیم سیستم چند برنامگی است.

    در سیستم های چند برنامگی کاربر ارتباطی با کامپیوتر نداشت و خطایابی برنامه ها مشکل بود چرا که زمان برگشت نسبتاً طولانی اجازه آزمایش کردن متعدد را نمی داد. در سیستم اشتراک زمانی کاربر به کمک ترمینال (Terminal) که شامل کی بورد (برای ورودی) و مونیتور (برای خروجی) است با کامپیوتر به صورت محاوره ای (interactive) رابطه برقرار می سازد. کاربر مستقیماً دستوراتی را وارد کرده و پاسخ سریع آن را روی مونیتور دریافت می کند. در این سیستم ها چندین کاربر به کمک ترمینالهائی که به کامپیوتر وصل است همزمان می توانند از آن استفاده کنند. در سیستم اشتراک زمانی فقط یک پردازنده وجود دارد که توسط مکانیزمهای زمانبندی بین برنامه های مختلف کابرها با سرعت زیاد (مثلاً در حد میلی ثانیه) سوئیچ می شود و بنابراین هر کاربر تصور می کند کل کامپیوتر در اختیار اوست. در اینجا تاکید بر روی میزان عملکرد کاربر است یعنی هدف فراهم کردن وسایل مناسب برای تولید ساده نرم افزار و راحتی کاربر می باشد و نه بالا بردن میزان کاربرد منابع ماشین. کاربر می تواند در هر زمان دلخواه برنامه خود را آغاز یا متوقف سازد و یا برنامه را به صورت قدم به قدم اجراء و اشکال زدائی (debug) کند. سیستم های دسته ای برای اجرای برنامه های بزرگ که نیاز محاوره ای کمی دارند مناسب است ولی سیستم های اشتراک زمانی برای مواردی که زمان پاسخ کوتاه لازم است، استفاده می شوند. در زمانی که کاربری در حال تایپ برنامه اش یا فکر کردن روی خطاهای برنامه اش می باشد CPU به برنامه کاربر دیگری اختصاص یافته تا آن را اجراء کند.

    در سیستم های محاوره ای دستورات به دو صورت پیش زمینه (foreground) و پس زمینه (Backgruond) اجرا می شوند. در نوع پیش زمینه با وارد کردن، دستور تا هنگامی که دستور اجرا و تمام نشود اعلان سیستم ظاهر نمی گردد ولی در نوع پس زمینه، پس از ورود دستور، بلافاصله اعلان سیستم ظاهر می شود تا دستور بعدی وارد گردد ولی در همین حین دستور قبلی در پشت زمینه حال اجرا می‌باشد.

    در این سیستم اشتراک زمانی هنگامی که چند کاربر همگی یگ برناممه (مثل کامپایلر C) را احضار می کنند هر یک دارای کپی هایی از ثباتها، فضای داده ای، فشای پشته (stack) مخصوص به خود هستند ولی قسمت کد همگی یکسان و مشترک می باشد. در سیستم اشتراک زمانی وجود یک سیستم فایل ضروری است زیرا نمی توان در هر بار اجرای کار مدارک بزرگی را توسط ترمینالها وارد کامپیوتر کرد. لذا داده ها و برنامه های کاربر می بایست در دیسک ذخیره گردند. لذا بخش مدیریت فایلها یکی از بخش های اصلی سیستم عامل می باشد. هر چند که می توان وظایف مدیر فایل (File Manager) و مدیر دیسک (Disk Mannager) را در هم آمیخت ولی منطقاً این دو کاملاً متفاومت هستند. مدیر دیسک مسئول توزیع فضای خالی روی دیسک و نقل و انتقالات است، حال آنکه کارهای مدیر فایل بیشتر مربوط به مدیریت فهرستها، فایلها، امنیت و کارهای مربوط به حسابداری (Accouning) است. یکی دیگر از بخشهای مهم در سیستم اشتراک زمانی ترمینال است که وظیفه تعیین هویت کاربران و پذیرش آنها را بر عهده دارد.

    چند برنامگی و اشتراک زمانی مباحث اصلی سیستم عاملهای امروزی می باشد. از جمله سیستم عاملهای سنتی و مشهور که شامل این ویژگیها می باشد سیستم عامل UNIX است. موسسه IEEE یک استاندارد به نام POSIX برای UNIX بنا نهاد. POSIX حداقل واسط فراخوان سیستمی را تعریف می کند که سیستم های UNIX سازگار باید آن را پشتیبانی نمایند.

     

    سیستم های توزیع شده Loosly coupled

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

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

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

  • فهرست و منابع تحقیق مقاله سیستم های چند برنامگی Multiprogramming

    فهرست:

    ندارد
     

    منبع:

    ندارد

تحقیق در مورد تحقیق مقاله سیستم های چند برنامگی Multiprogramming, مقاله در مورد تحقیق مقاله سیستم های چند برنامگی Multiprogramming, تحقیق دانشجویی در مورد تحقیق مقاله سیستم های چند برنامگی Multiprogramming, مقاله دانشجویی در مورد تحقیق مقاله سیستم های چند برنامگی Multiprogramming, تحقیق درباره تحقیق مقاله سیستم های چند برنامگی Multiprogramming, مقاله درباره تحقیق مقاله سیستم های چند برنامگی Multiprogramming, تحقیقات دانش آموزی در مورد تحقیق مقاله سیستم های چند برنامگی Multiprogramming, مقالات دانش آموزی در مورد تحقیق مقاله سیستم های چند برنامگی Multiprogramming ، موضوع انشا در مورد تحقیق مقاله سیستم های چند برنامگی Multiprogramming
ثبت سفارش
عنوان محصول
قیمت