DE102015209125A1 - Method and apparatus for operating a guest through a hypervisor - Google Patents

Method and apparatus for operating a guest through a hypervisor Download PDF

Info

Publication number
DE102015209125A1
DE102015209125A1 DE102015209125.2A DE102015209125A DE102015209125A1 DE 102015209125 A1 DE102015209125 A1 DE 102015209125A1 DE 102015209125 A DE102015209125 A DE 102015209125A DE 102015209125 A1 DE102015209125 A1 DE 102015209125A1
Authority
DE
Germany
Prior art keywords
hypervisor
procedure
guest
hardware
configuration
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.)
Pending
Application number
DE102015209125.2A
Other languages
German (de)
Inventor
Gunnar Piel
Gary Morgan
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102015209125.2A priority Critical patent/DE102015209125A1/en
Publication of DE102015209125A1 publication Critical patent/DE102015209125A1/en
Pending 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/45545Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

Verfahren (10) zum Betreiben eines Gastsystems durch einen Hypervisor (12), gekennzeichnet durch folgende Merkmale: – ein Hochfahren (14) des Hypervisors (12), – eine obligatorische Hardwareinitialisierung (16) durch den Hypervisor (12) vor einer Inbetriebnahme (18) des Gastsystems und – eine fakultative Hardwareinitialisierung (20) durch den Hypervisor (12) nach der Inbetriebnahme (18).A method (10) for operating a guest system by a hypervisor (12), characterized by the following features: - a startup (14) of the hypervisor (12), - a mandatory hardware initialization (16) by the hypervisor (12) before a startup (18 ) of the guest system and - an optional hardware initialization (20) by the hypervisor (12) after startup (18).

Description

Die vorliegende Erfindung betrifft ein Verfahren zum Betreiben eines Gastsystems durch einen Hypervisor. Die vorliegende Erfindung betrifft darüber hinaus eine entsprechende Vorrichtung, ein entsprechendes Computerprogramm sowie ein entsprechendes Speichermedium.The present invention relates to a method for operating a guest system through a hypervisor. The present invention also relates to a corresponding device, a corresponding computer program and a corresponding storage medium.

Stand der TechnikState of the art

Eine Klasse von Systemen der praktischen Informatik, die als abstrahierende Schicht zwischen tatsächlich vorhandener Hardware und weiteren zu installierenden Systemen dient, ist dem Fachmann als Hypervisoren (virtual machine monitor, VMM) bekannt. Gattungsmäßige Hypervisoren erlauben es, eine virtuelle Umgebung mit Hardwareressourcen wie Prozessor, Speicher, Festplattenplatz und Peripherie zu definieren, welche unabhängig von der tatsächlich vorhandenen Hardware als Basis für die Installation von Gastsystemen dient.A class of systems of practical computer science, which serves as an abstracting layer between actually existing hardware and other systems to be installed, is known to those skilled in the art as hypervisors (virtual machine monitor, VMM). Generic hypervisors make it possible to define a virtual environment with hardware resources such as processor, memory, disk space and peripherals, which serves as the basis for the installation of guest systems, regardless of the actual hardware.

Hypervisoren nach dem Stand der Technik erlauben den simultanen Betrieb mehrerer Gastsysteme auf einer gemeinsamen Hardware. Der Hypervisor verwaltet in diesem Fall die Ressourcenzuteilung für einzelne Gastsysteme. Er verteilt die Hardware-Ressourcen derart, dass für jedes einzelne Gastbetriebssystem alle Ressourcen bei Bedarf verfügbar sind.Hypervisors of the prior art allow the simultaneous operation of multiple guest systems on a common hardware. In this case, the hypervisor manages the resource allocation for individual guest systems. It distributes the hardware resources such that each resource is available on demand for each guest operating system.

