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

Word 38 KB 34901 8
مشخص نشده مشخص نشده کامپیوتر - IT
قیمت قدیم:۱۲,۰۰۰ تومان
قیمت: ۷,۶۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  •  

    در نسل سوم کامپیوتر ها (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

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

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

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

    تذکر: به سیستم های توزیع شده گاهی اوقات سیستم های Loosely Coupled با ارتباط ضعیف نیز می گویند، چرا که هر پردازنده کلاک و حافظه مستقلی دارد. پردازنده ها از طریق خطوط مخابراتی مختلفی مثل گذرگاه های سریع یا خطوط تلفن با همدیگر ارتباط دارند.

    چند دلیل برای استفاده از سیستم های گسترده عبارتند از:

    1 – اشتراک منابع

    2 – تسریع محاسبات

    3 – قابلیت اعتماد: اگر در سیستم ها توزیع شده، کامپیوتری خراب شود، کامپیوترهای دیگر (در صورت طراحی سیستم برای این منظور) می توانند کار را ادامه دهند. ولی همانظور که قبلاً گفتیم اگر سیستم نتواند خطا را تشخیص داده و آن کار را به کامپیوتر دیگر بسپارد برعکس امنیت کاهش می یابد.

    4 – ارتباطات (مثلا پست الکترونیک و انتقال فایلها)

  • فهرست:

    ندارد
     

    منبع:

    ندارد

در بسیاری از سیستم ها هنگام اجرا دستورات ماشین، ابتدا این دستورات توسط یک ROM به یک سری دستورالعمل های ایتدایی تر به نام ریز دستور یا میکرو کد تبدیل شده و سپس توسط سخت افزار اجرا می گردند که به این ماشین ها CISC(Complex Instruction Set Computer) گفته می شود. در بعشی از کامپیوترها به نام RISC(Reduced Instruction Set Computer) این سطح ریز برنامه نویسی وجود نداشته و دستورات زبان ...

سيستمهاي سلولي قديمي و نسل اول از نوع آنالوگ بودند که با فرکانسهاي 800 مگاهرتز کار مي کردند. بعداً و با توسعه سيستمها فرکانسهاي 8/1 گيگاهرتز و در قسمتهايي از شمال آمريکا، فرکانسهاي 9/1 گيگاهرتز مورد استفاده قرار گرفتند. حدود ده سال بعد با اولين مو

پردازش در پردازش تصاوير رقمي معمولا“از شيوه هاي که به شکل الگوريتم بيان مي شود استفاده مي گرددبنابراين غير از تصويربرداري و نمايش تصوير مي توان اغلب عمليات پردازش تصوير را با نرم افزار اجرا کرد تنها علت استفاده از سخت افزار ويژه پردازش تصوير ن

بهينه سازي تقاضا يکي از مسائل مهم در سيستمهاي مديريت پايگاه داده مي باشد. در سالهاي اخير بهينه سازي تقاضا از جنبه هاي مختلفي مورد بررسي قرار گرفته است که به تفصيل در فصل 2 بيان شده است. مقوله اي که مورد بررسي انجام داديم بهينه سازي تقاضا تحت رتبه بن

تاریخچه سیستم های برنامه ریزی منابع سازمانی (ERP)[1] در اواخر دهه 70 میلادی مفهوم برنامه ریزی مواد موردنیاز (MRP)[2] معرفی و توسط IBM پیاده سازی و توسعه پیدا کرد . مهمترین مشکل این سیستم ها امکانات سخت‌افزاری و نرم افزاری گران قیمتی بود که بعضاً در مراکز دانشگاهی و یا نظامی مستقر بودند . سازمانها در استقرار MRP با مشکلات زیادی مواجه بودند . از طرف دیگر این سیستم ارتباط بین تولید ...

رشته : برق – قدرت مقدمه هدف اصلي عبارت کيفيت گاهي اوقات به عنوان مترادف کلمه قابليت اطمينان براي نشان دادن وجود منبع قدرت مناسب و مطمئن بکار مي رود . تعريف جامع تر به صورت « کيفيت سرويس » مطرح شده است که شامل سه نقطه نظر قابليت اطمين

- مهندسی بافت مهندسی بافت احتمال بوجودآمدن بافتهای invito و جانشینی ارگان های معیوب و ناقص invivo را پیشنهاد می کند. مشکلاتی در استراتژیهای پیوند های بافت و ارگان کنونی وجود دارند زیرا تعداد خاصی از بیماران در لیست انتظار می باشند. این لیست از 095/19 بیمار د سال 1989 به 800/74 نفر تا فوریه 2001 فقط در آمریکا افزایش یافته است. این بیماران شانس کافی برای دریافت پیوندها ممکن است ...

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

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

گنتو لينوکس برخلاف ساير توزيعهاي رايج لينوکس از سيستم مديريت پيشرفته بسته هاي نرم افزاري خاصي به نام Portage پورتاژ بهره ميبرد . پورتاژ از روي سيستم true ports مرسوم در BSD اقتباس شده ليکن نگارش آن بر مبناي زبان برنامه نويسي python بوده و دا

ثبت سفارش
تعداد
عنوان محصول