
Ko’pchiligimizda kompyuter sotib olishda yoki texnik xarakteristikalarni ko’rishda Core (yadro) va Threads (oqim) kabi atamalar qulog’imizga chalinadi, lekin hamma ham buni to’liq tushunmaydi.
Masalan:
4 core 8 threads8 core 12 threads16 core 24 threads- kabilar.
Bu maqolada yuqoridagi atamalarning asl mohiyatini qo’ldan kelgancha sodda tushuntirib berishga harakat qilaman.
Oshxona
Tasavvur qiling, siz bosh oshpazsiz va sizning 2 ta shogirdingiz bor. Sizlar bugun mijozlar uchun 30 xil turdagi taom pishirishingiz kerak. Taomlardan 3 tasi tezroq, qolgan 27 tasi esa kechroq tayyor bo’lsa ham bo’laveradi. Siz va shogirdlaringiz barcha taomlarni parallel ravishda pishirishni boshlaysiz. Har bir qozonga ma’lum bir vaqt oralig’ida qarab turasiz, lekin tezroq pishishi kerak bo’lgan 3 ta taomga ko’proq diqqat qaratasiz. Ular pishib bo’lgach, bo’shagan vaqt va energiyani qolgan 27 turdagi taomga ajratasiz. Natijada ishchi kuchi (oshpazlar) bo’shashi bilan qolgan ovqatlar ham tezroq bitadi.
Protsessor (CPU)
Protsessor ham xuddi shu oshxonaga o’xshaydi. Undagi haqiqiy ishchilar bu — Core (Yadro). Eski turdagi protsessorlarda faqat bitta yadro bo’lgan. U bir vaqtning o’zida faqat bitta buyruqni bajara olgan, qolgan ishlar esa navbatda turgan.
Hozirgi zamonaviy protsessorlarda esa Hyper-Threading (yoki AMD’da SMT) texnologiyasi mavjud. Bu texnologiya har bir jismoniy yadroga 2 tadan mantiqiy oqimni (Thread) virtual tarzda taqdim etadi. Hyper-Threading yadro ichidagi bo’sh hisoblash resurslaridan samaraliroq foydalanish imkonini beradi.
Hozirgi Intel protsessorlari gibrid arxitekturaga ega bo’lib, unda har xil turdagi yadrolar birgalikda ishlaydi. Shuning uchun barcha yadrolar bir xil miqdordagi threadlarga ega emas.
Masalan: 8 core 12 threads bo’lsa
- 4 ta unumdor yadro (Performance-cores / P-cores): Og’ir vazifalar uchun mo’ljallangan. Ularning har biri Hyper-Threading texnologiyasini qo’llab-quvvatlaydi, ya’ni har bir yadroda 2 tadan oqim ishlaydi.
- 4 ta samarali yadro (Efficient-cores / E-cores): Energiyani tejash va fon jarayonlari uchun mo’ljallangan. Ular Hyper-Threading texnologiyasiga ega emas, shuning uchun har bir yadro faqat 1 tadan oqim beradi
Gibrid texnologiya hozirda mobil telefon protsessorlarida ham qo’llanilayotgan.
Process va Thread farqi
Kompyuterda ishga tushgan vaqtda unda bir nechta dasturlar orqa fonda ishga tushushi yoki o’zingiz qaysidir dasturni ishga tushurishingiz mumkin. Ishga tushurilgan dastur bu process deb ataladi.
Process (Jarayon) — bu kompyuterda ishga tushgan alohida, mustaqil dastur (masalan: Chrome brauzeri, Telegram yoki Photoshop). Har bir jarayon o’zining shaxsiy xotira maydoniga ega bo’ladi.
Dasturlar ishga tushganda yoki ishga tushurganimizda ular bir vaqtda bir nechta funksionallikni bajarishi mumkin. Masalan, Telegram dasturi ichida bir vaqtning o’zida ham kimdir bilan yozishish, ham fonda fayl yuklash — bular alohida dasturiy oqimlardir.
Thread atamasi dasturlashda ham, apparat (hardware) ta’minotida ham ishlatilgani uchun biroz chalkash tuyulishi mumkin.
Thread (Oqim yoki patok) — bu dasturning ichidagi parallel ravishda bajarilishi mumkin bo’lgan eng kichik vazifa bo’lagi. Masalan, Telegram dasturi ichida bir vaqtning o’zida ham kimdir bilan yozishish, ham fonda fayl yuklash — bular alohida dasturiy oqimlardir.
Kompyuterda biz bir nechta dasturlarni tengidan ishlatamiz. Operatsion tizim (OS) har bir dasturning oqimiga o’zining prioriteti (ustuvorligi) bo’yicha protsessor vaqtidan millisekund yoki mikrosekundlar ajratib beradi. Tizim uchun muhim bo’lgan oqimlar birinchi navbatda va ko’proq vaqt bilan ta’minlanadi. Bu almashinuv shu qadar tez sodir bo’ladiki, inson ko’zi va miyasi buni sezmaydi. Natijada bizga hamma dasturlar bir vaqtda ishlayotgandek tuyuladi. Bu xuddi chog’lanma lampaning sekundiga 50 marta yonib-o’chsa ham, bizga doimiy yonib turgandek ko’rinishiga o’xshaydi.
L1, L2 va L3 Kesh-xotiralari (Cache Memory)
Universitetda o’qiyotgan paytimizda ustozimiz bir savol bergan edi: kompyuterdagi eng tez xotira qaysi? Men ikkilanmay “Operativ xotira (RAM)” deb javob berganman. Lekin bu xato edi.
L1 kesh xotirasining tezligi operativ xotira (RAM) dan 100 barobardan 200 barobargacha tezroq ishlaydi.
Kompyuterdagi eng tez xotira bu — protsessor kesh-xotirasidir. Kesh-xotira oʻlchamlari protsessorning kuchi, u moʻljallangan segment (noutbuk, shaxsiy kompyuter yoki server) va arxitekturasiga qarab farq qiladi.
-
L1 Cache (1-darajali kesh): Eng tezkor, lekin hajmi eng kichik xotira. U bevosita yadro ichida joylashgan bo’lib, protsessor eng ko’p murojaat qilinadigan ma’lumotlar va instruksiyalarni saqlaydi.
-
L2 Cache (2-darajali kesh): L1 ga qaraganda sal sekinroq, lekin hajmi biroz kattaroq. U ham har bir yadro uchun alohida yoki yadro juftliklari o’rtasida taqsimlanadi.
-
L3 Cache (3-darajali kesh): Ushbu ro’yxatdagi eng “sekin” (lekin baribir RAMdan o’nlab barobar tez), hajmi eng katta kesh. Eng muhimi, bu xotira protsessordagi barcha yadrolar uchun umumiy hisoblanadi. Yadrolar o’zaro ma’lumot almashishda aynan shu L3 keshdan foydalanadi. Katta hajmdagi L3 kesh ayrim vazifalarda (masalan, o’yinlar, render va murakkab hisob-kitoblarda) ishlash unumdorligini sezilarli darajada oshirishi mumkin.
Turli davr va darajadagi protsessorlarning kesh xotiralarini solishtiramiz:
| Protsessor turi | L1 kesh | L2 kesh | L3 kesh |
|---|---|---|---|
| Intel Core 2 Duo (Eski avlod) | 64 KB | 2.0 MB | Mavjud emas |
| Intel Core i3-8100 (Ofis / Boshlang’ich) | 256 KB | 1.0 MB | 6.0 MB |
| Intel Core i5-14600K (Zamonaviy / O’rta) | 1.1 MB | 20 MB | 24 MB |
| Intel Core i7-14700K (Yuqori daraja) | 1.6 MB | 28 MB | 33 MB |
| Intel Core i9-14900K (Flagman / Maksimal) | 2.0 MB | 32 MB | 36 MB |
| AMD Ryzen 5 7600X (Ommabop / Zamonaviy) | 384 KB | 6.0 MB | 32 MB |
| AMD Ryzen 7 7800X3D (O’yin uchun maxsus) | 512 KB | 8.0 MB | 96 MB |
| AMD Ryzen 9 7950X (Professional render) | 1.0 MB | 16 MB | 64 MB |
Sockets (Soketlar)
Ona platada (motherboard) jismonan nechta protsessor o’rnatish mumkinligini ko’rsatadi. Oddiy shaxsiy kompyuter va noutbuklarda har doim 1 ta bo’ladi. Katta serverlarda esa 2, 4 yoki undan ko’p protsessorli soketlar bo’lishi mumkin.
Virtualization (Virtualizatsiya)
Bu funksiya kompyuterda virtual mashinalarni (masalan, VirtualBox, VMware yoki Hyper-V orqali boshqa operatsion tizimlarni) apparat darajasida tezroq va samaraliroq ishlatish imkonini beradi. Dasturchilar (ayniqsa Android Emulator yoki Docker bilan ishlovchilar) uchun bu texnologiyaning yoqilgan bo’lishi juda muhim.
Operatsion tizimlarning jarayonlarni boshqarishi
Kompyuter apparat ta’minoti bir xil bo’lsa ham, undagi jarayonlarning ishlashi operatsion tizimga (OS) to’g’ridan-to’g’ri bog’liq. Keling, Windows va Linux misolida jarayonlar boshqarilishini ko’rib chiqamiz:
Nega Windows ko’proq resurs sarflaydi?
Windows operatsion tizimi ishga tushganda Task Manager (Ctrl + Shift + Esc) oynasini ochib qarasangiz, hali biror bir dasturni ochmagan bo’lsangiz ham, fonda yuzlab tizim jarayonlari (services, telemetry, Windows Defender va h.k.) ishlab turganini ko’rasiz. Ularni shunchaki yopib bo’lmaydi, chunki bu tizimning barqarorligiga ta’sir qiladi. Foydalanuvchi o’z dasturlarini ochgan sari fondagi yuklama ortib boradi va bu kompyuter tezligiga sezilarli ta’sir qiladi.
Windows pullik operatsion tizim bo’lgani sababli ayrim foydalanuvchilar internetdagi norasmiy (modified) distributivlardan foydalanishadi. Bunday distributivlar tarkibiga noma’lum dasturlar qo’shilgan bo’lishi mumkin. Natijada tizimning ishlash tezligi pasayishi yoki xavfsizlik bilan bog’liq muammolar yuzaga kelishi ehtimoldan xoli emas. Shu sababli operatsion tizimlarni doimo rasmiy manbalardan o’rnatish tavsiya etiladi.
Linux’ning afzalligi nimada?
Linux operatsion tizimlarida (xususan, Ubuntu, Mint, Arch kabi distributivlarda) arxitektura juda yengil qurilgan. Tizim ishga tushganda fonda faqat eng zaruriy minimal jarayonlargina ishlaydi. Foydalanuvchi xohlasa o’ziga kerak bo’lmagan har qanday fon xizmatini butkul o’chirib qo’yishi mumkin (customization). Linux odatda kamroq fon xizmatlari bilan ishlagani sababli resurslardan tejamkor foydalanadi. Bu ayniqsa serverlar va dasturlash muhitlarida seziladi.