Anong mga uri ng mga file ang naroroon sa file system. Istraktura ng file system. Boot block

Mga sistema ng file. Mga uri ng mga file system. Mga operasyon ng file. Mga katalogo. Mga operasyon na may mga direktoryo.

file ay isang pinangalanang lugar ng panlabas na memorya na maaaring isulat at basahin mula sa.

Pangunahing layunin ng paggamit ng file.

    Pangmatagalan at maaasahang pag-iimbak ng impormasyon .

    Ang tibay ay nakakamit sa pamamagitan ng paggamit ng mga storage device na hindi umaasa sa kapangyarihan, at ang mataas na pagiging maaasahan ay natutukoy sa pamamagitan ng pagprotekta sa pag-access sa mga file at ang pangkalahatang organisasyon ng OS program code, kung saan ang mga pagkabigo ng hardware ay kadalasang hindi sumisira sa impormasyong nakaimbak. sa mga file. Pagbabahagi ng impormasyon . Ang mga file ay nagbibigay ng natural at

madaling paraan paghihiwalay ng impormasyon sa pagitan ng mga application at mga user dahil sa pagkakaroon ng isang simbolikong pangalan na nababasa ng tao at ang pananatili ng nakaimbak na impormasyon at lokasyon ng file.

software

, pagpapatupad

    iba't ibang operasyon sa mga file, tulad ng paglikha, pagsira, pagbabasa, pagsulat, pagpapangalan at paghahanap ng mga file. Kaya, ang file system ay gumaganap ng papel ng isang intermediate layer na nagsa-screen out sa lahat ng mga kumplikado ng pisikal na organisasyon ng pangmatagalang imbakan ng data, at lumilikha ng isang mas simpleng lohikal na modelo para sa storage na ito para sa mga programa, pati na rin ang pagbibigay sa kanila ng isang set ng madaling gamitin na mga utos para sa pagmamanipula ng mga file. - Ang mga sumusunod na file system ay malawak na kilala: file system operating system - MS ( DOS , na batay sa talahanayan ng paglalaan ng file ).

Ang talahanayan ay naglalaman ng impormasyon tungkol sa lokasyon ng lahat ng mga file (bawat file ay nahahati sa mga kumpol Ang mga kumpol ng parehong file ay hindi kinakailangang matatagpuan sa tabi ng bawat isa, depende sa pagkakaroon ng espasyo sa disk). Ang MS-DOS file system ay may makabuluhang limitasyon at disadvantages, halimbawa, sa ilalim Pangalan Ang file ay inilalaan ng 12 bytes;

Ang mga pangunahing pag-andar sa naturang FS ay naglalayong lutasin ang mga sumusunod na gawain:

    pagpapangalan ng file;

    interface ng application programming;

    display lohikal na modelo file system sa pisikal na organisasyon ng imbakan ng data;

    Katatagan ng file system sa mga power failure, mga error sa hardware at software.

    OS /2 , tinawag HPFS ( Mataas - Pagganap DOS Sistema - mabilis na file system).

Nagbibigay ng kakayahang magkaroon ng pangalan ng file na hanggang 254 na character. Ang mga file na nakasulat sa disk ay may kaunting fragmentation. Maaaring gumana sa mga file na nakasulat sa MS DOS;

May idaragdag na bagong gawain sa mga gawaing nakalista sa itaas pagbabahagi ng file mula sa maraming proseso. Ang file sa kasong ito ay isang nakabahaging mapagkukunan, na nangangahulugan na ang file system ay dapat na malutas ang buong hanay ng mga problema na nauugnay sa naturang mga mapagkukunan. Sa partikular, ang FS ay dapat magbigay ng paraan para sa pagharang sa isang file at sa mga bahagi nito, pagpigil sa mga karera, pag-aalis ng mga deadlock, pag-reconcile ng mga kopya, atbp.

Sa mga multi-user system, lalabas ang isa pang gawain: pagprotekta sa mga file ng isang user mula sa hindi awtorisadong pag-access ng isa pang user.

    operating system file system Windows 95

Mayroon itong antas na istraktura, na nagbibigay-daan sa iyo upang suportahan ang ilang mga file system nang sabay-sabay. Ang lumang MS-DOS file system ay direktang sinusuportahan, at ang mga file system ay hindi binuo ng kumpanya Microsoft, ay sinusuportahan gamit ang espesyal mga module. Posibleng gumamit ng mahahabang (hanggang 254 character) na mga pangalan ng file.

    operating system file system Unix

Nagbibigay ang mga ito ng pinag-isang paraan para ma-access ang mga I/O file system.

Ang mga pahintulot ng file ay halos tinutukoy ang mga karapatan sa pag-access sa system (ang may-ari ng file ay ang user na lumikha nito).

Mga uri ng file

Sinusuportahan ng mga file system ang ilang mga pag-andar iba't ibang uri mga file, na kadalasang kinabibilangan ng regular na mga file, mga file ng direktoryo, mga espesyal na file, pinangalanang mga tubo, mga file na naka-memorya, at iba pa.

Mga regular na file , o simpleng mga file, ay naglalaman ng di-makatwirang impormasyon na ipinasok sa kanila ng user o na nabuo bilang resulta ng pagpapatakbo ng system at mga program ng user. Karamihan sa mga modernong operating system (halimbawa, UNIX, Windows, OS/2) ay hindi naghihigpit o kinokontrol ang mga nilalaman at istraktura ng isang regular na file sa anumang paraan. Ang mga nilalaman ng isang regular na file ay tinutukoy ng application na gumagana kasama nito. Halimbawa, ang isang text editor ay gumagawa ng mga text file na binubuo ng mga string ng mga character na kinakatawan sa ilang code. Ang mga ito ay maaaring mga dokumento, program source code, atbp. Ang mga text file ay maaaring basahin sa screen at i-print sa isang printer. Ang mga binary file ay hindi gumagamit ng mga code ng character; archive file. Ang lahat ng mga operating system ay dapat na makilala ang hindi bababa sa isang uri ng file - ang kanilang sariling mga executable na file.

Mga katalogo - ito ay isang espesyal na uri ng file na naglalaman ng system impormasyon sa background tungkol sa isang hanay ng mga file na pinagsama-sama ng mga user ayon sa ilang impormal na pamantayan (halimbawa, mga file na naglalaman ng mga dokumento ng parehong kasunduan, o mga file na bumubuo sa isa pakete ng software). Sa maraming mga operating system, ang isang direktoryo ay maaaring maglaman ng anumang uri ng file, kabilang ang iba pang mga direktoryo, na lumilikha ng isang istraktura ng puno na madaling hanapin. Ang mga direktoryo ay nagtatatag ng pagmamapa sa pagitan ng mga pangalan ng file at mga katangian ng file na ginagamit ng file system upang pamahalaan ang mga file. Kabilang sa mga naturang katangian, sa partikular, ang impormasyon (o isang pointer sa isa pang istraktura na naglalaman ng data na ito) tungkol sa uri ng file at lokasyon nito sa disk, mga karapatan sa pag-access sa file, at ang mga petsa ng paglikha at pagbabago nito. Sa lahat ng iba pang aspeto, ang mga direktoryo ay itinuturing ng file system bilang mga regular na file.

Mga espesyal na file - Ito ay mga dummy file na nauugnay sa mga I/O device, na ginagamit upang pag-isahin ang mekanismo para sa pag-access ng mga file at external na device. Ang mga espesyal na file ay nagbibigay-daan sa user na magsagawa ng mga operasyon ng I/O gamit ang mga normal na command para sa pagsusulat sa isang file o pagbabasa mula sa isang file. Ang mga utos na ito ay unang pinoproseso ng mga programa ng file system, at pagkatapos ay sa ilang yugto ng pagpapatupad ng kahilingan, sila ay na-convert ng operating system sa mga control command para sa kaukulang device.

Sinusuportahan ng mga modernong file system ang iba pang mga uri ng file, tulad ng mga simbolikong link, pinangalanang pipe, at memory-mapped na mga file.

Hierarchical na istraktura ng file system

Ina-access ng mga user ang mga file sa pamamagitan ng mga simbolikong pangalan. Gayunpaman, nililimitahan ng memorya ng tao ang bilang ng mga pangalan ng bagay na maaaring sumangguni sa isang user sa pamamagitan ng pangalan. Ang hierarchical na organisasyon ng namespace ay nagbibigay-daan sa amin na makabuluhang palawakin ang mga hangganang ito. Ito ang dahilan kung bakit ang karamihan sa mga file system ay may hierarchical na istraktura, kung saan ang mga antas ay nilikha sa pamamagitan ng pagpayag sa isang mas mababang antas na direktoryo na mapaloob sa loob ng isang mas mataas na antas na direktoryo (Figure 7.3).

Ang graph na naglalarawan sa hierarchy ng direktoryo ay maaaring isang puno o isang network. Ang mga direktoryo ay bumubuo ng isang puno kung ang isang file ay pinapayagan na isama sa isang direktoryo lamang (Larawan 7.3, b), at isang network - kung ang file ay maaaring isama sa ilang mga direktoryo nang sabay-sabay (Larawan 7.3, c). Halimbawa, sa MS-DOS at Windows, ang mga direktoryo ay bumubuo ng isang istraktura ng puno, habang sa UNIX sila ay bumubuo ng isang istraktura ng network. Sa isang istraktura ng puno, ang bawat file ay isang dahon. Tinatawag ang top-level na direktoryo root directory, o root ( ugat ).

Sa organisasyong ito, ang gumagamit ay pinalaya mula sa pag-alala sa mga pangalan ng lahat ng mga file; kailangan lang niyang magkaroon ng magaspang na ideya kung aling grupo ang maaaring italaga sa isang partikular na file upang mahanap ito sa pamamagitan ng sunud-sunod na pag-browse sa mga direktoryo. Ang hierarchical na istraktura ay maginhawa para sa multi-user na trabaho: ang bawat user na may kanyang mga file ay naisalokal sa kanyang sariling direktoryo o subtree ng mga direktoryo, at sa parehong oras, ang lahat ng mga file sa system ay lohikal na konektado.

Isang espesyal na kaso hierarchical na istraktura ay isang solong antas na organisasyon, kapag ang lahat ng mga file ay kasama sa isang direktoryo (Larawan 7.3, a).

Mga pangalan ng file

Ang lahat ng mga uri ng file ay may mga simbolikong pangalan. Karaniwang gumagamit ng tatlong uri ng mga filename ang hierarchically organized na mga file system: simple, compound, at relative.

Ang isang simple, o maikli, simbolikong pangalan ay tumutukoy sa isang file sa loob ng iisang direktoryo. Ang mga simpleng pangalan ay itinalaga sa mga file ng mga user at programmer, at dapat nilang isaalang-alang ang mga paghihigpit ng OS sa parehong hanay ng mga character at ang haba ng pangalan. Hanggang kamakailan lamang, ang mga hangganang ito ay napakakitid. Kaya, sa sikat na FAT file system, ang haba ng mga pangalan ay limitado sa scheme 8.3 (8 character - ang pangalan mismo, 3 character - ang extension ng pangalan), at sa s5 file system, suportado ng maraming bersyon ng UNIX OS, ang isang simpleng simbolikong pangalan ay hindi maaaring maglaman ng higit sa 14 na mga character. Gayunpaman, mas maginhawa para sa gumagamit na magtrabaho sa mahahabang pangalan dahil pinapayagan ka nitong bigyan ang mga file ng mga pangalan na madaling tandaan na malinaw na nagpapahiwatig kung ano ang nilalaman ng file. Samakatuwid, ang mga modernong file system, pati na rin ang mga pinahusay na bersyon ng mga dati nang file system, ay may posibilidad na suportahan ang mahaba, simpleng simbolikong mga pangalan ng file. Halimbawa, sa NTFS at FAT32 file system na kasama ng Windows NT operating system, ang isang pangalan ng file ay maaaring maglaman ng hanggang 255 character.

Sa mga hierarchical file system, ang iba't ibang mga file ay pinahihintulutan na magkaroon ng parehong simpleng simbolikong mga pangalan, kung nabibilang sila sa iba't ibang mga direktoryo. Iyon ay, ang scheme na "maraming mga file - isang simpleng pangalan" ay gumagana dito. Upang natatanging makilala ang isang file sa naturang mga sistema, ginagamit ang tinatawag na buong pangalan.

Ang buong pangalan ay isang hanay ng mga simpleng simbolikong pangalan ng lahat ng mga direktoryo kung saan dumadaan ang landas mula sa ugat hanggang sa ibinigay na file. Kaya, ang buong pangalan ay isang tambalang pangalan, kung saan ang mga simpleng pangalan ay pinaghihiwalay sa isa't isa ng separator na tinatanggap sa OS. Kadalasan ang isang forward o backslash ay ginagamit bilang isang delimiter, at kaugalian na hindi tukuyin ang pangalan ng root directory. Sa Fig. 7.3, b dalawang file ang may simpleng pangalan na main.exe, ngunit magkaiba ang kanilang mga tambalang pangalan /depart/main.exe at /user/anna/main.exe.

Sa isang tree file system, mayroong isa-sa-isang sulat sa pagitan ng isang file at ang buong pangalan nito: isang file - isang buong pangalan. Sa mga file system na may istraktura ng network, ang isang file ay maaaring isama sa ilang mga direktoryo, at samakatuwid ay may ilang buong pangalan; dito ang sulat na "isang file - maraming buong pangalan" ay wasto. Sa parehong mga kaso, ang file ay natatanging kinilala sa pamamagitan ng buong pangalan nito.

Ang isang file ay maaari ding makilala sa pamamagitan ng isang kamag-anak na pangalan. Ang kamag-anak na pangalan ng file ay tinutukoy sa pamamagitan ng konsepto ng "kasalukuyang direktoryo". Para sa bawat user, sa anumang oras, isa sa mga direktoryo ng file system ay ang kasalukuyang direktoryo, at ang direktoryong ito ay pinili ng user mismo sa isang utos ng OS. Kinukuha ng file system ang pangalan ng kasalukuyang direktoryo upang magamit ito bilang pandagdag sa mga kamag-anak na pangalan upang mabuo ang ganap na kwalipikadong pangalan ng file. Kapag gumagamit ng mga kamag-anak na pangalan, kinikilala ng user ang file sa pamamagitan ng hanay ng mga pangalan ng direktoryo kung saan ang ruta mula sa kasalukuyang direktoryo patungo sa ang file na ito. Halimbawa, kung ang kasalukuyang direktoryo ay /user, kung gayon ang kamag-anak na pangalan ng file /user/anna/main.exe ay anna/main.exe.

Binibigyang-daan ka ng ilang operating system na magtalaga ng maraming simpleng pangalan sa parehong file, na maaaring bigyang-kahulugan bilang mga alias. Sa kasong ito, tulad ng sa isang sistema na may istraktura ng network, ang sulat na "isang file - maraming buong pangalan" ay itinatag, dahil ang bawat simpleng pangalan ng file ay tumutugma sa hindi bababa sa isang buong pangalan.

At kahit na ang buong pangalan ay natatanging kinikilala ang file, mas madali para sa operating system na gumana sa file kung mayroong isa-sa-isang sulat sa pagitan ng mga file at kanilang mga pangalan. Para sa layuning ito, nagtatalaga ito ng isang natatanging pangalan sa file, upang ang relasyon na "isang file - isang natatanging pangalan" ay wasto. Umiiral ang natatanging pangalan kasama ng isa o higit pang mga simbolikong pangalan na itinalaga sa file ng mga user o application. Ang natatanging pangalan ay isang numeric identifier at inilaan lamang para sa operating system. Ang isang halimbawa ng kakaibang pangalan ng file ay isang numero ng inode sa isang UNIX system.

