DE112011105577T5 - Virtueller hochprivilegierter Modus für eine Systemverwaltungsanforderung - Google Patents

Virtueller hochprivilegierter Modus für eine Systemverwaltungsanforderung Download PDF

Info

Publication number
DE112011105577T5
DE112011105577T5 DE112011105577.3T DE112011105577T DE112011105577T5 DE 112011105577 T5 DE112011105577 T5 DE 112011105577T5 DE 112011105577 T DE112011105577 T DE 112011105577T DE 112011105577 T5 DE112011105577 T5 DE 112011105577T5
Authority
DE
Germany
Prior art keywords
domain
virtual
system management
mode
privilege mode
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE112011105577.3T
Other languages
English (en)
Inventor
Valiuddin Y. Ali
Jose Paulo Xavier PIRES
James M. Mann
Boris Balacheff
Chris I. Dalton
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE112011105577T5 publication Critical patent/DE112011105577T5/de
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1491Protection against unauthorised use of memory or access to memory by checking the subject access rights in a hierarchical protection system, e.g. privilege levels, memory rings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45541Bare-metal, i.e. hypervisor runs directly on hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Rechensystem und Verfahren zur Bearbeitung einer Systemverwaltungsanforderung. Das Rechensystem umfasst einen virtuellen hochprivilegierten Modus in einer vom VMM (Virtual Machine Monitor) verwalteten vertrauten Domäne. Der virtuelle hochprivilegierte Modus bearbeitet die Systemverwaltungsanfrage (SVA).

