Browser — veb resurslarni olish, talqin qilish va foydalanuvchiga ko‘rsatishga mo‘ljallangan dastur. U URL bilan berilgan manzilga murojaat qiladi, HTTP yoki HTTPS javobini qabul qiladi va HTML, CSS, JavaScript, rasm, shrift hamda boshqa resurslarni qayta ishlaydi. Brauzer faqat sahifa ko‘rsatuvchi dastur emas; u tarmoq mijozi, JavaScript bajarish muhiti, grafik renderer va xavfsizlik chegaralarini birlashtiradi.
Navigatsiya jarayoni
Foydalanuvchi URL kiritganda brauzer manzilni tahlil qiladi. Domen nomi DNS orqali IP manzilga yechiladi. Keyin server bilan TCP ulanishi, HTTP/3 holatida esa QUIC ulanishi o‘rnatiladi. HTTPS ishlatilsa TLS handshake server sertifikatini tekshiradi va shifrlangan kanal yaratadi. Brauzer HTTP so‘rov yuborib, status code, headerlar va bodydan iborat javob oladi.
Asosiy HTML hujjat ichida CSS, JavaScript, rasm va shriftlarga havolalar bo‘lishi mumkin. Brauzer ularni qo‘shimcha so‘rovlar orqali yuklaydi. HTTP cache avval olingan resursni qayta ishlatishi mumkin. Cookie, cache policy va redirectlar navigatsiya natijasiga ta’sir qiladi.
Render jarayoni
HTML parser hujjatdan Document Object Model (DOM) daraxtini hosil qiladi. CSS qoidalari qayta ishlanib, elementlarning hisoblangan uslublari aniqlanadi. Ko‘rinadigan elementlar asosida render tree shakllanadi. Layout bosqichi elementlarning o‘lchami va joylashuvini, paint bosqichi rang, matn, chegara va tasvirlarni chizish buyruqlarini hisoblaydi. Compositing ayrim qatlamlarni GPU yordamida birlashtirishi mumkin.
JavaScript DOM va CSSOMni o‘zgartira oladi. Bunday o‘zgarish layout yoki paintning qayta bajarilishiga sabab bo‘lishi mumkin. Brauzer event loop orqali task, microtask, timer va foydalanuvchi hodisalarini tartiblaydi. Uzoq davom etadigan JavaScript asosiy oqimni band qilib, interfeys javobini sekinlashtiradi.
Jarayonlar va sandbox
Zamonaviy brauzerlar ko‘p jarayonli arxitekturadan foydalanadi. Browser process oynalar, navigatsiya va ruxsatlarni boshqaradi; renderer process veb sahifa kodini bajaradi. Saytlarni alohida jarayonlarga ajratish bir sahifadagi nosozlikning boshqasiga ta’sirini kamaytiradi. Renderer sandboxi fayl tizimi va operatsion tizim resurslariga bevosita kirishni cheklaydi.
Veb xavfsizligi
Same-origin policy turli originlardan kelgan sahifalarning bir-biri ma’lumotiga erkin kirishini taqiqlaydi. Origin sxema, host va port kombinatsiyasi bilan aniqlanadi. CORS serverga ayrim cross-origin so‘rovlarga ruxsat berish imkonini beradi. Content Security Policy ruxsat etilgan skript, uslub va boshqa resurs manbalarini cheklaydi.
Brauzer sertifikat xatosi, mixed content, xavfli yuklab olish va ruxsat so‘rovlarini foydalanuvchiga bildiradi. Maxfiy rejim mahalliy tarix va cookie saqlanishini cheklaydi, biroq foydalanuvchini tarmoq operatori yoki sayt oldida anonim qilmaydi.
Saqlash mexanizmlari
Cookie serverga HTTP so‘rovlari bilan yuborilishi mumkin; Secure, HttpOnly va SameSite atributlari uning ishlash chegaralarini belgilaydi. Local Storage origin bo‘yicha kalit-qiymat ma’lumotini saqlaydi, IndexedDB esa kattaroq strukturali ma’lumot uchun asinxron baza beradi. Service Worker tarmoq so‘rovlarini boshqarib, offline cache va background hodisalarini amalga oshirishi mumkin. Ushbu saqlash turlari bir xil API yoki xavfsizlik xususiyatiga ega emas.
Developer Tools tarmoq so‘rovlari, DOM, JavaScript bajarilishi, xotira va rendering ko‘rsatkichlarini tekshirish imkonini beradi. Performance yozuvi uzun task, layout va paint vaqtini ajratib ko‘rsatadi. Bu vosita sahifa kodini o‘zgartirmasdan brauzer ichidagi jarayonni kuzatadi.
Bog‘liq tushunchalar
HTTP, HTTPS, DOM, CSSOM, JavaScript engine, sandbox, same-origin policy