Mga katangian ng file

Kasama sa konsepto ng "file" hindi lamang ang data at pangalan na iniimbak nito, kundi pati na rin ang mga katangian nito. Mga Katangian - Ito ay impormasyong naglalarawan sa mga katangian ng file. Mga halimbawa ng posibleng katangian ng file:

    uri ng file (regular na file, direktoryo, espesyal na file, atbp.);

    may-ari ng file;

    tagalikha ng file;

    password upang ma-access ang file;

    impormasyon tungkol sa pinahihintulutang pag-access ng file;

    panahon ng paglikha, huling pag-access at huling pagbabago;

    kasalukuyang laki ng file;

    maximum na laki ng file;

    read-only sign;

    sign na "nakatagong file";

    lagdaan ang "system file";

    lagdaan ang "archive file";

    "binary/character" attribute;

    katangian na "pansamantala" (alisin pagkatapos makumpleto ang proseso);

    tanda ng pagharang;

    haba ng talaan ng file;

    pointer sa key field sa record;

    haba ng susi.

Ang hanay ng mga katangian ng file ay tinutukoy ng mga detalye ng file system: ang iba't ibang uri ng mga file system ay maaaring gumamit ng iba't ibang hanay ng mga katangian upang makilala ang mga file. Halimbawa, sa mga file system na sumusuporta sa mga flat file, hindi na kailangang gamitin ang huling tatlong katangian sa listahan na nauugnay sa pag-istruktura ng file. Sa isang solong user na OS, ang hanay ng mga katangian ay kulang sa mga katangiang nauugnay sa mga user at seguridad, tulad ng may-ari ng file, ang lumikha ng file, ang password para sa pag-access sa file, impormasyon tungkol sa awtorisadong pag-access sa file.

Maaaring ma-access ng user ang mga katangian gamit ang mga pasilidad na ibinigay para sa layuning ito ng file system. Karaniwan, maaari mong basahin ang mga halaga ng anumang katangian, ngunit baguhin lamang ang ilan. Halimbawa, maaaring baguhin ng isang user ang mga pahintulot ng isang file (sa kondisyon na mayroon silang mga kinakailangang pahintulot upang gawin ito), ngunit hindi nila mababago ang petsa ng paglikha o kasalukuyang laki ng file.

Ang mga halaga ng katangian ng file ay maaaring direktang nilalaman sa mga direktoryo, tulad ng ginagawa sa MS-DOS file system (Larawan 7.6a). Ipinapakita ng figure ang istraktura ng isang entry sa direktoryo na naglalaman ng isang simpleng simbolikong pangalan at mga katangian ng file. Dito ipinapahiwatig ng mga titik ang mga katangian ng file: R - read-only, A - archive, H - hidden, S - system.

kanin. 7.6. Istraktura ng direktoryo: a - istraktura ng pagpasok ng direktoryo ng MS-DOS (32 bytes), b - istraktura ng pagpasok ng direktoryo ng UNIX OS

Ang isa pang pagpipilian ay ang paglalagay ng mga katangian sa mga espesyal na talahanayan, kapag ang mga katalogo ay naglalaman lamang ng mga link sa mga talahanayang ito. Ang diskarte na ito ay ipinatupad, halimbawa, sa ufs file system ng UNIX OS. Sa file system na ito, ang istraktura ng direktoryo ay napaka-simple. Ang entry para sa bawat file ay naglalaman ng isang maikling simbolikong pangalan ng file at isang pointer sa inode file, ito ang pangalan sa ufs para sa talahanayan kung saan ang mga halaga ng mga katangian ng file ay puro (Larawan 7.6, b).

Sa parehong mga bersyon, ang mga direktoryo ay nagbibigay ng isang link sa pagitan ng mga pangalan ng file at ang mga file mismo. Gayunpaman, ang diskarte ng paghihiwalay ng pangalan ng file mula sa mga katangian nito ay ginagawang mas nababaluktot ang system. Halimbawa, ang isang file ay madaling maisama sa ilang mga direktoryo nang sabay-sabay. Ang mga entry para sa file na ito sa iba't ibang direktoryo ay maaaring may iba't ibang simpleng pangalan, ngunit ang link field ay magkakaroon ng parehong numero ng inode.

Mga Operasyon ng File

Karamihan sa mga modernong operating system ay itinuturing ang isang file bilang isang hindi nakaayos na pagkakasunud-sunod ng mga byte variable na haba. Pamantayan POSIX Ang mga sumusunod na operasyon ay tinukoy sa file:

    int bukas ( char * fname , int mga watawat , mode _ t mode )

Ang operasyong ito ay ``magbubukas' ng file, na nagtatatag ng koneksyon sa pagitan ng program at ng file. Sa kasong ito, natatanggap ng programa deskriptor ng file- isang integer na nagpapakilala sa koneksyon na ito. Sa katunayan, ito ay isang index sa talahanayan ng system ng mga bukas na file para sa isang naibigay na gawain. Ginagamit ng lahat ng iba pang operasyon ang index na ito upang i-reference ang file.

Ang char * fname na parameter ay tumutukoy sa pangalan ng file na int flag ay medyo mask na tumutukoy sa mode ng pagbubukas ng file Ang file ay maaaring buksan read-only, write-only, o read-write. bilang karagdagan, maaari mong buksan umiiral na file, at maaari mong subukang lumikha ng isang bagong file na walang haba ang opsyonal na mode ng pangatlong parameter ay ginagamit lamang kapag gumagawa ng isang file at tinutukoy ang mga katangian ng file na iyon.

    off _ t hanapin ko ( int hawakan , off _ t offset , int saan )

Ang operasyong ito ay gumagalaw sa read/write pointer sa file Ang offset na parameter ay tumutukoy sa bilang ng mga byte kung saan i-offset ang pointer, at ang kung saan ang parameter ay tumutukoy kung saan magsisimula ang offset simula ng file (SEEK_SET), mula sa dulo nito (SEEK_END), at mula sa kasalukuyang posisyon ng pointer (SEEK_CUR). Ibinabalik ng operasyon ang posisyon ng pointer na sinusukat mula sa simula ng file. Kaya, ang pagtawag sa lseek(handle, 0, SEEK_CUR) ay ibabalik ang kasalukuyang posisyon ng pointer nang hindi ito ginagalaw.

    int read(int handle, char * where, size_t how_much)

Basahin ang operasyon mula sa isang file. Tinutukoy ng where pointer ang buffer kung saan dapat ilagay ang read data; ang ikatlong parameter ay tumutukoy kung gaano karaming data ang babasahin ng system ang kinakailangang bilang ng mga byte mula sa file, simula sa read/write pointer sa file na iyon, at inililipat ang pointer sa dulo ng read sequence. Kung ang file ay nagtatapos nang maaga, mas maraming data ang binabasa gaya ng naiwan hanggang sa katapusan nito. Ibinabalik ng operasyon ang bilang ng mga byte na nabasa. Kung ang file ay binuksan para sa pagsulat lamang, ang pagtawag sa read ay magbabalik ng error.

    int write(int handle, char * what, size_t how_much)

Isang write operation sa isang file. Tinutukoy ng what pointer ang simula ng data buffer; ang ikatlong parameter ay tumutukoy kung gaano karaming data ang isusulat ng system sa kinakailangang bilang ng mga byte sa file, simula sa read/write pointer sa file na iyon, na pinapalitan ang data na nakaimbak sa file na iyon. lokasyon, at inililipat ang pointer sa dulo ng nakasulat na bloke. Kung ang file ay natapos nang mas maaga, ang haba nito ay tataas. Ibinabalik ng operasyon ang bilang ng mga byte na nakasulat.

Kung ang file ay binuksan read-only, ang pagtawag sa write ay magbabalik ng error.

    int ioctl(int handle, int cmd, ...) ; int fcntl ( int hawakan , int cmd , ...)

Mga karagdagang operasyon sa file. Sa una, tila ang ioctl ay inilaan upang maging mga operasyon sa file mismo, at ang fcntl ay inilaan upang maging mga operasyon sa isang bukas na file handle, ngunit pagkatapos ay ang mga makasaysayang pag-unlad ay medyo pinaghalo ang mga function ng mga tawag sa system. Pamantayan POSIX tumutukoy sa ilang mga operasyon sa parehong hawakan, halimbawa pagdoble (bilang resulta ng operasyong ito nakakakuha kami ng dalawang hawakan na nauugnay sa parehong file), at sa file mismo, halimbawa, ang truncate na operasyon - trim ang file sa isang naibigay na haba. Sa karamihan ng mga bersyon Unix Ang truncate operation ay maaari ding gamitin upang i-cut ang data mula sa gitna ng isang file. Kapag nagbabasa ng data mula sa naturang cut-out na lugar, ang mga zero ay binabasa, at ang lugar na ito mismo ay hindi sumasakop pisikal na lokasyon sa disk.

Ang isang mahalagang operasyon ay upang harangan ang mga seksyon ng file.Standard POSIX nag-aalok ng function ng library para sa layuning ito, ngunit sa mga sistema ng pamilya Unix Ang function na ito ay ipinatupad sa pamamagitan ng fcntl call.

Karamihan sa mga pagpapatupad ng pamantayan POSIX nag-aalok ng sarili nitong karagdagang mga operasyon. Kaya, sa Unix SVR4 Sa mga operasyong ito maaari kang magtakda ng sabay-sabay o naantala na pag-record, atbp.

    caddr_t mmap(caddr_t addr, size_t len, int prot, int flag, int handle, off_t offset)

Pagma-map ng isang seksyon ng isang file sa virtual address space ng proseso Ang parameter ng prot ay tumutukoy sa mga karapatan sa pag-access sa naka-map na seksyon: basahin, isulat, at isakatuparan. Maaaring mangyari ang pagmamapa sa isang tinukoy na virtual na address, o maaaring piliin ng system ang address na imamapa mismo.

Dalawang higit pang mga operasyon ang ginagawa hindi sa file, ngunit sa pangalan nito: ito ang mga pagpapatakbo ng pagpapalit ng pangalan at pagtanggal ng file. Sa ilang mga sistema, halimbawa sa mga sistema ng pamilya Unix, ang isang file ay maaaring magkaroon ng maraming pangalan, at mayroon lamang isang tawag sa system upang tanggalin ang isang pangalan Ang file ay tatanggalin kapag ang apelyido ay tinanggal.

Makikita na ang hanay ng mga operasyon sa isang file sa pamantayang ito ay halos kapareho sa hanay ng mga operasyon sa panlabas na aparato. Parehong itinuturing bilang isang unstructured byte stream. Upang makumpleto ang larawan, dapat itong sabihin na ang pangunahing paraan ng interprocess na komunikasyon sa mga sistema ng pamilya Unix (tubo) ay isa ring unstructured data stream. Ang ideya na ang karamihan sa mga paglilipat ng data ay maaaring bawasan sa isang byte stream ay medyo luma, ngunit Unix ay isa sa mga unang sistema kung saan ang ideyang ito ay dinala sa lohikal na konklusyon nito.

Tinatayang ang parehong modelo ng pagtatrabaho sa mga file ay pinagtibay sa C.P./ M, at isang set ng file mga tawag sa system MS DOS talagang kinopya mula sa mga tawag Unix v7 . Sa turn, OS/2 At Windows NT minana ang mga prinsipyo ng pagtatrabaho sa mga file nang direkta mula sa MS DOS.

Sa kabaligtaran, sa mga sistemang walang Unix sa isang pedigree, maaaring gumamit ng isang bahagyang naiibang interpretasyon ng konsepto ng isang file. Karaniwan, sinusuportahan ng system ang parehong mga talaan ng pare-pareho ang haba at variable na haba. Halimbawa, ang isang text file ay binibigyang kahulugan bilang isang file na may variable na haba ng mga tala, at ang bawat linya ng teksto ay tumutugma sa isang tala. Ito ang modelo para sa pagtatrabaho sa mga file sa VMS at sa linya ng OS OS/360 -MVS mula sa IBM.

FEDERAL EDUCATION AGENCY

INSTITUSYON NG EDUKASYON NG ESTADO

HIGHER PROFESSIONAL EDUCATION

"ST. PETERSBURG STATE UNIVERSITY

EKONOMIKS AT PANANALAPI"

DEPARTMENT OF INFORMATION SCIENCE

Abstract sa computer science

sa paksa:

Mga sistema ng file

Nakumpleto: mag-aaral 110 pangkat O110

E.V.Andreeva

Superbisor: ang prof. E.A. Osipova

Saint Petersburg

2009

Panimula………………………………………………………………3

1. File Sistema ng FAT…………………………………..4

2. File system FAT32…………………………………..5

3. HPFS file system…………………………………………6

4. File Sistema ng NTFS…………………………………8

Konklusyon……………………………………………………9

Listahan ng mga sanggunian……………………………..10

Panimula

Ang file system ay kung ano ang nagpapanatili sa malayo mula sa perpekto, ngunit minimal pa rin, pagkakasunud-sunod sa aming mga hard drive. Ang storage media ay may kakayahan lamang na mag-imbak, sumulat o magbasa ng mga piraso ng data mula sa ilang partikular na sektor, at ang file system ay responsable para sa pag-access ng impormasyon. Ang terminong ito ay maaaring bigyan ng ilang mga kahulugan, ang bawat isa ay tama. Ang file system ay isang sistema para sa pag-aayos at pag-iimbak ng impormasyon sa isang hard drive o iba pang media, mga algorithm ng software ng operating system para sa pamamahala ng sistema ng organisasyon ng impormasyon na ito, at, sa wakas, sa pang-araw-araw na antas, ito ay isang koleksyon ng lahat ng mga file at folder sa isang disk.

Ang file system ay tumutukoy sa:

Paano iniimbak ang mga file at direktoryo sa disk;

Anong impormasyon ang nakaimbak tungkol sa mga file at direktoryo;

Paano mo malalaman kung aling mga bahagi ng disk ang libre at alin ang hindi;

Format ng mga direktoryo at iba pang impormasyon ng serbisyo sa disk.

Titingnan namin ang apat na file system - FAT, FAT 32, HPFS, NTFS.

1. File system MS

Ang FAT ay ang pinakasimpleng file system na sinusuportahan ng Windows NT. Ang batayan ng FAT file system ay ang file allocation table, na matatagpuan sa pinakadulo simula ng volume.

Ang isang disk na na-format gamit ang FAT file system ay nahahati sa mga kumpol, ang laki nito ay depende sa laki ng volume. Kasabay ng paglikha ng file, ang isang entry ay nilikha sa direktoryo at ang numero ng unang kumpol na naglalaman ng data ay itinakda.

Ang pag-update ng talahanayan ng paglalaan ng file ay mayroon malaking halaga at tumatagal ng maraming oras. Kung hindi regular na ina-update ang talahanayan ng paglalaan ng file, maaari itong magresulta sa pagkawala ng data.

Ang direktoryo ng FAT ay walang tiyak na istraktura at ang mga file ay nakasulat sa unang magagamit na libreng espasyo sa disk. Bukod pa rito, sinusuportahan lamang ng FAT file system ang apat na katangian ng file: System, Hidden, Read-Only, at Archive.

