Wednesday, November 21, 2012

File system түүний тухай


Файлын систем
Тогтмол санах байгууламжинд байрласан, тодорхой нэр бүхий цогц мэдээллийг файл (file) гэдэг. Файл нь програм, тоон өгөгдөл, текст, кодлогдсон дүрс мэтийг агуулж болно.
Ерөнхий тохиолдолд тогтмол санах байгууламжид асар олон тооны файл агуулагдана. Тэгвэл хэрэглэгч нь энэ олон файл дундаас тухайн нэг файлыг түргэн шуурхай олж, хялбар байдлаар харьцдаг байх ёстой. Үүний тулд файлууд нь дискэн дээр тодорхой нэг аргын дагуу, ө.х. тодорхой зохион байгуулалттайгаар байрласан байна. Ийм аргыг (зохион байгуулалтыг) нь файлын систем (file system) гэдэг. Файлын систем нь:
·         Хатуу диск болон зөөврийн төхөөрөмж дээр файлыг хадгалах.
·         Хадгалагдсан файлуудыг зохистойгоор ангилах
·         Хавтсанд байрлуулах.
·         Файлуудыг хурдан, найдвартай сэргээх.
·         Move, copy, rename, delete гэх мэт файлууд дээр үндсэн үйлдлүүдийг хийх г.м. асуудлуудыг тодорхойлно.
ҮС болгон өөрийн гэсэн файлын системтэй. Тухайлбал Windows бүлийн ҮС-үүд FAT16, FAT32, NTFS г.м файлын системүүдийг ашигладаг бол Linux бүлийн ҮС-үүд ext2, ext3, XFS г.м. файлын системийг түгээмэл ашигладаг.

Ихэнх файлын систем файлыг диск рүү хадгалахдаа хадгалах “орон зайг” 0.5kb эсвэл 1, 2, 4 кb-ын урттай жижиг блокуудад хуваагаад файлыг эдгээр блокуудаар тарааж байрлуулдаг байна. Ийм блок хэсгийг сектор (sector) гэнэ. Файлын систем нь файлуудыг төрөл, зориулалтаар нь ангилж, “каталогижуулах” ажлыг гүйцэтгэдэг. Дотроо файлууд агуулсан ийм каталогийг фолдер (folder) буюу хавтас, директори (directory) г.м.-ээр нэрлэдэг.
 “Каталогижуулах” хэлбэрээр нь файлын системийг:
§  Хавтгай буюу шугаман (flat)
§  Мод хэлбэрийн (Hierarchical)
г.м.-ээр ангилж болно. Хавтгай файл системд, каталоги доторх каталоги гэж байдаггүй. Бүх каталогиуд нэг төвшинд, “зэрэгцэн” оршино. Мод хэлбэрийн файл системд, каталоги дотор дахиад каталоги байж болдог. Ж.нь Windows-ын файл систем мод хэлбэрийн бүтэцтэй.

Data categories
Файлийн системд бид 5 категорийг хэрэглэдэг  ба бүх өгөгдөл эдгээр 5 категорын аль нэгэнд хамааралтай байна.
File system category
Ерөнхий файл системийн мэдээллийг агуулна. Бүх файлийн систем ерөнхий нэг бүтэц, зохион байгуулалттай байдаг боловч бүгд өөр өөрийн гэсэн онцлог шинж чанартай.  Энэ доторх өгөгдлүүд нь хэр их өгөгдлийн нэгж хэр том болон өгөгдлүүд хаана  байрлахыг тодорхойлно. Энэ категори дахь өгөгдлийг энэ тодорхой файлийн системийн мап гэж ойлгож болно.
Content category
Файлын бодит агууламжуудыг агуулна. Файлийн системийн өгөгдлийн ихэнхи хэсэг нь энд хамаарагдах ба ерөнхийдөө стандарт хэмжээтэй хэд хэдэн агуулагч дотор зохион байгуулагдсан байна.  Эдгээр агуулагчийг файлийн систем бүр кластер, блок гэх мэтээр өөр өөрөөр тодорхойлдог бөгөөд ерөнхий дуудалт нь “өгөгдлийн нэгж” гэнэ.
 Logical File System Address
