WO2021089293A1 - Procédé et dispositif de fourniture de logiciel d'application - Google Patents

Procédé et dispositif de fourniture de logiciel d'application Download PDF

Info

Publication number
WO2021089293A1
WO2021089293A1 PCT/EP2020/079057 EP2020079057W WO2021089293A1 WO 2021089293 A1 WO2021089293 A1 WO 2021089293A1 EP 2020079057 W EP2020079057 W EP 2020079057W WO 2021089293 A1 WO2021089293 A1 WO 2021089293A1
Authority
WO
WIPO (PCT)
Prior art keywords
application software
container
file
program
specific
Prior art date
Application number
PCT/EP2020/079057
Other languages
German (de)
English (en)
Inventor
Udo Schulz
Mouham Tanimou
Joshua-Niclas OERGELE
Christian Kahr
Tobias Krug
Micha Muenzenmay
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
Publication of WO2021089293A1 publication Critical patent/WO2021089293A1/fr

Links

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Definitions

  • the present invention relates to a method for providing application software.
  • the present invention also relates to a corresponding device, a corresponding computer program and a corresponding storage medium.
  • SW software
  • OTA over-the-air
  • VCG vehicle connectivity gateway
  • vehicle-internal control units can be expanded in this way by features that use existing sensors and actuators for new applications.
  • Corresponding applications can be carried out by the manufacturer or original equipment manufacturer (OEM) of an agricultural machine - for example by means of a development kit - and offered on a digital sales platform in the cloud.
  • Conceivable extensions are, for example, advanced telemetry or special agricultural functions such as targeted weed control.
  • DE102015203766A1 discloses a subsystem for a vehicle with a device management client connected via an air interface to a device management server of the backend for exchanging device, vehicle and diagnostic and software update information, one connected via the air interface to a download server of the backend Download client for downloading a software update from the backend into the vehicle, software update clients connected to the download client for applying the software update and a vehicle update client connected to the download client and the software update clients for coordinating the software update.
  • the container or operating system virtualization which has been common in data center operations for a long time, has recently increasingly found its way into the practice of embedded systems.
  • This method makes it possible to operate several instances of an operating system as so-called guests in isolation from one another on a host system.
  • the host can provide a complete runtime environment to each application encapsulated within such a container, which may include, for example, dynamic libraries of the programming language used by the respective developer, such as Java, C or Python.
  • this "lightweight" form of virtualization imposes some restrictions on the guests, but has the advantage that all containers share the core of the native operating system - typically Linux, BSD, Solaris or another Unix-like system use. The use of containers thus spares the scarce resources of embedded systems. Disclosure of the invention
  • the invention provides a method for providing application software, a corresponding device, a corresponding computer program and a corresponding storage medium according to the independent claims.
  • One advantage of this solution is the possibility of individual generation as well as starting, executing and terminating a container during runtime on a control unit (electronic control unit, ECU).
  • a so-called manifest describing the application software, an executable program file (utility software as opposed to software that represents the infrastructure) and a container framework - possibly with inheritance mechanisms - are used.
  • the creation of the manifest and the data to be containerized can be carried out by the developer with the help of tools.
  • the latter opens up a large number of configuration options by adapting the manifest; For example, he can determine whether a feature also wants to store data at runtime in a subdirectory of the landing zone.
  • container technology - think of the open source systems Docker or LXC -, platform Structure and runtime behavior, such as the restriction or allocation of resources, CPU, RAM and I / O, are described in the manifest, which may be written in a markup language such as XML, for example.
  • One advantage of differentiating between generic and specific containers is that the amount of data is reduced when downloading (download), since a template is already available on the ECU that already contains the most important libraries, and therefore only changes need to be completed or updated.
  • the containers can also be created in a test environment in which the function of the application software can be checked. This mechanism therefore improves the
  • the advantage here is that the software environment of the application can be maintained without replacing it yourself.
  • FIG. 1 the flow diagram of a method according to a first one
  • FIG. 2 schematically shows a shell model on which the method is based.
  • FIG. 3 shows the block diagram of a system according to a second embodiment.
  • FIG. 1 illustrates the basic steps (1-10) of a method according to the invention, which will now be explained using the example of the software platform (11) according to FIG.
  • the user and programming interfaces and metadata such as IDs, resource requirements, target market or server location required for the planned feature are specified (process 1 - Figure 1).
  • a program framework (skeleton 15 - FIG. 2) with a corresponding application programming interface (API) is generated automatically (process 2 - FIG. 1), which serves as a template for the developer in his development environment.
  • the developer can, for example, deliver a Simulink model, corresponding source or object code or a complete container as a work result. While the model and source code allow far-reaching conclusions to be drawn about the functionality of the application software (16 - Figure 2), reverse engineering of object code or container proves to be comparatively time-consuming, so that corresponding configurations offer the developer's intellectual property a certain amount of protection.
  • This can be a machine language binary file, a bytecode file that can be executed directly or by a runtime system, or a text file that can be executed by interpreted by an operating system shell.
  • the interfaces (A1 - Figure 2) required for connection to any abstraction layers are also generated and added to the program file.
  • the executable program file as well as the manifest and data are then packaged into a ZIP or other archive file (process 4 - Figure 1).
  • the “Dockerfolder” folder contains a text file called “Dockerfile” that describes the required runtime environment, for example for the Java programming language.
  • Another folder, named "app” for example, contains the executable program file.
  • the archive file generated in this way is stored in the cloud repository (process 5 - Figure 1). Further steps to ensure software quality can take place there, e.g. B. Cloud-based testing.
  • the archive file is loaded from the cloud into the landing zone of the target control device or other target system (18 - Figure 2) (process 6 - Figure 1).
  • process 7 - Figure 1 Either the package is automatically installed immediately after it has been saved in the landing zone, or the user has to authorize the installation manually.
  • the installation carried out online on the control unit is as follows: After unpacking the entire archive file and parsing the manifest, feature-specific landing zones are created in order to separate different applications (16 - Figure 1) 2) without ensuring mutual access or mutual visibility.
  • the description contained in the "Dockerfile” file for example, is parsed.
  • An image of the generic container (12 - FIG. 2) is then created; an object-oriented container technology with its own inheritance mechanisms is preferably used for this purpose. If the generic container (12 - FIG. 2) is adapted afterwards, all of them take over in this way derived specific container (13 - Figure 2) this change in a corresponding manner.
  • the specific container (13 - Figure 2) is filled and adapted based on the parsed description. Any required libraries and the content of the “app” folder with the executable program file are transferred to the container, while the values of the manifest are transferred to the registry in order to save them persistently.
  • a message broker such as MQTT or DDS sends a signal to a life cycle management (LCM) of the application software (16 - Figure 2) responsible component sent.
  • LCM life cycle management
  • This method (1-10) can be implemented, for example, in software or hardware or in a mixed form of software and hardware, partly in the cloud (20) and partly in a control device, as the schematic illustration in FIG. 3 illustrates.

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