Mga kalamangan ng FAT file system

Sa isang computer sa ilalim Kontrol sa Windows Hindi maa-undo ang NT sa alinman sa mga sinusuportahang file system. Ang FAT file system ay pinakamainam para sa paggamit sa mga disk at partition hanggang sa 200 MB ang laki dahil ito ay tumatakbo na may kaunting overhead.

Mga disadvantages ng FAT file system

Hindi mo dapat gamitin ang FAT file system para sa mga disk at partisyon na mas malaki sa 200 MB. Ito ay dahil habang tumataas ang laki ng volume, mabilis na bumababa ang pagganap ng FAT file system. Hindi maitakda ang mga pahintulot para sa mga file na matatagpuan sa mga partisyon ng FAT.
Ang mga partisyon ng FAT ay may limitasyon sa laki: 4 GB para sa Windows NT at 2 GB para sa MS-DOS.

2.FAT32 file system

Ang FAT 32 ay isang chain ng data na nag-uugnay sa mga cluster nang magkasama espasyo sa disk at mga file. Mayroon lamang isang elemento sa database ng kumpol. Sa mga ito, ang unang dalawang elemento ay kumakatawan sa impormasyon tungkol sa FAT - 32 system, at ang pangatlo at kasunod na mga elemento ay inilalagay alinsunod sa mga kumpol ng espasyo sa disk.
Ang pinaka malaking bilang Ang bilang ng mga cluster sa file system na ito ay 268,435,445 clusters. Pinapayagan ng system na ito ang paggamit ng mga hard drive hanggang sa 32 GB. Gayunpaman, maaaring suportahan ng FAT ang mga espasyo sa imbakan hanggang sa 2 terabytes ang laki! Sa una, ang file system na ito ay ginamit bilang bahagi ng Windows 95 OSR 2. Sa file system na ito pinalawak ang mga katangian ng file, na naging posible upang maimbak ang oras at petsa ng paglikha, at pagbabago ng huling pag-access sa isang file o direktoryo.

Ang FAT – 32 operating system ay nagpapahintulot din sa iyo na magtrabaho sa anumang kopya ng FAT 32.

MS 32:

1. Mataas na bilis trabaho;

2. Mababang RAM na kinakailangan;

3. Epektibong trabaho sa katamtaman at maliliit na file;

4. Mas mababang pagkasuot ng disk dahil sa mas kaunting mga galaw ng ulo sa pagbasa/pagsusulat.

Mga disadvantages ng file system MS 32:

1. Mababang proteksyon laban sa mga pagkabigo ng system;

2. Hindi epektibong trabaho sa malalaking file;

3. Limitasyon sa maximum volume ng partition at file;

4. Nabawasan ang pagganap dahil sa pagkapira-piraso;

5. Nabawasan ang pagganap kapag nagtatrabaho sa mga direktoryo na naglalaman ng malaking bilang ng mga file

3. File system HPFS

Ang HPFS file system ay unang ginamit para sa OS/2 1.2 operating system para magbigay ng access sa malalaking disk drive na lumalabas sa merkado noong panahong iyon.

Sinusuportahan ng HPFS file system ang istraktura ng direktoryo ng FAT at nagdaragdag ng pag-uuri ng mga file ayon sa pangalan. Ang pangalan ng file ay maaaring maglaman ng hanggang 254 double-byte na character. Bukod, pinakamaliit na bloke para sa pag-iimbak ng data ay katumbas na ngayon ng laki ng pisikal na sektor (512 bytes), na binabawasan ang nasayang na espasyo sa disk.

Bilang karagdagan sa mga katangian ng file, ang direktoryo ng HPFS file system ay nag-iimbak ng impormasyon sa paglikha at pagbabago, pati na rin ang petsa at oras ng pag-access. Ang mga entry sa direktoryo ng HPFS file system ay tumuturo sa FNODE kaysa sa unang kumpol ng file. Ang FNODE ay maaaring maglaman ng data ng file, mga pointer sa data ng file, o iba pang istrukturang tumuturo sa data ng file.

Sinusubukan ng HPFS na ilagay ang data ng file sa magkadikit na mga sektor hangga't maaari. Nagreresulta ito sa pagtaas ng bilis sunud-sunod na pagproseso file.

Hinahati ng HPFS ang disk sa mga bloke na 8 MB bawat isa at palaging sinusubukang magsulat ng file sa loob ng parehong bloke. Ang pagharang ay nagreresulta sa pinahusay na pagganap.
Bukod pa rito, ang HPFS file system ay naglalaman ng dalawang natatanging data object:

· Superblock

Ang superblock ay matatagpuan sa lohikal na sektor 16 at naglalaman ng isang pointer sa FNODE ng root directory. Ito ang pangunahing panganib ng paggamit ng HPFS: kung ang isang superblock na sektor ay minarkahan bilang nasira, ito ay humahantong sa pagkawala ng lahat ng data ng partition, kahit na sa mga hindi nasirang lugar ng disk. Upang mabawi ang data, kailangan mong kopyahin ito sa isa pang disk na may buo na sektor 16 at muling likhain ang superblock.

· ekstrang bloke

Ang ekstrang bloke ay matatagpuan sa lohikal na sektor 17 at naglalaman ng talahanayan ng pagwawasto ng emergency, pati na rin ang bloke backup na direktoryo. Sa HPFS file system, ginagamit ang isang hot fix table entry kapag may nakitang masamang sektor na lohikal na tumuturo sa isang kasalukuyang hindi masamang sektor sa lugar nito. Ang teknolohiyang ito para sa paghawak ng mga error sa pagsulat ay kilala bilang emergency correction.

Mga kalamangan ng HPFS file system

HPFS - pinakamahusay na pagpipilian file system para gamitin sa mga disk na 200–400 MB ang laki.

Mga disadvantages ng HPFS file system

Ang karagdagang overhead na nauugnay sa paggamit ng HPFS ay binabawasan ang pagiging epektibo nito sa mga disk na mas maliit sa 200 MB. Bilang karagdagan, bumababa rin ang pagganap kapag gumagamit ng mga disk na mas malaki sa 400 MB. Kapag gumagamit ng HPFS sa ilalim ng Windows NT, hindi ka makakapagtakda ng mga setting ng seguridad.

Ang HPFS file system ay sinusuportahan lamang ng mga bersyon ng Windows NT na 3.1, 3.5, at 3.51. Hindi mo ma-access ang isang partition ng HPFS gamit ang Windows NT 4.0.

4. Sistema ng file NTFS

file Sistema ng Windows Nagbibigay ang NT (NTFS) ng pagganap, pagiging maaasahan, at pagiging tugma. Ang NTFS ay binuo upang matiyak ang mataas na bilis ng pagganap ng mga karaniwang pagpapatakbo ng file (kabilang ang pagbabasa, pagsulat, paghahanap) at pagbibigay ng mga advanced na kakayahan.
Bilang karagdagan, ang NTFS ay may mga katangiang panseguridad na kinakailangan sa mga malalakas na file server at mga computer na may mataas na pagganap sa mga kapaligiran ng kumpanya. Sinusuportahan ng NTFS file system ang kontrol sa pag-access ng data at mga pribilehiyo ng may-ari. Ang NTFS ay ang tanging file system sa Windows NT na nagpapahintulot sa iyo na magtalaga ng mga karapatan sa pag-access sa mga indibidwal na file.
Ang NTFS file system ay simple ngunit napakalakas. Halos lahat ng nasa volume ay isang file, at lahat ng nasa isang file ay isang attribute, kabilang ang mga katangian ng data, mga katangian ng seguridad, at mga katangian ng filename. Ang bawat inookupahang sektor sa dami ng NTFS ay kabilang sa isang file.

Mga kalamangan ng isang file system NTFS :

1. Mabilis na bilis pag-access sa maliliit na file;

2. Ang laki ng disk space ngayon ay halos walang limitasyon;

3. Ang pagkapira-piraso ng file ay hindi nakakaapekto sa file system mismo;

4. Mataas na pagiging maaasahan ng imbakan ng data at ang istraktura ng file mismo;

5. Mataas na pagganap kapag nagtatrabaho sa malalaking file;

Mga disadvantages ng file system NTFS :

Materyal para sa pagsusuri ng panayam Blg. 33

para sa mga mag-aaral na may espesyalidad

"Software ng Teknolohiya ng Impormasyon"

Associate Professor ng Department of Computer Science, Ph.D. Livak E.N.

FILE MANAGEMENT SYSTEMS

Pangunahing konsepto, katotohanan

Layunin. Mga tampok ng mga file systemMATABAVFATFAT 32,HPFSNTFS. File system UNIX OS (s5, ufs), Linux OS Ext2FS System area ng disk (partition, volume). Mga prinsipyo ng paglalagay ng file at pag-iimbak ng impormasyon ng lokasyon ng file. Organisasyon ng mga katalogo. Paghihigpit sa pag-access sa mga file at direktoryo.

Mga kasanayan at kakayahan

Paggamit ng kaalaman sa istraktura ng file system para sa proteksyon at pagbawi impormasyon sa kompyuter(mga file at direktoryo). Organisasyon ng kontrol sa pag-access sa mga file.

Mga sistema ng file. Istraktura ng file system

Ang data sa disk ay naka-imbak sa anyo ng mga file. Ang isang file ay isang pinangalanang bahagi ng isang disk.

Ang mga sistema ng pamamahala ng file ay idinisenyo upang pamahalaan ang mga file.

Ang kakayahang makitungo sa data na nakaimbak sa mga file sa lohikal na antas ay ibinibigay ng file system. Ito ang file system na tumutukoy sa paraan ng pag-aayos ng data sa anumang storage medium.

kaya, file system ay isang hanay ng mga detalye at ang kanilang kaukulang software na may pananagutan sa paglikha, pagsira, pag-aayos, pagbabasa, pagsulat, pagbabago at paglipat impormasyon ng file, pati na rin para sa pagkontrol ng access sa mga file at pamamahala sa mga mapagkukunan na ginagamit ng mga file.

Ang sistema ng pamamahala ng file ay ang pangunahing subsystem sa karamihan ng mga modernong operating system.

Gamit ang isang sistema ng pamamahala ng file

· lahat ng system processing programs ay konektado gamit ang data;

· Ang mga problema ng sentralisadong pamamahagi ng espasyo sa disk at pamamahala ng data ay nalutas;

· binibigyan ang user ng mga pagkakataong magsagawa ng mga operasyon sa mga file (paglikha, atbp.), upang makipagpalitan ng data sa pagitan ng mga file at iba't ibang device, upang protektahan ang mga file mula sa hindi awtorisadong pag-access.

Ang ilang mga operating system ay maaaring magkaroon ng maramihang mga file management system, na nagbibigay sa kanila ng kakayahang pangasiwaan ang maramihang mga file system.

Subukan nating makilala sa pagitan ng isang file system at isang file management system.

Ang terminong "file system" ay tumutukoy sa mga prinsipyo ng pag-access sa data na nakaayos sa mga file.

Termino "sistema ng pamamahala ng file" ay tumutukoy sa isang partikular na pagpapatupad ng file system, i.e. Ito ay isang hanay ng mga software module na nagbibigay ng trabaho sa mga file sa isang partikular na OS.

Kaya, upang gumana sa mga file na nakaayos alinsunod sa ilang file system, isang naaangkop na sistema ng pamamahala ng file ay dapat na binuo para sa bawat OS. Ang UV system na ito ay gagana lamang sa OS kung saan ito idinisenyo.

Para sa pamilya ng Windows OS, ang mga file system na pangunahing ginagamit ay: VFAT, FAT 32, NTFS.

Tingnan natin ang istraktura ng mga file system na ito.

Sa file system MATABA Ang puwang ng disk ng anumang lohikal na drive ay nahahati sa dalawang lugar:

lugar ng sistema at

· lugar ng data.

Lugar ng system nilikha at sinimulan sa panahon ng pag-format, at pagkatapos ay na-update kapag ang istraktura ng file ay manipulahin.

Ang lugar ng system ay binubuo ng mga sumusunod na sangkap:

· boot sector na naglalaman ng boot record (boot record);

· mga nakalaan na sektor (maaaring wala ang mga ito);

· mga talahanayan ng paglalaan ng file (FAT, Talahanayan ng Paglalaan ng File);

· direktoryo ng ugat (ROOT).

Ang mga sangkap na ito ay matatagpuan sa disk nang isa-isa.

Lugar ng data naglalaman ng mga file at direktoryo na nasa ilalim ng ugat.

Ang lugar ng data ay nahahati sa tinatawag na mga kumpol. Ang cluster ay isa o higit pang katabing sektor ng isang lugar ng data. Sa kabilang banda, ang isang cluster ay ang pinakamababang addressable unit memorya ng disk inilalaan sa file. Yung. ang isang file o direktoryo ay sumasakop sa isang integer na bilang ng mga kumpol. Para gumawa at magsulat ng bagong file sa disk, ang operating system ay naglalaan ng ilang libreng disk cluster para dito. Ang mga kumpol na ito ay hindi kailangang sumunod sa isa't isa. Para sa bawat file, ang isang listahan ng lahat ng mga numero ng kumpol na nakatalaga sa file na iyon ay nakaimbak.

Ang paghahati sa lugar ng data sa mga kumpol sa halip na gumamit ng mga sektor ay nagbibigay-daan sa iyong:

· bawasan ang laki ng FAT table;

· bawasan ang pagkapira-piraso ng file;

· ang haba ng mga file chain ay nabawasan Þ pinapabilis ang pag-access ng file.

Gayunpaman, ang sobrang laki ng cluster ay humahantong sa hindi mahusay na paggamit ng lugar ng data, lalo na sa kaso ng isang malaking bilang ng mga maliliit na file (pagkatapos ng lahat, sa average na kalahati ng isang cluster ay nawala para sa bawat file).

Sa modernong mga file system (FAT 32, HPFS, NTFS) ang problemang ito ay nalutas sa pamamagitan ng paglilimita sa laki ng kumpol (maximum na 4 KB)

Ang mapa ng data area ay T talahanayan ng paglalaan ng file (File Allocation Table - FAT) Ang bawat elemento ng FAT table (12, 16 o 32 bits) ay tumutugma sa isang disk cluster at nagpapakilala sa estado nito: libre, abala o isang masamang cluster.

· Kung ang isang cluster ay inilalaan sa isang file (i.e., abala), kung gayon ang katumbas na elemento ng FAT ay naglalaman ng bilang ng susunod na file cluster;

· ang huling kumpol ng file ay minarkahan ng isang numero sa hanay na FF8h - FFFh (FFF8h - FFFFh);

· kung libre ang cluster, naglalaman ito ng zero value na 000h (0000h);

· ang isang kumpol na hindi nagagamit (nabigo) ay minarkahan ng numerong FF7h (FFF7h).

Kaya, sa talahanayan ng FAT, ang mga kumpol na kabilang sa parehong file ay naka-link sa mga chain.

Ang talahanayan ng paglalaan ng file ay naka-imbak kaagad pagkatapos ng boot record ng lohikal na disk ay inilarawan sa isang espesyal na field sa boot sector.

Ito ay nakaimbak sa dalawang magkaparehong kopya, na sumusunod sa isa't isa. Kung ang unang kopya ng talahanayan ay nawasak, ang pangalawa ay ginagamit.

