Direktorij
U računarstvu, direktorij (direktorijum, katalog, fascikla, imenik ili omotnica) je kataloška struktura sistema datoteka koja sadrži reference prema ostalim računarskim datotekama, i često prema drugim direktorijima. Na više računara, direktoriji su poznati kao folderi, katalozi (catalog
se koristi na Apple II, Commodore 128 i nekim drugim ranijim kućnim računarima kao komanda za prikazivanje sadržaja diska; sistemi datoteka korišteni od strane ovih DOS-ova (operativni sistemi diska) ne podržavaju hijerarhiju direktorija), ili lad[1] da pruže neku relevantnost prema radnom okruženju kao tradicionalni uredski kabinet datoteka. Na Microsoft Windows-u, pojmovi folder i directory se naizmjenično koriste.[2]
Datoteke su organizirane pohranjivanjem povezanih datoteka u isti direktorij. U hijerarhijskom sistemu datoteka (to je onaj u kojem su datoteke i direktoriji organizirani na način koji podsjeća na stablo), direktorij koji se nalazi u drugom direktoriju se zove poddirektorij ili subdirektorij. Pojmovi parent i child se često koriste u engleskom jeziku da opišu vezu između poddirektorija i direktorija u kojem je ovaj prethodni katalogiziran, dok je ovaj drugi parent - roditelj. Direktorij koji sadrži sve direktorije u sistemu datoteka, a ne nalazi se pritom ni u jednom direktoriju, naziva se root direktorij.
Historijski, pa čak i na nekim modernim ugrađenim sistemima, sistemi datoteka ili nemaju podršku za direktorije nikako ili imaju samo "flat" strukturu direktorija, što znači da poddirektoriji nisu podržani; postoji samo grupa top-level direktorija gdje svaki sadrži datoteke. Prvi popularni potpuno generalno hijerarhijski sistem datoteka je bio Multics. Ovaj tip sistema datoteka je bio rani istraživački interes Dennisa Ritchieja.
Mnogi moderni sistemi poput Unixa, posebno Linux, imaju standardnu strukturu direktorija definiranu od strane Filesystem Hierarchy Standard. Kod dosta operativnih sistema, programi imaju asociran radni direktorij u kojem se pokreću. Tipično, imena datoteka pristupljena programom pretpostavlja se da borave u ovom direktoriju ako imena datoteka nisu navedena sa eksplicitnim imenom direktorija.
Neki operativni sistemi vrše restrikciju prema korisničkom pristupu na samo njihov "kućni direktorij" ili direktorij projekta, pritom izolirajući njihove aktivnosti od svih ostalih korisnika. U ranijim verzijama Unixa, root direktorij je bio home direktorij za root korisnika, ali moderni Unix obično koristi drugi direktorij kao što je /root za ovu svrhu.
U skladu sa filozofijom Unixa, Unix sistemi tretiraju direktorije kao tip datoteke.[3]
Naziv folder, predstavljajući analogiju sa folderom datoteka koja se koristi u uredima, i korištena u hijerarhijskom sistemu dizajna za Electronic Recording Machine, Accounting (ERMA) Mark 1 izdata u 1958.[4] kao i od strane Xerox Star,[5] je korištenna u skoro svim modernim OS-ovim radnim okruženjima. Direktoriji su često označeni ikonama koje vizuelno predstavljaju fizički izgled fascikle.
Postoji razlika između directorija, koji je koncept sistema datoteka, i GUI metafora koja se koristi da reprezentira to (folder). Naprimjer, Microsoft Windows koristi koncept specijalnih folderada pomogne prezentirati sadržaje računara prema korisniku u veoma konzistentnom načinu koji oslobađa korisnika od mučenja sa apsolutnim putevima direktorija, koji variraju među verzijama Windowsa, i između individualnih instalacija. Većina operativnih sistema također imaju koncept tzv. "smart foldera" koji reflektuju rezultate pretrage sistema datoteka ili druge operacije. Ovi folderi ne reprezentiraju direktorij u hijerarhiji datoteka. Većina email klijenata dopušta kreiranja foldera radi organiziranja emaila. Ovi folderi nemaju korespodentnu reprezentaciju u strukturi sistema datoteka.
Ako se misli na sadržilac dokumenata, pojam folder je adekvatniji. Pojam direktorij predstavlja način strukturne liste datoteka-dokumenata i foldera koji su pohranjeni na računaru. Razlikovanje može biti način pristupa direktoriju; na Unix sistemima, /usr/bin/ se smatra direktorijem kada je prikazan u komandnoj tekstualnoj konzoli, ali ako je pristupljeno istom preko grafičkog interfejsa (menadžera datoteka), korisnici ga onda zovu folder.
Operativni sistemi koji podržavaju hijerarhijske sisteme datoteka (praktično sve moderne) implementiraju formu keširanja u RAM nedavnih pregleda traženih puteva (path). U svijetu Unixa, ovo je često nazivano Directory Name Lookup Cache (DNLC), a dcache kod Linuxa.[6]
Za lokalne sisteme datoteka, DNLC unosi normalno ističu jedino pod pritiskom ostalih novijih unosa. Za mrežne sisteme datoteka, mehanizam koherentnosti je potreban da omogući tim unosima da ne budu poništeni od strane drugih klijenata.[6]
Pod operativnim sistemom juniks, direktorijumi su ostvareni u obliku specijalne vrste datoteka, čiji osnovni sadržaj treba da bude spisak datoteka i direktorijuma koji se u njemu nalaze, i njihove lokacije u okviru datotečnog sistema. Ovaj koncept je ostvaren transparentno, tako da običan korisnik ne primijeti njegovu „datotečnu“ prirodu.
- Struktura direktorija
- Ime datoteke
- Kućni direktorij
- Root direktorij
- Virtuelni direktorij
- Radni direktorij
- ↑ „Chapter 1: Tutorial”. Using The AMIGA Workbench. Commodore-Amiga. July 1991. str. 46. »The path specifies the disk name, or location, and all of the drawers that lead to the specified file.«
- ↑ Murach, Joel (2006). Murach's C# 2005. Mike Murach & Associates. str. 34. ISBN 978-1-890774-37-0. »With the introduction of Windows 95, Microsoft started referring to directories as folders.«
- ↑ "Everything is a File" (Unix System Administration Independent Learning (mirror) Arhivirano 2012-03-10 na Wayback Machine-u)
- ↑ Barnard III, G. A.; Fein, L. (1958). „Organization and Retrieval of Records Generated in a Large-Scale Engineering Project”. Proceedings of the Eastern Joint Computer Conference: 59-63. DOI:10.1109/AFIPS.1958.75.
- ↑ "Xerox Star User Interface (1982)"
- ↑ 6,0 6,1 „Archive copy”. Arhivirano iz originala na datum 2014-08-20. Pristupljeno 2014-09-09.
- Definicija direktorija prema Linux informativnom projektu (LINFO)