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 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.
Do'stlaringiz bilan baham: |