SEF-platformen til programmerbart styrede Flash-lagringsenheder er offentliggjort

Linux Foundation har præsenteret den første udgave af den åbne platform for programmerbart styrede Flash-lagringsenheder SEF (Software Enabled Flash), bygget på den kode, der blev overført af KIOXIA (før omdøbningen af Toshiba Memory Corporation), hvor Flash-hukommelsen blev opfundet i 1980. Kildekoderne til værktøjet er skrevet i C og distribueres under BSD-licensen.

Værktøjet inkluderer en række patches til Linux-kernen, en blokdriver til SEF-enheder (Software Enabled Flash), kommandoprompt-værktøjer til administration, paravirtualiserede SEF-drivere til QEMU, et bibliotek med API til applikationsudvikling samt patches til nvme-cli og FIO, der tilføjer støtte til SEF. SDK'en omfatter også en benchmark-implementering af det programmerede niveau FTL (Flash Translation Layer), som sikrer oversættelse af blokenheders kommandoer til adgang til den faktiske Flash-hukommelseschip, affaldshåndtering og datafordeling på hukommelsesceller. FTL implementerer støtte til fleksibel datafordeling (FDP — Flexible Data Placement), zonering (ZNS — Zoned Namespace) og NVMe-specifikation.

I almindelige Flash-enheder fungerer lagerenheden som en sort boks for eksterne systemer, hvor en del af hukommelsen er reserveret til systemoperationer, ydeevneindikatorer er ustabile, og der opstår uforudsigelige forsinkelser på grund af controllerens interne aktivitet, f.eks. under affaldshåndtering. I modsætning til traditionelle Flash-lagringsenheder, hvor datastyring, isolering af defekte blokke og affaldshåndtering styres af controllerens firmware, tillader enheder med SEF-understøttelse, at logikken for lavniveauarbejde med Flash-hukommelseschippen flyttes til software- og operativsystemssiden.

SEF giver mulighed for direkte at styre den fysiske placering af data, ændre belastningsfordelingsalgoritmer, administrere prioriteter og QoS, fjerne et ekstra lag til blokoversættelse, udnytte al tilgængelig hukommelse, opnå en forudsigelig drift med lageret og opdele lageret i virtuelle enheder, der er isoleret på input/output-niveau og har forskellige prioriteter i behandlingen. Den foreslåede tilgang i SEF reducerer overhead og forbedrer effektiviteten af interaktionen med lageret ved at tilpasse sig de aktuelle behov for affaldsindsamlingslogik, hukommelsesreservat og blokfordeling for at nedsætte slid.

For eksempel gør SEF det muligt at normalisere ydeevnen i tilfælde af brugen af et array af indkøbte lagringsenheder med forskellige karakteristika, købt på forskellige tidspunkter. For enheder, der primært bruges til læsning, kan der ved hjælp af SEF anvendes enklere blokfordelingsalgoritmer og reducere den hukommelse, der reserveres til administrative formål.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster