GEOM is een opslagframework aanwezig in FreeBSD 5.0 en later. GEOM staat toegang en controle toe op onder meer klassen, Master Boot Records en BSD-labels door gebruik te maken van diensten of de speciale bestanden gelegen in de map /dev. GEOM ondersteunt verschillende RAID-instellingen en biedt transparante toegang tot het besturingssysteem en de hulpprogramma's. Dankzij de modulaire structuur van GEOM is het mogelijk om verschillende GEOM-modules te verbinden met het framework.

GEOM werd ontwikkeld voor FreeBSD onder leiding van Poul-Henning Kamp en NAI Labs (onderdeel van McAfee).

Blokontwerp bewerken

Omdat GEOM modulair is opgebouwd, is het mogelijk om verschillende modules op elkaar te stapelen. Dit vormt dan een soort ketting met GEOM-lagen.

Voorbeeld: Een GEOM-mirror module opstapelen met een GEOM-eli (=encryptiemodule) levert een gemirrorde en geëncrypteert volume.

Elke module heeft een consumer (consument) en een provider (leverancier). Een consument is de "source" (bron) van de module, vaak een fysieke harde schijf. De GEOM-module levert de "output" (uitvoer) provider. Andere modules kunnen deze provider gebruiken om zelf een ketting aan modules te creëren.

  source → GEOM module → output     === wordt dan ⇒     consumer → GEOM module → provider

Soorten modules bewerken

Opslagmodules

Virtualisatie

  • geom_md (aanmaken virtuele schijven gebruikmakend van bestand, virtueel geheugen)
  • geom_nop (maakt een transparante module voor het debuggen en het testen)
  • geom_gate (maakt een virtuele schijf met behulp van een netwerkschijf)
  • geom_virstor (laat toe een grotere provider te maken dan zijn consumer)

Compressie en encryptiemodules

  • geom_eli (GELI, encryptie met AES, Blowfish of 3DES)
  • geom_bde (GBDE, encryptie met 4 cryptografische barrières)
  • geom_uzip (ZIP-gecomprimeerde afbeeldingen)

Bestandsysteemmodules

  • geom_journal (laat toe dat elke provider zijn eigen naam geeft aan zijn partitie)
  • geom_label (geeft journaling ondersteuning voor UFS)
  • geom_cache (cachefunctie voor betere prestaties)

Externe links bewerken