L'invention concerne un procédé (1 - 10) de fourniture de logiciel d'application (16), qui présente les caractéristiques suivantes : - une description (21) du logiciel d'application (16) est préparée (1), - un squelette de programme (15) est généré (2) à l'aide de la description (21), le logiciel d'application (16) est fusionné (3) avec le squelette de programme (15) au moyen d'enveloppeurs (14) pour former un fichier de programme, et - un manifeste est achevé à l'aide de la description (21) et mis en paquets (4) avec le fichier de programme pour former un fichier d'archive (22) de telle sorte que, sur un système d'exploitation prédéfini (17), un conteneur (13) spécifique au logiciel d'application (16) peut être extrait du fichier d'archive (22).
PCT/EP2020/079057 2019-11-06 2020-10-15 Procédé et dispositif de fourniture de logiciel d'application WO2021089293A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102019217058.7 2019-11-06
DE102019217058.7A DE102019217058A1 (de) 2019-11-06 2019-11-06 Verfahren und Vorrichtung zum Bereitstellen einer Anwendungssoftware

Publications (1)

Publication Number Publication Date
WO2021089293A1 true WO2021089293A1 (fr) 2021-05-14

Family

ID=72944136

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2020/079057 WO2021089293A1 (fr) 2019-11-06 2020-10-15 Procédé et dispositif de fourniture de logiciel d'application

