Hakemisto

Tämä artikkeli käsittelee tiedostojen tallennusta. Hakemisto voi viitata myös kirjassa olevaan hakemistoon, tai tietojenkäsittelytieteessä hakurakenteeseen.
Hakemistoja ja niiden alla olevia tiedostoja.

Hakemisto, myös nimillä kansio tai laatikosto (engl. drawer)[1], on tiedostojen järjestämiseen käytetty rakenne tiedostojärjestelmässä. Teknisestä näkökulmasta hakemisto on erityinen tiedosto, jossa on luettelo siihen liitetyistä tiedostoista.[2]

Hakemistot ovat niin sanotun toisen sukupolven tiedostojärjestelmän (hierarkkinen tiedostojärjestelmä) ominaisuus ja keskeisessä roolissa.[3][4] Hierarkkiset tiedostojärjestelmät ovat olennaisia moderneissa käyttöjärjestelmissä.[4] Kun Unixissa oli hierarkkinen tiedostojärjestelmä se ei vielä ollut itsestäänselvyys kaikkialla: esimerkiksi CP/M:ssä tiedostojärjestelmässä ei ollut alihakemistoja ja joissakin muissa järjestelmissä syvyys oli rajattu vain muutamaan tasoon kun taas Unix salli minkä vain syvyyden.[5]

Käyttäjälle hakemisto ilmenee astiana tai säiliönä, joka voi sisältää tiedostoja ja muita hakemistoja.[4] Kansio on Macintoshissa ja Windowsissa käytetty synonyymi hakemistolle.[4]

Hakemistopolkuja käytetään tunnistamaan kappale tiedostojärjestelmässä. Polut sisältävät erotinmerkkejä sekä komponentteja, jotka ovat muita kuin erotinmerkkejä. Hakemistopolut voivat olla "absoluuttisia" (alkaen juurihakemistosta) tai "suhteellisia", jotka alkavat sen hetkisestä hakemistosta.[6] Hakemisto voi sisältää tiedostojen lisäksi muita hakemistoja eli alihakemistoja. Sisäkkäisistä hakemistoista muodostuu tiedostojärjestelmän hakemistorakenne eli hakemistopuu. Unix-tyyppiset käyttöjärjestelmät, AmigaOS ja useat muut käyttävät hakemistotasojen erottimena vinoviivaa (/). CP/M, MS-DOS ja Windows käyttävät kenoviivaa (\). Vastaavasti URL-osoitteissa verkkotunnuksen jälkeiset vinoviivat tyypillisesti jäsentävät WWW-palvelimen hakemistopolkua. OpenVMS käyttää hakemistoerottimena pistettä (.) ja vanha Mac OS (ennen OS X:ää) kaksoispistettä (:).

Hakemistopolun ja tiedostonimien yhteispituus voi rajoittaa maksimipituutta ja se voi riippua käytetystä merkistöstä. Mac OS X, Solaris ja AIX käyttöjärjestelmissä suurin sallittu yhteispituus on 1024 merkkiä.[7] Linuxissa tiedoston nimelle on 255 merkin maksimi ja yhteispituus voi olla 4096 tavua.[7] Windowsin ohjelmointirajapinnassa suurin sallittu tiedoston polun pituus on 260 merkkiä ("D:\<korkeintaan 256 merkkiä><NUL>"), josta enintään 255 on tiedostonimelle.[8][7] Unicoden kanssa merkkien maksimimäärä voi vaihdella kun yksi merkki voi käyttää useampia tavuja.[7] OpenVMS:ssä ODS-5 tiedostojärjestelmällä nimen pituus voi olla 236 8-bittistä tai 118 16-bittistä merkkiä.[9]

Vanhanaikaisissa tai yksinkertaisissa tietokonejärjestelmissä (sulautetut järjestelmät) ei välttämättä ole hakemistoja lainkaan, vaan kaikki tiedostot tallentuvat suoraan juurihakemistoon (ensimmäisen sukupolven tiedostojärjestelmät).[3]

  1. Using The Amiga Workbench computinghistory.org.uk. Viitattu 14.4.2022. (englanniksi)
  2. K. Thompson: UNIX Implementation (PDF) users.soe.ucsc.edu. Viitattu 8.9.2019. (englanniksi)
  3. a b Jim Salter: Bitrot and atomic COWs: Inside “next-gen” filesystems 15.1.2014. Ars Technica. Viitattu 13.11.2019. (englanniksi)
  4. a b c d Directory Definition linfo.org. Viitattu 23.9.2021. (englanniksi) 
  5. Neil Brown: Ghosts of Unix Past: a historical search for design patterns lwn.net. 27.10.2010. Viitattu 23.10.2020. (englanniksi)
  6. Pathname lookup kernel.org. Viitattu 23.9.2021. (englanniksi)
  7. a b c d File specification syntax ibm.com. Viitattu 23.9.2021. (englanniksi)
  8. http://msdn.microsoft.com/en-us/library/aa365247.aspx#maxpath
  9. OpenVMS Guide to Extended File Specifications (PDF) vmssoftware.com. Viitattu 14.4.2022. (englanniksi)

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Nelliwinne