Dahil sa ang katunayan na ang FAT ay ginagamit nang napakatindi sa panahon ng pag-access sa disk, karaniwan itong na-load sa RAM (sa I/O buffers o cache) at nananatili doon hangga't maaari.

Ang pangunahing kawalan ng FAT ay ang mabagal na pagproseso ng mga file. Kapag gumagawa ng file, ang panuntunan ay ang unang libreng cluster ay inilalaan. Ito ay humahantong sa disk fragmentation at kumplikadong mga file chain. Nagreresulta ito sa mas mabagal na trabaho sa mga file.

Para tingnan at i-edit ang FAT table na magagamit mo utilityDiskEditor.

Ang detalyadong impormasyon tungkol sa file mismo ay naka-imbak sa isa pang istraktura na tinatawag na root directory. Ang bawat lohikal na drive ay may sariling root directory (ROOT).

Direktoryo ng ugat naglalarawan ng mga file at iba pang mga direktoryo. Ang elemento ng direktoryo ay isang deskriptor ng file.

Kasama dito ang bawat file at directory descriptor

· Pangalan

· extension

petsa ng paglikha o huling pagbabago

· oras ng paglikha o huling pagbabago

mga attribute (archive, attribute ng directory, attribute ng volume, system, hidden, read-only)

· haba ng file (para sa isang direktoryo - 0)

· nakalaan na field na hindi ginagamit

· bilang ng unang kumpol sa hanay ng mga kumpol na inilalaan sa isang file o direktoryo; Ang pagkakaroon ng natanggap na numerong ito, ang operating system, na tumutukoy sa FAT table, ay nalaman ang lahat ng iba pang mga numero ng kumpol ng file.

Kaya, inilunsad ng user ang file para sa pagpapatupad. Ang operating system ay naghahanap ng isang file na may nais na pangalan sa pamamagitan ng pagtingin sa mga paglalarawan ng file sa kasalukuyang direktoryo. Kapag natagpuan ang kinakailangang elemento sa kasalukuyang direktoryo, babasahin ng operating system ang unang numero ng cluster ng file na ito, at pagkatapos ay gagamitin ang FAT table upang matukoy ang natitirang mga numero ng cluster. Ang data mula sa mga kumpol na ito ay binabasa sa RAM, na pinagsasama sa isang tuluy-tuloy na seksyon. Ang operating system ay naglilipat ng kontrol sa file, at ang programa ay nagsimulang tumakbo.

Upang tingnan at i-edit ang root directory na ROOT maaari mo ring gamitin utilityDiskEditor.

Sistema ng file VFAT

Ang VFAT (virtual FAT) file system ay unang lumabas sa Windows for Workgroups 3.11 at idinisenyo para sa protected mode file na I/O.

Ang file system na ito ay ginagamit sa Windows 95.

Sinusuportahan din ito sa Windows NT 4.

Ang VFAT ay ang katutubong 32-bit file system ng Windows 95. Ito ay kinokontrol ng VFAT .VXD driver.

Gumagamit ang VFAT ng 32-bit na code para sa lahat ng pagpapatakbo ng file at maaaring gumamit ng mga driver ng 32-bit na protected mode.

PERO, ang mga file allocation table entries ay nananatiling 12- o 16-bit, kaya ang parehong data structure (FAT) ay ginagamit sa disk. Yung. f format ng talahanayanAng VFAT ay pareho, tulad ng FAT na format.

VFAT kasama ang "8.3" na mga pangalan sumusuporta sa mahahabang pangalan ng file. (Ang VFAT ay madalas na sinasabing FAT na may suporta para sa mahabang pangalan).

Ang pangunahing kawalan ng VFAT ay malaking pagkalugi ng clustering na may malalaking lohikal na laki ng disk at mga paghihigpit sa laki ng mismong lohikal na disk.

Sistema ng file MATABA 32

Ito ay isang bagong pagpapatupad ng ideya ng paggamit ng FAT table.

Ang FAT 32 ay isang ganap na self-contained na 32-bit na file system.

Unang ginamit sa Windows OSR 2 (OEM Service Release 2).

Sa kasalukuyan, ang FAT 32 ay ginagamit sa Windows 98 at Windows ME.

Naglalaman ito ng maraming pagpapabuti at pagdaragdag sa mga nakaraang pagpapatupad ng FAT.

1. Gumagamit ng disk space nang mas mahusay dahil sa ang katunayan na ito ay gumagamit ng mas maliit na mga kumpol (4 KB) - ito ay tinatantya na savings ng hanggang sa 15%.

2. May pinahabang boot record na nagbibigay-daan sa iyong lumikha ng mga kopya ng mga kritikal na istruktura ng data Þ pinatataas ang resistensya ng disc sa pinsala sa mga istruktura ng disc

3. Maaaring gumamit ng FAT backup sa halip na karaniwang isa.

4. Maaaring ilipat ang root directory, sa madaling salita, ang root directory ay maaaring nasa anumang lokasyon Þ inaalis ang limitasyon sa laki ng direktoryo ng ugat (512 elemento, dahil ang ROOT ay dapat sumakop sa isang kumpol).

5. Pinahusay na istraktura ng direktoryo ng ugat

Ang mga karagdagang field ay lumitaw, halimbawa, oras ng paggawa, petsa ng paglikha, petsa ng huling pag-access, checksum

Mayroon pa ring maraming mga hawakan para sa isang mahabang filename.

Sistema ng file HPFS

Ang HPFS (High Performance File System) ay isang high-performance file system.

Unang lumabas ang HPFS sa OS/2 1.2 at LAN Manager.

Ilista natin pangunahing tampok ng HPFS.

· Ang pangunahing pagkakaiba ay pangunahing mga prinsipyo paglalagay ng mga file sa disk at mga prinsipyo ng pag-iimbak ng impormasyon tungkol sa lokasyon ng mga file. Salamat sa mga prinsipyong ito, mayroon ang HPFS mataas na pagganap at fault tolerance, ay maaasahan file system.

· Ang puwang ng disk sa HPFS ay inilalaan hindi sa mga kumpol (tulad ng sa FAT), ngunit mga bloke. Sa modernong pagpapatupad, ang laki ng bloke ay kinukuha na katumbas ng isang sektor, ngunit sa prinsipyo maaari itong maging ibang laki. (Sa katunayan, ang isang bloke ay isang kumpol, isang kumpol lamang ang palaging katumbas ng isang sektor). Ang paglalagay ng mga file sa gayong maliliit na bloke ay nagbibigay-daan gumamit ng puwang sa disk nang mas mahusay, dahil ang overhead ng libreng espasyo ay nasa average lamang (kalahating sektor) 256 bytes bawat file. Tandaan na kung mas malaki ang laki ng kumpol, mas maraming espasyo sa disk ang nasasayang.

· Sinusubukan ng HPFS system na ayusin ang file sa magkadikit na mga bloke, o, kung hindi ito posible, ilagay ito sa disk sa paraang mga lawak(mga fragment) ng file ay pisikal na malapit sa isa't isa hangga't maaari. Ang diskarte na ito ay mahalaga binabawasan ang oras ng pagpoposisyon ng ulo sa pagsulat/pagbasa hard drive at oras ng paghihintay (antala sa pagitan ng pag-install ng read/write head sa nais na track). Alalahanin natin na sa isang FAT file ang unang libreng cluster ay inilalaan lamang.

Mga lawak(lawak) - mga fragment ng file na matatagpuan sa mga katabing sektor ng disk. Ang isang file ay may hindi bababa sa isang lawak kung ito ay hindi fragmented, at maramihang mga lawak kung hindi man.

· Ginamit paraan balanseng binary tree para sa pag-iimbak at paghahanap ng impormasyon tungkol sa lokasyon ng mga file (ang mga direktoryo ay naka-imbak sa gitna ng disk, bilang karagdagan, ang awtomatikong pag-uuri ng mga direktoryo ay ibinigay), na mahalaga nagpapataas ng produktibidad HPFS (vs. FAT).

· Nagbibigay ang HPFS ng mga espesyal na katangian ng pinahabang file na nagpapahintulot kontrolin ang pag-access sa mga file at direktoryo.

Mga Pinalawak na Katangian (mga pinahabang katangian, EAs ) pinapayagan kang mag-imbak karagdagang impormasyon tungkol sa file. Halimbawa, maaaring iugnay ang bawat file sa natatanging graphic (icon), paglalarawan ng file, komento, impormasyon ng may-ari ng file, atbp.

C istraktura ng partisyon ng HPFS


Sa simula ng partisyon na may naka-install na HPFS mayroong tatlo mga kontrol sa pag-block:

bloke ng boot

· karagdagang bloke (super block) at

· ekstrang (backup) block (reserbang block).

Sinasakop nila ang 18 sektor.

Ang lahat ng natitirang puwang sa disk sa HPFS ay nahahati sa mga bahagi mula sa mga katabing sektor - mga guhitan(band - strip, tape). Ang bawat strip ay tumatagal ng 8 MB ng disk space.

Ang bawat strip ay may sariling bitmap ng alokasyon ng sektor.Ipinapakita ng bitmap kung aling mga sektor ng isang banda ang inookupahan at alin ang libre. Ang bawat sektor ng isang strip ng data ay tumutugma sa isang bit sa bitmap nito. Kung bit = 1, kung gayon ang sektor ay abala, kung 0, kung gayon ito ay libre.

Ang mga bitmap ng dalawang lane ay matatagpuan magkatabi sa disk, gayundin ang mga lane mismo. Iyon ay, ang pagkakasunud-sunod ng mga guhit at kard ay mukhang sa Fig.

Ikumpara saMATABA. Mayroon lamang isang "bit na mapa" para sa buong disk (FAT table). At para magtrabaho kasama nito kailangan mong ilipat ang read/write head sa kalahati ng disk sa karaniwan.

Ito ay upang mabawasan ang oras ng pagpoposisyon ng read/write head ng isang hard disk na sa HPFS ang disk ay nahahati sa mga guhitan.

Isaalang-alang natin mga bloke ng kontrol.

Boot block (bootharangan)

Naglalaman ng pangalan ng volume, serial number nito, bloke ng parameter ng BIOS at program bootstrap.

Hinahanap ng bootstrap program ang file OS 2 LDR , binabasa ito sa memorya at inililipat ang kontrol sa OS boot program na ito, na, naman, naglo-load ng OS/2 kernel mula sa disk patungo sa memorya - OS 2 KRNL. At mayroon nang OS 2 KRIML gamit ang impormasyon mula sa file CONFIG. SYS nilo-load ang lahat ng iba pang kinakailangang mga module ng programa at mga bloke ng data sa memorya.

Ang boot block ay matatagpuan sa mga sektor 0 hanggang 15.

SuperI-block(super block)

Naglalaman

· pointer sa isang listahan ng mga bitmaps (bitmap block list). Inililista ng listahang ito ang lahat ng mga bloke sa disk na naglalaman ng mga bitmap na ginamit upang makita ang mga libreng sektor;

· pointer sa listahan ng mga may sira na bloke (masamang block list). Kapag nakita ng system ang isang nasirang bloke, idinaragdag ito sa listahang ito at hindi na ginagamit upang mag-imbak ng impormasyon;

· pointer sa directory band

· pointer sa file node (F -node) ng root directory,

petsa huling tseke pagkahati sa CHKDSK;

· impormasyon tungkol sa laki ng guhit (sa kasalukuyang pagpapatupad ng HPFS - 8 MB).

Ang super block ay matatagpuan sa sektor 16.

ekstraharangan(reserbang bloke)

Naglalaman

· pointer sa mapa ng kapalit na emergency (mapa ng hotfix o mga lugar ng hotfix);

· pointer sa listahan ng mga libreng ekstrang bloke (direktoryo emergency libreng block listahan);

· isang bilang ng mga flag at descriptor ng system.

Ang bloke na ito ay matatagpuan sa sektor 17 ng disk.

Ang backup block ay nagbibigay ng mataas na fault tolerance sa HPFS file system at nagbibigay-daan sa iyo na mabawi ang nasira na data sa disk.

Prinsipyo ng paglalagay ng file

Mga lawak(lawak) - mga fragment ng file na matatagpuan sa mga katabing sektor ng disk. Ang isang file ay may hindi bababa sa isang lawak kung ito ay hindi pira-piraso, at maramihang mga lawak kung hindi man.

Upang bawasan ang oras na kinakailangan upang iposisyon ang read/write head ng isang hard disk, ang HPFS system ay nagsusumikap na

1) ilagay ang file sa katabing mga bloke;

2) kung hindi ito posible, ilagay ang mga lawak ng pira-pirasong file nang malapit sa isa't isa hangga't maaari,

Upang gawin ito, gumagamit ang HPFS ng mga istatistika at sinusubukan din na may kondisyong magreserba ng hindi bababa sa 4 na kilobytes ng espasyo sa dulo ng mga file na lumalaki.

Mga prinsipyo para sa pag-iimbak ng impormasyon ng lokasyon ng file

Ang bawat file at direktoryo sa disk ay may sarili nitong file node F-Node. Ito ay isang istraktura na naglalaman ng impormasyon tungkol sa lokasyon ng file at mga pinahabang katangian nito.

Ang bawat F-Node ay sumasakop isang sektor at palaging matatagpuan malapit sa file o direktoryo nito (karaniwang kaagad bago ang file o direktoryo). Ang F-Node object ay naglalaman ng

· haba,

· unang 15 character ng pangalan ng file,

· impormasyon ng espesyal na serbisyo,

· mga istatistika sa pag-access ng file,

· pinalawak na mga katangian ng file,

· isang listahan ng mga karapatan sa pag-access (o bahagi lamang ng listahang ito, kung ito ay napakalaki); Kung ang pinalawak na mga katangian ay masyadong malaki para sa file node, pagkatapos ay isang pointer sa kanila ay nakasulat dito.

· nag-uugnay na impormasyon tungkol sa lokasyon at subordination ng file, atbp.

Kung magkadikit ang file, ang lokasyon nito sa disk ay inilalarawan ng dalawang 32-bit na numero. Ang unang numero ay isang pointer sa unang bloke ng file, at ang pangalawa ay ang haba ng lawak (ang bilang ng magkakasunod na bloke na nabibilang sa file).

Kung ang isang file ay pira-piraso, ang lokasyon ng mga lawak nito ay inilalarawan sa file node ng mga karagdagang pares ng 32-bit na numero.

Ang isang file node ay maaaring maglaman ng impormasyon tungkol sa hanggang walong lawak ng isang file. Kung ang isang file ay may mas maraming lawak, ang isang pointer sa isang block ng alokasyon ay isusulat sa node ng file nito, na maaaring maglaman ng hanggang 40 na mga pointer sa mga lawak o, katulad ng isang block ng puno ng direktoryo, sa iba pang mga bloke ng alokasyon.

Istraktura ng direktoryo at pagkakalagay

Ginagamit upang mag-imbak ng mga direktoryo guhit na matatagpuan sa gitna ng disk.

Ang strip na ito ay tinatawag na direktoryobanda.

Kung ito ay ganap na puno, ang HPFS ay magsisimulang maglagay ng mga direktoryo ng file sa iba pang mga guhit.

Ang paglalagay ng istraktura ng impormasyon na ito sa gitna ng disk ay makabuluhang binabawasan ang average na oras ng pagpoposisyon ng ulo ng pagbasa/pagsusulat.

