Jarayonlar haqida
Jarayon boshlanganda, operatsion tizim unga xotirani tayinlaydi.
Xotira turli jarayonlar o'rtasida taqsimlanmaydi.
Iplar va multithreading
Ushbu jarayonda iplar mavjud. Shunday qilib, jarayon bir nechta ipga ega bo'lishi mumkin. Mavzu - bu jarayon davomida bajarilishning mustaqil ketma-ketligi.
Yagona tishli dastur misoli
Ro'yxatdagi ba'zi URL-lar uchun javob kodlarini tekshiradigan va ularni konsolga bosib chiqaradigan dastur yozishni xohlaymiz. URL ro'yxati URLni tasdiqlash jarayonining o'zi bilan bog'liq bo'lgan xotirada.
Oddiy algoritm:
Ro'yxat orqali o'ting.
Birinchi urlni oling.
Javobni kuting.
Javob kodini chop eting.
Ro'yxatdagi keyingi URL manziliga o'ting.
URL-lar qolmaguncha ro'yxatni bosib o'tishda davom eting.
Ma'lum bo'lishicha, protsessor URL manzillarini ketma-ket bosib o'tadi va oldingisidan javob olguncha keyingi URL ga o'tmaydi.
Ammo URL manziliga kirish va undan javob olish vaqt talab etadi. Shunday qilib, URL manzilidan javob kutayotgan paytda protsessor ishlamayapti va bu protsessor vaqtini behuda sarflashdir. Va, albatta, siz barcha URL-lar ketma-ket qayta ishlanmaguncha konsolga qarab ham kutishingiz kerak. Shunday qilib, protsessor javobni kutayotganda, biz undan boshqa URL manziliga o'tishni va shu bilan protsessorning bo'sh vaqtini minimallashtirishni so'rashimiz mumkin. Bunday vaziyatda oqimlardan foydalanish qulay. Ulardan foydalanishni boshlaganingizdan so'ng, dastur ko'p yo'nalishli bo'ladi.
Ko'p tarmoqli dasturga misol
Keling, beshta turli oqimlarni yarataylik. Har bir mavzu bitta URL uchun javobgar bo'ladi.
Protsessor bitta ish zarrachasida ishlaydi va shu ip bilan bog'langan URL manziliga e'tibor beradi.
Protsessor ishlamayapti, chunki javob olish uchun biroz vaqt ketadi.
Protsessor boshqa mavzu ustida ishlay boshlaydi va shu ip bilan bog'langan URLni oladi. Bu protsessor birinchi urldan javob olguncha sodir bo'ladi.
Shunday qilib, dastur ketma-ket bajarilmaydi va ko'p qirrali bo'ladi.
Bir nuqtada javob birinchi URL manzilidan keladi va protsessor birinchi oqimga o'tadi va natijani nashr etadi.
Protsessor yana boshqa ipga o'tadi.
Ko'p qirrali versiyada protsessorning ishlamay qolishi juda minimallashtirilgan.
Bu erda tasvirlangan qadamlarning ketma-ketligi protsessor aslida bajaradigan ishiga mos kelmasligi mumkin, chunki qaysi ip ishlayotganini aniqlashning iloji yo'q.
Yagona va ko'p protsessorli oqimlar
Bitta protsessorli mashina hech qachon haqiqiy ko'p ishlov berishni bajara olmaydi.
Dastur ko'p qirrali bo'lsa ham, bitta protsessor mashinasi hech qanday foyda keltirishi yoki keltirmasligi mumkin.
Do'stlaringiz bilan baham: |