Файлийн системүүд нь логик файлийн системийн хаягийг хэрэглэдэг.  Эдгээр нь файлийн системийн блокуудын хаяг гэж ойлгож болно.
Metadata category
Энэ категори нь файлын контент хаана хадгалагдсан, хэр их хэмжээтэй, хамгийн сүүлд хандсан огноо болон хугацаа, хандалтын удирдлагын мэдээлэл гэх мэт  өгөгдлийг тодорхойлох мэдээллүүдийг агуулна.
Ихэнхи метадата-н бүтэц нь динамик уртын хүснэгт ба оролтын хаягийг хадгална.
Logical file address
Файлд хуваарилагдсан өгөгдлийн нэгжүүдийн хаягийн logical file address гэнэ. Энэ хаяг нь хуваарилагдсан нэгжийн хамгийн эхнээс эхлэх ба эхний хаяг  нь 0 байна.
Slack space
 Файлийн системийн өгөгдлийн нэгж нь тодорхой заагдсан байдаг ба тэдгээр заасан хэмжээнээс бага хэмжээтэй файл их хэмжээгээр үүссэн тохиолдолд slack space гэгдэх хэрэглэгдэхгүй сул зай үүснэ. 
File name category or human interface category
Файл бүр рүү  хандах нэрийг агуулна. Ихэнхи файлийн системүүдэд директорын контентууд дотор байрлах ба метадата хаягтай тохирох файлийн нэрүүдийн жагсаалт байна.
Application category
Дэлгэрүүлсэн эсвэл илүү нарийвчилсан мэдээллүүдийг агуулна. Файл бичих болон унших үйл явцад хэрэглэгддэггүй. Ердийн файлийн оронд тэдгээрийг хэрэгжүүлэх нь илүү үр ашигтай байж болох юм.
FAT
File allocation table буюу файл хуваарлилтын хүснэгт хэрэглэдэг FAT систем нь Microsoft
үйлдлийн системийн хамгийн анхны файл систем юм.Файл хуваарилалтын хүснэгт нь үнэндээ файлын хаана байрлах байрлалыг нь бичсэн жагсаалтын индекс юм. DOS1-с хойшхи үйлдлийн системүүдэд шинэчлэгдэж хэрэглэгдэж байгаа. FAT12, FAT16, FAT32 гэсэн хувилбаруудтай.
FAT файлийн систем нь 3 физик хэсгээс тогтох ба эхний хэсэг болох reserved area нь file system category- ийн өгөгдлийг агуулна.
Хоёр дахь хэсэг нь FAT area ба анхдагч болон нөөц FAT structure-г агуулна. Reserved area-ийн дараагийн сектороос эхлэх ба хэмжээ нь FAT structure-н хэмжээ болон дугаар дээр үндэслэн урьдаас тогтоогдсон байна. Сүүлийн хэсэг болох data area нь кластеруудыг агуулах ба энэ нь директор болон файлд хуваарилагдсан кластерууд байна.
file system category and Boot Sector
FAT файлийн системд boot sector дотор file system category байна. Boot sector нь файлийн системийн reserved area-ийн хэсэг бөгөөд volume-н хамгийн эхний секторт байрлана. Энэ нь бусад хэсгүүдийн байрлалууд болон хэмжээг нь тооцоолоход хэрэглэгддэг мэдээллийг агуулдаг. FAT16 болон FAT32 нь boot sector-н өөр өөр хувилбарууд боловч хоёулаа ижил эхлэлийн 36 byte-тай байна.

FAT boot sector-н эхний 16 байт өгөгдлийн зохион байгуулалт.
Byte Range
Тодорхойлолт
Чухал эсэх
0–2
Boot code руу хандах зааварчилгаа
Үгүй (bootable filesystem байхгүй үед)
3–10
ASCII дахь OEM нэр
Үгүй
11–12
1 секторын байтын хэмжээ(512, 1024, 2048, 4096)
Тийм
13–13
Кластер бүр дэх секторууд.  32КВ болон түүнээс бага хэмжээтэй, 2-тын зэргээр тодорхойлогдох.
Тийм
14–15
Reserved area доторх секторуудын хэмжээ
Тийм
16–16
FAT-н дугаар
Тийм
17–18
Root directory доторх файлуудын хамгийн их дугаар. FAT16-д 512, FAT32-д 0 байна.
Тийм
19–20
Файлийн системийн секторуудын дугаарын утга 16 бит байна.
Тийм
21–21
Медианы төрөл
Үгүй
22–23
FAT-н секторуудын хэмжээ. FAT16 дээр 16 бит, FAT32 дээр энэ талбар нь 0 байна.
Тийм
24–25
Хадгалах төхөөрөмжийн трак бүр дэх секторууд
Үгүй
26–27
Хадгалах төхөөрөмжийн толгойн дугаар
Үгүй
28–31
Partition хийхээс өмнөх секторуудын дугаар
Үгүй
32–35
Файлын систем дэх секторуудын дугаарын утга 32 битээр.
Тийм