Gayunpaman, ang isang makabuluhang mas malaking kontribusyon sa pagganap ng HPFS (kumpara sa paglalagay ng Directory Band sa gitna ng isang lohikal na disk) ay ginawa sa pamamagitan ng paggamit paraan balanseng binary tree para sa pag-iimbak at pagkuha ng impormasyon tungkol sa lokasyon ng mga file.

Tandaan na sa file system MATABA ang direktoryo ay may isang linear na istraktura, hindi iniutos sa isang espesyal na paraan, kaya kapag naghahanap ng isang file kailangan mong tingnan ito nang sunud-sunod mula sa simula.

Sa HPFS, ang istraktura ng direktoryo ay isang balanseng puno na may mga entry na nakaayos sa alpabetikong pagkakasunud-sunod.

Ang bawat entry na kasama sa puno ay naglalaman ng

· mga katangian ng file,

· pointer sa kaukulang file node,

· impormasyon tungkol sa oras at petsa ng paglikha ng file, oras at petsa ng huling pag-update at pag-access,

haba ng data na naglalaman ng mga pinahabang katangian,

· file access counter,

haba ng pangalan ng file

· ang pangalan mismo,

· at iba pang impormasyon.

Ang HPFS file system ay tumitingin lamang sa mga kinakailangang sangay ng binary tree kapag naghahanap ng file sa isang direktoryo. Ang pamamaraang ito ay maraming beses na mas mahusay kaysa sa sunud-sunod na pagbabasa ng lahat ng mga entry sa isang direktoryo, na ang kaso sa FAT system.

Ang laki ng bawat bloke sa mga tuntunin ng kung aling mga direktoryo ang inilalaan sa kasalukuyang pagpapatupad ng HPFS ay 2 KB. Ang laki ng entry na naglalarawan sa file ay depende sa laki ng pangalan ng file. Kung ang isang pangalan ay 13 byte (para sa 8.3 na format), ang isang 2 KB block ay maaaring maglaman ng hanggang 40 file descriptor. Ang mga bloke ay konektado sa isa't isa gamit ang isang listahan.

Mga problema

Kapag pinapalitan ang pangalan ng mga file, maaaring mangyari ang tinatawag na tree rebalancing. Ang paglikha ng isang file, pagpapalit ng pangalan o pagbura nito ay maaaring magresulta sa mga bloke ng direktoryo ng cascading. Sa katunayan, ang pagpapalit ng pangalan ay maaaring mabigo dahil sa kakulangan ng espasyo sa disk, kahit na ang file mismo ay hindi lumaki sa laki. Upang maiwasan ang sakuna na ito, ang HPFS ay nagpapanatili ng isang maliit na pool ng mga libreng bloke na maaaring magamit sa kaganapan ng isang sakuna. Ang operasyong ito ay maaaring mangailangan ng paglalaan ng mga karagdagang bloke sa isang buong disk. Ang isang pointer sa pool na ito ng mga libreng bloke ay naka-imbak sa SpareBlock.

Mga prinsipyo para sa paglalagay ng mga file at direktoryo sa disk inHPFS:

· Ang impormasyon tungkol sa lokasyon ng mga file ay nakakalat sa buong disk, na may mga talaan para sa bawat partikular na file na matatagpuan (kung maaari) sa mga katabing sektor at malapit sa data tungkol sa kanilang lokasyon;

· Ang mga direktoryo ay matatagpuan sa gitna ng espasyo sa disk;

· Ang mga direktoryo ay naka-imbak bilang isang binary na balanseng puno na may mga entry na nakaayos sa alpabetikong pagkakasunud-sunod.

Pagiging maaasahan ng imbakan ng data sa HPFS

Ang anumang file system ay dapat magkaroon ng paraan ng pagwawasto ng mga error na nangyayari kapag nagsusulat ng impormasyon sa disk. Ginagamit ito ng sistema ng HPFS mekanismo ng pagpapalit ng emergency ( hotfix).

Kung ang HPFS file system ay nakatagpo ng isang problema habang nagsusulat ng data sa disk, ito ay nagpapakita ng isang mensahe ng error. Pagkatapos ay iniimbak ng HPFS ang impormasyon na dapat sana ay naisulat sa may sira na sektor sa isa sa mga ekstrang sektor na nakalaan nang maaga para sa kaganapang ito. Ang listahan ng mga libreng ekstrang bloke ay naka-imbak sa HPFS ekstrang bloke. Kung may nakitang error habang nagsusulat ng data sa isang normal na bloke, pipili ang HPFS ng isa sa mga libreng ekstrang bloke at iniimbak ang data doon. Pagkatapos ay mag-a-update ang file system emergency replacement card sa reserve unit.

Ang mapa na ito ay simpleng pares ng dobleng salita, ang bawat isa ay isang 32-bit na numero ng sektor.

Ang unang numero ay nagpapahiwatig ng may sira na sektor, at ang pangalawa ay nagpapahiwatig ng sektor sa mga magagamit na ekstrang sektor na pinili upang palitan ito.

Matapos palitan ang may sira na sektor ng ekstrang isa, ang mapa ng kapalit na pang-emergency ay isusulat sa disk, at isang pop-up window ang lalabas sa screen na nagpapaalam sa user na may nangyaring error sa pagsulat ng disk. Sa tuwing magsusulat o magbabasa ang system ng isang sektor ng disk, tinitingnan nito ang mapa ng pagbawi at pinapalitan ang lahat ng numero ng masamang sektor ng mga ekstrang numero ng sektor ng kaukulang data.

Dapat pansinin na ang pagsasalin ng numero na ito ay hindi makabuluhang nakakaapekto sa pagganap ng system, dahil ginagawa lamang ito kapag pisikal na ina-access ang disk, at hindi kapag nagbabasa ng data mula sa cache ng disk.

Sistema ng file NTFS

Ang NTFS (New Technology File System) file system ay naglalaman ng ilang makabuluhang pagpapabuti at pagbabago na makabuluhang nakikilala ito sa iba pang mga file system.

Tandaan na may mga bihirang pagbubukod, kasama ang Ang mga partisyon ng NTFS ay maaari lamang gumana nang direkta mula saWindowsN.T. bagama't may mga kaukulang pagpapatupad ng mga sistema ng pamamahala ng file para sa pagbabasa ng mga file mula sa mga volume ng NTFS para sa isang bilang ng mga OS.

Gayunpaman, walang ganap na pagpapatupad para sa pagtatrabaho sa NTFS sa labas ng Windows NT.

Ang NTFS ay hindi suportado sa malawakang ginagamit na Windows 98 at Windows Millennium Edition na mga operating system.

Pangunahing TampokNT FS

· Ang trabaho sa malalaking disk ay nagaganap nang mahusay (higit na mas mahusay kaysa sa FAT);

· may mga tool upang paghigpitan ang pag-access sa mga file at direktoryo Þ Ang mga partisyon ng NTFS ay nagbibigay ng lokal na seguridad para sa parehong mga file at direktoryo;

· isang mekanismo ng transaksyon ang ipinakilala kung saan pag-log mga operasyon ng file Þ makabuluhang pagtaas sa pagiging maaasahan;

· maraming mga paghihigpit sa maximum na bilang ng mga sektor ng disk at/o mga kumpol ang naalis;

· isang pangalan ng file sa NTFS, hindi katulad ng FAT at HPFS file system, ay maaaring maglaman ng anumang mga character, kabilang ang buong hanay ng mga pambansang alpabeto, dahil ang data ay kinakatawan sa Unicode - isang 16-bit na representasyon na nagbibigay ng 65535 iba't ibang karakter. Ang maximum na haba ng pangalan ng file sa NTFS ay 255 character.

· Ang NTFS ay mayroon ding mga built-in na kakayahan sa compression na maaari mong ilapat sa mga indibidwal na file, buong direktoryo, at kahit na mga volume (at pagkatapos ay i-undo o italaga ang mga ito ayon sa gusto mo).

Dami ng istraktura na may NTFS file system

Ang NTFS partition ay tinatawag na volume (volume). Ang maximum na posibleng laki ng volume (at laki ng file) ay 16 EB (exabyte 2**64).

Tulad ng ibang mga system, hinahati ng NTFS ang espasyo ng disk ng volume sa mga cluster—mga bloke ng data na tinutugunan bilang mga unit ng data. Sinusuportahan ng NTFS ang mga laki ng kumpol mula 512 bytes hanggang 64 KB; ang pamantayan ay isang kumpol ng 2 o 4 KB ang laki.

Ang lahat ng puwang sa disk sa NTFS ay nahahati sa dalawang hindi pantay na bahagi.


Ang unang 12% ng disk ay inilalaan sa tinatawag na MFT zone - puwang na maaaring sakupin ng pangunahing serbisyo metafile MFT.

Hindi posibleng magsulat ng anumang data sa lugar na ito. Ang MFT zone ay palaging pinananatiling walang laman - ito ay ginagawa upang ang MFT file, kung maaari, ay hindi maging pira-piraso habang ito ay lumalaki.

Ang natitirang 88% ng volume ay regular na espasyo sa imbakan ng file.

MFT (masterfilemesa - pangkalahatang file table) ay mahalagang direktoryo ng lahat ng iba pang mga file sa disk, kasama ang sarili nito. Ito ay dinisenyo upang matukoy ang lokasyon ng mga file.

Binubuo ang MFT ng mga talaan ng nakapirming laki. Sukat Mga tala ng MFT(pinakamababang 1 KB at maximum na 4 KB) ay tinutukoy sa panahon ng pag-format ng volume.

Ang bawat entry ay tumutugma sa isang file.

Ang unang 16 na mga entry ay may likas na serbisyo at hindi magagamit sa operating system - ang mga ito ay tinatawag metafiles, at ang pinakaunang metafile ay ang MFT mismo.

Ang unang 16 na elemento ng MFT ay ang tanging bahagi ng disk na may mahigpit na nakapirming posisyon. Ang isang kopya ng parehong 16 na mga entry na ito ay itinatago sa gitna ng volume para sa pagiging maaasahan.

Ang natitirang bahagi ng MFT file ay matatagpuan, tulad ng anumang iba pang file, sa mga arbitrary na lokasyon sa disk.

Ang mga metafile ay may likas na serbisyo - bawat isa sa kanila ay may pananagutan para sa ilang aspeto ng pagpapatakbo ng system. Ang mga metafile ay matatagpuan sa root directory ng NTFS volume. Nagsisimula silang lahat sa simbolo ng pangalan na "$", bagaman mahirap makakuha ng anumang impormasyon tungkol sa mga ito gamit ang karaniwang paraan. Sa mesa Ang mga pangunahing metafile at ang kanilang layunin ay ibinigay.

Pangalan ng metafile

Layunin ng metafile

$MFT

Master File Table mismo

$MFTmirr

Isang kopya ng unang 16 na entry sa MFT na inilagay sa gitna ng volume

$LogFile

Pag-log file ng suporta

$Volume

Impormasyon ng serbisyo - label ng volume, bersyon ng file system, atbp.

$AttrDef

Listahan ng mga karaniwang katangian ng file sa volume

Direktoryo ng ugat

$Bitmap

Mapa libreng espasyo mga volume

$Boot

Boot sector(kung ang partition ay bootable)

$Quota

Isang file na nagtatala ng mga karapatan ng user na gumamit ng espasyo sa disk (nagsimula lang gumana ang file na ito sa Windows 2000 na may NTFS 5.0)

$Upcase

