Parallel dasturlash va ko'p ishlov berish o'rtasidagi farq.
Tizim bir vaqtning
o'zida bir nechta dasturlarni ishga tushirish va bir nechta fizik protsessorlarga ega
bo'lish orqali ko'p ishlov berish orqali ko'p dasturlashtirilgan bo'lishi mumkin. Ko'p
ishlov berish va ko'p dasturlashning farqi shundaki, ko'p ishlov berish asosan bir
nechta protsessorlarda bir vaqtning o'zida bir nechta jarayonlarni bajaradi, ko'p
dasturlash esa bir nechta dasturlarni asosiy xotirada saqlash va ularni faqat bitta
protsessor yordamida bir vaqtda bajarishdir.
Parallel ishlov berish parallel ishlov berish orqali amalga oshiriladi, ko'p
dasturlash esa bir jarayondan ikkinchisiga o'tish orqali sodir bo'ladi (hodisa
kontekstni almashtirish).
Parallel vazifalar -
ismning o'zi ta’kidlaganidek, ko’p vazifalar bir vaqtning
o’zida bir nechta vazifalarni (masalan, jarayonlar, dasturlar, mavzular va
boshqalarni) bajarilishini anglatadi. Zamonaviy operatsion tizimlarda biz MP3
musiqasini tinglashimiz, Microsoft Word-da hujjatlarni tahrirlashimiz, Google
Chromeda bir vaqtning o'zida ishlashimiz mumkin, bu ko'p vazifalarni bajarish
orqali amalga oshiriladi.
Multitasking
-
bu
ko'p
dasturlashning
mantiqiy
kengaytmasi. Multitaskingning ko'p dasturlashdan farq qiladigan asosiy usuli
shundaki, ko'p dasturlash faqat kontekstni almashtirish kontseptsiyasi asosida
ishlaydi, ko'p vazifa esa kontekstni almashtirish tushunchasi bilan birga vaqtni
taqsimlashga asoslangan.
Parallel vazifali tizimning ishlashi.
Vaqtni taqsimlash tizimida har bir
jarayonga ma'lum bir vaqt kvantlari ajratiladi, ular uchun jarayon bajarilishi
kerak. Amalga oshirishga tayyor bo'lgan P1, P2, P3, P4 4 ta jarayon mavjudligini
ayting. Shunday qilib, ularning har biriga bir necha vaqt kvantlari beriladi, ular
150
uchun ular bajariladi, masalan, 5 nanosekundadagi (5 ns) vaqt kvantasi. Bitta
jarayon bajarilishini boshlaganda (masalan, P2), u o'sha vaqt kvantasida (5 ns)
bajariladi. 5 nsdan keyin protsessor belgilangan miqdordagi vaqt davomida boshqa
jarayonni (masalan, P3) bajarilishini boshlaydi.
Shunday qilib, protsessor protsesslarni vaqt oralig'ida bo'lishish va shunga
mos ravishda bajarish jarayonini amalga oshiradi. Bitta jarayonning kvanti tugashi
bilanoq, boshqa jarayon uning bajarilishini boshlaydi.
Bu erda, asosan, kontekstni almashtirish amalga oshirilmoqda, lekin u shu
qadar tez ro'y beradiki, foydalanuvchi har bir dastur bilan ishlayotganda alohida
ishlashga qodir. Shunday qilib, foydalanuvchiga bir nechta jarayonlar / vazifalar bir
vaqtning o'zida bajarilishi haqidagi illuziya beriladi. Ammo aslida ma'lum bir vaqt
ichida faqat bitta jarayon / vazifa bajarilmoqda. Ko'p vazifalarda vaqtni taqsimlash
eng yaxshi tarzda namoyon bo'ladi, chunki har bir ishlaydigan jarayon CPU
vaqtining faqat adolatli kvantini oladi. Umumiy ma'noda, ko'p vazifalar bir vaqtning
o'zida bir nechta
dastur, jarayon, vazifa, ish zarrachalarining ishlashini
anglatadi. Ushbu atama zamonaviy operatsion tizimlarda bir nechta vazifalar
umumiy ishlov berish resursini (masalan, protsessor va xotira) birgalikda
ishlatganda qo'llaniladi.
Yuqoridagi rasmda tasvirlanganidek, istalgan vaqtda protsessor bitta vazifani
bajaradi, boshqa vazifalar esa o'z navbatini kutmoqda. Parallellik xayoliyligi
protsessor boshqa vazifaga tayinlanganda erishiladi. ya'ni A, B va C barcha uchta
vazifalar vaqtni taqsimlash sababli bir vaqtning o'zida paydo bo'lmoqda.
Shunday qilib, ko'p vazifalarni bajarish uchun birinchi navbatda ko'p
dasturlash kerak, ya'ni bajarishga tayyor bo'lgan bir nechta dasturlar mavjud. Va
ikkinchidan vaqtni taqsimlash tushunchasi.
151
Do'stlaringiz bilan baham: |