FAT16 boot sector-н өгөгдлийн зохион байгуулалт
Byte Range
Тодорхойлолт
Чухал эсэх
0–35
Дээрх хүснэгтийг хар
Тийм
36–36
BIOS INT13h drive дугаар
Үгүй
37–37
Ашиглагддаггүй
Үгүй
38–38
Хэрвээ дараагийн 3 бит хүчинтэй бол extended boot signature-г тодорхойлох. Signature нь 0х29
Үгүй
39–42
Volume serial number. Windows-н ижил хувилбаруудад үүссэн огноо болон хугацаан дээр үндэслэн тооцох
Үгүй
16–16
Volume label in ASCII.  Хэрэглэгч файлийн систем үүсгэж байхдаа сонгоно.
Үгүй
43–53
Файлийн системийн төрлийн хаяг ASCII.
Үгүй
54–61
Файлийн системийн секторуудын дугаарын утга 16 бит байна.
Үгүй
62–509
Ашиглагддаггүй
Үгүй
510–511
Signature утга. (0xAA55)
Үгүй

FAT32 boot sector-н өгөгдлийн зохион байгуулалт
Byte Range
Тодорхойлолт
Чухал эсэх
0–35
Дээрх хүснэгтийг хар
Тийм
36–39
Нэг FAT-н секторуудын хэмжээ 32 битээр.
Тийм
40–41

Тийм
42–43
Major болон minor хувилбаруудын дугаар
Тийм
44–47
Root directory-н кластер хаана байрлаж байгааг заах
Тийм
48–49
FSINFO structure-н сектор хаана байрлаж байгааг заах
Үгүй
50–51
Boot sector-н нөөц хуулбарын секторын байрлал. Default 6. 
Үгүй
52–63
Нөөцөлсөн
Үгүй
64–64
BIOS INT13h drive дугаар
Үгүй
65–65
Ашиглагддаггүй
Үгүй
66–66
Хэрвээ дараагийн 3 бит хүчинтэй бол extended boot signature-г тодорхойлох. Signature нь 0х29
Үгүй
67–70
Volume serial number. Windows-н ижил хувилбаруудад үүссэн огноо болон хугацаан дээр үндэслэн тооцох
Үгүй
71–81
Volume label in ASCII.  Хэрэглэгч файлийн систем үүсгэж байхдаа сонгоно.
Үгүй
82–89
Файлийн системийн төрлийн хаяг ASCII.
Үгүй
90–509
Ашиглагддаггүй
Үгүй
510–511
Signature утга. (0xAA55)
Үгүй

Content category
FAT файлийн системийн өгөгдлийн нэгж нь кластер байна. Кластер нь дэс дараалсан секторуудын групп бөгөөд секторуудын дугаар нь 2-тын зэргээр тодорхойлогдоно. Microsoft-н шаардлагаар кластерийн хамгийн их хэмжээ нь 32КВ байна. Эхний кластерийн дугаар нь 2 байна. Учир нь кластер байхгүй байгаа тохиолдолд 0 байх ба энэ нь 2-тын зэргээр илэрхийлбэл 1 дугаартай болно. Бүх кластер файлийн системийн data area region-д байрлана.
Эхлэлийн кластер олох
FAT32 файлийн системийн кластерууд нь Data Area-н эхлэлийн сектороос эхлэн дугаарлагдана. Харин FAT12 болон FAT16 нь Data Area-н эхний сектороос тодорхой зай хуваарилан авч Root directory үүсдэг ба түүний дараагийн сектороос эхлэн кластерууд байрлана.
Metadata category
Энэ категори нь файл болон директорыг тодорхойлох мэдээллүүдийг агуулдаг. Хаана хадгалагдсан, хугацаа болон огноо гэх мэт FAT файлийн системд энэ мэдээлэл нь directory entry structure-д хадгалагдана. FAT structure нь файл болон директорын байрлалын тухай нөөцөлсөн метадата мэдээллийг ашиглан хийгддэг.
File Name Category
FAT систем нь дээд тал нь 8 тэмдэгтээс бүрдсэн нэрээр тодорхойлогддог файлуудыг
зөвшөөрдөг 16 битийн систем юм.Windows 95ийн
эх хувилбарт FAT16 системийг хэрэглэж байх
үед VFAT буюу виртуал FAT системд FAT системийн удирдлагыг сайжруулсан байдаг.VFAT нь
255 хүртэл урттай 32 битийн файлын нэрийг зөвшөөрдөг.
FAT32 FSINFO
FAT32 файлийн систем нь FSINFO өгөгдөл зохион байгуулалтыг ашигладаг бөгөөд энэ нь шинэ кластерууд үйлдлийн системийн хаана хуваарилагдах тухай агуулсан байдаг. Boot sector дотор байрлана.
FAT32 FSINFO sector-н өгөгдлийн зохион байгуулалт
Byte Range
Тодорхойлолт
Чухал эсэх
0–3
Signature (0x41615252)
Үгүй
4–483
Ашиглагддаггүй
Үгүй
484–487
Signature (0x61417272)
Үгүй
488–491
Сул кластеруудын дугаар
Үгүй
492–495
Дараагийн сул кластер
Үгүй
496–507
Ашиглагддаггүй
Үгүй
508–511
Signature (0xАА550000)
Үгүй