DE 102012205301 A1 offenbart eine Rechner-Architektur zur Steuerung einer elektronischen Datenverarbeitung in einem Fahrzeug mit einer Recheneinrichtung zur Ausführung der elektronischen Datenverarbeitung, mindestens zwei virtuellen Maschinen, wobei eine erste der virtuellen Maschinen ein erstes Betriebssystem und eine zweite der virtuellen Maschinen ein zweites Betriebssystem umfasst, und einer Virtualisierungsschicht, die dazu ausgebildet ist, dass das erste und zweite Betriebssystem auf der Recheneinrichtung parallel betreibbar sind, wobei das zweite Betriebssystem optional einer höheren Sicherheitsanforderung als das erste Betriebssystem genügt. DE 102012205301 A1 discloses a computer architecture for controlling electronic data processing in a vehicle having a computing device for performing electronic data processing, at least two virtual machines, wherein a first of the virtual machines comprises a first operating system and a second of the virtual machines comprises a second operating system, and a virtualization layer , which is designed so that the first and second operating systems can be operated in parallel on the computing device, wherein the second operating system optionally meets a higher security requirement than the first operating system.

Offenbarung der ErfindungDisclosure of the invention

Die Erfindung stellt ein Verfahren zum Betreiben eines Gastsystems durch einen Hypervisor, eine entsprechende Vorrichtung, ein entsprechendes Computerprogramm sowie ein entsprechendes Speichermedium gemäß den unabhängigen Ansprüchen bereit.The invention provides a method for operating a guest system by a hypervisor, a corresponding device, a corresponding computer program and a corresponding storage medium according to the independent claims.

Ein Vorzug dieser Lösung liegt darin, dass der Hypervisor nur das Nötigste an Initialisierungsaufgaben – zu denken ist etwa an Hauptprozessor (central processing unit, CPU) und Speicherveraltung – verrichtet. Der vorgeschlagene Ansatz verringert somit die durch den Hypervisor verursachte zusätzliche Startzeit, die sich vor allem in der Kraftfahrzeugtechnik als kritisches Qualitätskriterium darstellt. Die übrigen Initialisierungsschritte werden Schritt für Schritt in Zusammenarbeit mit dem Gastsystem ausgeführt.An advantage of this solution lies in the fact that the hypervisor performs only the essentials of initialization tasks, such as central processing unit (CPU) and memory management. The proposed approach thus reduces the additional startup time caused by the hypervisor, which is a critical quality criterion, especially in automotive engineering. The remaining initialization steps are performed step by step in cooperation with the guest system.

Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen des im unabhängigen Anspruch angegebenen Grundgedankens möglich.The measures listed in the dependent claims advantageous refinements and improvements of the independent claim basic idea are possible.

Kurze Beschreibung der ZeichnungenBrief description of the drawings

Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert. Es zeigt:Embodiments of the invention are illustrated in the drawings and explained in more detail in the following description. It shows:

1 das Systemverhalten eines Hypervisors gemäß einer ersten Ausführungsform. 1 the system behavior of a hypervisor according to a first embodiment.

2 schematisch ein Steuergerät gemäß einer zweiten Ausführungsform. 2 schematically a control device according to a second embodiment.

Ausführungsformen der ErfindungEmbodiments of the invention

1 illustriert das schnelle und flexible Startverhalten eines Hypervisors 12 gemäß einer Ausführungsform der Erfindung. Hierzu sei eine Liste von Hardwaregeräten und deren Geräteeigenschaften 24, 26 vorausgesetzt, die zu einem späteren Zeitpunkt eingerichtet werden können. Diese Liste ist in der Regel systemspezifisch. 1 illustrates the fast and flexible startup behavior of a hypervisor 12 according to an embodiment of the invention. Here is a list of hardware devices and their device properties 24 . 26 provided that can be set up at a later date. This list is usually system-specific.

