Abstract:
Technologien zum Speichermanagement mit Speicherschutzerweiterung enthalten eine Rechnervorrichtung, die einen Prozessor mit einer oder mehreren Schutzerweiterungen aufweist. Der Prozessor kann eine logische Adresse einschließlich einer Segmentbasis, effektiven Grenze und effektiven Adresse laden und eine lineare Adresse als Funktion der logischen Adresse mit der effektiven Grenze als einer Maske erzeugen. Der Prozessor kann auf eine neue Aufgabe schalten, die von einer Aufgabenzustandssegmenterweiterung beschrieben wird. Die Aufgabenzustandserweiterung kann einen Segmentierungsmodus mit geringer Latenz vorgeben. Der Prozessor kann Zugriff auf einen Beschreiber in einer örtlichen Beschreibertabelle mit einer Beschreiberprivilegebene verhindern, die geringer als die aktuelle Privilegebene des Prozessors ist. Die Rechnervorrichtung kann eine sichere Enklave unter Verwendung von sicherem Enklavensupport des Prozessors laden. Die sichere Enklave kann eine Unsandbox und eine Sandboxed-Anwendung auf einer Benutzerprivilegebene des Prozessors laden. Andere Ausführungsformen sind beschrieben und beansprucht.
Abstract:
Ausführungsformen betreffen Techniken zum Detektieren einer ersten Funktion, die einem Adressenraum zugeordnet ist, die eine Aufrufanweisung an eine zweite Funktion in dem Adressenraum einleitet, wobei die erste Funktion die zweite Funktion in einem deprivilegierten Betriebsmodus aufrufen soll, und Definieren zugänglicher Adressenbereiche für Segmente des Adressenraums für die zweite Funktion, wobei jedes Segment einen anderen Adressenbereich in dem Adressenraum aufweisen soll, worin es der zweiten Funktion gestattet ist, im deprivilegierten Betriebsmodus zuzugreifen. Ausführungsformen umfassen Wechseln zu dem Stapel, der dem zweiten Adressenraum und der zweiten Funktion zugeordnet ist, und Einleiten der Ausführung der zweiten Funktion in dem deprivilegierten Betriebsmodus.
Abstract:
A processing core 111 executes a first application, typically a virtual machine manager 117, and a second application, typically a virtual machine 131. The first and second applications are associated, respectively, with first and second privilege levels. A first set of privileges associated with the first privilege level includes a second set of privileges associated with the second privilege level. An address validation component validates the mapping of a first address, typically a guest virtual address, to a second address, typically a guest physical address. Validation occurs using an address translation data structure, preferably a Restricted Linear Check (RLC) table, maintained by the first application. The first and second addresses are defined, respectively, in first and second address spaces of the second application. Also disclosed is an arrangement in which a page miss handler of a computer system receives a guest virtual address associated with a memory access operation by a virtual machine managed by a virtual machine manager. A tentative guest physical address is received corresponding to the guest virtual address and in view of an address translation data structure it is determined whether an expected guest physical address corresponds to the tentative guest virtual address.
Abstract:
Appareil comprenant une unité de processeur comprenant des circuits pour générer, pour un premier hôte de réseau, une demande portant sur un objet d’un deuxième hôte de réseau, la demande comprenant une adresse comprenant un ID d’hôte routable du deuxième hôte de réseau et un ID d’objet au moins partiellement crypté, l’adresse identifiant de manière unique l’objet dans un domaine informatique distribué ; et un élément de mémoire pour stocker au moins une partie de l’objet. Figure pour l’abrégé : Fig. 3
Abstract:
Ausführungsformen von Systemen, Geräten und Verfahren stellen Benutzern, zum Beispiel Computerentwicklern und Cloud-Service-Anbietern (CSPs), verbesserte Function-as-a-Service (FaaS) bereit. Ein Rechensystem, das dazu konfiguriert ist, solche verbesserte Function-as-a-Service bereitzustellen, beinhaltet ein oder mehrere Steuerarchitektursubsysteme, Software und Orchestrierungssubsysteme, Netzwerk- und Lagerungssubsysteme und Sicherheitssubsysteme. Das Rechensystem führt Funktionen als Reaktion auf Ereignisse aus, die von den Benutzern in einer Ausführungsumgebung ausgelöst werden, die von den Architektursubsystemen bereitgestellt wird, die eine Abstraktion des Ausführungsmanagements darstellen und die Benutzer von der Bürde des Managements der Ausführung abschirmen. Die Software- und Orchestrierungssubsysteme ordnen Rechenressourcen für die Funktionsausführung zu, indem sie intelligent Container für einen Funktionscode mit verringerter Instanziierungslatenz und gesteigerter Ausführungsskalierbarkeit hochlaufen und herunterlaufen lassen, während sie gesicherte Ausführung beibehalten. Außerdem ermöglicht es das Rechensystem Kunden, mit einer feinen Abrechnung bis hinunter zu Millisekunden Inkrementen, nur zu bezahlen, wenn ihr Code ausgeführt wird.
Abstract:
Prozessortracesysteme und Verfahren sind beschrieben. Zum Beispiel weist eine Ausführungsform ein Durchführen von instrumentiertem Code durch einen Compiler auf, wobei der instrumentierte Code mindestens einen Anruf zu nichtinstrumentiertem Code enthält. Der Compiler kann ermitteln, dass der mindestens eine Anruf zu nichtinstrumentiertem Code ein nächster durchzuführender Anruf ist. Ein Tracingfortsetzungsbefehl kann vor dem mindestens einen Anruf zum nichtinstrumentierten Code in den instrumentierten Code eingefügt werden. Der Tracingfortsetzungsbefehl kann durchgeführt werden, um selektiv Prozessortracing zum mindestens einen Anruf zum nichtinstrumentierten Code hinzuzufügen und der mindestens eine Anruf zum nichtinstrumentierten Code kann durchgeführt werden.
Abstract:
Ein Prozessorkern, der eine Tokenerzeugungsschaltung enthält, hat eine erste Anweisung als Reaktion auf Initialisierung eines Softwareprogramms, das Zugriff auf durch eine kryptographische Operation ausgegebene geschützte Daten anfordert, auszuführen. Zum Ausführen der ersten Anweisung hat der Prozessorkern Folgendes durchzuführen: Abrufen eines Schlüssels, der durch die kryptographische Operation zu verwenden ist; Auslösen der Tokenerzeugungsschaltung zum Erzeugen eines Autorisierungstokens; kryptographisches Codieren des Schlüssels und des Autorisierungstokens in einem Schlüsselhandle; Speichern des Schlüsselhandles im Speicher; und Einbetten des Autorisierungstokens in einer kryptographischen Anweisung, die die kryptographische Operation durchzuführen hat. Die kryptographische Operation kann mit einem ersten logischen Kompartiment des Softwareprogramms assoziiert sein, das zum Zugriff auf die geschützten Daten autorisiert ist.
Abstract:
Hierin werden Vorrichtungen für die Datenverarbeitung offenbart. In Ausführungsformen kann eine Vorrichtung einen oder mehrere Prozessoren, einen Speicher und einen Compiler umfassen, der von dem einen oder den mehreren Prozessoren betrieben wird, um ein Computerprogramm zu kompilieren. Der Compiler kann eine oder mehrere Analyseeinheiten umfassen, um Quellcode des Computerprogramms, das Zeiger generiert oder Zeiger differenziert, zu parsen und zu analysieren. Der Compiler kann außerdem einen Codegenerator umfassen, der mit der einen oder den mehreren Analyseeinheiten verbunden ist, um ausführbare Befehle für den Quellcode des Computerprogramms zu generieren, einschließlich des Einfügens von zusätzlichen ausführbaren Verschlüsselungs- oder Entschlüsselungsbefehlen in das Computerprogramm, das zumindest teilweise auf einem Ergebnis der Analyse basiert, um Speicherzugriffsoperationen des Quellcodes zu authentifizieren.