Directory Entries
FAT Directory Entries нь директор болон файл дахь метадата ба нэрийг агуулна.  Root фолдер дээрх фолдер болон файл бүр нь 1 эсвэл хэд хэдэн оролтыг хэрэглэдэг. Жишээ нь: Хэрвээ оролтуудын тогтмол дугаар нь 512 ба та 100 фолдертой бол та зөвхөн 412 файл үүсгэнэ.Фолдерууд нь фолдер дотор агуулагдсан фолдер болон файл бүрд зориулан 32 байтын оролттой байдаг. Оролт нь дараах мэдээллийг агуулдаг.

FAT directory entry-н өгөгдлийн зохион байгуулалт
Byte Range
Тодорхойлолт
Чухал эсэх
0–0
Файлийн нэрийн хамгийн эхний тэмдэгт, хуваарилсан байдал (0xe5 or 0x00 unallocated)
Тийм
1–10
Файлийн нэр 2-11 тэмдэгт. ASCII
Тийм
11–11
Файлийн атрибут
Тийм
12–12
Нөөцөлсөн
Тийм
13–13
Үүссэн хугацаа (секундын 1/10)
Үгүй
14–15
Үүссэн хугацаа (цаг, минут, секунд)
Үгүй
16–17
Үүссэн огноо
Үгүй
18–19
Сүүлд хандсан огноо
Үгүй
20–21
Эхний кластерийн хаяг. 2 байтаас их (FAT16 дээр 0)
Тийм
22–23
Сүүлд засварласан хугацаа (цаг, минут, секунд)
Үгүй
24–25
Сүүлд засварласан огноо
Үгүй
26–27
Эхний кластерын хаяг. 2 байтаас бага
Тийм
28–31
Файлийн хэмжээ
Тийм

Хувиарлалт
FAT фолдер дотор файлууд нь анхны чөлөөтэй байрлалуудад өгөгддөг. Эхлэлийн кластерын дугаар нь файлд хэрэглэгдэх анхны кластерын хаяг болдог. Кластер бүр нь дараагийн кластерын чиглүүлэгчийг агуулна эсвэл файлын төгсгөлийг заадаг заагчийг агуулдаг. Эдгээрийг дүрслэн үзүүлбэл:


Энэ нь FATийг дэмждэг бүх үйлдлийн системүүдэд ашиглагддаг. Уг аргын давуу тал нь файлын байршлын хүснэгт нь харьцангуй жижиг болох ба хэрэгжүүлж удирдахад маш хялбар. Мөн файлын байршлын хүснэгтэнд эвдрэл гарвал хэд хэдэн файлыг уншиж чадахгүйд хүрэх, агуулга нь холилдох магадлалтай. Windows 2000 нь FAT фолдерын оролтонд нэмэлт хугацааны тэмдэглэгээг хадгалдаг. Эдгээр хугацааны тэмдэглэгээ нь файл хэзээ үүсгэсэн болон сүүлд хандсаныг харуулдаг.
Директор доторх атрибут байт бүр ямар төрлийн оролт болохыг дүрсэлдэг бүх директор доторх оролтууд ижил хэмжээтэй байдаг.Жишээ нь : 1 бит нь оролт нь дэд директорт зориулагдсан гэдгийг, бусад битүүд оролтын хэмжээг тэмдэглэдэг. Ерөнхийдөө зөвхөн үйлдлийн систем эдгээр бүх битийн байрлалуудыг удирдан зохион байгуулдаг. Атрибутын байт нь 4 бит агуулдаг ба эдгээр нь хэрэглэгчийг архивлан, системийн болгон, нуун эсвэл зөвхөн унших эрхтэй болгодог.
Flag
Утга
Битүүд
Тайлбар
Чухал эсэх
0000
0001
0x01
Зөвхөн унших
Үгүй
0000
0010
0x02
Нууцлагдсан файл
Үгүй
0000
0100
0x04
Системийн файл
Үгүй
0000
1000
0x08
Volume хаяг
Тийм
0000
1111
0x0f
Long file name
Тийм
0001
0000
0x10
Директор
Тийм
0010
0000
0x20
Архив
Үгүй

