Ko'p vazifali muhitni amalga oshirishdagi qiyinchiliklar Ko'p vazifali muhitni amalga oshirishdagi asosiy qiyinchilik uning ishonchliligi bo'lib, xotirani himoya qilish, nosozliklar va uzilishlarni bartaraf etish, muzlatish va blokirovkalardan himoya qilishda ifodalanadi. Ishonchli bo'lishdan tashqari, ko'p vazifali muhit samarali bo'lishi kerak. Uni saqlash uchun resurslarning narxi: jarayonlarga aralashmaslik, ularning ishini sekinlashtirish, xotirani keskin cheklash kerak emas.
Ko'p vazifali operatsion tizimlar tarixi Dastlab ko'p vazifali operatsion tizimlarni joriy etish jiddiy texnik qiyinchilik bo'lgan, shuning uchun ham ko'p vazifali tizimlarni joriy etish kechiktirildi va foydalanuvchilar amalga oshirilgandan keyin uzoq vaqt davomida bir vazifali tizimlarni afzal ko'rdilar.
Keyinchalik, bir nechta muvaffaqiyatli echimlar paydo bo'lgandan so'ng, ko'p vazifali muhitlar yaxshilana boshladi va hozir hamma joyda qo'llaniladi.
Birinchi marta operatsion tizimning ko'p vazifaliligi Multics operatsion tizimini ishlab chiqish jarayonida amalga oshirildi (1964). Birinchi ko'p vazifali tizimlardan biri IBM kompyuterlari va ularning sovet hamkasblari ES kompyuterlari uchun ishlatilgan OS / 360 (1966) edi. Tizimning rivojlanishi juda kechikdi va birinchi marta IBM OS / 360 to'liq ishga tushirilgunga qadar mijozlarni qondirish uchun bir vazifali DOSni ilgari surdi. Tizim past ishonchliligi va ishlash qiyinligi tufayli tanqid qilindi.
1969 yilda Multics bazasida UNIX tizimi ko'p vazifalarni bajarish masalasiga juda aniq algoritmik yechim bilan ishlab chiqilgan. Hozirgi vaqtda UNIX asosida o'nlab operatsion tizimlar yaratilgan.
PDP-11 kompyuterlari va ularning sovet CM-4 rusumidagi hamkasblari RSX-11 ko'p vazifali tizimidan (Sovet hamkasbi - SM EVM RTOS) va cheklangan ko'p vazifali imkoniyatlar va ko'p foydalanuvchi vaqtini ta'minlaydigan TSX-PLUS vaqtni taqsimlash tizimidan foydalanganlar. almashish rejimi, har bir foydalanuvchi uchun bitta vazifali tizimni taqlid qilish RT-11 (Sovet analogi - RAFOS). Oxirgi yechim to'liq ko'p vazifali tizimning past samaradorligi va ishonchliligi tufayli juda mashhur edi.
RSX-11 ning ishlab chiqilishi sifatida dastlab VAX kompyuterlari (sovet hamkasbi SM-1700) uchun ishlab chiqilgan VMS operatsion tizimi aniq yechim bo'ldi.
Dunyodagi birinchi multimedia shaxsiy kompyuteri Amiga 1000 (1984) dastlab AmigaOS-da real vaqt rejimida ko'p vazifalarni bajarish uchun to'liq apparat ta'minoti bilan ishlab chiqilgan. Bunday holda, apparat va dasturiy ta'minotni ishlab chiqish parallel ravishda amalga oshirildi, bu ko'p vazifali rejalashtiruvchini kvantlash nuqtai nazaridan (har bir kontekstli o'tish uchun 1/50 soniya) AmigaOS uzoq vaqt davomida shaxsiy kompyuterlarda tengsiz bo'lib qolishiga olib keldi. .
Multitasking Windows operatsion tizimlarida Microsoft tomonidan ham taqdim etilgan. Shu bilan birga, Microsoft ikkita ishlab chiqish liniyasini tanladi - o'zi sotib olgan Windows 0.9 asosida, bu tizim uzoq vaqt davomida takomillashtirilgandan so'ng, dastlab Mac OS ga o'xshash kooperativ multitaskingga ega bo'lib, natijada Windows 3.x liniyasi paydo bo'ldi va Windows NT operatsion tizimlarini yaratishga olib kelgan VMSda mujassamlangan g'oyalarga asoslangan. VMS tajribasidan foydalanish tizimlarning sezilarli darajada yuqori ishlashi va ishonchliligini ta'minladi. Ko'p vazifali kontekstni almashtirish vaqti (kvantlash) nuqtai nazaridan, faqat ushbu operatsion tizimlarni AmigaOS va UNIX (shuningdek, uning avlodlari, masalan, Linux yadrosi) bilan solishtirish mumkin.
Qizig'i shundaki, multitasking nafaqat operatsion muhitda, balki til muhitida ham amalga oshirilishi mumkin. Misol uchun, Modula-2 va Ada dasturlash tillari uchun texnik xususiyatlar har qanday operatsion tizimdan tashqarida ko'p vazifalarni qo'llab-quvvatlashni talab qiladi. Natijada, JPI/Clarion-ning 1990-yillarning birinchi yarmida TopSpeed Modula-2 dasturlash tilini ommabop tatbiq etishi bitta dasturning iplari uchun turli xil ko'p vazifalarni (kooperativ va preemptiv - pastga qarang) tashkil qilish imkonini berdi. MS -DOS kabi printsipial ravishda bitta vazifali operatsion tizim. Bu dastur moduliga taymer uzilish ishlovchisini o'z ichiga olgan ixcham vazifalarni rejalashtiruvchini kiritish orqali amalga oshirildi . Ushbu xususiyatga ega bo'lgan dasturlash tillari ba'zan real vaqt tillari deb ataladi.