Description

  • HINTERGRUND
  • Eine elektronische Vorrichtung wie z. B. ein Computer oder sonstiges Gerät kann ein Basiseingabe-/-ausgabesystem (BIOS) umfassen, das für das Hochfahren der Vorrichtung zuständig ist. Beim Hochfahren initialisiert und konfiguriert das BIOS Komponenten der elektronischen Vorrichtung und lädt ein Betriebssystem auf der elektrischen Vorrichtung. Außerdem kann das BIOS weitere Dienste wie z. B. Stromsparfunktion, Wärmeverwaltung, BIOS-Aktualisierung usw. Bereitstellen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Einige Ausführungsformen werden unter Bezugnahme auf die nachfolgenden Zeichnungen beschrieben:
  • 1 ist ein Blockdiagamm eines Rechensystems nach einem Ausführungsbeispiel eines virtuellen hochprivilegierten Modus.
  • 2 ist ein Blockdiagamm eines Rechensystems nach einem Ausführungsbeispiel eines virtuellen hochprivilegierten Modus.
  • 3 ist ein Flussdiagamm eines Verfahrens zur Bearbeitung von Systemverwaltungsanforderungen (SVA) gemäß einem Ausführungsbeispiel;
  • 4 ist ein Flussdiagamm eines Verfahrens zur Bearbeitung von Systemverwaltungsanforderungen (SVA) gemäß einem Ausführungsbeispiel; und
  • 5 ist ein Blockdiagamm eines Rechensystems nach einem Ausführungsbeispiel eines computerlesbaren Datenträgers;
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ein Basiseingabe-/-ausgabesystem (BIOS) ist üblicherweise der erste Code, der beim Hochfahren von einer elektronischen Vorrichtung ausgeführt wird. Beispiele der elektronischen Vorrichtung sind insbesondere ein Computer (z. B. Desktop, Notebook, Tablet, Servercomputer, usw.), ein tragbares Gerät (PDA, Smartphone, usw.), eine elektronisches Haushaltsgerät, eine Spielkonsole oder elektronisches Gerät einer sonstigen Art. Das BIOS initialisiert und konfiguriert verschiedene Hardware-Komponenten der elektronischen Vorrichtung und lädt und startet ein Betriebssystem (OS) der elektrischen Vorrichtung. Der Code des BIOS ist üblicherweise auf einem nicht flüchtigen Speicher wie z. B. einem Flash-Speicher oder sonstigen programmierbaren ROM (Read-Only Memory) gespeichert.
  • Das BIOS stellt auch weitere Funktionen bereit, die in der elektronischen Vorrichtung abgerufen werden können. Viele dieser weiteren Funktionen des BIOS werden in der elektronischen Vorrichtung durch Übergehen in einen SMM (System Management Mode) ausgeführt; beim SMM handelt es sich um einen Betriebsmodus, in dem die Ausführung des OS suspendiert wird. Ferner können in einer elektronischen Vorrichtung, die über mehrere Prozessoren oder Prozessorkerne verfügt, alle bis auf einen der Prozessore bzw. Prozessorkerne im SMM deaktiviert sein. Um in den SMM zu übergehen, wird ein SMI (System Management Interrupt) vorgenommen und ein SMI-Handler (der Teil des BIOS ist) wird ausgeführt, um die jeweiligen Funktionen auszuführen; dies erfolgt häufig in einem relativ hochprivilegierten Modus.
  • Beim Übergang in den SMM zur Ausführung von BIOS-Funktionen können sich verschiedene Probleme ergeben. Da die Ausführung des OS suspendiert wird, ist erstens der normale Betrieb der elektronischen Vorrichtung ausgeschlossen. Bei einer elektronischen Vorrichtung, bei der die Prozessoren bzw. Prozessorkerne im SMM deaktiviert sind, wird ein Teil der Prozessorkapazität der elektronischen Vorrichtung vorübergehend deaktiviert; d. h. dass dieser Teil der Prozessorkapazität zur Übernahme sonstiger Aufgaben nicht zur Verfügung steht. Außerdem lässt sich mitunter schwer vorhersagen, wie lange die SMM-Verarbeitung dauern wird, was zu Ungewißheiten beim Betrieb der Vorrichtung führen kann. Außerdem: Da es mitunter relativ lange dauert, um einige BIOS-Funktionen abzuschließen (z. B. mehrere Minuten lang), stehen einem Benutzer der Vorrichtung womöglich keine Statusdaten nicht zur Verfügung, was auf den Benutzer verunsichernd wirken kann, da er nicht in der Lage ist, festzustellen, ob die elektronische Vorrichtung richtig funktioniert oder nicht.
  • Es können sich auch Sicherheitsprobleme ergeben, da Schadprogramme im SMM-Betrieb angreifen können, was zu einer Beschädigung des Systems führen kann. Die zur Vermeidung derartiger Angriffe auf den SMM-Betrieb ergriffenen Sicherheitsvorkehrungen können zu einer Verkomplizierung der Auslegung einer elektronischen Vorrichtung führen. Beispiele dieser Sicherheitsvorkehrungen sind insbesondere das Sperren bestimmter Speicherbereiche, insbesondere Register und/oder eines Teils des nicht flüchtigen Speichers, wie z. B. eines Flash-Speichers oder sonstigen programmierbaren ROM (Read-Only Memory). Ferner können die Sicherheitsvorkehrungen zur Einschränkung der Leistungsfähigkeit bestimmter BIOS-Funktionen, z. B. Aktualisierungen des BIOS-Codes, führen, wodurch diese BIOS-Funktionen nur zu bestimmten Zeitpunkten, z. B. beim Neustart des Sytems, ausgeführt werden können.
  • Beispiele der verschiedenen häufig im SMM ausgeführten Funktionen sind insbesondere eine oder eine Kombination der nachfolgenden Funktionen: Aktualisierungen des BIOS-Codes; Zugriff auf oder Änderung einer Einstellung des BIOS; Thermomanagement (z. B. Steuerung von Kühlgeräten wie z. B. Ventilatoren der Vorrichtung); Stromsparfunktion (Ausschalten oder Wiederherstellen der Energieversorge bestimmter Hardware-Komponenten); Übergang der Vorrichtung zwischen einem Energiezustand und einem anderen (z. B. Ruhezustand, Schlafzustand, vollständig eingeschalteter Zustand, usw.); Bearbeitung der Aktivierung einer Schaltfläche oder Schaltflächensequenz (hierzu gehört die Aktivierung einiger Schaltflächenkombinationen) der Vorrichtung (z. B. eine Schaltfläche zum Ein- und Ausschalten einer drahtlosen Schnittstellenkomponente, eine Hotkey-Sequenz zur Ausführung einer vordefinierten Aufgabe usw.); mit einem Umgebungslichtsensor der Vorrichtung in Verbindung stehende Dienste (zur Erkennung von Licht in der Umgebung der Vorrichtung); Änderung einer Einstellung einer Hardware-Komponente der Vorrichtung; Veränderung der Reihenfolge des Hochfahrens hochfahrbarer Geräte der Vorrichtung; Bearbeitung eines Aufrufs einer bestimmten Art zwischen OS und BIOS (z. B. Unterbrechungsanforderung); Ausführung eines Befehls eines eingebetteten Steuergeräts; Unterstützung eines älteren Peripheriegeräts (z. B. USB-Gerät) unter bestimmten Bedingungen.
  • Obwohl verschiedene beispielhafte BIOS-Funktionen oben aufgeführt sind, ist anzumerken, dass auch weitere oder alternative BIOS-Funktionen in anderen Ausführungsformen einsetzbar sind.
  • Gemäß einigen Ausführungsformen können für ein robusteres Systemverhalten Funktionen des BIOS in einer privilegierten Domäne der elektronischen Vorrichtung vorgesehen sein, das sich in der privilegierten Domäne befinden kann, wobei es sich bei der privilegierten Domäne um eine Domäne der elektronischen Vorrichtung handelt, die relativ sicher ist und über bestimmte vordefinierte Privilegien verfügt, die anderen Einheiten der elektronischen Vorrichtung nicht zur Verfügung stehen. Generell ist unter ”privilegierte Domäne” eine Domäne zu verstehen, die über vordefinierte Privilegien verfügt, die es einer Einheit der Domäne ermöglichen, Funktionen in der elektronischen Vorrichtung auszuführen, die andere Einheiten (z. B. OS, Anwendungen, usw.) nicht ausführen dürfen. Außerdem verfügt eine privilegierte Domäne über einen Sicherheitsmechanismus, um sie vor unbefugten Zugriffen oder Angriffen zu schützen.
  • Durch das Übertragen von Funktionen des SMM auf einen virtuellen hochprivilegierten Modus muss die elektronische Vorrichtung nicht in den SMM übergehen, um die auf den virtuellen hochprivilegierten Modus übertragenen BIOS-Funktionen ausführen zu können. In einigen Ausführungsformen kann der SMM-Betrieb von der Hardware ganz entfallen. In weiteren Ausführungsformen kann der SMM-Betrieb immer noch bestimmte BIOS-Funktionen ausführen, während die übrigen BIOS-Funktionen über den virtuellen hochprivilegierten Modus ausgeführt werden.
  • Beispiele einer privilegierten Domäne sind insbesondere eine der nachfolgend aufgeführten Domänen oder eine Kombination davon: Die Domäne 0, die häufig die erste Domäne ist, die von einem VMM (Virtual Machine Monitor, auch Hypervisor) hochgefahren wird, um Verwaltungsaufgaben zu übernehmen; ein Teil des VMM (oder Hypervisors); eine virtuelle Gastmaschine, die über vordefinierte Einstellungen verfügt, durch die die virtuelle Gastmaschine verstärkte Privilegien und/oder Sicherheit erhält; oder eine Domäne einer anderen Art in der elektronischen Vorrichtung, die über ein vordefiniertes Sonderprivileg und/oder Sicherheitsmechanismus verfügt. Die gesicherte privilegierte Domäne kann das virtuelle vertraute Laufzeit-BIOS umfassen, welches über einen virtuellen hochprivilegierten Modus verfügt, der Systemverwaltungsbefhle sicher bearbeiten kann, ohne über eine Komponente auf gleicher Ebene wie der VMM wie z. B. einen SMMTM (System Management Mode Transfer Monitor) zur Teilung und Sicherung äeines virtuellen hochprivilegierten Modus von den anderen Domänen verfügen zu müssen.
  • Eine ”virtuelle Maschine” (auch ”Virtual Appliance” oder ”virtuelle Partition”) ist eine Partition oder Segment eines physischen Rechners (der elektronischen Vorrichtung, die zur Virtualisierung oder Nachahmung eines physischen Rechners vorgesehen wird. Aus der Sicht eines Benutzers oder einer Anwendung sieht eine virtuelle Maschine so aus wie ein physischer Rechner. Eine virtuelle Maschine umfasst ein Betriebssystem (Gast-Betriebssystem) sowie mindestens eine Anwendung.
  • Ein VMM, auch Hypervisor genannt, verwaltet die Teilung der physischen Ressourcen, insbesondere der Hardware-Komponenten, der elektronischen Vorrichtung durch die virtuellen Maschinen. Der VMM virtualisiert die physischen Ressourcen. Jede virtuelle Maschine verfügt über damit verbundene virtualisierte physische Ressourcen, die vom VMM verwaltet werden. Der VMM verarbeitet Anfragen nach physischen Ressourcen.
  • 1 ist ein Blockdiagamm eines Rechensystems nach einem Ausführungsbeispiel eines virtuellen hochprivilegierten Modus. Ein Computersystem 100 kann einen Prozessor 110 umfassen. Der Prozessor 110 ist Teil der Hardware 105 des Rechensystems 100. Der Prozessor 110 kann ein Mehrzweck- oder anwendungsspezifischer Prozessor sein. Beispielsweise kann die Hardware 105 umfassen: I/O-Geräte, flüchtiger Speicher, sekundärer Speicher, Flash-Speicher, Netzwerk-Interface-Steuereinheit, Graphikkarte, usw. Das System kann einen VMM 115 zur Verwaltung der physischen Ressourcen der Hardware-Komponenten sowie zur Virtualisierung der physischen Ressourcen umfassen. Das Rechensystem umfasst ein virtuelles BIOS (vBIOS) 135, das mit einer Gastdomäne 130 verbunden ist. Die Gastdomäne 130 ist eine virtuelle Maschine, die ein Betriebssystem wie z. B. Microsoft Windows, Linux, Unix oder ein sonstiges Betriebssystem ausführen kann.
  • In einigen Beispielen ist die privilegierte Domäne 120 die Domäne 0, bei der es sich um eine vom VMM 102 beim Hochfahren des Systems hochgefahrene Verwaltungsdomäne handelt, die über verstärkte Privilegien und Sicherheitsmechanismen verfügt. Beispiele der von der Domäne 0 übernommenen Aufgaben sind insbesondere das Erzeugen und Konfigurieren der Gastdomänen. Jede der Domäne 0 und der Gastdomäne gilt als entsprechende virtuelle Maschine. Die privilegierte Domäne 120 kann vom VMM 115 getrennt vorliegen. In alternativen Ausführungsformen kann die privilegierte Domäne 120 Teil des VMM 115 sein. In derartigen alternativen Ausführungsformen ist die vertraute Laufzeit-BIOS-Funktion 125 Teil des VMM 115. Die privilegierte Domäne 120 kann eine vertraute Domäne sein, da diese vom vertrauten VMM erzeugt oder verwaltet wird.
  • Die Bereitstellung der BIOS-Funktion 125 in der privilegierten Domäne 120 führt ein ”Cloud-BIOS” aus, das auch als ”virtuelles vertrautes Laufzeit-BIOS 125” oder BIOS.v bezeichnet wird. Die ”Cloud” kann sich auf die privilegierte Domäne 120 (oder eine sonstige vertraute Domäne) beziehen. Die Cloud kann entweder im Rechensystem 100 oder außerhalb des Rechensystems 100 vorliegen. Beispielsweise kann die Cloud, die eine vertraute Laufzeit-BIOS-Funktion 125 enthält, dem Rechensystem 100 über ein Netzwerk zugänglich sein. Beim Netzwerk kann es sich z. B. um ein LAN, WAN oder weltweites Netzwerk handeln.
  • The computing system 100 may include a virtual high-privilege mode 140 to handle a system management request. Die SVA kann mindestens eine SMI (System Management Interrupt) und einen Systemverwaltungsbefehl umfassen.
  • Die SVA können z. B. von der Gastdomäne 130 oder der privilegierten Domäne 120 stammen. Obwohl der virtuelle hochprivilegierte Modus 140 im vertrauten Laufzeit-BIOS innerhalb der privilegierten Domäne dargestellt wird, kann er in einer beliebigen vertrauten Domäne vorliegen, die vom VMM erzeugt oder verwaltet wird oder im VMM 115 selbst enthalten ist. Weitere Domänen, die vom VMM erzeugt oder verwaltet werden, die die vertraute Domäne sein könnten, sind insbesondere die privilegierte Domäne 120, ein Virtual Appliance oder eine Gastdomäne 130.
  • Ein virtueller hochprivilegierter Modus 140 zur Bearbeitung der SVA kann den Prozessor 110 oder sonstige Hardware 105 daran hindern, in einen SMM einzutreten, der zum Halten der Prozesse bis zur Bearbeitung der SVA führt. Wenn z. B. die Gastdomäne 130 eine SVA erzeugt, kann der VMM 115 die SVA daran hindern, den Prozessor 110 in einen SMM zu versetzen und die SVA an den virtuellen hochprivilegierten Modus 140 zur Bearbeitung weiterleiten. Der virtuelle hochprivilegierte Modus kann zur Vornahme von Neukonfigurationen des Systems, die sonst in einem SMM des Prozessors erfolgen würden, auf Hardware zugreifen. In einem Beispiel kann der Zugriff auf die Hardware 105 vom VMM 115 bereitgestellt werden.
  • 2 ist ein Blockdiagamm eines Rechensystems nach einem Ausführungsbeispiel eines virtuellen hochprivilegierten Modus. Ein Computersystem 200 kann einen Prozessor 210 umfassen. Der Prozessor 210 ist Teil der Hardware 205 des Rechensystems 200. Die Hardware kann Firmware 245 umfassen, zu der das BIOS 250 sowie die EFI (Extensible Firmware Interface) 255 gehören können. Das BIOS 250 kann als physisches BIOS bezeichnet werden. Ein ”physisches BIOS” ist ein BIOS-Code, der in einem nicht flüchtigen Speicher wie z. B. Flash-Speicher oder sonstigem programmierbarem ROM vorliegt und beim Hochfahren des Rechensystems 200 auszuführen ist. In einigen Ausführungsformen kann es sich beim physischen BIOS um eine reduzierte (vereinfachte) Version des BIOS handeln, da mindestens ein Teil des Systemverwaltungsmodus auf einen virtuellen hochprivilegierten Modus übertragen wird. Wird ein vertrautes Laufzeit-BIOS 225 ausgeführt, kann das physische BIOS 250 aufgrund des dem virtuellen Laufzeit-BIOS 225 entgegengebrachten Vertrauens weiterhin aufgeschlossen bleiben, um Veränderungen zuzulassen. Der Prozessor 210 kann ein Mehrzweck- oder anwendungsspezifischer Prozessor sein. Das System kann einen VMM 215 zur Verwaltung der physischen Ressourcen der Hardware-Komponenten sowie zur Virtualisierung der physischen Ressourcen umfassen. Das Rechensystem 100 umfasst ein virtuelles BIOS (vBIOS) 235, das mit einer Gastdomäne 230 verbunden ist. Die Gastdomäne 230 ist eine virtuelle Maschine, die ein Betriebssystem wie z. B. Microsoft Windows, Linux, Unix oder ein sonstiges Betriebssystem ausführen kann.
  • In einigen Beispielen ist die privilegierte Domäne 220 die Domäne 0, bei der es sich um eine vom VMM 202 beim Hochfahren des Systems hochgefahrene Verwaltungsdomäne handelt, die über verstärkte Privilegien und Sicherheitsmechanismen verfügt. Beispiele der von der Domäne 0 übernommenen Aufgaben sind insbesondere das Erzeugen und Konfigurieren der Gastdomänen. Jede der Domäne 0 und der Gastdomäne gilt als entsprechende virtuelle Maschine. Die privilegierte Domäne 220 kann vom VMM 215 getrennt vorliegen. In alternativen Ausführungsformen kann die privilegierte Domäne 220 Teil des VMM 215 sein. In derartigen alternativen Ausführungsformen ist die vertraute Laufzeit-BIOS-Funktion 225 Teil des VMM 215.
  • Der virtuelle SMM 240, der eine SVA des virtuellen SMM 240 bearbeiten soll, ist ein virtueller hochprivilegierter Modus, der Funktionen ausführen kann, die die Hardware 205 des Systems in einen SMM versetzen. Die Bearbeitung der Funktionen des SMM im virtuellen SMM 240 hindert den Prozessor 210 daran, die Verarbeitung der Befehle und Daten im SMM abzubrechen, da der Prozessor nicht in dem SMM eintritt. In einigen Ausführungsformen verfügt der Prozessor 210 über keinen SMM.
  • In einigen Ausführungsformen kann der virtuelle SMM 240 in einer beliebigen vertrauten Domäne vorliegen, die vom VMM 215 erzeugt oder verwaltet wird, insbesondere dem VMM 215 selbst oder einem Virtual Appliance 260, der privilegierten Domäne 220 oder einer Gastdomäne 230. In einem Beispiel wird eine SVA erzeugt. Die SVA wird an den virtuellen SMM 240 zur Bearbeitung weitergeleitet. Die SVA kann gemäß einer Ausführungsform vom vBIOS 235 zur Weiterleitung an den virtuellen SMM 240 empfangen werden. Eine Systemverwaltungsanfrage kann von der API (Application Programming Interface) eines Web-Dienstes versendet werden. Gemäß einer weiteren Ausführungsform kann die Systemverwaltungsanfrage in einer WMI-Packung (Windows Management Instrumentation) verpackt werden. Zu einer weiteren Ausführungsform gehört der Einsatz eines RPC (Remote Procedure Call) zur Weiterleitung der Systemverwaltungsanfrage (SVA) an den virtuellen Systemverwaltungsmodus (SVM).
  • In einigen Ausführungsformen basiert ein Cloud-BIOS auf den nachfolgenden Voraussetzungen einer Architektur auf VMM-Basis: Das physische BIOS kennt und vertraut der Haupt-Laufzeiteinheit (VMM 215), die vom physischen BIOS hochgefahren wird, und der vom BIOS vertraute VMM kann alle anderen I/O-Anfragen fangen und ausschalten (um auf BIOS-Funktionen zuzugreifen) als diejenigen, die von der privilegierten Domäne kommen. In einigen Ausführungsformen kann ein BIOS-Verifizierungsmechanismus vorgeehen sein, um die Herkunft des vom Rechensyste hochzufahrenden VMM zu authentifizieren. Derartige Verifizierungsmechanismen ermöglichen es einem Administrator oder sonstigem Benutzer, festzulegen, dass nur ein zugelassener VMM im Rechensystem hochgefahren werden kann. Der Verifizierungsmechanismus sorgt dafür, dass das im Rechensystem befindliche VMM-Bild nicht auf böswillige Weise verändert worden ist und dass dem VMM vertraut werden kann. Das physische BIOS kann das VMM-Bild visuell verifizieren und dafür sorgen, dass der VMM mit einer bekannten, vorher festgelegten Reihe von Betriebseinstellungen hochgefahren wird Der VMM kann den virtuellen hochprivilegierten Modus 240 zur Bearbeitung der SVA in einer vertrauten Umgebung erzeugen und verwalten, ohne dass dadurch die Hardware 205 in einen SMM übergeht.
  • Nach der Verifizierung, dass ein zugelassener VMM hochgefahren worden ist, kann das physische BIOS die Ausführung verschiedener Sicherheitsmaßnahmen aufschieben oder unterlassen, die vom physischen BIOS normalerweise ausgeführt werden, um Schäden durch nicht zugelassenen oder böswilligen Code zu verhindern. Beispielsweise kann sich das physische BIOS entscheiden, die Flash-Register und/oder Teile des Flash-Speichers des BIOS nicht zu verschließen.
  • Gemäß einigen Ausführungsformen ist das vBIOS 225 rechensystemintern 200 vorgesehen, das vBIOS 225 kann jedoch auch systemextern sein. Aus der Sicht einer virtuellen Gastmaschine oder sonstigen Einheit des Rechensystems, die auf BIOS-DIenste zugreifen will, kann sich die Cloud, die die BIOS-DIenste enthält, an einem beliebigen Ort befinden, insbesondere an einem außerhalb des Rechensystems liegenden Ort.
  • Gemäß einer Ausführungsform mit einem BIOS.v kann keine andere Domäne als die privilegierte Domäne oder eine weitere vertraute Domäne mit dem BIOS kommunizieren. Dies wird dadurch ermöglicht, dass alle Kommunikationen von einer Gastdomäne an das BIOS gefangen und dem privilegierten Domäneteil zugeführt werden, um vom entsprechenden Filter empfangen und bearbeitet zu werden. Der virtuelle hochprivilegierte Modus der privilegierten Domäne kann die Anfrage dann bearbeiten und Flass oder BIOS direkt oder indirekt abrufen. Dieser Abruf von der privilegierten Domäne an das BIOS, der dann vom Hypervisor durchgelassen wird, da der Hypervisor einen aus der privilegierten Domäne und nicht einer Gastdomäne stammenden Anruf erkennen kann. Unter der Voraussetzung des offenen Zugriffs auf das physische BIOS wird die Kommunikation von der privilegierten Domäne an das physische BIOS gesichert; die privilegierte Domäne kann nun alle BIOS-Einstellungen in Laufzeit schreiben oder ablesen, wodurch die Situation entfällt, in der der Prozessor in den Systemverwaltungsmodus übergeht.
  • Die Übertragung der Bearbeitung von SVA auf einen virtuellen hochprivilegierten Modus ist mit dem Vorteil verbunden, dass mehr Systemdaten und Kontext dem VMM zur Verfügung stehen. Wenn z. B. das Rechensystem eine SVA zur Bearbeitung von Wärmeereignissen dauerhaft auslöst, kann der VMM entscheiden, die Planungsressourcen entsprechend einzustellen, was zu einer automatischen Einstellung führt, wodurch sich das System abkühlen kann; ohne virtuellen hochprivilegierten Modus müßte das System dauerhaft in SMM übergehen.
  • 3 ist ein Flussdiagamm eines Verfahrens 300 zur Bearbeitung von SVA gemäß einem Ausführungsbeispiel. Das Verfahren kann über einen VMM eine vertraute Domäne verwalten, damit ein virtueller hochprivilegierter Modus bei 305 eine SVA empfangen kann. Die vertraute Domäne kann eine privilegierte Domäne 120 oder eine andere Domäne sein. Die SVA kann eine Anfrage sein, die den Prozessor 110 in einen SMM versetzen und dadurch alle Prozesse abbrechen kann, die im Echtzeitmodus des Prozessors 110 ausgeführt werden. Bei 310 wird die SVA daran gehindert, einen SMM einzuleiten. Die SVA kann an einen virtuellen hochprivilegierten Modus 140 weitergeleitet werden. Die Leitung der SVA kann z. B. dadurch erfolgen, dass das vBIOS die SVA dem virtuellen hochprivilegierten Modus zukommen lässt; hierzu wird die SVA in einer WMI-Packung verpackt, ein RPC (Remote Procedure Call) vorgenommen, oder aber dies kann über eine Webdienst-API erfolgen. Die SVA kann bei 315 in einem virtuellen hochprivilegierten Modus bearbeitet werden. Der virtuelle hochprivilegierte Modus kann auf die Hardware zugreifen, um Systemkonfigurationen vorzunehmen, die einer Gastdomäne nicht zugänglich sind.
  • 4 ist ein Flussdiagamm eines Verfahrens zur Bearbeitung von Systemverwaltungsanforderungen (SVA) gemäß einem Ausführungsbeispiel. Das Verfahren kann mit dem Versenden einer SVA durch eine Domäne bei 402 beginnen. Bei der Domäne kann es sich beispielsweise um eine Gastdomäne 130 oder eine privilegierte Domäne 120 handeln.
  • Ein VMM kann eine vertraute Domäne verwalten, damit ein virtueller hochprivilegierter Modus bei 405 eine SVA empfangen kann. Der virtuelle hochprivilegierte Modus kann die SVA empfangen, die womöglich von einer sonstigen Komponente wie z. B. dem VMM 115 oder der privilegierten Domäne 120 weitergeleitet worden ist. Die SVA kann eine Anfrage sein, die den Prozessor 110 in einen SMM versetzen und dadurch alle Prozesse abbrechen kann, die im Echtzeitmodus des Prozessors 110 ausgeführt werden. Bei 410 wird die SVA daran gehindert, einen SMM einzuleiten. Wird die SVA von einer anderen Komponente als dem virtuellen hochprivilegierten Modus empfangen, kann diese an einen virtuellen hochprivilegierten Modus 140 weitergeleitet werden. Die Leitung der SVA kann z. B. dadurch erfolgen, dass das vBIOS die SVA dem virtuellen hochprivilegierten Modus zukommen lässt; hierzu wird die SVA in einer WMI-Packung verpackt, ein RPC (Remote Procedure Call) vorgenommen. Die SVA kann bei 415 in einem virtuellen hochprivilegierten Modus bearbeitet werden. Der virtuelle hochprivilegierte Modus kann auf die Hardware zugreifen, um Systemkonfigurationen vorzunehmen, die einer Gastdomäne nicht zugänglich sind.
  • 5 ist ein Blockdiagamm eines Rechensystems 500 nach einem Ausführungsbeispiel eines computerlesbaren Datenträgers 515616. Der computerlesbare Datenträger 515516 kann Code umfassen, der im Falle seiner Ausführung durch einen Prozessor 505 ein Rechensystem veranlassen kann, einen VMM auszuführen. Der Code kann auch den Empfang einer SVA durch einen virtuellen hochprivilegierten Modus veranlassen. Die SVA kann daran gehindert werden, einen SMM des Prozessors einzuleiten. Der Code kann veranlassen, dass die SVA kann in einem virtuellen hochprivilegierten Modus bearbeitet wird.
  • Der Code kann den virtuellen hochprivilegierten Modus veranlassen, eine Systemkonfiguration zu ändern, die von einer Gastdomäne nicht geändert werden kann. Eine SVA kann von einer Domäne wie z. B. einer Gastdomäne oder einer privilegierten Domäne erzeugt werden, um Systemkonfigurationen vorzunehmen, die der Domäne im Echtzeitmodus des Prozessors nicht zugänglich sind.
  • Verschiedene Module, wie sie z. B. in anderen Zeichnungen gezeigt werden, können als maschinenlesbare Befehle ausgeführt werden, die auf einem oder mehreren Prozessoren ausführbar sind. Ein Prozessor kann einen Mikroprozessor, Mikrocontroller, Prozessormodul oder Subsystem, programmierbare integrierte Schaltung, programmierbaren Gate-Array oder sonstiges Steuer- oder Rechengerät umfassen.
  • Die maschinenlesbaren Befehle können in maschinen- oder computerlesbaren Datenträgern gespeichert sein, die als ein oder mehrere computer- oder maschinenlesbare Datenträger ausführbar sind. Die Datenträger können verschiedene Speicherformen, insbesondere Halbleiter-Speichergerät wie z. B. dynamisches oder statisches RAM (DRAM oder SRAM), löschbare und programmierbare ROM (EPROM), EEPROM und Flash-Speicher; Magnetplatten wie z. B. Festplatten, Disketten und abnehmbare Laufwerke, sonstige magnetische Datenträger wie z. B. Band, optische Datenträger wie z. B. CDs oder DVDs oder sonstige Datenträger umfassen. Hierbei ist anzumerken, dass die oben beschriebenen Befehle auf einem Computer- oder maschinenlesbraen Datenträger oder alternativ auf mehreren Computer- oder maschinenlesbaren Datenträgern vorliegen können, die in einem großen System mit womöglich mehreren Knoten verteilt sind. Diese Computer- oder maschinenlesbaren Datenträger gelten als Teil eines Artikels (Produktes). Artikel oder Produkt kann eine beliebige hergestellte Einzelkomponente oder auch mehrere Komponenten sein. Der Datenträger kann entweder in der Maschine, die die maschinenlesbaren Befehle ausführt, oder an einer dezentralen Stelle vorliegen, von der aus die maschinenlesbaren Befehle zur Ausführung über ein Netzwerk heruntergeladen werden können.
  • In der vorstehenden Beschreibung werden zahlreiche Einzelheiten angegegeben, um ein Verständnis des vorliegend beschriebenen Gegenstandes zu vermitteln. Ausführungen können sich jedoch ohne einige oder alle diese Details ergeben. Weitere Ausführungsformen können Änderungen und Abwandlungen der oben beschriebenen Konfigurationen umfassen. Die beigefügten Patentansprüche sollen diese Änderungen und Abwandlungen mit umfassen.

Claims (15)

  1. Ein Rechensystem, umfassend: einen Prozessor; einen Virtual Machine Monitor zur Verwaltung einer vertrauten Domäne; und einen virtuellen hochprivilegierten Modus in der vertrauten Domäne zur Bearbeitung einer Systemverwaltungsanfrage.
  2. Das System nach Anspruch 1, wobei der virtuelle hochprivilegierte Modus ein virtueller System Management Interrupt-Modus zur Bearbeitung einer Systemverwaltungsanfrage ist.
  3. Das System nach Anspruch 1, wobei der Prozessor nicht in einen Systemverwaltungsmodus übergeht.
  4. Das System nach Anspruch 1, wobei der virtuelle hochprivilegierte Modus eine Virtual Appliance ist.
  5. Das System nach Anspruch 1, wobei der Virtual Machine Monitor oder die privilegierte Domäne den virtuellen hochprivilegierten Modus umfasst.
  6. Das System nach Anspruch 1, wobei die Systemverwaltungsanfrage entweder vom virtuellen Basiseingabe-/-ausgabesystem (vBIOS) empfangen, in einer Windows Management Instrumentation(WMI)-Packung dem virtuellen hochprivilegierten Modus bereitgestellt oder von einem Remote Procedure Call (RPC) dem virtuellen hochprivilegierten Modus bereitgestellt wird.
  7. Eine Verfahren zur Bearbeitung von Systemverwaltungsanforderungen in einem Rechensystem, umfassend: Verwalten einer vertrauten Domäne durch einen Virtual Machine Monitor, damit ein virtueller hochprivilegierter Modus eine Systemverwaltungsanfrage empfangen kann; Verhindern der Einleitung eines Systemverwaltungsmodus durch die Systemverwaltungsanfrage; und Bearbeiten der Systemverwaltungsanfrage in einer virtuellen hochprivilegierten Modus-Umgebung.
  8. Das Verfahren nach Anspruch 7, ferner umfassend das Ändern einer Systemkonfiguration.
  9. Das Verfahren nach Anspruch 8, wobei der Virtual Machine Monitor die Systemkonfiguration ändert, die einer Gastdomäne nicht zugänglich ist.
  10. Das Verfahren nach Anspruch 7, ferner umfassend das Versenden eines System Management Interrupt durch eine Gastdomäne.
  11. Das Verfahren nach Anspruch 10, wobei die Domäne eine Gastdomäne oder eine privilegierte Domäne ist.
  12. Ein computerlesbarer Datenträger, umfassend einen Code, der bei seiner Ausführung durch einen Prozessor ein Rechensystem veranlasst zum: Verwalten einer vertrauten Domäne mittels eines Virtual Machine Monitors; Empfangen einer Systemverwaltungsanfrage durch eine virtuellen hochprivilegierten Modus-Umgebung in der vertrauten Domäne; Verhindern der Einleitung eines Systemverwaltungsmodus durch die Systemverwaltungsanfrage; und Bearbeiten der Systemverwaltungsanfrage in der virtuellen hochprivilegierten Modus-Umgebung.
  13. Der computerlesbare Datenträger nach Anspruch 12, ferner umfassend einen Code, der bei seiner Ausführung eine Rechenvorrichtung veranlasst zum: Ändern einer einer Gastdomäne nicht zugänglichen Systemkonfiguration.
  14. Der computerlesbare Datenträger nach Anspruch 12, ferner umfassend einen Code, der bei seiner Ausführung eine Rechenvorrichtung veranlasst zum: Weiterleiten der Systemverwaltungsanfrage von einem virtuellen Basiseingabe-/-ausgabesystem (vBIOS) an einen virtuellen hochprivilegierten Modus.
  15. Der computerlesbare Datenträger nach Anspruch 12, ferner umfassend einen Code, der bei seiner Ausführung eine Rechenvorrichtung veranlasst zum: Generieren einer Domäne zum Versenden der Systemverwaltungsanfrage; wobei die Domäne eine Gastdomäne oder privilegierte Domäne ist.
DE112011105577.3T 2011-08-30 2011-08-30 Virtueller hochprivilegierter Modus für eine Systemverwaltungsanforderung Ceased DE112011105577T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2011/049677 WO2013032442A1 (en) 2011-08-30 2011-08-30 Virtual high privilege mode for a system management request

Publications (1)

Publication Number Publication Date
DE112011105577T5 true DE112011105577T5 (de) 2014-05-08

Family

ID=47756679

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112011105577.3T Ceased DE112011105577T5 (de) 2011-08-30 2011-08-30 Virtueller hochprivilegierter Modus für eine Systemverwaltungsanforderung

Country Status (8)

Country Link
US (1) US10303501B2 (de)
JP (1) JP6063941B2 (de)
CN (1) CN103748552A (de)
BR (1) BR112014003390A2 (de)
DE (1) DE112011105577T5 (de)
GB (1) GB2507226B (de)
TW (1) TWI616818B (de)
WO (1) WO2013032442A1 (de)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9448810B2 (en) * 2011-10-21 2016-09-20 Hewlett-Packard Development Company, L.P. Web-based interface to access a function of a basic input/output system
TWI533220B (zh) * 2012-03-19 2016-05-11 緯創資通股份有限公司 虛擬系統管理模式裝置以及其控制方法
TW201437803A (zh) * 2013-03-21 2014-10-01 Hon Hai Prec Ind Co Ltd 計算設備硬體功能擴充系統及方法
CN103310149B (zh) * 2013-05-27 2018-06-26 华为终端(东莞)有限公司 系统功能调用的方法、装置及终端
KR101896494B1 (ko) * 2013-11-29 2018-09-11 인텔 코포레이션 컴퓨팅 디바이스들에서의 전력 관리
US9575791B2 (en) * 2014-02-12 2017-02-21 Dell Products, Lp Unified extensible firmware interface system management mode initialization protections with system management interrupt transfer monitor sandboxing
CN104035409B (zh) * 2014-06-04 2017-02-01 国家电网公司 一种面向建筑楼宇能源优化运行的需求响应系统
US10691440B2 (en) 2014-06-06 2020-06-23 Hewlett Packard Enterprise Development Lp Action execution based on management controller action request
US20160019555A1 (en) * 2014-07-15 2016-01-21 Boles Thomas Automated system for rating employee screening practices and corporate management
CN104598842B (zh) * 2015-02-03 2018-05-01 中国电子科技集团公司第三十研究所 一种虚拟机监控器信任域分割方法
GB2539435B8 (en) * 2015-06-16 2018-02-21 Advanced Risc Mach Ltd Data processing memory access control, in which an owning process for a region of memory is specified independently of privilege level
EP3314516B1 (de) * 2016-01-26 2022-04-13 Hewlett-Packard Development Company, L.P. Privilegienarchitektur für systemmanagementmodus
US10713077B2 (en) * 2017-01-26 2020-07-14 Semper Fortis Solutions, LLC Multiple single levels of security (MSLS) in a multi-tenant cloud
EP3413532A1 (de) 2017-06-07 2018-12-12 Hewlett-Packard Development Company, L.P. Überwachung von steuerungsflussintegrität
CN108334351A (zh) * 2017-08-31 2018-07-27 郑州云海信息技术有限公司 一种修改启动顺序的方法及装置
US11080403B1 (en) * 2018-12-19 2021-08-03 Hewlett-Packard Development Company, L.P. Securely constructing a trusted virtual environment
CN110096888B (zh) * 2019-04-18 2021-02-09 苏州浪潮智能科技有限公司 一种加快验证及分析smm安全隐患的方法及系统
US11917067B2 (en) * 2019-12-28 2024-02-27 Intel Corporation Apparatuses, methods, and systems for instructions for usage restrictions cryptographically tied with data
US11366710B1 (en) * 2021-02-23 2022-06-21 Quanta Computer Inc. Methods and systems for reducing downtime from system management mode in a computer system

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5230052A (en) 1990-10-01 1993-07-20 International Business Machines Corp. Apparatus and method for loading bios into a computer system from a remote storage location
US5574920A (en) 1994-10-25 1996-11-12 Microsoft Corporation Method for controlling power down of a hard disk drive in a computer
US6799316B1 (en) * 2000-03-23 2004-09-28 International Business Machines Corporation Virtualizing hardware with system management interrupts
US6766398B2 (en) * 2001-04-17 2004-07-20 International Business Machines Corporation Method for processing PCI interrupt signals in a logically partitioned guest operating system
US20030229794A1 (en) * 2002-06-07 2003-12-11 Sutton James A. System and method for protection against untrusted system management code by redirecting a system management interrupt and creating a virtual machine container
US7124327B2 (en) * 2002-06-29 2006-10-17 Intel Corporation Control over faults occurring during the operation of guest software in the virtual-machine architecture
US7974416B2 (en) * 2002-11-27 2011-07-05 Intel Corporation Providing a secure execution mode in a pre-boot environment
ATE388568T1 (de) 2003-11-07 2008-03-15 Harman Becker Automotive Sys Verfahren und vorrichtungen für die zugangskontrolle zu verschlüsselten datendiensten für ein unterhaltungs- und informationsverarbeitungsgerät in einem fahrzeug
US20050114687A1 (en) * 2003-11-21 2005-05-26 Zimmer Vincent J. Methods and apparatus to provide protection for firmware resources
US7552419B2 (en) * 2004-03-18 2009-06-23 Intel Corporation Sharing trusted hardware across multiple operational environments
US7421533B2 (en) 2004-04-19 2008-09-02 Intel Corporation Method to manage memory in a platform with virtual machines
US7917740B1 (en) * 2004-05-11 2011-03-29 Advanced Micro Devices, Inc. Virtualization assist for legacy x86 floating point exception handling
US20060005184A1 (en) * 2004-06-30 2006-01-05 Vijay Tewari Virtualizing management hardware for a virtual machine
US7757231B2 (en) 2004-12-10 2010-07-13 Intel Corporation System and method to deprivilege components of a virtual machine monitor
US7334076B2 (en) 2005-03-08 2008-02-19 Microsoft Corporation Method and system for a guest physical address virtualization in a virtual machine environment
US7937701B2 (en) * 2005-06-30 2011-05-03 Intel Corporation ACPI communication between virtual machine monitor and policy virtual machine via mailbox
US9785485B2 (en) * 2005-07-27 2017-10-10 Intel Corporation Virtualization event processing in a layered virtualization architecture
JP4542514B2 (ja) 2006-02-13 2010-09-15 株式会社日立製作所 計算機の制御方法、プログラム及び仮想計算機システム
US7840398B2 (en) 2006-03-28 2010-11-23 Intel Corporation Techniques for unified management communication for virtualization systems
US8321377B2 (en) 2006-04-17 2012-11-27 Microsoft Corporation Creating host-level application-consistent backups of virtual machines
US7610481B2 (en) * 2006-04-19 2009-10-27 Intel Corporation Method and apparatus to support independent systems in partitions of a processing system
US7689817B2 (en) * 2006-11-16 2010-03-30 Intel Corporation Methods and apparatus for defeating malware
US9280659B2 (en) * 2006-12-29 2016-03-08 Intel Corporation Methods and apparatus for remeasuring a virtual machine monitor
US8380987B2 (en) 2007-01-25 2013-02-19 Microsoft Corporation Protection agents and privilege modes
US20090119748A1 (en) * 2007-08-30 2009-05-07 Jiewen Yao System management mode isolation in firmware
US8522236B2 (en) * 2007-12-28 2013-08-27 Intel Corporation Method and system for establishing a robust virtualized environment
US7779305B2 (en) * 2007-12-28 2010-08-17 Intel Corporation Method and system for recovery from an error in a computing device by transferring control from a virtual machine monitor to separate firmware instructions
US8473945B2 (en) * 2007-12-31 2013-06-25 Intel Corporation Enabling system management mode in a secure system
JP2009176213A (ja) 2008-01-28 2009-08-06 Hitachi Software Eng Co Ltd ネットワークブート方式
JP2009230433A (ja) 2008-03-21 2009-10-08 Toshiba Corp ネットワークブート装置、プログラム及び方法
US8321931B2 (en) * 2008-03-31 2012-11-27 Intel Corporation Method and apparatus for sequential hypervisor invocation
US8843742B2 (en) 2008-08-26 2014-09-23 Hewlett-Packard Company Hypervisor security using SMM
CN101425027B (zh) * 2008-11-20 2013-03-20 上海交通大学 基于tpm的虚拟机安全协议方法
CN101488173B (zh) * 2009-01-15 2010-10-27 北京交通大学 支持零宕机的可信虚拟域启动文件完整性度量的方法
US8166288B2 (en) * 2009-01-30 2012-04-24 Hewlett-Packard Development Company, L.P. Managing requests of operating systems executing in virtual machines
US8127124B2 (en) * 2009-03-19 2012-02-28 Hewlett-Packard Development Company, L.P. Remote configuration of computing platforms
JP2011076505A (ja) 2009-09-30 2011-04-14 Brother Industries Ltd 情報処理システム及び情報処理方法
JP5458899B2 (ja) 2010-01-12 2014-04-02 富士通株式会社 仮想計算機、遠隔起動プログラム、遠隔起動方法及び仮想計算機システム
US8977842B1 (en) 2010-02-05 2015-03-10 Symantec Corporation Hypervisor enabled secure inter-container communications
US8429276B1 (en) 2010-10-25 2013-04-23 Juniper Networks, Inc. Dynamic resource allocation in virtual environments
US8909785B2 (en) * 2011-08-08 2014-12-09 International Business Machines Corporation Smart cloud workload balancer
WO2013032495A1 (en) 2011-08-30 2013-03-07 Hewlett-Packard Development Company , L.P. Communication with a virtual trusted runtime bios

Also Published As

Publication number Publication date
JP2014527674A (ja) 2014-10-16
US10303501B2 (en) 2019-05-28
BR112014003390A2 (pt) 2017-02-21
US20150040130A1 (en) 2015-02-05
TWI616818B (zh) 2018-03-01
GB201401986D0 (en) 2014-03-19
GB2507226B (en) 2020-04-22
JP6063941B2 (ja) 2017-01-18
TW201319946A (zh) 2013-05-16
WO2013032442A1 (en) 2013-03-07
CN103748552A (zh) 2014-04-23
GB2507226A (en) 2014-04-23

Similar Documents

Publication Publication Date Title
DE112011105577T5 (de) Virtueller hochprivilegierter Modus für eine Systemverwaltungsanforderung
US10445498B2 (en) Systems and methods of application control in virtualized environments
US10489187B2 (en) Systems and methods for auditing a virtual machine
EP3047419B1 (de) Virtueller sicherer modus für virtuelle maschinen
DE112012003988B4 (de) Schützen des Arbeitsspeichers eines virtuellen Gasts
DE102011103218B4 (de) Systeme, Verfahren und Vorrichtung zum Virtualisieren von TPM- Zugriffen
KR102189296B1 (ko) 가상 머신 보안 어플리케이션을 위한 이벤트 필터링
DE112011105745B4 (de) Bereitstellen einer Funktion eines Basisdatenaustauschsystems (BIOS) in einer privilegierten Domain
DE112011105752T5 (de) Webbasierte Schnittstelle zum Zugriff auf eine Funktion eines Basic Input/Output-Systems
DE202014011092U1 (de) Sicherheitsarchitektur für virtuelle Maschinen
CN106255955B (zh) 多操作系统装置的访问隔离
US10719346B2 (en) Disk encryption
DE112011105568T5 (de) Kommunizieren mit einem virtuellen vertrauten Laufzeit-Bios
DE112017004980T5 (de) Technologien für objektorientiertes speichermanagement mit erweiterter segmentierung
US10754680B2 (en) Disk encription
DE112011102876T5 (de) Ressourcenverwaltungs- und Sicherheitssystem
DE112014000965T5 (de) Verarbeiten eines Gastereignisses in einem hypervisorgesteuerten System
US8677449B1 (en) Exposing data to virtual machines
DE112005002360T5 (de) Bereitstellung einer Unterstützung für einen Zeitgeber, der einem Virtual-Machine-Monitor zugeordnet ist
US20200257814A1 (en) Disk encryption
DE112010003049T5 (de) Dateisystem für duale Betriebssysteme
DE112020000280B4 (de) Transparente interpretation von gastbefehlen in einer sicheren virtuellen maschinenumgebung
DE112012005209T5 (de) Brückenfunktion zwischen Virtual Machine Monitor und Bare-Metal-Bootvorgang
DE102014003540A1 (de) Erzeugen einer isolierten ausführungsumgebung in einem co-designten prozessor
US10108800B1 (en) ARM processor-based hardware enforcement of providing separate operating system environments for mobile devices with capability to employ different switching methods

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R082 Change of representative

Representative=s name: SCHOPPE, ZIMMERMANN, STOECKELER, ZINKLER, SCHE, DE

R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final