FAT- ийн давуу болон дутагдалтай тал
 Хаягийн алдаа илрүүлдэг, өгөгдлийг сэргээдэг олон программ хангамжийн tool-ууд FAT16 дээр байдаг. Хэрвээ таны компьютер эхлэхэд алдаа гардаг бол MS-DOS bootable floppy disk- ийг хэрэглэн алдааг илрүүлэх боломжтой. Санах ойд маш бага зай эзэлдэг буюу хэмжээ бага, хурдан зэрэг давуу талтай.
 Root Folder нь хамгийн ихдээ 512 оролтыг удирдан зохион байгуулж чадна . FAT16 нь файлын хэмжээ нэмэгддэхэд үр ашиггүй болдог. Файлын хэмжээнээс бус кластерын хувиарлалт хэлбэр дээр суурилагдан файл хадгалахад зориулан зайг хувиарладаг. Ж/нь : 1.2 GB багтаамжтай диск дээр 10KB хэмжээтэй файл хадгалахад 32KB кластерыг хэрэглэх ба дискний зайны 22 KB нь үрэгддэг. Boot sector нь нөөцлөгддөггүй. Файл системийн хамгаалалт байхгүй, шахалт хийгддэггүй.

FAT32
Энэ нь шинэ Windows 2000 ийг дэмжин гарч ирсэн. Windows95 OSR2-той Микрософт 12 эсвэл 16 бит FAT-ын оронд FAT бүрт 32 бит байхаар шинэ FAT-ыг санал болгосон ба энд зөвхөн 28 бит нь кластерын дугаарыг агуулж үлдсэн 4 бит нь ашиглагдахгүй. Гэхдээ FAT 32 нь FAT16-тай адил аргаар кластеруудыг хуваадаг. FAT32 – ийн кластерын хэмжээ 1 сектор(512 bytes)-аас 64 сектор(32 KB) болж хүчин чадал нь 2 дахин нэмэгдсэн. FAT32 нь кластерын утгыг хадгалахад 4 байтыг шаарддаг болсноос хойш олон дотоод болон диск дээрх өгөгдлийн бүтэц нь засварлагдан өргөтгөгдсөн. Ихэнх программд эдгээр өөрчлөлт дэмжээгүй хэдийч зарим дискүүд нь FAT32-ийг дэмжин өөрчлөгдсөн.
FAT16 болон FAT32-ын хамгийн чухал ялгаа нь логик partition хэмжээ юм. FAT32 нь FAT16 ийн 2GB-ийн логик драйверын хязгаарийг эвдэж дан логик драйверын багтаамжийг өргөтгөж хамгийн багадаа 127GB болгосон. Хэрвээ та 2GBийн FAT16драйвертай бол 32KB блокыг хэрэглэх ѐстой. FAT32 4 KB кластерын хүрээ нь 512 MB -8GBийн хэмжээний драйверийг агуулдаг. Partition хэмжээ
Default кластерын хэмжээ
8 GB – аас бага
4 K
8 GB <= 16 GB
8 K
16GB <= 32 GB
16 K
16 GB – аас их
32 K

FAT32 нь root фолдерийн байрлалыг өөрчлөх, file allocation хүснэгтэн дэх нөөцлөгдсөн хуулбарыг хэрэглэх боломжтой байдаг. Учир нь root фолдер нь файл системд тусгай зай эзэлэхын оронд өгөгдөл байрлуулах хэсгийн хаана ч байрладаг. Тиймээс FAT32 нь root фолдер доторх оролтын дугаарыг хязгаарладаггүй. FAT32 зайг илүү бүтээмжтэй ашигладаг. ӨХ бусад FAT болон FAT16 харьцуулбал дискний зай ашиглалтаараа 10-15
хувиар илүү байдаг. Мөн хурд санах ойн хувьд үр ашигтай. Таны файл хэмжээнээс шалтгаалаад FAT32 нь 10,100н мегабайтын нэмэлт чөлөөт дискний зай гаргах боломжтой. FAT32 нь автоматаар file allocation table дэх backup хуулбарыг хэрэглэдэг.Харин FAT16 нь зөвхөн диск засварлах tool хэрэглэхэд backup хийдэг. Ер нь их хэмжээ өгөгдөлтэй харьцах гэгээгүй л бол FAT файл системийг хэрэглэх нь илүү тохиромжтой. FAT32 нь multiboot компьютерыг дэмждэг.
200MB-ээс доош partition-ний хэмжээтэй бол FAT32 файл систем нь сайн сонголт болох боловч өөдий үед ийм хэмжээтэй partition-г жижиг хэмжээтэй card –д хэрэглэдэг. Floppy disk-ийг Windows NT зөвхөн FAT32-оор форматладаг.
 Windows 95, Windows 98 үйлдлийн системүүдтэй FAT32 шууд холбогддоггүй. Хэрвээ компьютер эхлүүлэхэд алдаа гарахад MS-DOS, Windows 95 bootable floppy disk хэрэглэн компьютерийг эхлүүлж чадахгүй. Их хэмжээний partition нь санах ойн үр ашгийг муутгадаг. FAT32 нь мөн алдаанд тэсвэртэй систем биш. Компьютерийн гэмтэл, хардверын буруу ажиллагаа, программын гэнэтийн өөрчлөлт зэрэгт гэмтдэг. Учир нь энэ их хэмжээний файл хадгалахад зориулан хийгдсэн.


