1. Oqim turlari Ko’poqimlilik modeli posix (Pthreads) oqimlari


Bir oqimli va ko’p oqimli jarayonlar


Download 212.72 Kb.
bet2/6
Sana17.06.2023
Hajmi212.72 Kb.
#1528596
1   2   3   4   5   6
Bir oqimli va ko’p oqimli jarayonlar
Afsuski, hozirgi kunga qadar dasturlarni ishlab chiqishda ko'plab dasturchilarning fikri mutlaqo ketma-ketlikda hisoblash bo'lib kelmoqda. Parallelashtirish, xususiy holda, ko’poqimlilikning keng imkoniyatlari hisobga olinmaydi. Ketma-ket (bir oqimli) jarayon – bu faqat bitta boshqaruv oqimi (control flow)ga ega bo'lgan, uning buyruq hisoblagichining o'zgarishi bilan tavsiflanadigan jarayon. Oqim (thread) – bu ba'zi bir jarayondan boshlanadigan va ota-jarayoni bilan bir xil manzil maydonida bajariladigan parallel jarayonning o'ziga xos turi hisoblanadi. Jarayonlarning bir oqimli va ko’p oqimli tashkil etish sxemasi 5-rasmda tasvirlangan.


5-rasm. Biroqimli va ko’poqimli jarayonlar.
Sxemadan ko’rinib turibdiki, bir oqimli jarayon odatdagidek kod, asosiy xotiradagi ma'lumotlar va u ishlaydigan fayllardan foydalanadi. Jarayon, shuningdek, ba'zi registr qiymatlari va uning protseduralari bajariladigan stekdan foydalanadi. Ko'p oqimli jarayon biroz murakkabroq tashkil etiladi. Unda bir nechta parallel oqimlar mavjud bo'lib, ularning har biri uchun OT o'z stekini yaratadi va o'z registrlari qiymatlarini saqlaydi. Oqimlar umumiy asosiy xotirada ishlaydi va ota-jarayoni bilan bir xil manzil maydonidan foydalanadi, shuningdek jarayon kodlari va fayllarni almashadi.
Ko’p oqimli ko’proq afzalliklarga ega:
· Tezlikning oshishi (oddiy jarayonlarni qo’llash bilan solishtirganda). Multithreading umumiy virtual xotira maydonida ishlaydigan yengil jarayonlar (lightweight processes)dan foydalanishga asoslangan. Ko’poqimli jarayonlar tufayli klassik UNIX tizimiga xos har bir shell buyrug'ida ham samarasiz vaziyatlar kelib chiqmaydi (hatto joriy katalog tarkibini aks ettirish buyrug'i ls ham alohida jarayon sifatida bajariladi va o'z manzil maydoniga ega bo’ladi). Yengil jarayonlardan farqli o'laroq, oddiy jarayonlar (o'zlarining manzil maydoniga ega) ko'pincha og'irvaznli (heavyweight) deb ataladi.
· Umumiy resurslarni qo’llashi. Bitta jarayon oqimlari umumiy xotira va fayllardan foydalanadi.
· Tejamkorlik. Yuqorida aytib o'tilgan sabablarga ko'ra ko’poqimlilik tufayli xotirani sezilarli darajada tejashga erishiladi. Bundan tashqari, vaqtni tejashga erishiladi, chunki kontekstni yengil jarayonga o'tkazish, bu uchun faqat stekni o'zgartirish va registr qiymatlarini tiklash kerak, oddiy jarayonga qaraganda ancha tezroq bajariladi.

Download 212.72 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling