Er worden vier kerntechnologieën geïntroduceerd om de applicatiebelasting van actieve gebruikers efficiënter te maken
Dec 12, 2022| Allereerst brengt Occlum v1.0 een asynchroon ontwerpidee naar voren en herontwerpt de gehele Occlum-codearchitectuur. Door de asynchrone eigenschap van de Rust-taal te gebruiken, implementeert Occlum een efficiënt threadplanningsmechanisme in Enclave op basis van de lichtgewicht Coroutine van Rust en asynchrone runtime. Vooral voor grote toepassingen zoals machinaal leren en gedistribueerde choreografie kan het de computerprestaties aanzienlijk verbeteren.
Ten tweede wordt io{0}}uring, een nieuwe generatie asynchrone I/O-bedieningsinterfaces van Linux, geïntroduceerd in Occlum v1.0 en ondersteunt de meeste IO-bewerkingen (inclusief netwerk-IO/schijf-IO). Door deze nieuwe functie te gebruiken, in combinatie met de asynchrone runtime van Rust, levert Occlum bijna dezelfde I/O-prestaties op het Linux-native netwerk.
Ten derde heeft Occlum v1.0 de nieuwe generatie vertrouwde virtuele blokapparaten geabsorbeerd op basis van een logstructuur die onafhankelijk is ontwikkeld door Ant Group, waardoor het bestaande reguliere bestandssysteem over de beveiligingsmogelijkheden van schijf-I/O beschikt, en de de beveiliging is hoger dan die van verschillende bestands-I/O- of schijf-I/O-beveiligingsschema's in de Linux-kernel. Tegelijkertijd is het beschermingsschema hoger dan dat van vergelijkbare TEE, zoals SGX-PFS. Omdat het vertrouwde virtuele blokapparaat het nieuwe append log-structuurontwerp gebruikt, zullen de I/O-prestaties aanzienlijk worden verbeterd.
Ten vierde verhoogt Occlum v1.0, met behulp van het dynamische geheugenbeheerontwerp op basis van toewijzing op aanvraag, niet alleen het gebruik van het fysieke Enclave-geheugen, maar verkort ook aanzienlijk de laadtijd van applicaties naar de TEE.
Occlum v1.0 en de vorige communityrelease 0.29 prestatietestgegevens werden vergeleken. De threadplanningsprestaties van Occlum v1.0 zijn vijf keer zo hoog als die van de vorige versie. Wanneer het aantal applicatiethreads toeneemt, wordt het planningsprestatievoordeel van v1.0 duidelijker. In termen van netwerkoverdrachtssnelheid en bestands-I/O-doorvoer heeft het, vergeleken met de vorige versie, ook een prestatieverbetering van 2x en 3x, vooral in termen van netwerk-IO, die de native Linux-netwerkoverdrachtssnelheid onder dezelfde omgeving kan benaderen.