NTFS(New Technology File System)
NTFS файл систем нь 1990 оны сүүлээр бүтээгдсэн. Microsoft өндөр чанар, гүйцэтгэлтэй найдвартай хамгаалалт сайтай үйлдлийн систем хийхийг хүссэн. MS-DOS Windows 3.x үйлдлийн системүүдийн хамгийн том дутагдалтай тал нь FAT файл систем гэж тэд үзсэн. FAT-аар сүлжээний орчинд өгөгдлийг хадгалах удирдахад хүндрэлтэй.Иймээс FAT-д суурилаагүй шинэ файл систем бүтээсэн нь New Technology File System юм. Энэ файл систем нь анх Windows NT дээр суурилан гарч ирсэн бөгөөд Windows 2000 , 2008, Windows XP, Windows Server 2003, Windows Server 2008, Windows Vista, Windows 7 үйлдлийн системүүдийг дэмжин ажилладаг.
Олон давуу талтай.
 Reliability – Өгөгдлийн алдагдлаас зайлсхийдэг ба алдаанд тэсвэртэй байдаг. Файлын оролт гаралтын үйл ажиллагаа нь transaction log-д хадгалагддаг. Хэрвээ системд ямар нэг гэмтэл, хүчтэй саатал үүсвэл энэ log файлын тусламжтайгаар partition-ийг ахин сэргээх, гажуудлаас урьдчилан сэргийлэх боломжтой.
 Security and Access Control – Файл систем доторх олон төрлийн өгөгдөл дээрх үйлдлийг эрэмбэлж хандалтыг удирддаг. Хамгийн том давуу тал болдог.
 Storage Efficiency- санах ойн үр ашигтай хувиарлалтыг хийдэг.
 Breaking Size Barriers-1018 буюу хамгийн том partition-ний хэмжээ.
 Long File Name- Файлын нэр нь 255 тэмдэгт байхыг зөвшөөрдөг.

Үүнээс гадна файл системийн дэс дарааллыг автоматаар сэргээн мэдээллийг шалган, log файлыг хэрэглэн алдааг олдог. NTFS дээр шахалт хийгдсэн файлууд нь бусад ямар ч задалдаг (decompessed)программыг хэрэглэлгүйгаар WINDOWS суурьтай application-уудад унших бичиж чаддаг. Задлалт нь файлыг унших явцад автоматаар хийгддэг. NTFS нь файл системийн байрлах цэгээ тохируулдаг. NTFS нь мөн journaling файл систем юм.
Хувиарлалт
NTFS нь индексжүүлсэн хувиарлуулалтын аргыг ашигладаг. Энэ нь файлд харъяалагдах бүх блокийн тухай мэдээллийг ямар нэг блокод төвлөрүүлдэг.Дэлгэрэнгүйг лекц дээр үзсэн.
NTFS нь файл, директор, хатуу дискэн дээрх тэдгээрийн байршлын талаар мэдээллийг хадгалах master file table (MFT) буюу мастер файлуудын хүснэгт гэгдэх бааз ашигладаг. FAT файлын систем нь FAT ба root директорыг хатуу дискний эхэнд бичдэг бол NTFS нь хатуу дискний төгсгөлд MFT-г бичдэг.

NTFSийн бүтэц
Partition boot sector
Master File Table
System files
File area