In der Konfiguration 22 des Hypervisors 12 gibt der Benutzer an, welche dieser Geräteeigenschaften 24, 26 Gegenstand der obligatorischen Hardwareinitialisierung 16 sein sollen. Er gibt ferner an, welche Geräteeigenschaften 24, 26 auf Anforderung 28 eines Gastsystems einer fakultativen Hardwareinitialisierung 20 unterzogen werden sollen. Für jede Geräteeigenschaft 26 lassen sich dabei bestimmte Gastsysteme zur Anforderung 28 deren fakultativer Hardwareinitialisierung 20 berechtigen.In the configuration 22 of the hypervisor 12 The user specifies which of these device properties 24 . 26 Subject of mandatory hardware initialization 16 should be. It also indicates which device properties 24 . 26 on request 28 a guest of optional hardware initialization 20 should be subjected. For each device property 26 In doing so, certain guest systems can be demanded 28 their optional hardware initialization 20 entitle.

Der Hypervisor 12 wird nun mittels einer Kodegenerierung 30 unter Einbeziehung der Konfiguration 22 gebaut.The hypervisor 12 is now using a code generation 30 including the configuration 22 built.

Bei jedem folgenden Einschalten 32 des Systems erfolgt nach dem Starten 34 der Hardware das Hochfahren 14 des Hypervisors. Dieser nimmt sodann vor der Inbetriebnahme 18 der Gastsysteme die obligatorische Hardwareinitialisierung 16 vor.Each time you turn on the power 32 of the system takes place after starting 34 the hardware booting up 14 of the hypervisor. This then takes before commissioning 18 the guest systems the obligatory hardware initialization 16 in front.

Nach Inbetriebnahme 18 der Gastsysteme können diese die Hardware-Geräteeigenschaften 24 verwenden, die sie benötigen. Wenn ein Gastsystem beabsichtigt, eine noch nicht initialisierte Hardware-Geräteeigenschaft 26 zu benutzen, fordert es deren fakultative Hardwareinitialisierung 20 durch den Hypervisor 12 an. Dazu richtet es eine dedizierte Anforderung 28 an die Hypervisor-Dienstprogrammierschnittstelle (virtual machine monitor service application programming interface, VSA). Wenn die Anforderung 28 in der Konfiguration 22 genehmigt wurde, nimmt der Hypervisor 12 die fakultative Hardwareinitialisierung 20 vor. Hiernach kann das Gastsystem die Hardware-Geräteeigenschaft 26 nach Bedarf nutzen. Eine unbefugte Anforderung 28 hingegen ruft eine angemessene Fehlerreaktion des Hypervisors 12 hervor. After commissioning 18 Of the guest systems, these may be the hardware device properties 24 use that they need. If a guest intends to install an uninitialized hardware device property 26 To use it, it requires their optional hardware initialization 20 through the hypervisor 12 at. It does this by setting up a dedicated request 28 to the hypervisor service application programming interface (VSA). If the request 28 in the configuration 22 was approved, the hypervisor takes 12 the optional hardware initialization 20 in front. After that, the guest system may have the hardware device property 26 use as needed. An unauthorized request 28 while calling for a reasonable error response from the hypervisor 12 out.

Eine typische Konfiguration, bei der eine fakultative Hardwareinitialisierung 20 zweckmäßig ist, liegt vor, wenn ein Peripheriegerät wie ein gemeinsamer CAN-Controller zwischen Gastsystemen geteilt wird. Hier ist es zielführend, dass der Hypervisor 12 das Peripheriegerät auf angemessene Art virtualisiert. Zu diesem Zweck betreibt der Hypervisor 12 seinen eigenen Treiber, der das Gerät einer fakultativen Hardwareinitialisierung 20 unterzieht, und stellt den Gastsystemen eine Programmierschnittstelle bereit, um auf das Gerät zuzugreifen.A typical configuration involving optional hardware initialization 20 is appropriate, is when a peripheral device such as a common CAN controller is shared between guest systems. Here it is expedient that the hypervisor 12 virtualize the peripheral appropriately. For this purpose, the hypervisor operates 12 its own driver, which is the device of an optional hardware initialization 20 and provides the guest systems with a programming interface to access the device.

