EROFS

Uit Wikipedia, de vrije encyclopedie
EROFS
Ontwikkelaar(s) Huawei
Bronmodel Open source
Uitgebracht 24 November 2019
Kerneltype Linux
Status Actief
Portaal  Portaalicoon   Informatica

EROFS (Enhanced Read-Only File System of "verbeterd alleen-lezen bestandssysteem" wanneer letterlijk vertaald) is een lichtgewicht bestandssysteem dat oorspronkelijk door Huawei is ontwikkeld voor de Linuxkernel. Het bestandssysteem is sinds Linuxkernel versie 5.4 ingebouwd.[1]

EROFS is een bestandssysteem waarvan alleen gelezen kan worden en waarbij eenvoudig compressie toegepast kan worden.[2] Het bestandssysteem streeft daarmee ernaar een oplossing te bieden voor scenario's die hoge prestaties alleen-lezen vereisten vereisen op hun apparaten met beperkte hardwarebronnen, zoals smartphones of smartwatches. Door het gebruik van EROFS zou bijvoorbeeld de firmware van deze apparaten aanzienlijk minder opslag innemen dan dezelfde firmware onder andere bestandssystemen.[3][4] Alle nieuwe producten van Huawei die met EMUI 9.0.1 of later werden geleverd, gebruikten EROFS en het werd gepromoot als een van de belangrijkste kenmerken van EMUI 9.1.

Functies[bewerken | brontekst bewerken]

Het bestandssysteem heeft twee verschillende inode on-disk layouts. De ene is compact en de andere is uitgebreid.

  • Little-endian on-disk ontwerp
  • Een blokgrootte van 4 KB en 32-bits blokadressen, wat een capaciteit van een EROFS-bestandssysteem mogelijk maakt tot maximaal 16 TB.
  • Metadata en data kunnen worden samengevoegd door "tail-packing inline data technologie".
  • Ondersteuning van POSIX-attributen en machtigingen, xattr en ACL.
  • Transparante compressie met het LZ4-compressiealgoritme voor relatief hogere compressieverhoudingen.
  • In-place decompressie voor hogere sequentiële leesprestaties
  • Grote "pcluster" functionaliteit die tot 1 MiB grote pclusters mogelijk maakt voor hogere compressieverhoudingen vanaf Linux 5.13.
  • Directe I/O, Direct Access (DAX)-ondersteuning en op chunks gebaseerde gegevensdeduplicatie voor niet-gecomprimeerde bestanden sinds Linux 5.15.
  • Ondersteuning voor meerdere apparaten voor containerafbeeldingen met meerdere lagen sinds Linux 5.16.
  • Ondersteuning voor het MicroLZMA-compressiealgoritme sinds Linux 5.16.