Ext4
Ext4 on Linux-ytimen tiedostojarjestelma, joka on kehitetty parannuksena aiemmista ext3- ja ext2-tiedostojarjestelmista.[1] Tiedostojarjestelma on kehitetty taaksepain- ja eteenpainyhteensopivana.[2]
Kehitys
[muokkaa | muokkaa wikitekstia]Tiedostojarjestelma kehitettiin parannuksena aiempaan ext3:een nahden: suorituskykya, luotettavuutta ja kapasiteettia on parannettu.[3] Ext4 tukee journalointia kuten aiempi ext3:kin, seka tukee useampaa journalointimoodia.[4] Ext4 lisaa tarkistussummat metatiedolle ja journalille, aikaleimojen tarkkuutta on nostettu ja vuoden 2038 kasittely on korjattu vuoteen 2446 asti.[3] Tiedon varaus on muutettu kiinteakokoisista lohkoista "extent"-lohkoiksi, joka mahdollistaa hyvin pitkien yhtenaisena jatkuvien tiedostojen varaamisen.[3] Extent-lohkoja on kaytetty aiemmin JFS-tiedostojarjestelmassa ja viivastetty varaus on ollut XFS- ja ZFS-tiedostojarjestelmissa.[4]
Tiedostojarjestelma tukee suuria taltioita ja tiedostokokoja: tiedostojarjestelma kayttaa 48-bittisia lohkonumeroita, joka (oletuksena olevalla) 4 kilotavun lohkolla mahdollista 1 eksatavun (1024 petatavun) tiedostojarjestelman.[2][5] Kehityksen aikana todettiin etta laajentaminen 64-bittisiin numeroihin ei ole ongelma tulevaisuudessa, mutta sille ei ole viela tarvetta.[5] Ext4:ssa lohko on ryhma sektoreita, jonka koko voi olla 1 kilotavusta 64 kilotavuun.[6] Tiedoston maksimikoko on 16 teratavua.[5][6]
Tiedostojarjestelma on suunniteltu vahentamaan fragmentaatiota.[2][3] Tiedostojarjestelma tukee "online-eheyttamista" ja eheyden tarkistaminen (fsck) vaatii vahemman aikaa.[4]
Ext4 kayttaa B-puun muunnosta H-puuta, joka mahdollistaa paljon suuremmat alihakemistot.[2] Ext4:ssa alihakemistojen koko on lahes rajoittamaton.[4]
Tiedostojarjestelmaan on integroitu tuki salaukselle.[7]
Ytimen kehittajat tyrmasivat ehdotukseen, etta uusia ominaisuuksia olisi lisatty ext3:een.[8] Ext4 on taman vuoksi forkattu ext3:sta jotta sen kayttajille ei koidu hairiota.[1] Vanhoja ext2- ja ext3-tiedostojarjestelmia voi kayttaa ext4:n kautta, mutta silloin ei voida kayttaa sen parannuksia hyodyksi.[3] Ext4:n kautta aiempaa tiedostojarjestelmaa voi kayttaa yhteensopivana, jolloin vain uudet tiedostot kayttavat uudempaa tallennustapaa ja vanhat pysyvat vanhalla tallennuksella.[4]
Julkaisu
[muokkaa | muokkaa wikitekstia]Tiedostojarjestelma merkittiin vakaaksi versioksi lokakuussa 2008.[9] Tiedostojarjestelma oli mukana ytimessa versiosta 2.6.19 lahtien mutta oli merkittyna kokeelliseksi versioon 2.6.27 saakka: versiosta 2.6.28 lahtien tiedostojarjestelma on merkitty vakaaksi.[5]
Google ilmoitti joulukuussa 2010 Androidin siirtyvan versiossa 2.3 YAFFS-tiedostojarjestelmasta ext4:aan.[10] Ext4 on ollut oletuksena Fedoran versiosta 14 lahtien.[3] Fedora 33:ssa oletukseksi muuttui Btrfs.[11]
Lahteet
[muokkaa | muokkaa wikitekstia]- | a b Ext4: The Next Generation of Ext2/3 Filesystem (PDF) usenix.org. 2007. Viitattu 12.2.2020. (englanniksi)
- | a b c d M. Tim Jones: Anatomy of Linux journaling file systems 4.6.2008. IBM Developerworks. Viitattu 29.5.2019. (englanniksi)
- | a b c d e f An introduction to Linux's EXT4 filesystem opensource.com. 25.5.2017. Viitattu 12.2.2020. (englanniksi)
- | a b c d e Archived - Anatomy of ext4 developer.ibm.com. 17.2.2009. Viitattu 12.2.2020. (englanniksi)
- | a b c d Dr. Oliver Diedrich: The Ext4 Linux file system h-online.com. 29.5.2009. Viitattu 12.2.2020. (englanniksi)
- | a b 2.1. Blocks kernel.org. Viitattu 12.2.2020. (englanniksi)
- | Filesystem-level encryption (fscrypt) kernel.org. Viitattu 12.2.2020. (englanniksi)
- | Linus Torvalds: Re: [Ext2-devel] [RFC 0/13] extents and 48bit ext3 lkml.org. 9.6.2006. Viitattu 12.2.2020. (englanniksi)
- | ext4: Rename ext4dev to ext4 git.kernel.org. 11.10.2008. Arkistoitu 29.5.2012. Viitattu 12.2.2020. (englanniksi)
- | Android 2.3 Gingerbread to use Ext4 file system h-online.com. 14.12.2010. Viitattu 12.2.2020. (englanniksi)
- | Approved: Fedora 33 Desktop Variants Defaulting To Btrfs File-System phoronix.com. 15.7.2020. Viitattu 16.7.2020. (englanniksi)
Aiheesta muualla
[muokkaa | muokkaa wikitekstia]- ext4 Data Structures and Algorithms (englanniksi)
- Ext4 block and inode allocator improvements (PDF) (englanniksi)