Xotira
Tez xotira kichik va qimmat, katta xotira sekin — shuning uchun kompyuter xotirani pog'onama-pog'ona quradi.
Ideal xotira cheksiz katta, cheksiz tez va arzon bo'lishi kerak edi. Afsuski, fizika bunga yo'l qo'ymaydi: tez xotira qimmat va kichik, katta xotira esa sekin. Shuning uchun kompyuterlarda bir nechta xotira turi pog'onama-pog'ona ishlatiladi — bu xotira ierarxiyasi deyiladi. Maqsad — ko'p ishlatiladigan ma'lumotni tez xotirada, kam ishlatiladiganini esa sekin, lekin katta xotirada saqlash.
Tezlik farqini his qilish uchun bitta o'xshatish: agar registrga murojaat 1 soniya davom etsa, L1 kesh ~3 soniya, RAM ~4 daqiqa, SSD ~3 kun, HDD esa ~1 yil davom etgan bo'lardi. Shuning uchun dasturlar tezligi ko'pincha protsessor chastotasiga emas, xotiradan qanchalik samarali foydalanishiga bog'liq.
Ierarxiya ishlashining sababi — lokallik prinsipi. Vaqt bo'yicha lokallik: hozir ishlatilgan ma'lumot yaqin orada yana ishlatiladi (masalan, sikl hisoblagichi). Fazoviy lokallik: bir manzil ishlatilsa, qo'shni manzillar ham ishlatilishi ehtimoli yuqori (massiv elementlari). Shu sababli kesh ma'lumotni 64 baytlik bloklar — kesh satrlari bilan yuklaydi.
8.1. RAM — operativ xotira
RAM (Random Access Memory) — "ixtiyoriy murojaatli xotira". Nomi shundan: istalgan manzilga bir xil vaqtda murojaat qilish mumkin, ketma-ket o'qish shart emas. RAM'da ishlab turgan dasturlar, ularning o'zgaruvchilari, ochiq brauzer sahifalari saqlanadi. Uning asosiy kamchiligi — energiyaga bog'liqlik: tok o'chishi bilan barcha ma'lumot yo'qoladi.
RAM'ning ikki turi bor. DRAM (dinamik) — har bir bit bitta tranzistor va bitta mitti kondensatorda saqlanadi: kondensator zaryadlangan bo'lsa — 1, zaryadsiz bo'lsa — 0. Kondensator asta-sekin zaryadini yo'qotgani uchun har 64 millisekundda barcha yacheykalar qayta "yangilanishi" kerak. DRAM zich va arzon, shuning uchun asosiy xotira sifatida ishlatiladi. SRAM (statik) — har bir bit 6 ta tranzistordan iborat flip-flopda saqlanadi. U ancha tez va yangilanish talab qilmaydi, lekin katta joy egallaydi va qimmat — shuning uchun kesh xotira uchun ishlatiladi.
Zamonaviy kompyuterlarda DDR4 yoki DDR5 xotira modullari ishlatiladi. DDR — "Double Data Rate", ya'ni har takt signalining ko'tarilish va tushish chetlarida ma'lumot uzatiladi. DDR5-6000 moduli sekundiga ~48 GB ma'lumot uzata oladi. Ko'pchilik kompyuterlarda xotira ikki kanalli rejimda ishlaydi — ikkita bir xil modul o'rnatilsa, o'tkazuvchanlik ikki barobar oshadi.
8.2. ROM va flesh xotira
ROM (faqat o'qish uchun xotira) — tok o'chganda ham ma'lumotni saqlaydi. Ona platadagi BIOS/UEFI dasturi shunday chipda saqlanadi. Zamonaviy "ROM"lar aslida qayta yoziladigan flesh xotira — shuning uchun BIOS'ni yangilash mumkin. Flesh xotirada har bir yacheyka maxsus "suzuvchi darvoza"li tranzistor bo'lib, unga elektronlar izolyator orqali "tiqilib" kiradi va u yerda yillar davomida saqlanadi.
8.3. Doimiy saqlash: HDD va SSD
HDD (qattiq disk) — magnit qatlam bilan qoplangan, daqiqasiga 5400-7200 marta aylanadigan plastinalardan iborat. Ular ustida havoda "suzib" turuvchi o'qish-yozish kallagi joylashgan — u plastinadan atigi bir necha nanometr balandlikda harakatlanadi. Ma'lumot plastinaning kichik sohalarini magnitlash yo'nalishi sifatida yoziladi. HDD arzon va katta hajmli, lekin mexanik bo'lgani uchun sekin va zarbaga sezgir.
SSD (qattiq holatdagi disk) — NAND flesh xotira chiplari va ularni boshqaradigan kontrollerdan iborat. Unda harakatlanuvchi qism yo'q, shuning uchun u tez, jim va mustahkam. NVMe interfeysli zamonaviy SSD sekundiga 5-12 GB o'qiy oladi — bu HDD'dan 30-80 barobar tez. Flesh yacheykalar cheklangan marta (bir necha ming marta) qayta yozilishi mumkin, shuning uchun kontroller yozuvlarni butun disk bo'ylab tekis taqsimlaydi (wear leveling).
| Xususiyat | HDD | SATA SSD | NVMe SSD |
|---|---|---|---|
| O'qish tezligi | ~150 MB/s | ~550 MB/s | 3000-12000 MB/s |
| Kechikish | ~10 ms | ~0.1 ms | ~0.02 ms |
| Narx (1 TB) | arzon | o'rtacha | o'rtacha |
| Zarbaga chidamlilik | past | yuqori | yuqori |
| Shovqin | bor | yo'q | yo'q |