Operatsion tizim nima?
Yadro rejimida ishlaydigan dasturiy ta'minot deyishdan tashqari, operatsion tizim nima ekanligini aniqlash qiyin va hatto bu har doim ham to'g'ri emas. Muammoning bir qismi shundaki, operatsion tizimlar bir-biriga bog'liq bo'lmagan ikkita funktsiyani bajaradi: foydalanuvchi qism dasturchilarga tartibsiz apparat vositalari o'rniga toza abstrakt resurslar to'plamini taqdim etish va ushbu apparat resurslarini boshqarish. Kim gapirayotganiga qarab, siz asosan u yoki bu funksiya haqida eshitishingiz mumkin. Keling, ikkalasini ham ko'rib chiqaylik.
Mashina tili darajasidagi aksariyat kompyuterlarning arxitekturasi (ko‘rsatmalar to‘plami, xotirani tashkil etish, kiritish/chiqarish va shinalar strukturasi) primitiv va dasturlash uchun, ayniqsa, kiritish/chiqarish uchun noqulay. Bu fikrni aniqroq qilish uchun ko'pgina kompyuterlarda ishlatiladigan zamonaviy SATA ( Serial ATA ) qattiq disklarini ko'rib chiqamiz. Disk interfeysining dastlabki versiyasini tavsiflovchi kitob 450 sahifadan ortiq. O'shandan beri interfeys bir necha bor qayta ko'rib chiqildi va hozirda u 2007 yildagiga qaraganda ancha murakkab. Shubhasiz, hech bir aqli raso dasturchi ushbu disk bilan apparat darajasida shug'ullanishni xohlamaydi. Buning o'rniga, disk drayveri deb ataladigan dasturiy ta'minot apparat bilan shug'ullanadi va tafsilotlarga kirmasdan disk bloklarini o'qish va yozish uchun interfeysni ta'minlaydi. Operatsion tizimlar kiritish-chiqarish qurilmalarini boshqarish uchun ko'plab drayverlarni o'z ichiga oladi.
Ammo bu daraja ko'pchilik ilovalar uchun juda past. Shu sababli, barcha operatsion tizimlar disklardan foydalanish uchun yana bir abstrakt qatlamini taqdim etadi: fayllar. Ushbu qatlamdan foydalanib, dasturlar apparatning aslida qanday ishlashining chalkash tafsilotlari bilan shug'ullanmasdan fayllarni yaratishi, yozishi va o'qishi mumkin.
Bu abstraktsiya murakkablikni boshqarishning kalitidir. Yaxshi abstraktsiyalar deyarli imkonsiz vazifani ikkita boshqariladigan vazifaga aylantiradi. Birinchisi, abstraktsiyalarni aniqlash va amalga oshirish. Ikkinchisi, ushbu abstraktsiyalarni muammoni hal qilish uchun ishlatishdir. Deyarli har bir kompyuter foydalanuvchisi tushunadigan abstraktsiyalardan biri yuqorida aytib o'tilganidek, fayldir. Bu raqamli fotosurat, saqlangan elektron pochta xabari, qo'shiq yoki veb-sahifa kabi foydali ma'lumotdir. Fotosuratlar, elektron pochta xabarlari, qo'shiqlar va veb-sahifalar bilan ishlash SATA (yoki boshqa) disklarning tafsilotlariga qaraganda ancha oson. Operatsion tizimning vazifasi yaxshi abstraktsiyalarni yaratish va keyin shu tarzda yaratilgan abstrakt ob'ektlarni boshqarishdir.
Shuni ta'kidlash kerakki, operatsion tizimning haqiqiy mijozlari amaliy dasturlardir (albatta, amaliy dasturchilar orqali). Ular operatsion tizim va uning abstraktsiyalari bilan bevosita shug'ullanadiganlardir. Bundan farqli o'laroq, oxirgi foydalanuvchilar foydalanuvchi interfeysi tomonidan taqdim etilgan abstraktsiyalar bilan shug'ullanadilar, buyruq satri qobig'i yoki grafik interfeys. Foydalanuvchi interfeysidagi abstraktsiyalar operatsion tizim tomonidan taqdim etilganlarga o'xshash bo'lishi mumkin bo'lsa-da , bu har doim ham shunday emas. Ushbu fikrni aniqroq qilish uchun oddiy Windows ish stoli va cmd ni ko’rib chiqamiz. Ikkalasi ham Windows operatsion tizimida ishlaydigan dasturlar bo'lib, Windows taqdim etgan abstraktsiyalardan foydalanadi, ammo ular juda boshqacha foydalanuvchi interfeyslarini taklif qiladi. Xuddi shunday, Gnome yoki KDE-da ishlaydigan Linux foydalanuvchisi to'g'ridan-to'g'ri asosiy X Window System ustida ishlaydigan Linux foydalanuvchisiga qaraganda juda boshqacha interfeysni ko'radi, ammo operatsion tizimning asosiy abstraktsiyalari ikkala holatda ham bir xil.
Do'stlaringiz bilan baham: |