Fayl tizimi bir tomondan saqlash muhitini

Fayl tizimi bir tomondan
saqlash muhitini
, ikkinchi tomondan
esa fayllarga kirish uchun
APIni bog'laydi.
Ilova dasturi faylga
kirganda, u ma'lum bir fayldagi ma'lumotlar qanday
joylashganligi va qanday turdagi jismoniy tashuvchilar (
CD
,
qattiq disk
,
magnit lenta , ﬂesh-xotira
birligi yoki boshqalar)
yozilganligini bilmaydi. Dastur faqat fayl nomini, uning hajmini
va atributlarini biladi.
Ushbu ma'lumotlarni fayl tizimi
drayveridan
oladi . Bu faylning jismoniy muhitda (masalan,
qattiq diskda) qayerda va qanday yozilishini aniqlaydigan fayl
tizimi.
Operatsion tizim
(OT) nuqtai nazaridan , butun disk
klasterlar
to'plamidir (odatda hajmi 512
baytga
ko'p )
[1]
. Fayl tizimi
drayverlari klasterlarni fayllar va kataloglarga (aslida ushbu
Fayl tizimi
Wikimedia Commons-dagi media fayllari
katalogdagi fayllar ro'yxatini o'z ichiga olgan fayllar) tashkil
qiladi. Xuddi shu drayverlar qaysi klasterlar hozirda
foydalanilayotgani, qaysi biri bepul va qaysi biri noto'g'ri deb
belgilanganligini kuzatib boradi.
Biroq, fayl tizimi to'g'ridan-to'g'ri jismoniy
saqlash muhiti
bilan
bog'liq bo'lishi shart emas . Mavjud
virtual fayl tizimlari
,
shuningdek,
tarmoq
fayl tizimlari, ular faqat masofaviy
kompyuterda joylashgan fayllarga kirishning bir usuli
hisoblanadi.
Deyarli har doim disklardagi fayllar kataloglarga
birlashtiriladi .
Eng oddiy holatda, berilgan diskdagi barcha fayllar bitta
katalogda saqlanadi. Ushbu
bir darajali sxema
CP/M va MS-DOS
1.0 ning birinchi versiyasida ishlatilgan . Ichki kataloglarga ega
ierarxik fayl tizimi dastlab
Multics
da , keyin
UNIX
da paydo bo'ldi
.
Hozirgi vaqtda bir darajali fayl tizimlari juda kamdan-kam
hollarda qo'llaniladi, kam ishlov berish quvvati va xotira sig'imi
bo'lgan qurilmalar bundan mustasno, masalan, o'zining SPIFFS
fayl tizimidan foydalanadigan ESP8266 mikrokontrolleri o'z
ﬂesh-
xotirasida ( 16
MB
gacha
) .
Katalog ierarxiyasi
Wiki.txt
Tornado.jpg
Notepad.exe
(Bir darajali fayl tizimi)
Turli drayvlardagi kataloglar
DOS
/
Windows
da bo'lgani kabi bir
nechta alohida daraxtlarni tashkil qilishi mumkin yoki ular UNIX-
ga o'xshash tizimlarda bo'lgani kabi barcha disklar uchun
umumiy bo'lgan bitta daraxtga birlashtirilishi mumkin.
C:
\Dastur fayllari
\CDEx
\CDEx.exe
\CDEx.hlp
\mppenc.exe
\Mening hujjatlarim
\Wiki.txt
\Tornado.jpg
D:
\Musiqa
\ABBA
\1974 Vaterloo
\1976 yetib kelish
\Money, Money, Money.ogg
\1977 Albom
(Windows/DOS ierarxik fayl tizimi)
UNIX da faqat bitta asosiy katalog
mavjud va boshqa barcha
fayllar va kataloglar uning ichiga joylashtirilgan. Diskdagi fayllar
va kataloglarga kirish uchun buyruq yordamida diskni
o'rnatishingiz mount
kerak . Masalan,
CD-
dagi fayllarni ochish
uchun siz oddiy qilib aytganda, operatsion tizimga aytishingiz
kerak: "Ushbu CD-dagi fayl tizimini oling va uni katalogda
ko'rsating /mnt/cdrom ." CDda joylashgan barcha fayllar va
kataloglar
o'rnatish
nuqtasi deb ataladigan
/mnt/cdrom ushbu katalogda paydo bo'ladi .
[2]
Ko'pgina
UNIX-ga o'xshash tizimlarda olinadigan disklar (
ﬂoppi
va
kompakt disklar), ﬂesh-disklar va boshqa tashqi xotira
qurilmalari , yoki katalogiga o'rnatilgan . Unix va UNIX-ga
o'xshash operatsion tizimlar, shuningdek, operatsion tizim
yuklanganda disklarni avtomatik ravishda o'rnatishga imkon
beradi. /mnt /mount /media
/
/usr
/bin
/ark
/ls
/xom
/lib
/libhistory.so.5.2
/libgpm.so.1
/uy
/yo'qolgan+topildi
/host.sh
/mehmon
/Rasmlar
/example.png
/Video
/matrix.avi
/Yangiliklar
/lost_ship.mpeg
(Unix va UNIX-ga o'xshash operatsion
tizimlarda ierarxik fayl tizimi)
Windows, UNIX va UNIX-ga o'xshash operatsion tizimlarda qiya
chiziqdan foydalanishga e'tibor
bering
( Windows "\" teskari
chiziqdan foydalanadi, UNIX va UNIX-ga o'xshash operatsion
tizimlar esa "/" qiyshiq chiziqdan foydalanadi)
Bundan tashqari, yuqoridagi tizim nafaqat jismoniy qurilmalarning
fayl tizimlarini, balki alohida kataloglarni ( --bind varianti ) yoki,
masalan,
ISO tasvirini
(
loop varianti ) o'rnatishga imkon beradi .
FUSE
kabi qo'shimchalar , masalan,
FTP
-dagi butun katalogni
va juda ko'p turli xil resurslarni o'rnatishga imkon beradi.
Bundan ham murakkab tuzilma NTFS
va
HFS
da qo'llaniladi .
Ushbu fayl tizimlarida har bir fayl atributlar to'plamini ifodalaydi .
Nafaqat an'anaviy только для чтения , системный ,
balki fayl nomi, hajmi va hatto mazmuni ham atributlar
hisoblanadi.
Shunday qilib, NTFS
va
HFS
uchun faylda
saqlangan narsa uning atributlaridan biridir.
Agar siz ushbu mantiqqa amal qilsangiz,
bitta faylda bir nechta
kontent variantlari bo'lishi mumkin . Shunday qilib, bitta
hujjatning bir nechta versiyalari bitta faylda saqlanishi mumkin,
shuningdek qo'shimcha ma'lumotlar (fayl belgisi, fayl bilan
bog'langan
dastur
).
Ushbu tashkilot
Macintosh'dagi
HFSga
xosdir .
Fayl tizimining asosiy funktsiyalari:
fayllar ko'rinishidagi ma'lumotlar tashuvchisiga joylashtirish
va tashkil etish;
saqlash muhitida ma'lumotlarning maksimal qo'llab-
quvvatlanadigan hajmini aniqlash;
Fayl tizimlarining asosiy funktsiyalari
fayllarni yaratish, o'qish va o'chirish;
fayl atributlarini belgilash va o'zgartirish (hajmi, yaratish va
o'zgartirish vaqti, fayl egasi va yaratuvchisi, faqat o'qish
uchun mo'ljallangan, yashirin fayl, vaqtinchalik fayl,
arxivlangan, bajariladigan, fayl nomining maksimal uzunligi
va boshqalar);
ta'riﬁ
Maqsadiga ko'ra fayl tizimlarini quyidagi toifalarga bo'lish
mumkin.
Tasodiﬁy kirish
vositalari uchun (masalan,
qattiq disk
):
FAT32
,
HPFS
,
ext2
/
ext3
/
ext4
va boshqalar. Disklarga
kirish RAMga kirishdan bir necha barobar sekinroq bo'lganligi
sababli, ko'plab fayl tizimlari diskdagi ish faoliyatini oshirish
uchun o'zgarishlarni asinxron yozishdan foydalanadi. Buning
uchun, masalan,
ext3
,
ReiserFS
,
JFS
,
NTFS
,
XFS
, yoki
yumshoq yangilanishlar mexanizmi va boshqalarda jurnal
yuritish
ishlatiladi . Jurnallash Linuxda keng tarqalgan va
NTFS da qo'llaniladi.
Yumshoq yangilanishlar
- BSD
tizimlarida.
Ketma-ket kirish
muhiti uchun (masalan,
magnit lenta
):
QIC
va boshqalar.
Fayl tizimlarining tasniﬁ
Optik vositalar uchun -
CD
va
DVD
:
ISO9660
,
HFS
,
UDF
va
boshqalar.
Virtual fayl tizimlari
:
AEFS
va boshqalar.
Tarmoq fayl tizimlari:
NFS
,
CIFS
,
SSHFS
,
GmailFS (http://arq
uivo.pt/wayback/20090707151753/http%3A//richard.jones.n
ame/google%2Dhacks/gmail%2Dﬁlesystem/gmail%2Dﬁlesys
tem.html)
va boshqalar.
Fleshli xotira uchun:
YAFFS
,
ExtremeFFS
,
exFAT
,
F2FS
.
Ixtisoslashgan fayl tizimlari umumiy tasnifdan biroz chiqib
ketadi:
ZFS
(fayl tizimining o'zi ZFSning faqat bir qismi),
VMware VMFS
(boshqa fayl tizimlarini saqlash uchun
mo'ljallangan klaster fayl tizimi) va boshqalar. .
Har qanday fayl tizimining asosiy funktsiyalari quyidagi
muammolarni hal qilishga qaratilgan:
faylga nom berish;
ilovalar uchun fayllar bilan ishlash uchun dasturiy interfeys;
fayl tizimining mantiqiy modelini ma'lumotlarni saqlashni
jismoniy tashkil qilish bilan taqqoslash;
fayl tizimining elektr ta'minotidagi uzilishlar, apparat va
dasturiy ta'minotdagi xatolarga chidamliligini tashkil etish;
Fayl tizimi vazifalari
faylning boshqa tizim ob'ektlari (yadro, ilovalar va boshqalar)
bilan to'g'ri o'zaro ta'siri uchun zarur bo'lgan fayl
parametrlarining mazmuni.
Ko'p foydalanuvchili tizimlarda yana bir vazifa paydo bo'ladi: bir
foydalanuvchining fayllarini boshqa foydalanuvchi tomonidan
ruxsatsiz kirishdan himoya qilish, shuningdek, fayllar bilan
hamkorlikni ta'minlash, masalan, foydalanuvchilardan biri faylni
ochganda, boshqalar uchun xuddi shu fayl bo'ladi. vaqtincha
faqat o'qish rejimida mavjud. .
FS nol va birlar bilan emas, balki qulayroq va tushunarli ob'ektlar
- fayllar bilan ishlashga imkon beradi. Qulaylik uchun fayllar
bilan ishlashda ularning ramziy identiﬁkatorlari - nomlari
qo'llaniladi. Fayllar tarkibining o'zi klasterlarda qayd etilgan
- fayl
tizimi ishlaydigan eng kichik ma'lumotlar birliklari, ularning
hajmi 512 baytga ko'p (512 bayt - qattiq disk sektorining
o'lchami, eng kichik ma'lumotlar birligi diskdan o'qish yoki
diskka yozish)
[ 3
]
. Axborotni tartibga solish uchun fayl
nomidan tashqari, ma'lum bir mezon bo'yicha fayllarni
guruhlash imkonini beruvchi mavhumlik turi sifatida kataloglar
(yoki papkalar) ham qo'llaniladi. Asosiysi, katalog - bu kataloglar
va uning ichiga joylashtirilgan fayllar haqidagi ma'lumotlarni o'z
ichiga olgan fayl.
|