Country Status (2)

Country Link
DE (1) DE102019217058A1 (fr)
WO (1) WO2021089293A1 (fr)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160330277A1 (en) * 2015-05-06 2016-11-10 International Business Machines Corporation Container migration and provisioning
US20190324786A1 (en) * 2018-04-23 2019-10-24 Hewlett Packard Enterprise Development Lp Containerized application deployment

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10387750B2 (en) * 2017-08-08 2019-08-20 Red Hat, Inc. Supporting manifest list for multi-platform application container images

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160330277A1 (en) * 2015-05-06 2016-11-10 International Business Machines Corporation Container migration and provisioning
US20190324786A1 (en) * 2018-04-23 2019-10-24 Hewlett Packard Enterprise Development Lp Containerized application deployment

Also Published As

Publication number Publication date
DE102019217058A1 (de) 2021-05-06

Similar Documents

Publication Publication Date Title
DE102005026040B4 (de) Parametrierung eines Simulations-Arbeitsmodells
DE102015112040A1 (de) Verfahren und System zur Firmware-Aktualisierung einer Steuereinrichtung zur Prozesssteuerung
DE102010011658A1 (de) Applikationsplattform und Verfahren zum Betrieb einer Datenverarbeitungseinrichtung mit einer solchen
DE102015203766A1 (de) Teilsystem für ein Fahrzeug und entsprechendes Fahrzeug
DE102016119320A1 (de) Verfahren zum Konfigurieren eines realen oder virtuellen elektronischen Steuergerätes
EP2332042A1 (fr) Procédé et dispositif pour remplacer un composant d'un système informatique
DE202015101904U1 (de) Computersystem und Speichervorrichtung zum Aktualisieren von Firmwarekomponenten
EP3285165A1 (fr) Modification et simulation du logiciel d'exploitation d'un systeme technique
EP3217236A1 (fr) Procédé et système de génération d'un programme de commande sous forme d'une application mobile exécutable sur un appareil mobile
DE112020002785T5 (de) Verfahren für ein virtualisierungssystem auf container-grundlage
WO2019211122A1 (fr) Cadre de développement de caractéristique et cadre d'intégration de caractéristique servant à implémenter des caractéristiques fonctionnelles physiques dans un appareil cible
DE102010039021B4 (de) Verfahren zur Rekonfiguration von Softwareparametern in einem Mikrocontroller sowie Mikrocontroller und Steuergerät
WO2021089293A1 (fr) Procédé et dispositif de fourniture de logiciel d'application
DE102016201769A1 (de) Verfahren zum Aktualisieren von Software eines Steuergerätes, vorzugsweise für ein Kraftfahrzeug
WO2021209192A1 (fr) Procédé et dispositif de contrôle de la compatibilité entre un logiciel d'application et une machine de travail mobile
DE102017215044B4 (de) Verfahren zum Wechseln auf eine Firmware-Version auf einem elektrischen Steuergerät für ein Antriebssystem, elektrisches Steuergerät und Antriebssystem
DE102021202133A1 (de) Verfahren, Vorrichtung und Konfigurationsumgebung zum Erzeugen von Konfigurationsdaten für ein Steuergerät
EP3285162A1 (fr) Procédé de projection d'un projet et système d'exécution du procédé
DE102004012315A1 (de) Verfahren zur automatischen Anpassung von Software
WO2021089296A1 (fr) Procédé d'échange de messages par l'intermédiaire d'un logiciel d'application
WO2005003935A1 (fr) Systeme et procede d'octroi de permis d'exploitation pour des programmes logiciels necessitant un permis d'exploitation
DE102020213809A1 (de) Verfahren zum Betreiben eines Steuergeräts beim Testen einer Software des Steuergeräts und Verfahren zum Betreiben eines Testcomputers beim Testen einer Software eines Steuergeräts
WO2021089295A1 (fr) Procédé et dispositif de gestion d'un composant logiciel pour un système déterminé
WO2021089297A1 (fr) Procédé de commande d'une machine
DE102019217044A1 (de) System zum Steuern einer Maschine

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20793323

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20793323

Country of ref document: EP

Kind code of ref document: A1