Dieses Verfahren 10 kann beispielsweise in Software oder Hardware oder in einer Mischform aus Software und Hardware beispielsweise in einem Steuergerät 20 implementiert sein, wie die schematische Darstellung der 2 verdeutlicht.This method 10 For example, in software or hardware or in a hybrid of software and hardware, for example, in a control unit 20 be implemented as the schematic representation of 2 clarified.

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • DE 102012205301 A1 [0004] DE 102012205301 A1 [0004]

Claims (10)

Verfahren (10) zum Betreiben eines Gastsystems durch einen Hypervisor (12), gekennzeichnet durch folgende Schritte: – ein Hochfahren (14) des Hypervisors (12), – eine obligatorische Hardwareinitialisierung (16) durch den Hypervisor (12) vor einer Inbetriebnahme (18) des Gastsystems und – eine fakultative Hardwareinitialisierung (20) durch den Hypervisor (12) nach der Inbetriebnahme (18).Procedure ( 10 ) for operating a guest through a hypervisor ( 12 ), characterized by the following steps: - a startup ( 14 ) of the hypervisor ( 12 ), - a mandatory hardware initialization ( 16 ) through the hypervisor ( 12 ) before commissioning ( 18 ) of the guest system and - an optional hardware initialisation ( 20 ) through the hypervisor ( 12 ) after commissioning ( 18 ). Verfahren (10) nach Anspruch 1, dadurch gekennzeichnet, dass die Hardwareinitialisierungen (16, 20) abhängig von einer Konfiguration (22) des Hypervisors (12) erfolgen.Procedure ( 10 ) according to claim 1, characterized in that the hardware initializations ( 16 . 20 ) depending on a configuration ( 22 ) of the hypervisor ( 12 ) respectively. Verfahren (10) nach Anspruch 2, gekennzeichnet durch folgende Merkmale: – die Konfiguration (22) bestimmt mindestens eine obligatorische Geräteeigenschaft (24) und – die obligatorische Hardwareinitialisierung (16) betrifft die obligatorische Geräteeigenschaft (24).Procedure ( 10 ) according to claim 2, characterized by the following features: - the configuration ( 22 ) determines at least one mandatory device property ( 24 ) and - the obligatory hardware initialization ( 16 ) concerns the compulsory equipment characteristic ( 24 ). Verfahren (10) nach Anspruch 2 oder 3, gekennzeichnet durch folgende Merkmale: – die Konfiguration (22) bestimmt mindestens eine fakultative Geräteeigenschaft (26) und – die fakultative Hardwareinitialisierung (20) betrifft die fakultative Geräteeigenschaft (26). Procedure ( 10 ) according to claim 2 or 3, characterized by the following features: - the configuration ( 22 ) determines at least one optional device property ( 26 ) and - the optional hardware initialization ( 20 ) concerns the optional device characteristic ( 26 ). Verfahren (10) nach Anspruch 4, dadurch gekennzeichnet, dass die fakultative Hardwareinitialisierung (20) auf eine Anforderung (28) durch das Gastsystem erfolgt.Procedure ( 10 ) according to claim 4, characterized in that the optional hardware initialisation ( 20 ) on a request ( 28 ) by the guest system. Verfahren (10) nach Anspruch 5, gekennzeichnet durch folgende Merkmale: – das Gastsystem ist eines von mehreren Gastsystemen und – die Konfiguration (22) berechtigt das Gastsystem zu der Anforderung (28).Procedure ( 10 ) according to claim 5, characterized by the following features: - the guest system is one of several guest systems and - the configuration ( 22 ) authorizes the guest system to the request ( 28 ). Verfahren (10) nach einem der Ansprüche 1 bis 6, gekennzeichnet durch folgende Merkmale: – die Konfiguration (22) liegt einer Kodegenerierung (30) zugrunde und – die Kodegenerierung (30) liefert den Hypervisor (12).Procedure ( 10 ) according to one of claims 1 to 6, characterized by the following features: - the configuration ( 22 ) is a code generation ( 30 ) and - code generation ( 30 ) returns the hypervisor ( 12 ). Computerprogramm, welches eingerichtet ist, das Verfahren (10) nach einem der Ansprüche 1 bis 7 auszuführen.Computer program, which is set up the procedure ( 10 ) according to one of claims 1 to 7. Maschinenlesbares Speichermedium, auf dem das Computerprogramm nach Anspruch 8 gespeichert ist.Machine-readable storage medium on which the computer program according to claim 8 is stored. Vorrichtung (20), die eingerichtet ist, das Verfahren (10) nach einem der Ansprüche 1 bis 7 auszuführen.Contraption ( 20 ), which is set up, the procedure ( 10 ) according to one of claims 1 to 7.
DE102015209125.2A 2015-05-19 2015-05-19 Method and apparatus for operating a guest through a hypervisor Pending DE102015209125A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102015209125.2A DE102015209125A1 (en) 2015-05-19 2015-05-19 Method and apparatus for operating a guest through a hypervisor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015209125.2A DE102015209125A1 (en) 2015-05-19 2015-05-19 Method and apparatus for operating a guest through a hypervisor

