Psevdo-parallel ko'p topshiriq turlari [ tahrirlash | kodni tahrirlash ] Oddiy kalit [ tahrirlash | kodni tahrirlash ]
Operatsion tizim bir vaqtning o'zida ikkita yoki undan ortiq dasturni xotiraga yuklaydigan, lekin faqat asosiy dasturga protsessor vaqtini ta'minlaydigan ko'p vazifali ish turi . Orqa fonda ishlaydigan dastur faol bo'lishi kerak. Bunday ko'p vazifalarni bajarish nafaqat operatsion tizimda, balki vazifalarni almashtiruvchi vositalar yordamida ham amalga oshirilishi mumkin. Ushbu turkumda DOSQ ostida ishlaydigan va birinchi bo'lib 1985 yilda chiqarilgan DESQview tanilgan .
Afzalliklari: ko'p vazifalarni hisobga olmasdan yozilgan allaqachon ishlangan dasturlardan foydalanishingiz mumkin.
Kamchiliklari: inson aralashuvisiz ishlaydigan interaktiv bo'lmagan tizimlarda mumkin emas. Dasturlarning o'zaro ta'siri juda cheklangan.
Hamkorlikdagi yoki kooperativ ko'p vazifalar
Keyingi vazifa joriy vazifa faqat CPU vazifasini boshqa vazifalarga bag'ishlashga tayyorligini aniq e'lon qilgandan keyingina bajariladigan ko'p vazifali ish turi. Maxsus holat sifatida, bunday deklaratsiya allaqachon ishg'ol qilingan muteks ob'ektini (Linux yadrosi) qo'lga kiritishga urinishda , shuningdek foydalanuvchi interfeysi quyi tizimidan keyingi xabarni kutish paytida ( 3.x gacha bo'lgan Windows versiyalari , shuningdek) Windows 9x da 16-bitli dastur sifatida ).
Kooperativ ko'p vazifalarni "ikkinchi darajali" ko'p vazifali deb atash mumkin, chunki u ko'plab taniqli dasturlar tomonidan amalga oshiriladigan oddiy vazifalarni almashtirishga qaraganda ancha rivojlangan usullardan foydalanadi (masalan, MS-DOS 5.0 dan DOS Shell ). Oddiy o'tish bilan faol dastur barcha CPU vaqtini oladi va fon dasturlari to'liq muzlaydi. Kooperativ ko'p vazifali dastur ilova haqiqatan ham CPU vaqtini o'zi xohlaganicha egallashi mumkin. Barcha dasturlar vaqti-vaqti bilan boshqaruvni keyingi vazifaga o'tkazib, protsessor vaqtini bo'lishadi.
Hamkorlikda ko'p vazifalarni bajarishning afzalliklari: barcha umumiy ma'lumotlar tuzilmalarini muhim bo'limlar va mutekslar kabi ob'ektlar bilan himoya qilishning hojati yo'q, bu dasturlashni soddalashtiradi, ayniqsa kodni bitta vazifali muhitdan ko'p vazifali muhitga o'tkazadi.
Kamchiliklari: ulardan birida xatolik yuz berganda barcha dasturlarning ishlashga qodir emasligi, bu "protsessor vaqtidan voz kechish" operatsiyasiga qo'ng'iroq bo'lmasligiga olib keladi. Operatsion tizimining yadrosida ko'p vazifali kiritish-chiqarish arxitekturasini amalga oshirish juda qiyin, bu protsessorga bitta vazifani bajarishga imkon beradi, boshqa vazifa esa kiritish-chiqarish operatsiyasini boshlaydi va uning bajarilishini kutadi.
Preitektiv yoki ustuvor, ko'p vazifali ( real vaqtda rejim ) [ tahrirlash | kodni tahrirlash ]
Asosiy maqola: Profilaktik ko'p vazifalar
Operatsion tizim ko'p vazifalarni bajarish turio'zi o'zi I / U operatsiyalari tugashi, kompyuter texnikasidagi voqealar, taymerlar va vaqt bo'laklari tugashi yoki ma'lum signallarning bir dasturdan ikkinchisiga etib borishi holatida boshqaruvni bitta bajariladigan dasturdan boshqasiga o'tkazadi. Bunday ko'p vazifalarni bajarishda protsessor birinchi dasturning istagisiz va so'zma-so'z o'z kodidagi har qanday ikkita ko'rsatma o'rtasida bitta dasturni boshqasini bajarishga o'tkazilishi mumkin. Protsessor vaqtini taqsimlash jarayonlarni rejalashtiruvchi tomonidan amalga oshiriladi. Bundan tashqari, har bir vazifaga foydalanuvchi yoki operatsion tizimning o'zi tomonidan ma'lum bir ustuvorlik berilishi mumkin, bu protsessor vaqtini vazifalar o'rtasida taqsimlanishini moslashuvchan boshqarishni ta'minlaydi (masalan, siz resurslarni talab qiladigan dasturning ustuvorligini pasaytira olasiz, shu bilan uning ish tezligini kamaytirish, ammo fon jarayonlarining ish faoliyatini yaxshilash). Bunday ko'p vazifalar foydalanuvchi harakatlariga tezroq javob beradi.
Foyda:
operatsion tizim yadrosida ko'p vazifali kiritish-chiqarishni to'liq amalga oshirish qobiliyati, bir dastur tomonidan kiritish-chiqarishni yakunlanishini kutayotganda, protsessor shu orada boshqa dasturni bajarishiga imkon beradi;
Umuman tizimning ishonchliligining kuchli o'sishi, xotirani himoya qilish bilan birgalikda - "hech qanday foydalanuvchi rejimi dasturi umuman OS ishini buzishi mumkin emas" ko'rinishidagi ideal, hech bo'lmaganda nazariy jihatdan erishiladigan bo'lib qoladi, ko'p vazifalarni bajarishdan tashqari, nazariy jihatdan ham bunga erishib bo'lmaydi.
ko'p protsessorli va ko'p yadroli tizimlardan to'liq foydalanish qobiliyati.
Kamchiliklari:
kod yozishda maxsus intizomga bo'lgan ehtiyoj, uning qayta joylashishi uchun maxsus talablar , barcha umumiy va global ma'lumotlarni muhim bo'limlar va mutekslar kabi ob'ektlar bilan himoya qilish.
Quyidagi operatsion tizimlarda amalga oshiriladi:
VMS
MenuetOS
Linux
barcha UNIXga o'xshash operatsion tizimlarning , shu jumladan Mac OS X , iOS versiyalarining foydalanuvchi rejimida (va ko'pincha yadro rejimida) ; Symbian OS
Windows 3.x operatsion tizimining yadro rejimida - faqat 386 yoki undan keyingi protsessorda ishlaganda faqat barcha Windows dasturlari "vazifalar" dir va har bir alohida DOS virtual mashinasi, Windows dasturlari o'rtasida imtiyozli ko'p vazifalar ishlatilmagan
Windows 95 / 98 / ME - bilan par ustida juda kam sababi edi to'liq xotira muhofaza qilish, holda MS-DOS , Windows 3.x OS ishonchliligini - X oldin va Mac OS versiyalari
Windows NT / 2000 / XP / Vista / 7 ham yadro, ham foydalanuvchi rejimida.
AmigaOS - tizimning dasturlari uchun amalda amalda yuqori standartlashtirish, shaffof API va SDKlar tufayli deyarli hech qanday ta'sir ko'rsatmaydigan, xotiraning to'liq himoyasiz 4.0 versiyasiga qadar barcha versiyalar. Aksincha, Amiga apparatiga yo'naltirilgan dasturlar unchalik ishonchli emas edi.
Do'stlaringiz bilan baham: |