|
Faylni manzillash va fizik tashkil etish
|
bet | 6/16 | Sana | 27.05.2024 | Hajmi | 483,11 Kb. | | #254499 |
Bog'liq DISKLAR YO`\'LAKLARIFaylni manzillash va fizik tashkil etish
Fayl tizimining fizik tuzilishining muhim komponentlaridan biri faylning fizik tuzilishi bo‘ladi, ya’ni diskga faylni joylashtirish usuli mavjud.
Faylni fizik tashkil etishning asosiy samaradorlik mezonlari quyidagilar:
ma’lumotlarga kirish tezligi;
faylni axborot manzili hajmi;
disk bo‘sh joyi qismi miqdori;
faylning maksimal hajmi.
Uzluksiz joylashtirish – fizik tuzilishning sodda ko‘rinishi, ya’ni disk xotirasida uzluksiz ishtirok etishini ko‘rsatuvchi diskning klasterlar ketma-ketligini taqdim etuvchi fayl. Ushbu usulning asosiy afzalligi yuqori tezlikda kira olishi, bu fayl klasterini o‘qish va izlashga sarflanadigan vaqtni minimallashtiradi. Shuningdek axborot manzil hajmini minimallashtirish – fayl hajmi va birinchi raqamli klasterda saqlash yetarli. Ushbu fizik tuzilishning fayl miqdorining
maksimal imkoniyatlari chegaralanmagan. Biroq bu variantda qator kamchiliklarga ega, ya’ni uning mantiqiy soddaligiga qaramasdan amaliyotda qo‘llashning murakkabligi hisoblanadi. Ahamiyat berilsa ushbu sxemani joriy qilish oson emas. Darhaqiqat, agar har bir o‘zgarishda fayl o‘zining hajmini oshirib borsa faylga ajratilgan joyning o‘lchami qanday bo‘ladi? Yana bir muammo qismlarga bo‘linish (fragmentlash).
Faylni fizik tashkil qilishning keyingi usuli – disk xotirasi klasteri ro‘yxati bilan bog‘langan ko‘rinishda joylashishi. Har bir klaster boshlanishida keyingi klasterni ko‘rsatishni o‘z ichiga oladi. Bu holatda axborot manzili minimallashtiriladi: faylni joylashtirib unga birinchi klaster raqamini berish mumkin bo‘ladi. Avvalgi usuldan farqi har bir klaster biron bir fayl bilan klaster zanjiri bo‘ylab birlashishi mumkin bo‘ladi, shubhasiz, klaster darajasida fragmentlash bo‘lmaydi. Fayl klasterlar miqdorini oshirib o‘zining mavjudlik davrida o‘lchamini o‘zgartirishi mumkin. Kamchiligi ushbu fayl joyiga ixtiyoriy kirishni joriy qilish murakkab – faylni klaster tartib raqami bo‘yicha beshinchisini o‘qish uchun klaster zanjirida joylashgan dastlabki to‘rtta klasterni o‘qishi kerak bo‘ladi. Bundan tashqari fayl ma’lumotlar miqdori ikkilik darajasiga teng bo‘lmagan bitta klasterni o‘z ichiga oladi, ko‘plab dasturlar esa ikkilik darajasiga teng o‘lchamda klaster ma’lumotlarini o‘qiydi.
Keng tarqalgan qo‘llash usullaridan masalan FAT fayl tizimida indeks ro‘yxati bilan bog‘langan ko‘rinishda joylashtirilish bo‘ladi. Ushbu usulda avvalgilariga ba’zi bir o‘zgartirishlar kiritilgan. Bu yerda xam fayl klaster ro‘yxati bilan bog‘langan ko‘rinishda xotirani ajratadi. Birinchi klaster raqami ushbu fayl xarakteristkalari saqlanadigan katalog yozuvini xotirlaydi. Qolgan manzil axborotlar fayl klasteridan alohida bo‘ladi. Diskdagi har bir klaster ba’zi bir element – indeks bilan bog‘langan bo‘ladi. Indekslar diskning alohida bir qismida joylashadi – bu FAT (File Allocation Table) jadval MS- DOS da bitta klasterni band qiladi. Agar xotira bo‘sh bo‘lsa, barcha indekslar nol qiymatiga ega bo‘ladi. Agar ayrim fayllarga berilgan bo‘lsaba’zi klasterlar Nunda bu klasterda indeks ushbu faylning keyingi klasteri M raqamiga yoki bu klaster navbatdagi fayl uchun qabul qilingan maxsus belgiga teng bo‘ladi. Faylni avvalgi klaster indeksi Nbelgisini qabul qilishi klasterga yangiddan berilganligini ko‘rsatadi.
Bunday fizik tashkil qilinish avvalgi usullarning barcha afzalliklarini saqlab qoladi: minimal axborot manzili, fragmentatsiyaning yo‘qligi, o‘lchamning o‘zgarish muammolari mavjud emasligi. Bundan tashqari, ushbu usul qo‘shimcha afzalliklarga ega. Birinchidan fayl klasteriga ixtiyoriy kirish uchun indeks jadvalini o‘z ichiga olgan faqat disk sektorlarini o‘qish yetarli bo‘ladi, zanjir bo‘yicha faylning kerakli klasterlar miqdorini hisoblaydi va kerakli klaster raqamini aniqlaydi. Ikkinchidan, ushbu fayl klasterni to‘liqligicha band qiladi, demak, hajm ikkining darajasiga teng bo‘ladi.
Faylni fizik joylashtirishning yana bir usuli ushbu faylni band qilgan klaster raqamlarini hisoblab chiqish bo‘ladi. Bu raqamlar to‘plami va fayl manzil xizmati bo‘ladi. Ushbu usulning kamchiliklari: manzil uzunligi fayl o‘lchamiga bog‘liqligi va katta fayllar uchun manzil uzunligi sezilarli darajada uzun bo‘lishi mumkin. Afzalliklari fayl klasteriga ixtiyoriy kirish tezligining yuqoriligi. Bu yerda faylning ixtiyoriy klasteri manzilini izlash orqali ko‘rsatuvchi zanjirni ko‘rib chiqishni rad etib, manzilga to‘g‘ridan-to‘g‘ri kirish qo‘llaniladi. Ushbu usulda klaster darajasida fragmentlash mavjud emas.
So‘nggi usul Unix OT ning an’anaviy fayl tizimlari s5 va ufs da foydalaniladigan ba’zi bir modifikatsiyalar bo‘ladi. Axborot manzili hajmini qisqartirish uchun ufs fayl tizimida chetki qismlarni manzillashni bevosita qo‘shishga imkon beradigan kombinatsiyalashgan klasterni manzillash sxemasidan foydalaniladi. Fayl manzilini saqlash uchun 15 ta maydon ajratiladi, ularning har biri 4 baytdan iborat bo‘ladi (5.4- rasm). Agar fayl miqdori 12 ta klasterga teng yoki kichik bo‘lsa, u holda bu klaster manzilning birinchi o‘n ikkita maydoniga o‘tkaziladi. Agar klaster 8 Kbayt o‘lchamga (ufs qo‘llab-quvvatlaydigan klasterning maksimal o‘lchami) ega bo‘lsa, unda 8192 * 12 = 98 304 baytgacha faylni manzillash mumkin.
Agar fayl o‘lchami 12 klasterdan oshsa, u holda navbatdagi 13- maydon keyingi klaster raqamini emas, navbatdagi fayl klasteri raqami joylashishi mumkin bo‘lgan klaster raqamini o‘z ichiga oladi. Bunday ko‘rinishda 13- manzil elementi chekka qism manzili uchun foydalaniladi. 8 Kbayt o‘lchamli klaster 13- elementni ko‘rsatib navbatdagi ma’lumotlar fayli klasterini 2048 raqamini o‘z ichiga olishi mumkin va fayl hajmi 8192 * (12 + 2048) = 16 875 520
baytgacha o‘sishi mumkin. Agar o‘lchami 12 + 2048 = 2060 klastergacha ortsa, u holda 14- maydondan foydalaniladi. Unda har biri ma’lumotlar faylining 2048 ta raqamini saqlaydigan 2048 ta klaster raqamini o‘z ichiga oladigan klaster raqami joylashadi. Bu yerda ikkilik bilvosita manzillashdan foydalaniladi. Uning yordami bilan 8192 * (12 + 2048 + 20482) = 3,43766 * 1010 baytgacha fayldagi klasterlarni manzillash mumkin.
5.4- rasm. Fayl manzili
Va nihoyat agar fayl 12 + 2048+ 20482 = 4 196 364 klasterni o‘z ichiga olsa, u holda uchtali bilvosita manzillash uchun, so‘ngi 15- maydondan foydalaniladi, ya’ni faylga manzil berish imkoniga ega bo‘lish uchun quyidagi maksimal hajmdan foydalanadi.
8192 * (12 + 2048 + 20482 + 20483) =7,0403* 1013bayt.
Bunday ko‘rinishda, 8 kbayt klaster o‘lchami orqali ufs fayl tizimi 8 milliard klaster saqlanadigan 70 trillion bayt ma’lumotidan iborat faylni qo‘llab-quvvatlaydi. 5.4- rasmda ko‘rinib turibdiki maksimal darajada katta fayl to‘g‘risida axborot manzilini berish uchun manzil markaziy qismida 4 bayt (60 bayt) hamda bilvosita manzil qismida 1 + (1 + 2048) + (1 + 2048 + + 20482) = 4 198 403
klasteri bo‘yicha 15 ta element talab etiladi. O‘lchamning kattaligiga
qaramasdan, bu miqdor manzillanyotgan ma’lumot hajmining 0,005
% atrofida bo‘ladi.
|
| |