File - isang talahanayan ng pagsusulatan sa pagitan ng malalaking titik at maliliit na titik sa mga pangalan ng file. Sa NTFS, nakasulat ang mga pangalan ng file Unicode (na umaabot sa 65 libong iba't ibang mga simbolo) at naghahanap ng malaki at maliit na katumbas sa kasong ito ay isang di-maliit na gawain

Ang kaukulang MFT record ay nag-iimbak ng lahat ng impormasyon tungkol sa file:

· pangalan ng file,

· laki;

· mga katangian ng file;

· posisyon sa disk ng mga indibidwal na fragment, atbp.

Kung ang isang tala ng MFT ay hindi sapat para sa impormasyon, maraming mga tala ang ginagamit, at hindi kinakailangang magkasunod.

Kung ang file ay hindi masyadong malaki, ang data ng file ay direktang naka-imbak sa MFT, sa espasyo na natitira mula sa pangunahing data sa loob ng isang MFT record.

Ang isang file sa isang dami ng NTFS ay kinilala ng tinatawag na link ng file(File Reference), na kinakatawan bilang isang 64-bit na numero.

· file number na tumutugma sa record number sa MFT,

· at mga numero ng pagkakasunod-sunod. Ang bilang na ito ay tumataas sa tuwing ang numerong ito Ang MFT ay muling ginagamit upang payagan ang NTFS file system na magsagawa ng mga panloob na pagsusuri sa integridad.

Ang bawat file sa NTFS ay kinakatawan ng batis(mga stream), ibig sabihin, wala itong "data lang" tulad nito, ngunit may mga stream.

Ang isa sa mga stream ay ang data ng file.

Karamihan sa mga katangian ng file ay mga stream din.

Kaya, lumalabas na ang file ay may isang pangunahing entity lamang - ang numero sa MFT, at lahat ng iba pa, kabilang ang mga stream nito, ay opsyonal.

Mabisang magagamit ang diskarteng ito - halimbawa, maaari kang "maglakip" ng isa pang stream sa isang file sa pamamagitan ng pagsusulat ng anumang data dito.

Ang mga karaniwang katangian para sa mga file at direktoryo sa isang volume ng NTFS ay may mga nakapirming pangalan at mga uri ng code.

Catalog sa NTFS ay espesyal na file, na nag-iimbak ng mga link sa iba pang mga file at direktoryo.

Ang catalog file ay nahahati sa mga bloke, bawat isa ay naglalaman

· pangalan ng file,

pangunahing katangian at

Ang root directory ng disk ay hindi naiiba sa mga regular na direktoryo, maliban sa isang espesyal na link dito mula sa simula ng MFT metafile.

Ang panloob na istraktura ng direktoryo ay isang binary tree, katulad ng HPFS.

Ang bilang ng mga file sa root at non-root na mga direktoryo ay hindi limitado.

Sinusuportahan ng NTFS file system ang NT security object model: Itinuturing ng NTFS ang mga direktoryo at file bilang mga natatanging uri ng mga bagay at nagpapanatili ng hiwalay (kahit na magkakapatong) na listahan ng mga pahintulot para sa bawat uri.

Nagbibigay ang NTFS ng seguridad sa antas ng file; nangangahulugan ito na ang mga karapatan sa pag-access sa mga volume, direktoryo, at mga file ay maaaring depende sa user account at sa mga pangkat kung saan kabilang ang user. Sa tuwing maa-access ng isang user ang isang object ng file system, ang kanyang mga karapatan sa pag-access ay sinusuri laban sa listahan ng pahintulot ng bagay na iyon. Kung ang gumagamit ay may sapat na mga karapatan, ang kanyang kahilingan ay ipinagkaloob; kung hindi, ang kahilingan ay tinanggihan. Nalalapat ang modelong pangseguridad na ito sa lokal na pagpaparehistro ng user sa mga NT computer at sa mga kahilingan sa malayong network.

Ang sistema ng NTFS ay mayroon ding ilang mga kakayahan sa pagpapagaling sa sarili. Sinusuportahan ng NTFS ang iba't ibang mga mekanismo para sa pag-verify ng integridad ng system, kabilang ang pag-log ng transaksyon, na nagpapahintulot sa mga operasyon sa pagsulat ng file na mai-replay laban sa isang espesyal na log ng system.

Sa pag-log mga pagpapatakbo ng file, ang sistema ng pamamahala ng file ay nagtatala ng mga pagbabagong nagaganap sa isang espesyal na file ng serbisyo. Sa simula ng isang operasyon na may kaugnayan sa pagbabago ng istraktura ng file, isang kaukulang tala ay ginawa. Kung ang anumang pagkabigo ay nangyari sa panahon ng pagpapatakbo ng file, ang nasabing marka ng pagsisimula ng operasyon ay nananatiling nakasaad bilang hindi kumpleto. Kapag nagsagawa ka ng pagsusuri sa integridad ng file system pagkatapos i-reboot ang makina, kakanselahin ang mga nakabinbing operasyong ito at maibabalik ang mga file sa orihinal na estado nito. Kung ang pagpapatakbo ng pagbabago ng data sa mga file ay nakumpleto nang normal, pagkatapos ay sa mismong service logging support file ang operasyon ay minarkahan bilang nakumpleto.

Ang pangunahing kawalan ng file systemNTFS- Ang data ng serbisyo ay tumatagal ng maraming espasyo (halimbawa, ang bawat elemento ng direktoryo ay tumatagal ng 2 KB) - para sa maliliit na partisyon, ang data ng serbisyo ay maaaring sumakop ng hanggang 25% ng dami ng media.

Þ Hindi magagamit ang NTFS para mag-format ng mga floppy disk. Hindi mo ito dapat gamitin upang i-format ang mga partisyon na mas maliit sa 100 MB.

OS file system UNIX

Sa mundo ng UNIX mayroong ilan iba't ibang uri mga file system na may sariling istraktura panlabas na memorya. Ang pinakakilala ay ang tradisyonal na UNIX System V (s5) file system at ang Pamilya ng UNIX BSD(ufs).

Isaalang-alang ang s 5.

Ang isang file sa isang UNIX system ay isang koleksyon ng mga random na access character.

Ang file ay may istraktura na ipinataw dito ng gumagamit.

Ang Unix file system ay isang hierarchical, multi-user file system.

Ang file system ay may istraktura ng puno. Mga taluktok ( mga intermediate node) ng puno ay mga direktoryo na may mga link sa iba pang mga direktoryo o file. Ang mga dahon ng puno ay tumutugma sa mga file o walang laman na direktoryo.

Magkomento. Sa katunayan, ang Unix file system ay hindi nakabatay sa puno. Ang katotohanan ay ang sistema ay may posibilidad na lumabag sa hierarchy sa anyo ng isang puno, dahil posible na iugnay maraming pangalan na may parehong nilalaman ng file.

Istraktura ng disk

Ang disk ay nahahati sa mga bloke. Ang laki ng data block ay tinutukoy kapag nagfo-format ng file system gamit ang mkfs command at maaaring itakda sa 512, 1024, 2048, 4096 o 8192 bytes.

Nagbibilang kami ng 512 bytes (laki ng sektor).

Ang espasyo ng disk ay nahahati sa mga sumusunod na lugar (tingnan ang figure):

· loading block;

· kontrolin ang superblock;

· hanay ng mga i-node;

· lugar para sa pag-iimbak ng mga nilalaman (data) ng mga file;

· isang hanay ng mga libreng bloke (naka-link sa isang listahan);

Boot block

Superblock

ako - node

. . .

ako - node

Magkomento. Para sa UFS file system - lahat ng ito ay paulit-ulit para sa isang pangkat ng mga cylinder (maliban sa Boot block) + inilalaan espesyal na lugar upang ilarawan ang isang pangkat ng mga cylinder

Boot block

Ang block ay matatagpuan sa block No. 0. (Tandaan na ang paglalagay ng block na ito sa system device block zero ay tinutukoy ng hardware, dahil palaging ina-access ng hardware boot loader ang system device block zero. Ito ang huling bahagi ng file system na nakadepende sa hardware.)

Ang boot block ay naglalaman ng isang programa sa pag-promote na ginagamit upang paunang ilunsad ang UNIX OS. Sa S 5 file system, tanging ang boot block ng root file system ang aktwal na ginagamit. Sa karagdagang mga file system, ang lugar na ito ay naroroon, ngunit hindi ginagamit.

Superblock

Naglalaman ito ng impormasyon sa pagpapatakbo tungkol sa estado ng file system, pati na rin ang data tungkol sa mga parameter ng configuration ng file system.

Sa partikular, naglalaman ang superblock ang sumusunod na impormasyon

· bilang ng mga i-node (index descriptors);

· laki ng partisyon???;

· listahan ng mga libreng bloke;

· listahan ng mga libreng i-node;

· at higit pa.

pansinin natin! Ang libreng espasyo sa disk ay naka-link na listahan ng mga libreng bloke. Ang listahang ito ay nakaimbak sa isang superblock.

Ang mga elemento ng listahan ay mga array ng 50 elemento (kung block = 512 bytes, pagkatapos ay elemento = 16 bits):

· Ang mga elemento ng array No. 1-48 ay naglalaman ng mga bilang ng mga libreng block ng file block space mula 2 hanggang 49.

· Ang elemento #0 ay naglalaman ng isang pointer sa pagpapatuloy ng listahan, at

· ang huling elemento (No. 49) ay naglalaman ng isang pointer sa isang libreng elemento sa array.

Kung ang ilang proseso ay nangangailangan ng isang libreng bloke upang palawakin ang isang file, pagkatapos ay pipili ang system ng isang elemento ng array gamit ang isang pointer (sa isang libreng elemento), at ang bloke na may No. na nakaimbak sa elementong ito ay ibinibigay sa file. Kung ang file ay nabawasan, ang mga napalayang numero ay idaragdag sa hanay ng mga libreng bloke at ang pointer sa libreng elemento ay inaayos.

Dahil ang laki ng array ay 50 elemento, dalawang kritikal na sitwasyon ang posible:

1. Kapag nagbakante kami ng mga bloke ng mga file, ngunit hindi sila magkasya sa array na ito. Sa kasong ito, ang isang libreng bloke ay pinili mula sa file system at ang ganap na napuno na hanay ng mga libreng bloke ay kinopya sa bloke na ito, pagkatapos kung saan ang halaga ng pointer sa libreng elemento ay na-reset, at ang zero na elemento ng array, na matatagpuan sa superblock, ay naglalaman ng bilang ng block na pinili ng system upang kopyahin ang mga nilalaman ng array. Sa sandaling ito ito ay nilikha bagong elemento listahan ng mga libreng bloke (bawat isa ay may 50 elemento).

2. Kapag ang mga nilalaman ng mga elemento ng hanay ng mga libreng bloke ay naubos na (sa kasong ito, ang zero na elemento ng array ay zero Kung ang elementong ito ay hindi katumbas ng zero, nangangahulugan ito na mayroong pagpapatuloy ng ang array. Ang pagpapatuloy na ito ay binabasa sa isang kopya ng superblock sa RAM.

Libreng listahani-nodes. Ito ay isang buffer na binubuo ng 100 elemento. Naglalaman ito ng impormasyon tungkol sa 100 bilang ng mga i-node na libre sa ngayon.

Ang superblock ay palaging nasa RAM

Þ lahat ng mga operasyon (paglalabas at pag-okupa ng mga bloke at i-node ay nangyayari sa RAM Þ pagliit ng disk exchange.

Ngunit! Kung ang mga nilalaman ng superblock ay hindi nakasulat sa disk at ang kapangyarihan ay naka-off, ang mga problema ay lilitaw (isang pagkakaiba sa pagitan ng tunay na estado ng file system at ang mga nilalaman ng superblock). Ngunit ito ay kinakailangan na para sa pagiging maaasahan ng kagamitan ng system.

Magkomento. Sinusuportahan ng mga UFS file system ang maraming kopya ng superblock (isang kopya sa bawat pangkat ng cylinder) upang mapabuti ang katatagan.

Lugar ng Inode

Ito ay isang hanay ng mga paglalarawan ng file na tinatawag i -nodes (ako-node).(64 byte?)

Ang bawat index descriptor (i-node) ng isang file ay naglalaman ng:

· Uri ng file (file/direktoryo/espesyal na file/fifo/socket)

· Mga Katangian (mga karapatan sa pag-access) - 10

ID ng may-ari ng file

· Group ID ng may-ari ng file

· Oras ng paglikha ng file

Oras ng pagbabago ng file

· Oras ng huling pag-access sa file

· Haba ng file

· Bilang ng mga link sa isang ibinigay na i-node mula sa iba't ibang mga direktoryo

Mga address ng block ng file

!Mangyaring tandaan. Walang pangalan ng file dito

Tingnan natin kung paano ito inorganisa block addressing, kung saan matatagpuan ang file. Kaya, sa field ng address ay may mga numero ng unang 10 bloke ng file.

Kung ang file ay lumampas sa sampung bloke, ang sumusunod na mekanismo ay magsisimulang gumana: ang ika-11 elemento ng field ay naglalaman ng block number, na naglalaman ng 128 (256) na mga link sa mga bloke ng file na ito. Kung sakaling mas malaki pa ang file, gagamitin ang ika-12 elemento ng field - naglalaman ito ng block number, na naglalaman ng 128 (256) block number, kung saan ang bawat block ay naglalaman ng 128 (256) file system block number. At kung ang file ay mas malaki, pagkatapos ay ang ika-13 elemento ay ginagamit - kung saan ang nesting depth ng listahan ay nadagdagan ng isa pa.

Sa ganitong paraan makakakuha tayo ng file na may sukat (10+128+128 2 +128 3)*512.

Ito ay maaaring kinakatawan bilang mga sumusunod:

Address ng 1st block ng file

Address ng 2nd block ng file

Address ng ika-10 block ng file

Indirect addressing block address (block na may 256 block address)

Address ng 2nd indirect addressing block (block na may 256 address block na may mga address)

Address ng 3rd indirect addressing block (block na may mga address ng block na may address ng block na may address)

Proteksyon ng file

Ngayon tingnan natin ang may-ari at mga ID ng grupo at mga security bit.

Sa Unix OS ito ay ginagamit tatlong antas na hierarchy ng user:

Ang unang antas ay ang lahat ng mga gumagamit.

Ang pangalawang antas ay mga pangkat ng gumagamit. (Ang lahat ng mga gumagamit ay nahahati sa mga pangkat.

Ang ikatlong antas ay isang partikular na user (Ang mga grupo ay binubuo ng mga tunay na user). Dahil sa tatlong antas na organisasyong ito ng mga user, ang bawat file ay may tatlong katangian:

1) May-ari ng file. Ang katangiang ito ay nauugnay sa isa tiyak na gumagamit, na awtomatikong itinalaga ng system bilang may-ari ng file. Maaari kang maging default na may-ari sa pamamagitan ng paglikha ng isang file, at mayroon ding isang command na nagbibigay-daan sa iyong baguhin ang may-ari ng isang file.

2) Proteksyon sa pag-access ng file. Ang access sa bawat file ay limitado sa tatlong kategorya:

· mga karapatan ng may-ari (kung ano ang magagawa ng may-ari sa file na ito, sa pangkalahatang kaso - hindi lahat ng bagay);

· mga karapatan ng grupo kung saan kabilang ang may-ari ng file. Ang may-ari ay hindi kasama rito (halimbawa, ang isang file ay maaaring isara upang mabasa ng may-ari, ngunit lahat ng iba pang mga miyembro ng grupo ay malayang makakabasa mula sa file;

· lahat ng iba pang mga gumagamit ng system;

Ang tatlong kategoryang ito ay kumokontrol sa tatlong aksyon: pagbabasa mula sa isang file, pagsulat sa isang file, at pag-execute ng isang file (sa mnemonic R, W, X system, ayon sa pagkakabanggit). Tinutukoy ng bawat file sa tatlong kategoryang ito kung aling user ang maaaring magbasa, kung alin ang magsulat, at kung sino ang maaaring magpatakbo nito bilang isang proseso.

Organisasyon ng direktoryo

Mula sa pananaw ng OS, ang isang direktoryo ay isang regular na file na naglalaman ng data tungkol sa lahat ng mga file na kabilang sa direktoryo.

Ang isang elemento ng direktoryo ay binubuo ng dalawang field:

1)bilang ng i-node (ordinal na numero sa hanay ng mga i-node) at

2) pangalan ng file:

Ang bawat direktoryo ay naglalaman ng dalawang espesyal na pangalan: ‘.’ - ang direktoryo mismo; '..' - direktoryo ng magulang.

(Para sa root directory, ang magulang ay tumutukoy sa parehong direktoryo.)

Sa pangkalahatan, ang isang direktoryo ay maaaring maglaman ng maraming mga entry na tumutukoy sa parehong i-node, ngunit ang direktoryo ay hindi maaaring maglaman ng mga entry na may parehong mga pangalan. Iyon ay, ang isang arbitrary na bilang ng mga pangalan ay maaaring iugnay sa mga nilalaman ng file. Ito ay tinatawag pagtatali. Ang isang entry sa direktoryo na kabilang sa isang file ay tinatawag komunikasyon.

Ang mga file ay umiiral nang hiwalay sa mga entry sa direktoryo, at ang mga link ng direktoryo ay talagang tumuturo sa mga pisikal na file. Ang file ay "nawawala" kapag tinanggal huling koneksyon, sabay turo sa kanya.

Kaya, upang ma-access ang isang file ayon sa pangalan, operating system

1. hinahanap ang pangalang ito sa direktoryo na naglalaman ng file,

2. nakakakuha ng numero ng i-node ng file,

3. ginagamit ang numero upang mahanap ang i-node sa lugar ng mga i-node,

4. mula sa i-node ay natatanggap ang mga address ng mga bloke kung saan matatagpuan ang data ng file,

5. nagbabasa ng mga bloke mula sa lugar ng data gamit ang mga block address.

Istruktura ng partition ng disk sa EXT2 FS

Ang buong espasyo ng partisyon ay nahahati sa mga bloke. Ang isang bloke ay maaaring 1, 2, o 4 na kilobytes ang laki. Ang isang bloke ay isang matutugunan na yunit ng espasyo sa disk.

Ang mga bloke sa kanilang lugar ay pinagsama sa mga grupo ng mga bloke. Ang mga pangkat ng mga bloke sa isang file system at mga bloke sa loob ng isang grupo ay binibilang nang sunud-sunod, simula sa 1. Ang unang bloke sa isang disk ay may bilang na 1 at nabibilang sa numero ng pangkat 1. Ang kabuuang bilang ng mga bloke sa isang disk (sa isang disk partition) ay isang divisor ng kapasidad ng disk, na ipinahayag sa mga sektor. At ang bilang ng mga block group ay hindi kailangang hatiin ang bilang ng mga bloke, dahil huling pangkat maaaring hindi kumpleto ang mga bloke. Ang simula ng bawat pangkat ng mga bloke ay may isang address, na maaaring makuha bilang ((numero ng pangkat - 1)* (bilang ng mga bloke sa pangkat)).

Ang bawat pangkat ng mga bloke ay may parehong istraktura. Ang istraktura nito ay ipinakita sa talahanayan.

Ang unang elemento ng istrukturang ito (superblock) ay pareho para sa lahat ng grupo, at lahat ng iba ay indibidwal para sa bawat grupo. Ang superblock ay naka-imbak sa unang block ng bawat block group (maliban sa grupo 1, na may boot record sa unang block). Superblock ay ang panimulang punto ng file system. Ito ay 1024 bytes ang laki at palaging matatagpuan sa offset na 1024 bytes mula sa simula ng file system. Ang pagkakaroon ng ilang mga kopya ng superblock ay ipinaliwanag sa pamamagitan ng matinding kahalagahan ng elementong ito ng file system. Ginagamit ang mga duplicate ng superblock kapag nagre-recover ng file system pagkatapos ng mga pagkabigo.

Ang impormasyong nakaimbak sa superblock ay ginagamit upang ayusin ang pag-access sa natitirang data sa disk. Tinutukoy ng superblock ang laki ng file system, maximum na bilang mga file sa partition, ang dami ng libreng espasyo at naglalaman ng impormasyon kung saan hahanapin ang mga hindi inilalaang lugar. Kapag nagsimula ang OS, ang superblock ay binabasa sa memorya at ang lahat ng mga pagbabago sa file system ay unang makikita sa isang kopya ng superblock na matatagpuan sa OS at isinulat sa disk lamang sa pana-panahon. Pinapabuti nito ang performance ng system dahil maraming user at proseso ang patuloy na nag-a-update ng mga file. Sa kabilang banda, kapag ang system ay naka-off, ang superblock ay dapat na nakasulat sa disk, na hindi pinapayagan ang pag-off ng computer sa pamamagitan lamang ng pag-off ng kapangyarihan. Kung hindi, sa susunod na mag-boot ka, ang impormasyong naitala sa superblock ay hindi tumutugma sa totoong estado ng file system.

Ang pagsunod sa superblock ay isang paglalarawan ng pangkat ng mga bloke (Group Descriptors). Ang paglalarawang ito ay naglalaman ng:

Address ng block na naglalaman ng block bitmap ng pangkat na ito;

Address ng block na naglalaman ng inode bitmap ng pangkat na ito;

Address ng block na naglalaman ng inode table ng grupong ito;

Counter ng bilang ng mga libreng block sa pangkat na ito;

Ang bilang ng mga libreng inode sa pangkat na ito;

Ang bilang ng mga inode sa isang partikular na pangkat na mga direktoryo

at iba pang datos.

Ang impormasyong nakaimbak sa paglalarawan ng grupo ay ginagamit upang mahanap ang block at inode bitmaps, pati na rin ang inode table.

Sistema ng file Ext 2 ay nailalarawan sa pamamagitan ng:

  • hierarchical na istraktura,
  • napagkasunduan sa pagproseso mga data set,
  • dynamic na extension ng file,
  • proteksyon ng impormasyon sa mga file,
  • tinatrato ang mga peripheral device (tulad ng mga terminal at tape device) bilang mga file.

Panloob na representasyon ng file

Ang bawat file sa Ext 2 system ay may natatanging index. Ang index ay naglalaman ng impormasyong kailangan ng anumang proseso para ma-access ang file. Pinoproseso ang pag-access ng mga file gamit ang isang mahusay na tinukoy na hanay ng mga tawag sa system at pagtukoy sa file gamit ang isang string ng mga character na gumaganap bilang isang kwalipikadong pangalan ng file. Ang bawat tambalang pangalan ay natatanging kinikilala ang isang file, kaya ang system kernel ay nagko-convert ng pangalang ito sa isang file index. Dahil ang bawat bloke sa isang disk ay tinutugunan ng sarili nitong numero, ang talahanayang ito ay nag-iimbak ng isang koleksyon ng mga numero ng bloke ng disk. Upang madagdagan ang kakayahang umangkop, ang kernel ay nagdaragdag ng isang file nang paisa-isa, na nagpapahintulot sa impormasyon ng file na nakakalat sa buong file system. Ngunit ang layout na ito ay kumplikado sa gawain ng paghahanap ng data. Ang talahanayan ng address ay naglalaman ng isang listahan ng mga block number na naglalaman ng impormasyong kabilang sa file.

Mga inode ng file

Ang bawat file sa disk ay may kaugnay na file inode, na kinilala sa pamamagitan nito serial number- index ng file. Nangangahulugan ito na ang bilang ng mga file na maaaring gawin sa isang file system ay limitado sa bilang ng mga inode, na alinman ay tahasang tinukoy kapag ang file system ay nilikha o kinakalkula batay sa pisikal na laki. pagkahati ng disk. Umiiral ang mga inode sa disk sa static na anyo at binabasa ng kernel ang mga ito sa memorya bago magtrabaho sa kanila.

Ang file inode ay naglalaman ng sumusunod na impormasyon:

- Ang uri at mga karapatan sa pag-access sa file na ito.

Identifier ng may-ari ng file (Uid ng May-ari).

Laki ng file sa bytes.

Oras ng huling pag-access sa file (Access time).

Oras ng paggawa ng file.

Oras ng huling pagbabago ng file.

Oras ng pagtanggal ng file.

Group ID (GID).

Bilang ng mga link.

Ang bilang ng mga bloke na inookupahan ng file.

Mga flag ng file

Nakalaan para sa OS

Mga pointer sa mga bloke kung saan nakasulat ang data ng file (isang halimbawa ng direkta at hindi direktang pagtugon sa Fig. 1)

Bersyon ng file (para sa NFS)

ACL file

Direktoryo ng ACL

Address ng fragment

Numero ng fragment

Laki ng fragment

Mga katalogo

Ang mga direktoryo ay mga file.

Ang kernel ay nag-iimbak ng data sa isang direktoryo tulad ng ginagawa nito sa isang regular na uri ng file, gamit ang isang istraktura ng index at mga bloke na may direkta at hindi direktang mga antas ng pagtugon. Maaaring basahin ng mga proseso ang data mula sa mga direktoryo sa parehong paraan na binabasa nila ang mga regular na file, gayunpaman, ang eksklusibong pag-access sa pagsulat sa direktoryo ay nakalaan ng kernel, na tinitiyak na tama ang istraktura ng direktoryo.)