Partition boot sector
Partition boot sector нь 0-16 хүртэлх секторын урттай байх ба файл систем нь volume-д хандахад хэрэглэгддэг. Boot sector нь 8KB урттай. PBS нь 2 өөр primary бүтэцтэй.
BIOS parameter block – Энэ нь partition-ний талаарх мэдээллийг агуулдаг. Volume нэр, хэмжээ болон метафайлын байрлал
Volume Boot Code- Үйлдлийн системийг хэрхэн ачааллах талаар системийн заавар өгдөг программын кодын жижиг блок
Master File Table
NTFS нь master file table гэж нэрлэгдэх файлыг агуулдаг. NTFS volume дотор файл бүрд зориулсан MFT байдаг ба энэ нь хамгийн багадаа 1 оролттой байдаг. Энэ оролт дотор файлын тухай бүх мэдээлэл(файлын хэмжээ, хугацаа, өгөгдлийн төрөл, хандалтын эрх, өгөгдлийн агуулга г.м) байдаг. Файл NTFS volume дээр нэмэгдэхэд ихэнх оролт нь MFT руу нэмэгддэг ба устгахад MFT нь free гэж тэмдэглэгдээд магадгүй дахин хэрэглэх боломжтой болдог. Гэхдээ дискний зай эдгээр оролтуудад ахин хуваагддаггүй ба MFTийн хэмжээ багасдаггүй. MFT-д хадгалахад тиймч их зай шаарддаггүй онцлогтой. Файлд зориулагдсан бүх мэдээлэл их байвал MFT file record дээр тааруулаад үлдсэн нь дискний сул зайны хаана нэгтэй 1 эсвэл хэд хэдэн блокууд дээр хуваагддаж байрладаг.
Ø NTFS multiple data stream

NTFS нь олон өгөгдлийн урсгалын дэмждэг ба урсгалын нэр нь файл дээрх шинэ өгөгдлийн атрибутаар танидаг. Өгөгдлийн урсгал бүр нь нээлттэй байдаг. Урсгалуудын файлын түлхүүрүүд, хэмжээ өөр байдаг ба энгийн permission-тэй.
Ø NTFS compressed Files

Диск дээрх эзлэх файлын хэмжээг багасгадаг ба ихэнх файлуудыг нэг аргаар шахалт хийн хадгалдаг. Үйлдлийн системийн ихэнх нь дискийг бүхэлд нь шахалт хийхийг зөвшөөрдөг гэхдээ NTFS салангид файл фолдеруудыг NTFS partition дотор шахалт хийхийг бас зөвшөөрдөг. Шахалт нь бичилт хийх хугацаанд үйлдлийн системээр боловсруулагддаг ба задлалт нь файл уншихад ямар ч application хэрэглэсэн автоматаар хийгддэг.
Ø NTFS Security and Encryption

Encrypting File System-ээр хангагдсан.
Ø NTFS Sparse File

Sparse файл нь зөвхөн ямар нэг агуулгатай( утга нь 0 биш) өгөгдлийг хувиарлахдаа оролт гаралтын дэд системийг ашиглахад хэрэглэгдэх атрибуттай. 0 утгатай өгөгдөл нь диск дээр хувиарлагдах ба ямар ч утгагүй өгөгдөл нь хувиарлагддаггүй.NTFS нь sparse өгөгдлийн урсгалыг дахин хувиарладаг. Программ sparse файлд хандахад файл систем нь жинхэнэ бодит өгөгдлийн адил хувиарлагдсан өгөгдлийг өгдөг. Жишээ нь бид word-ийн файл нээгээд тэр нь дээ юу ч бичихгүй хадгалла гэх тэр файл маань дискний аль нэг хэсэгт хувиарлагдаад 10 KB хэмжээтэй зай эзэлээд байж байна.
Ø Hard link

Хэрэв хатуу диск нь их хэмжээтэй, тухайн драйвер дээрээ хоѐрдогч үйлдлийн системээрээ Windows98 суулгахгүй гэж тооцоолсон бол, улмаар нууцлалаа чухалчилж байвал WindowsNT/2000/XP–ын хувьд NTFS-г ашиглах нь зүйтэй. Өөрөөр хэлбэл WindowsNT/2000/XP-г CD-ээс суулгах явцад NTFS-г зэрэг суулгах нь хамгийн зөв шийдэл бөгөөд инэснээр үйлдлийн системээ суулгасны дараа FAT-г NTFS рүү шилжүүлэх гэж төвөг удах шаардлагагүй болно.
Ø Хэрэглэгч бүр дискний зайг шалгах удирдах чадвартай байдаг.

Санамсаргүй тохиолдлоор(Хэрэглэгчийн г.м ) системд өөрчлөлт ороод компьютерыг асаахад устсан болон засварлагдсан системийн файлууд нь үйлдлийн ачаалахад саад болдог. Windows 2000 үйлдлийн систем дээр үүнийг шийдэж Safe Mode-оор орж энэ асуудлыг шийдэх болсон.

