Artikel-ID: 000088648 Inhaltstyp: Produktinformationen und Dokumente Letzte Überprüfung: 11.05.2022

Wie erstelle ich einen Enklaven mit Intel® Software Guard Extensions (Intel® SGX) SGX2-Funktionen zur dynamischen Speicherzuweisung?

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Zusammenfassung

Änderungen an der Enklaven-Konfigurationsdatei, die es Enklaven ermöglichen, SGX2-Funktionen (Intel® SGX) zu verwenden

Beschreibung

Es ist nicht möglich, einen Enklaven zu schreiben, der dynamische Speicherverwaltungsfunktionen von Intel® Software Guard Extensions (Intel® SGX) SGX2 verwendet.

Lösung

Intel® Software Guard Extensions (Intel® SGX) SGX2-Anweisungen in Intel® SGX drei grundlegende Funktionen ausführen, um Speicher dynamisch zuzuweisen: erweitern, Stack erweitern, Threads erstellen. Diese Funktionen werden im Intel SGX Treiber, vertrauenswürdiger Runtime und nicht vertrauenswürdiger Runtime implementiert. Die einzige explizite Handlung, die der Enklaven-Programmierer unternehmen muss, um diese Funktionen zu nutzen, besteht darin, die folgenden Parameter in der Enklaven-Konfigurationsdatei festzulegen:

  • StackMinSize, StackMaxSize: Legen Sie die für den Enklaven verfügbare Mindest- und maximale Stack-Größe fest.
  • HeapMinSize, HeapMaxSize: Legen Sie die für die Enklave verfügbare Mindest- und maximale Größe fest.
  • TCSNum, TCSMaxNum, TCSMinPool: Wird verwendet, um festzustellen, wie viele Threads nach der Enklaveninitialisierung erstellt werden und wie viele Threads dynamisch erstellt werden können, wenn der Enklaven ausgeführt wird.

Der Intel® SGX Entwickler-Referenzleitfaden für Ihr Betriebssystem enthält weitere Details zu diesen Parametern.

Schreiben Sie darüber hinaus den Enklavencode und weisen Sie den Speicher wie gewohnt zu. Der Intel® SGX Treiber, vertrauenswürdige Runtime und nicht vertrauenswürdige Runtime bewältigen die dynamischen Speicherzuweisungen nach Bedarf unter der Motorhaube.

Die Implementierung des Abschnitts (Intel® SGX) SGX2 Dynamic Memory Management in Intel® Software Guard Extensions Softwareunterstützung für die dynamische Speicherzuweisung innerhalb eines Enklavens erläutert weiter, wie das Intel® SGX SDK dynamische Speicherverwaltungsfunktionen implementiert.

Weitere Informationen

Intel® Software Guard Extensions Softwareunterstützung für die dynamische Speicherzuweisung innerhalb einer Enklave

Die Intel® SGX-Entwickler-Referenz für Linux* befindet sich im Dokumentationsverzeichnis der neuesten Version des Intel® Software Guard Extensions SDK für Linux*.

Die Intel® SGX-Entwickler-Referenz für Windows* wird mit dem Intel® SGX SDK für Windows* Installationspaket verteilt.

Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.