Kapag ang isang proseso ay gumagamit ng isang file path, ang kernel ay tumitingin sa mga direktoryo para sa kaukulang numero ng inode. Matapos ma-convert ang pangalan ng file sa numero ng inode, inilalagay ang inode sa memorya at pagkatapos ay gagamitin sa mga kasunod na kahilingan.

Mga karagdagang tampok ng EXT2 FS

Bilang karagdagan sa mga karaniwang feature ng Unix, ang EXT2fs ay nagbibigay ng ilang karagdagang feature na hindi karaniwang sinusuportahan ng Unix file system.

Nagbibigay-daan sa iyo ang mga katangian ng file na baguhin kung paano tumugon ang kernel kapag nagtatrabaho sa mga hanay ng mga file. Maaari kang magtakda ng mga katangian sa isang file o direktoryo. Sa pangalawang kaso, ang mga file na nilikha sa direktoryo na ito ay nagmamana ng mga katangiang ito.

Sa panahon ng system mounting, maaaring itakda ang ilang feature na nauugnay sa mga attribute ng file. Ang opsyon sa pag-mount ay nagbibigay-daan sa administrator na pumili kung paano nilikha ang mga file. Sa isang BSD-specific na file system, ang mga file ay ginawa gamit ang parehong ID ng grupo bilang ang pangunahing direktoryo. Ang mga tampok ng System V ay medyo mas kumplikado. Kung ang isang direktoryo ay may setgid bit set, kung gayon nabuong mga file inherit ang group ID ng directory na iyon, at ang mga subdirectory ay inherit ang group ID at setgid bit. Kung hindi, ang mga file at direktoryo ay nilikha gamit ang pangunahing ID ng grupo ng proseso ng pagtawag.

Ang EXT2fs system ay maaaring gumamit ng kasabay na pagbabago ng data na katulad ng BSD system. Ang opsyon sa pag-mount ay nagbibigay-daan sa administrator na tukuyin na ang lahat ng data (inode, bit block, indirect block, at directory blocks) ay maisusulat sa disk nang sabay-sabay kapag binago ang mga ito. Magagamit ito upang makamit ang mataas na kapasidad sa pag-record ng data, ngunit nagreresulta din sa mahinang pagganap. Sa katotohanan, ang function na ito ay hindi karaniwang ginagamit dahil, bilang karagdagan sa nagpapababa sa pagganap, maaari itong humantong sa pagkawala ng data ng user na hindi na-flag kapag sinusuri ang file system.

Binibigyang-daan ka ng EXT2fs na piliin ang lohikal na laki ng bloke kapag gumagawa ng isang file system. Maaari itong maging 1024, 2048 o 4096 bytes ang laki. Ang paggamit ng mas malalaking bloke ay nagreresulta sa mas mabilis na mga operasyon ng I/O (dahil mas kaunting mga kahilingan sa disk ang ginagawa), at samakatuwid ay mas kaunting paggalaw ng ulo. Sa kabilang banda, ang paggamit ng malalaking bloke ay humahantong sa nasayang na espasyo sa disk. Karaniwan, ang huling bloke ng isang file ay hindi ganap na ginagamit para sa pag-iimbak ng impormasyon, kaya habang tumataas ang laki ng bloke, tumataas ang dami ng nasayang na espasyo sa disk.

Pinapayagan ka ng EXT2fs na gumamit ng pinabilis simbolikong mga link. Kapag gumagamit ng mga naturang link, hindi ginagamit ang mga bloke ng data ng file system. Ang pangalan ng patutunguhang file ay hindi naka-imbak sa data block, ngunit sa inode mismo. Ang istrakturang ito ay nagbibigay-daan sa iyo upang makatipid ng puwang sa disk at mapabilis ang pagproseso ng mga simbolikong link. Siyempre, ang puwang na nakalaan para sa hawakan ay limitado, kaya hindi lahat ng link ay maaaring ilarawan bilang pinabilis. Ang maximum na haba ng pangalan ng file sa isang pinabilis na link ay 60 character. Sa malapit na hinaharap, pinlano na palawakin ang scheme na ito para sa maliliit na file.

Sinusubaybayan ng EXT2fs ang estado ng file system. Gumagamit ang kernel ng hiwalay na field sa superblock upang ipahiwatig ang estado ng file system. Kung ang file system ay naka-mount sa read/write mode, ang estado nito ay nakatakda sa "Not Clean". Kung ito ay lansagin o na-remount sa read-only na mode, ang estado nito ay nakatakda sa "Clean". Sa panahon ng pag-boot ng system at mga pagsusuri sa katayuan ng file system, ginagamit ang impormasyong ito upang matukoy kung kinakailangan ang pagsusuri ng file system. Ang kernel ay naglalagay din ng ilang mga error sa field na ito. Kapag ang kernel ay nakakita ng hindi pagkakatugma, ang file system ay minarkahan bilang "Mali". Sinusuri ng file system checker ang impormasyong ito upang suriin ang system, kahit na ang status nito ay talagang Malinis.

Ang pagwawalang-bahala sa pagsubok ng file system sa mahabang panahon ay maaaring humantong sa ilang mga kahirapan, kaya ang EXT2fs ay may kasamang dalawang pamamaraan para sa regular na pagsuri sa system. Ang superblock ay naglalaman ng system mount counter. Ang counter na ito ay dinadagdagan sa tuwing ang system ay naka-mount sa read/write mode. Kung ang halaga nito ay umabot sa maximum (ito ay naka-imbak din sa superblock), pagkatapos ay ang file system test program ay magsisimulang suriin ito, kahit na ang estado nito ay "Malinis". Ang huling oras ng pagsusuri at ang maximum na pagitan sa pagitan ng mga tseke ay naka-imbak din sa superblock. Kapag naabot ang pinakamataas na agwat sa pagitan ng mga pag-scan, hindi papansinin ang estado ng file system at magsisimula ang pag-scan nito.

Pag-optimize ng pagganap

Ang sistema ng EXT2fs ay naglalaman ng maraming mga tampok na nag-o-optimize sa pagganap nito, na humahantong sa pagtaas ng bilis ng pagpapalitan ng impormasyon kapag nagbabasa at nagsusulat ng mga file.

Aktibong ginagamit ng EXT2fs ang disk buffer. Kapag ang isang bloke ay kailangang basahin, ang kernel ay naglalabas ng isang I/O operation request sa ilang katabing bloke. Kaya, sinusubukan ng kernel na tiyakin na ang susunod na bloke na babasahin ay na-load na sa disk buffer. Ang ganitong mga operasyon ay karaniwang ginagawa kapag nagbabasa ng mga file nang sunud-sunod.

Naglalaman din ang EXT2fs system ng malaking bilang ng mga pag-optimize para sa paglalagay ng impormasyon. Ang mga block group ay ginagamit upang pagsama-samahin ang mga katumbas na inode at data block. Palaging sinusubukan ng kernel na ilagay ang mga bloke ng data ng isang file sa parehong grupo, pati na rin ang descriptor nito. Nilalayon nitong bawasan ang paggalaw ng mga drive head kapag binabasa ang descriptor at ang mga kaukulang data block nito.

Kapag nagsusulat ng data sa isang file, ang EXT2fs ay paunang naglalaan ng hanggang 8 magkadikit na bloke kapag naglalaan ng bagong bloke. Ang pamamaraang ito ay nagbibigay-daan sa iyo upang makamit ang mataas na pagganap sa ilalim ng mabigat na pagkarga ng system. Pinapayagan din nito ang mga file na mailagay sa magkadikit na mga bloke, na nagpapabilis sa kanilang kasunod na pagbabasa.

file- lohikal yunit ng paglalaan ng memorya. Ito rin ay isang set ng lohikal na magkakaugnay kaugnay na impormasyon. Sistema ng file matatagpuan sa panlabas na memorya (sa mga disk) at organisado Sa pamamagitan ng mga antas. Ang istraktura ng isang multi-level na file system ay ipinapakita sa Fig. 11.19.

kanin. 11.19. Multi-level na file system.

Sa pinakamataas na antas ng abstraction gumagana sila mga programa ng gumagamit, gamit ang mataas na antas ng mga primitive ng form WriteLine(F, X).Ang antas sa ibaba ay ang mga interface module lohikal na mga file– lohikal na mga tala, mga bloke at mga pagpapatakbo ng palitan. Sa ibaba ay dumating ang mga module ng organisasyon ng file, pagkatapos - mga operasyon pangunahing file system. Naka-on mas mababang antas matatagpuan ang mga driver mga aparato (kontrol input/output) at hardware (input/output device at ang kanilang mga controllers).

– isang istraktura sa memorya na naglalaman ng impormasyon tungkol sa file. Karaniwan Ang istraktura ng file control block ay ipinakita sa Talahanayan 3.

In-memory system structures para sa pamamahala ng file system

Kapag nagbukas ka ng file at kapag nagsagawa ka pa ng mga operasyon dito, nag-iimbak ang OS sa memorya buo isang bilang ng mga istruktura ng system na ipinapakita sa Fig. 19.12.

kanin. 19.12. Mga istruktura ng OS sa memorya para sa pamamahala ng file system.

Kapag nagbubukas ng file, kapag nag-e-execute mga operasyon, kung saan ito ay ipinahiwatig daanan ng pag-access sa isang file sa istraktura ng direktoryo, ang sistema ay nakakahanap ng isang link sa file control block. Kapag nagsasagawa ng mga pagpapatakbo ng palitan, nagbabasa ang OS alaala mga bloke ng data ng file na isinagawa sa mga operasyon. Bilang karagdagan, ang OS ay nagpapanatili ng isang system-wide table ng mga bukas na file. Para sa bawat proseso ito ay nakaimbak din mesa mga file na binuksan lamang sa pamamagitan ng prosesong ito.