400MB-аас дээш partition дээр муу гүйцэтгэлтэй. Ихэнх үйлдлийн систем дээр хэрэглэгддэггүй. Жишээ нь: Linux kernel 2.2.x болон түүнээс хойших хувилбарууд дээр унших бичих драйверууд нь тохиромжтой боловч бичих нь одоо хүртэл асуудалтай байгаа . Эдгээр драйверууд нь мөн NTFS ийн хамгаалалтын онцлогуудыг дэмждэггүй.






Ext3
Ext3 нь journaling файл систем бөгөөд Linux-ийн 2.4.16 кернел- ээс хойшх хувилбаруудыг дэмждэг.
Эхлээд journaling гэж ямар файл систем болох талаар тайлбарлъя. Үйлдлийн систем нь диск өөрчлөлт(файл бичих) хийхэд файл системийн драйверууд нь мэдээлэлээ бичихдээ эдгээр өөрчлөлтүүдийг journal дээр бичдэг. Үйлдлийн систем нь өөрчилөлт хийснийхээ дараа диск нь тогтсон бүтэцтэй болох ба үйлдлийн систем нь journal-ийг цэвэрлэдэг. Journal- ийг хэрэглэснээр системийн гэмтэл, хүчин чадлын алдагдалд орох тохиолдолд OS нь файл болон диск нь ямар нэг асуудалд орсоныг мэддэг.Яагаад гэвэл бүх өөрчлөлтүүд journal дээр бичигддэг.OS нь мөн journal дээр тэмдэглэснээр үйлдлээ урагшлуулах, хойшлуулаж чаддаг.
Ext3 нь компьютер унтрах, хардверын алдаа,системийн алдааны дараа файл системийг шалгахыг шаарддаггүй. Учир нь бүх өгөгдлөө диск дээрээ бичдэг. Ингэснээр файл систем тогтвортой ажилладаг. Өгөгдлийн бүрэн бүтэн байдлыг хангадаг. Ext2 дээр суурилдаг гэхдээ ext2 нь journaling биш байсан. Ext2-оос ext3-руу ахин форматлахгүйгээр хялбар шилжих боломжтой. Ext3 дараах 3н journaling level-тэй.
Ø Data=journal- Бүх өгөгдөл болон мета өгөгдөл нь 2 газар(Нэг нь journal дээр нөгөө нь хард дээр) бичигддэг.Ингэснээр гүйцэтгэл бага зэрэг удаан болно. Мета өгөгдөл нь цаг хугацааны мэдээлэл, эзэмшлийн мэдээлэл, файл хандалтын мэдээлэл, бусад хамгаалалтын мэдээлэл, файлын хэмжээ, санах ойн болон диск дээрх байрлалын мэдээллийг багтдаг.
Ø Data =ordered(medium risk)- Зөвхөн мета өгөгдлийн өөрчлөлтийг(journal дээр) бичдэг. Гэхдээ Энэ ямар нэг гэмтлийн дараа файл нь хэзээ ч гэмтсэн өгөгдлийн блокод шилждэггүй гэдгийг баталж өгдөг арга юм.
Ø Data = writeback(highest risk)- Зөвхөн мета өгөгдлийн өөрчлөлтийг(journal дээр) бичдэг. Өгөгдлийн өөрчлөлт нь бүхэлдээ орхигддог. Гэмтлийн дараа файлууд нь хуучин файлаас гэмтсэн өгөгдлийн блок руу шилждэг.

Файл системийн хувьд tune2fs программын тусламжтайгаар ext2-ext3руу хөрвүүлэх боломжтой.
Бусад файл системээс ялгаатай нь хэрвээ файлыг устгавал inode файлын нэртэй холбогдохгүй болох боловч зарим программ файлыг хэрэглэж байвал үйлдлийн системтэй холболт нь нээлттэй хэвээр байх ба бүх холболт тасрах хүртэл жинхэнээсээ устахгүй. Файлын хатуу диск дээр тасарч хадгалагдсан хэсгүүдийг эвлүүлэн нэгтгэх буюу defragment хийдэггүй. Учир нь Unix ийн файл системүүд файлын блокыг хамт нь хадгалахаар кодлогдсон байдаг.
ExtX-н үндсэн байршилын мэдээлэл нь superblock дотор хадгалагддаг. Файлийн контентууд нь блокуудад хадгалагддаг ба блокууд нь дэс дараалсан секторуудын групп юм. Директор болон файл бүрийн метадата зарлагдсан inode буюу inode хүснэгтэнд байрласан тодорхой хэмжээнд хадгалагдана. Тэнд блок групп бүрд нэг inode хүснэгт байна. Файлын нэр нь directory entry байгууламжинд хадгалагдах ба энэ нь файлын парент директорт хуваарилагдсан блокуудад байрлана.

No comments:

Post a Comment