چند وظیفه ای چیست ؟ — به زبان ساده
چند وظیفهای همانطور که از نام آن مشخص است، به اجرای وظایف چندگانه (پردازشها، برنامهها، نخها) در هر زمان اشاره دارد. در سیستمعاملهای مدرن، امکان پخش موسیقی، ویرایش اسناد در ورد، اجرای مرورگر وبی مانند گوگل کروم و اقدامات دیگر، همه و همه به صورت همزمان وجود دارد و این کار با بهرهگیری از قابلیت چند وظیفهای انجام میشود.
چندوظیفهای یک افزونه منطقی از چندبرنامهای است. تفاوت اصلی چند وظیفهای با چند برنامهای آن است که چندبرنامهای فقط روی مفهوم جابهجایی زمینه کار میکند، در حالیکه چندوظیفهای برمبنای اشتراک زمانی در کنار جابهجایی زمینه کار میکند.
ساز و کار یک سیستم چند وظیفهای
در یک سیستم با اشتراکگذاری زمانی، به هر پردازشی به اندازه مشخصی، زمان تحصیص داده میشود. این زمان برای انجام پردازش اختصاصی داده میشود. فرض میشود که ۴ پردازش P3 ،P2 ،P1 و P4 آماده اجرا هستند. بنابراین به هر یک از این پردازشها میزان مشخصی زمان تخصیص داده میشود تا اجرا شوند. برای مثال، به همه پردازشها به میزان ۵ نانوثانیه زمان تخصیص داده میشود. هنگامی که یک پردازش شروع به اجرا کرد (مثلا P2)، به اندازه برههای از زمان که به آن اختصاص داده شده (در اینجا ۵ نانوثانیه)، اجرا میشود. پس از ۵ نانوثانیه، CPU اجرای پردازش بعدی (در اینجا P3) را آغاز میکند و آن را به میزان زمانی که به این پردازش اختصاص داده دشه (در اینجا ۵ نانو ثانیه) ادامه میدهد.
در سیستم چند وظیفهای نیز چنانکه مشهود است جابهجایی زمینه اتفاق میافتد. اما این جابهجایی زمینه آنقدر سریع انجام میشود که کاربر را قادر به تعامل با هر برنامهای در ضمن اجرای آن میکند. بدین شکل، کاربر این احساس و برداشت را دارد که چندین برنامه به طور همزمان در حال اجرا هستند. اما در حقیقت، تنها یک پردازش/وظیفه در یک بازه زمانی مشخص در حال اجرا است. در چندوظیفهای، اشتراکگذاری زمانی به خوبی تجلی یافته است، زیرا هر پردازش در حال اجرایی میزان مناسبی از زمان واحد پردازش مرکزی (CPU) را در اختیار دارد.
به بیان کلیتر، چندوظیفهای به داشتن چندین برنامه، پردازش، وظیفه و نخ (ریسمان) که در زمان یکسانی اجرا میشوند اشاره دارد. این اصطلاح برای سیستمعاملهای مدرنی مورد استفاده قرار میگیرد که در آنها چندین برنامه از یک منبع پردازشی مشترک استفاده میکنند (پردازنده و حافظه).
چنانکه از تصویر بالا مشهود است، پردازنده در هر زمان تنها یک وظیفه را انجام میدهد؛ در حالی که سایر وظایف منتظر نوبت خود میمانند. این تصویر که فعالیتها به صورت موازی انجام میشوند هنگامی هنگامی ایجد میشود که پردازنده به وظیفه دیگری تحصیص پیدا میکند. یعنی مثلا اگر سه وظیفه B ،A و C وجود داشته باشد، به نظر میرسد هر سه وظیفه به صورت همزمان در حال انجام هستند زیرا زمانی از پردازنده که به هر وظیفه اختصاص یافته به گونهای است که به نظر میرسد وظایف به طور همزمان اجرا میشوند. برای آنکه چند وظیفهای انجام شود، باید ابتدا چندبرنامهای اتفاق بیفتد. در واقع، باید چند برنامه به طور همزمان برای اجرا حاضر باشند و دوم آنکه مفهوم اشتراک زمانی وجود داشته باشد.
اگر این مطلب برای شما مفید بوده است، آموزشها و مطالب زیر نیز به شما پیشنهاد میشوند:
- مجموعه آموزشهای برنامه نویسی پایتون
- آموزش پایتون (Python) | برنامه نویسی پایتون مقدماتی
- مجموعه آموزشهای برنامهنویسی
- آموزش پایتون (Python) — مجموعه مقالات جامع وبلاگ فرادرس
- زبان برنامه نویسی پایتون (Python) — از صفر تا صد
- آموزش اینترنت اشیا با پایتون (Python IoT) | گام به گام و به زبان ساده
- ۲۰ سایت آموزش آنلاین پایتون | راهنمای شروع یادگیری
منبع [+]
مجموعه: مهندسی کامپیوتر برچسب ها: Multi Task, Multitask, Multitasking in Operating System, multitasking in OS, Operating System, چند برنامه ای, چند ریسمانی, چند نخی, چند وظیفه ای, سیستم عامل, مولتی تسک