Mga pangunahing termino

File ng Network System (NFS)- malawakang ginagamit na sistema pampublikong access sa mga file sa pamamagitan ng lokal net.

Ganap na landas- puno daanan ng pag-access sa file, simula sa logical partition name, o mula sa root system directory.

Mga katangian ng file– pangkalahatang mga katangian na naglalarawan sa mga nilalaman ng file.

I-block– lohikal yunit impormasyon (bahagi) ng isang file, karaniwang pinagsasama ang ilan mga tala, para sa layunin ng pag-optimize I/O operations.

File control block (FCB)– isang istraktura sa memorya na naglalaman ng impormasyon tungkol sa isang file at ginagamit ng operating system.

Direktoryo (direktoryo, folder)- direktoryo, folder– isang istraktura sa panlabas na memorya na naglalaman ng mga simbolikong pangalan ng mga file at iba pang mga direktoryo at mga link sa kanila.

Object Code File Addendum (DOFK):sa sistema ng Elbrus - file, na naglalaman sa isang pinag-isang anyo ng mga talahanayan ng mga pinangalanang entity na tinukoy sa programa at mga pamamaraan nito ( metadata).

Header ng file – ulo rekord file na naglalaman nito mga katangian.

Record – elementarya yunit, bahagi ng file kung saan ang mga operasyon pagbabahagi sa isang file.

Proteksyon– tagapamahala impormasyon, na tumutukoy sa mga pahintulot na basahin, baguhin, at isagawa ang file.

Lalagyan(sa sistema ng Elbrus) – imbakan ng file sa isa o ilang mga disk.

Pag-mount– koneksyon ng isang hiwalay subtree hindi pa naka-mount na file system sa anumang vertex (mount point) isang karaniwang puno ng magagamit na mga file system.

Set ng data- termino ng kumpanya IBM upang ipahiwatig file.

Pagbabahaginan– ang kakayahang mag-access ng mga file at direktoryo para sa iba't ibang user, kabilang ang – Sa pamamagitan ng lokal na network.

Kamag-anak na landas- daanan ng pag-access sa isang file tungkol sa ilan kasalukuyang direktoryo.

Memorya ng file - ang mga rekord nito na naglalaman ng impormasyong aktwal na nakaimbak dito.

Daan– maraming pantig pangalan ng file o direktoryo, na binubuo ng pangalan ng root directory (o logical drive) at isang pagkakasunod-sunod ng mga pangalan ng direktoryo ng mga kasunod na antas.

Pagkahati – isang katabing lugar ng memorya ng disk na may sariling lohikal na pangalan (karaniwan ay isa sa mga unang titik ng alpabetong Latin).

Backup(back-up)pagkopya mga file at direktoryo sa panlabas na media – tape ( streamer), flash- alaala, panlabas portable mahirap disk, compact disk (CD, DVD), para sa layunin ng kanilang kaligtasan.

Direktoryo mga panlabas na link(CBC)– sa sistema ng Elbrus: direktoryo, magagamit para sa bawat file at ginagamit upang mag-imbak ng mga panlabas na link nito sa iba pang mga file; Ang mga elemento ng SVS ay tinutugunan Sa pamamagitan ng mga numero, hindi Sa pamamagitan ng mga pangalan.

Mount point– isang node sa puno ng file system kung saan nakakabit ang isang bago file system sa pag-mount.

File – isang magkadikit na rehiyon ng lohikal na espasyo ng address, karaniwang naka-imbak sa panlabas na memorya.

Object Code File (FOK)– sa sistema ng Elbrus: file, na nag-iimbak ng binary code ng executable program.

Sistema ng filesubtree mga direktoryo sa ilang makina, na matatagpuan sa isa seksyon.

Mga tanong

1. Ano ang file?

2. Alin uri ng impormasyon maaari ba itong maimbak sa isang file?

3. Anong istraktura ang maaaring magkaroon ng file?

4. Anong mga programa ang nagbibigay kahulugan sa mga nilalaman ng file?

5. Ano ang mga pangunahing mga katangian ng file?

6. Ano ang mga pangunahing operasyon sa isang file?

7. Paano tinutukoy ng system ang uri ng file?

8. Anong mga extension ng pangalan ang ginagamit sa mga operating system?

9. Anong mga paraan ng pag-access ng mga file ang alam mo?

10. Anong mga operasyon ang tinukoy sa direktang pag-access ng mga file?

11. Anong mga operasyon ang tinukoy sa mga file sunud-sunod na pag-access?

12. Ano ang isang index file at para saan ito ginagamit?

13. Ano ang isang direktoryo?

14. Ano ang mga tampok, pakinabang at disadvantages ng Elbrus file system?

15. Ano ang isang seksyon?

16. Ano ang mga pangunahing operasyon sa isang direktoryo?

17. Ano ang mga layunin ng organisasyong lohikal na direktoryo?

18. Aling samahan ng direktoryo ang pinakagusto at bakit?

19. Anong mga problema ang lumitaw kapag nag-aayos ng mga direktoryo sa anyo ng isang arbitrary na graph?

20. Ano ang mounting file system?

21. Ano ang mount point?

22. Ano ang file sharing at bakit ito kailangan?

23. Ano ang NFS?

24. Ano ang proteksyon ng file?

25. Anong mga pahintulot sa seguridad at kung saan ang mga gumagamit ay isinasaalang-alang sa UNIX?

26. Ano ang file control block?

27. Anong mga antas ng abstraction ang maaaring makilala sa pagpapatupad ng mga file system?

28. Anong mga istruktura sa memorya ang nilikha ng OS kapag binubuksan ang isang file at upang pamahalaan ang mga pagpapatakbo ng palitan?

Mga ehersisyo

1. Magpatupad ng isang hanay ng mga pangunahing pagpapatakbo ng file gamit ang mababang antas ng I/O primitives.

2. Magpatupad ng mga operasyon sunud-sunod na pag-access sa mga file gamit ang mga operasyon ng direktang pag-access.

3. Ipatupad ang mga index file at pinabilis na mga operasyon sa paghahanap para sa impormasyon sa mga pangunahing file gamit ang mga index na file.

4. Ipatupad ang istraktura ng direktoryo at mga pangunahing operasyon dito gamit ang mga pagpapatakbo ng file. Itabi ang lahat ng link sa simbolikong anyo.

5. Bumuo at magpatupad ng algorithm para sa paghahanap ng mga cyclic na link sa istraktura ng direktoryo.


©2015-2019 site
Lahat ng karapatan ay pag-aari ng kanilang mga may-akda. Ang site na ito ay hindi inaangkin ang pagiging may-akda, ngunit nagbibigay libreng paggamit.
Petsa ng paggawa ng page: 2016-04-11

Sistema ng file ay isang bahagi ng operating system na ang layunin ay mag-organisa mabisang gawain na may data na nakaimbak sa panlabas na memorya at ibigay sa user user-friendly na interface kapag nagtatrabaho sa naturang data. Ang pag-aayos ng imbakan ng impormasyon sa isang magnetic disk ay hindi madali. Ito ay nangangailangan, halimbawa, ng isang mahusay na kaalaman sa disenyo ng disk controller at ang mga tampok ng pagtatrabaho sa mga rehistro nito. Ang direktang pakikipag-ugnayan sa disk ay ang prerogative ng isang bahagi ng OS input/output system na tinatawag na disk driver. Upang palayain ang gumagamit ng computer mula sa mga kumplikado ng pakikipag-ugnay sa hardware, isang malinaw, abstract na modelo ng file system ang naimbento. Ang mga operasyon sa pagsulat o pagbasa ng file ay mas simple sa konsepto kaysa sa mga pagpapatakbo ng device na mababa ang antas.

Ilista natin pangunahing tungkulin file system.

1. Pagkilala sa file. Pag-uugnay ng pangalan ng file sa puwang ng panlabas na memorya na nakalaan dito.

2. Pamamahagi ng panlabas na memorya sa pagitan ng mga file. Upang gumana sa isang partikular na file, ang user ay hindi kailangang magkaroon ng impormasyon tungkol sa lokasyon ng file na ito sa isang external na storage medium. Halimbawa, upang mai-load ang isang dokumento sa editor mula sa isang hard drive, hindi namin kailangang malaman kung aling bahagi ng magnetic disk, kung saan silindro at kung saang sektor matatagpuan ang dokumento.

3. Tinitiyak ang pagiging maaasahan at pagpapahintulot sa kasalanan. Ang halaga ng impormasyon ay maaaring maraming beses na mas mataas kaysa sa halaga ng isang computer.

4. Tinitiyak ang proteksyon mula sa hindi awtorisadong pag-access.

5. Pagbibigay ng ibinahaging access sa mga file upang ang user ay hindi na kailangang gumawa ng mga espesyal na pagsisikap upang matiyak ang pag-synchronize ng access.

6. Tinitiyak ang mataas na pagganap.

Minsan sinasabing ang isang file ay isang pinangalanang koleksyon ng mga kaugnay na impormasyong nakasulat sa pangalawang memorya. Para sa karamihan ng mga user, ang file system ang pinakanakikitang bahagi ng OS. Nagbibigay ito ng mekanismo para sa online na imbakan at pag-access sa parehong data at mga programa para sa lahat ng mga gumagamit ng system. Mula sa pananaw ng gumagamit, ang isang file ay isang yunit ng panlabas na memorya, iyon ay, ang data na nakasulat sa disk ay dapat na bahagi ng ilang file.

37. Ang pinakasimpleng mesa talaan ng mga nilalaman ng dami at mga elemento nito

Kasama sa file system talaan ng nilalaman At lugar ng datos - isang koleksyon ng mga bloke sa isang disk, na kinilala sa pamamagitan ng kanilang mga numero/address. Isang halimbawa ng pinakasimpleng (abstract) na talahanayan ng mga nilalaman, talaan ng mga nilalaman ng isang volume (disk, pakete ng mga disk), na may iba't ibang mga pangalan sa iba't ibang mga operating system - VTOC - Volume Talaan ng Nilalaman, FAT - File Allocation Table, FDT - Talahanayan ng Kahulugan ng File, atbp., ay ipinapakita sa Fig. 1.

kanin. 1. Ang pinakasimpleng talaan ng nilalaman ng dami

Binubuo ito ng tatlong lugar:

· lugar ng file. Ito ay isang talahanayan na karaniwang may limitado (sa halimbawa N=6) bilang ng mga linya N(sa MS-DOS, halimbawa, N=500, ibig sabihin. bilang ng mga file na hindi hihigit sa 500). Bilang ng mga column M(sa halimbawa M= 5) ay karaniwang pinipili upang ang 85 -95% ng mga file na nilikha ng user ay naglalaman ng hindi hihigit sa M mga bloke, na nakasalalay pareho sa laki ng bloke at uri ng gumagamit, at sa pangkalahatang antas ng pag-unlad ng impormasyon at software. Unang haligi ng talahanayan sa bawat hilera (Tala ng Pamagat) naglalaman ng impormasyon tungkol sa file, sa sa halimbawang ito- pangalan ng file;

· overflow area- karagdagang talahanayan isang katulad na istraktura kung saan ang mga block number ay partikular na isinulat mahabang files(sa halimbawa - File_l). Ang pag-aayos ng talahanayan ng alokasyon sa anyo ng isang file area at isang overflow area ay malinaw na nagbibigay-daan para sa pagtitipid sa laki ng talahanayan sa kabuuan, nang hindi kasabay na nililimitahan ang malamang na haba ng file;

· listahan ng mga libreng bloke- kinakailangang impormasyon para sa paglalagay ng nilikha o pinalawak na mga file. Ang listahan ay ginawa sa panahon ng pagsisimula at kasama ang lahat ng mga bloke maliban sa mga nasira, at pagkatapos ay inaayos kapag ang mga file ay ginawa, tinanggal, o binago;

· listahan ng mga masamang bloke. Ito ay isang talahanayan na nilikha sa panahon ng pagsisimula (pagkahati) ng isang volume (disk), na pinupunan ng mga diagnostic program (isang halimbawa nito ay NDD - Norton Disk Doctor, na kilala ng mga gumagamit) at pinipigilan ang pamamahagi ng mga nasirang lugar sa isang magnetic medium sa mga file ng data.

Ilista natin ang mga tampok ng sitwasyong naitala sa Fig. 1. sa pinakasimpleng (artipisyal) na file system.

Sinasakop ng File_l ang 6 na bloke, ang bilang na ito ay mas malaki kaysa sa maximum, kaya ang address ng block No. 6 (23) ay inilalagay sa overflow table;

Sinasakop ng File_2 ang 2 bloke, na mas mababa sa limitasyon, kaya ang lahat ng impormasyon ay puro sa lugar ng file.

Ang mga sumusunod ay magagamit mga sitwasyon ng salungatan:

· Ang File_3 ay hindi naglalaman ng isang bloke (kaya, ang file ay tinanggal, ngunit ang tala ng header ay napanatili);

· Ang File_4 at File_l ay tumutukoy sa block #3 Ito ay isang error dahil ang bawat bloke ay dapat italaga sa isang file;

· ang listahan ng mga libreng bloke ay naglalaman ng mga numero ng bloke No. 12 (minarkahan bilang masama) at No. 13 (inilalaan sa ilalim ng File_1).

38. Lohikal na istraktura disk partition gamit ang halimbawa ng IBM- at MS-compatible na file system


Logical drive D at E

Ang maximum na bilang ng mga pangunahing partisyon ay 4. Aktibong seksyon ang isa kung saan matatagpuan ang system bootloader.

MBR- code at data na kinakailangan para sa kasunod na pag-load ng operating system at matatagpuan sa mga unang pisikal na sektor (kadalasan sa pinakauna) sa isang hard drive o iba pang device na imbakan ng impormasyon.

Tinatawag ang pinahabang entry ng seksyon SMBR (Secondary Master Boot Record ). Ang pagkakaiba sa entry na ito ay wala itong bootloader, at ang partition table ay binubuo ng dalawang entry: isang primary partition at isang extended partition.

39. FAT file system. istraktura ng dami ng FAT

40. NTFS file system. Ang istraktura ng dami ng NTFS

41. Windows OS Registry

42. Mga operating system ng pamilyang Windows NT

43. Ilang architectural modules ng Windows NT

44. Pamamahala ng mga hard drive sa Windows NT

45. Projective operating system, ang kanilang mga prinsipyo, pakinabang, disadvantages

46. ​​​​Procedural operating system, ang kanilang mga prinsipyo, pakinabang, disadvantages

47. Kasaysayan ng pag-unlad at ideolohiya ng pagbuo ng Unix OS

48. Istraktura ng Unix OS

49. Mga Interface ng Gumagamit Unix

50. Mga proseso ng pagpapadala (mga gawain) sa Unix

51. Linux OS at ang mga pangunahing bentahe nito

52. Pagpapatupad graphics mode sa Linux OS

53. Mga pangunahing prinsipyo ng pagtatrabaho sa Linux OS

54. Mga pangunahing file ng pagsasaayos ng Linux OS

55. Nagtatrabaho sa mga disk drive sa Linux OS

56. Mga aplikasyon para sa Linux OS