Publications (1)

Publication Number Publication Date
DE102015209125A1 true DE102015209125A1 (en) 2016-11-24

Family

ID=57231348

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015209125.2A Pending DE102015209125A1 (en) 2015-05-19 2015-05-19 Method and apparatus for operating a guest through a hypervisor

Country Status (1)

Country Link
DE (1) DE102015209125A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012205301A1 (en) 2012-03-30 2013-10-02 Bayerische Motoren Werke Aktiengesellschaft Computing architecture for control of processing of electronic data in vehicle, has virtualization layer that is adapted in infotainment and real-time automotive operating systems which are operated in parallel with head unit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012205301A1 (en) 2012-03-30 2013-10-02 Bayerische Motoren Werke Aktiengesellschaft Computing architecture for control of processing of electronic data in vehicle, has virtualization layer that is adapted in infotainment and real-time automotive operating systems which are operated in parallel with head unit

Similar Documents

Publication Publication Date Title
EP2642395B1 (en) Method and apparatus for executing work flow scripts
DE102015002191A1 (en) Security hypervisor function
DE112012005146T5 (en) Method and system for applying a program correction to a virtual image
DE112011105098T5 (en) Virtual BIOS
DE112012004793T5 (en) Method and system for creating a virtual application
EP3355180A1 (en) Method for creating a data backup of a virtualization automation solution, computer program with an implementation of the method and virtualization server operating according to the process
WO2019242971A1 (en) Computing device and method for operating same
DE102019103445A1 (en) Procedure for licensing a tool chain
DE102015211316A1 (en) Method for communication between software components in a motor vehicle
DE102013226700A1 (en) Automotive electronics unit
WO2016162144A1 (en) Management of interfaces in a distributed system
EP2793196B1 (en) Tachograph and on-board unit for a utility vehicle
DE102015209125A1 (en) Method and apparatus for operating a guest through a hypervisor
DE102019004612A1 (en) Method for operating a vehicle with a control device
DE102012217328A1 (en) Method for simulating a control device
DE102014002593A1 (en) Dynamic programmable logic controller
DE102017219241A1 (en) Method and semiconductor circuit for protecting an operating system of a security system of a vehicle
EP2521035B1 (en) Method and assembly for configuring a resource for a virtual run time environment
WO2008046686A1 (en) Method for operating a control device
EP2482148A1 (en) Method for projecting and/or programming a multi-functional component of an industrial automation assembly
DE102015214389A1 (en) Method and device for updating a virtual machine operated on a physical machine under a hypervisor
DE102020200969A1 (en) Method for instantiating at least one execution environment
DE102014209592A1 (en) Method for creating a hypervisor unit and hypervisor unit
DE102015214390A1 (en) Method and apparatus for operating changing guest systems under a hypervisor
DE102014210529A1 (en) Method for operating a control unit

Legal Events

Date Code Title Description
R012 Request for examination validly filed