[go: up one dir, main page]

DE102006028012A1 - Method for operating an application frame and a corresponding database - Google Patents

Method for operating an application frame and a corresponding database Download PDF

Info

Publication number
DE102006028012A1
DE102006028012A1 DE200610028012 DE102006028012A DE102006028012A1 DE 102006028012 A1 DE102006028012 A1 DE 102006028012A1 DE 200610028012 DE200610028012 DE 200610028012 DE 102006028012 A DE102006028012 A DE 102006028012A DE 102006028012 A1 DE102006028012 A1 DE 102006028012A1
Authority
DE
Germany
Prior art keywords
service
objects
application frame
services
proxy
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.)
Withdrawn
Application number
DE200610028012
Other languages
German (de)
Inventor
Gerrit De Boer
Werner Praefcke
Bjoern Hornburg
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 DE200610028012 priority Critical patent/DE102006028012A1/en
Priority to PCT/EP2007/055047 priority patent/WO2007147697A1/en
Priority to EP07729478A priority patent/EP2035927A1/en
Publication of DE102006028012A1 publication Critical patent/DE102006028012A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/445Program loading or initiating
    • G06F9/44594Unloading
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems

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

Bei einem Verfahren zum Betreiben eines Applikationsrahmens (100), der mehrere Bundles verwaltet, wobei ein Bundle anderen Bundles verschiedene Dienste, die durch Dienst-Objekte (1) realisiert werden, anbietet und die Dienste nach Freigabe von Speicherkapazitäten suspendierbar sind, ist zur Verbesserung der Leistungsfähigkeit vorgeschlagen, dass die Dienst-Objekte (1) durch Proxy-Objekte (2) ergänzt werden und dadurch entfernt werden können. Weiterhin wird eine entsprechend ausgebildete Datenbank angegeben.at a method for operating an application frame (100), the Manages multiple bundles, with one bundle different from other bundles Services provided by service objects (1) and the services become suspendable upon the release of storage capacity are proposed to improve performance that the service objects (1) are complemented by proxy objects (2) and thereby be removed. Furthermore, a correspondingly formed database is specified.

Figure 00000001
Figure 00000001

Description

Technisches GebietTechnical area

Die Erfindung betrifft ein Verfahren zum Betreiben eines Applikationsrahmens, der mehrere Bundles verwaltet, wobei ein Bundle anderen Bundles verschiedene Dienste, die durch Dienst-Objekte (1) realisiert werden, anbietet und die Dienste zur Freigabe von Speicherkapazitäten suspendierbar sind sind sowie eine entsprechend ausgebildete Datenbank.The invention relates to a method for operating an application frame, which manages several bundles, wherein a bundle of different bundles different services, which by service objects ( 1 ), and the services for releasing storage capacities are suspendable and a correspondingly formed database.

Stand der TechnikState of the art

Offene Standards für sogenannte Applikationsrahmen gewinnen zunehmend an Bedeutung. Ein Applikationsrahmen stellt eine standardisierte Umgebung für die Verwaltung und Ausführung von Programmen, sogenannte Applikationen, zur Verfügung. Die Applikationen weisen vorgeschriebene Schnittstellen auf, über die der Applikationsrahmen die Applikationen verwaltet und für den Anwender bereitstellt. Der Applikationsrahmen stellt eine Reihe von Dienstfunktionen zur Verfügung, die von den Applikationen genutzt werden können. Zu den Funktionen gehören z.B. Mechanismen zum Konfigurations-, Life Cycle- und Nutzermanagement. Der Applikationsrahmen kann plattformunabhängig sein, d.h. er läuft z.B. in einer Java-Laufzeitumgebung, dynamisch konfigurierbar und um Softwarekomponenten dynamisch erweiterbar. Er kann darüber hinaus mit elektronischen Komponenten kommunizieren, die mit dem System vernetzt sind. Hierbei kann es sich um Java-basierte Komponenten oder um andere Module, die mit dedizierten Treibern angesprochen werden, handeln. Ein offener Applikationsrahmen für den Heim- und Telematikbereich wird derzeit bei der OSGi (Open Service Gateway initiative) standardisiert.Open Standards for so-called application frames are becoming increasingly important. An application frame provides a standardized environment for the management and execution of Programs, so-called applications. The applications have prescribed interfaces over which the application frame manages the applications and provides them to the user. The application frame provides a number of service functions available which can be used by the applications. The functions include e.g. Mechanisms for configuration, life cycle and user management. The application framework may be platform independent, i. it runs e.g. in a Java runtime environment, dynamically configurable, and software components dynamically expandable. He can also use electronic components communicate with the system. It can do this Java-based components or other modules that come with it Dedicated drivers are addressed, act. An open application frame for the Home and Telematics is currently being developed by OSGi (Open Service Gateway initiative) standardized.

Die im folgenden beschriebene Erfindung wird am Beispiel eines solchen OSGi-Systems beschrieben; sie ist allerdings im Zusammenhang mit jedem Applikationsrahmen anwendbar, d.h. sie ist nicht auf Applikationsrahmen nach OSGi festgelegt.The The invention described below is the example of such OSGi system described; However, it is related to everyone Applicable frame applicable, i. it is not on application frame set to OSGi.

Ein OSGi-System ist ein Java Applikationsframework, innerhalb dessen verschiedene einzelne Java-Anwendungen, sogenannte Bundles miteinander in Verbindung stehen und ablaufen. Diese Bundle sind jar-Dateien (Java archive), die einer bestimmten vorgegebenen Form genügen, um sich durch das Framewerk verwalten zu lassen. Zentral ist die Bereitstellung von Schnittstellen, um im Rahmen eines Lifecycle Management festgelegte Zustände einzunehmen. Deren wichtigste sind installed, uninstalled, resolved und active. Die Kommunikation zwischen Bundles geschieht, indem ein Bundle A Dienste (Services) am Framework bzw. Applikationsrahmen anmeldet und ein Bundle B diese vom Framework anfordert und in Anspruch nimmt.One OSGi system is a Java application framework within which various individual Java applications, so-called bundles with each other communicate and expire. These bundles are jar files (Java archive), which meet a certain predetermined form to to be managed by the frame work. Central is the provision of interfaces to be set as part of a lifecycle management conditions take. The most important of these are installed, uninstalled, resolved and active. Communication between bundles happens by a bundle A services (services) on the framework or application framework logs in and a bundle B requests it from the framework and avails it takes.

Üblicherweise wird ein angebotener Dienst direkt bei der Anmeldung des Bundles am Framework angemeldet und bleibt über die gesamte Laufzeit des OSGi-Systems vorhanden. Entsprechend bleibt das Bundle-Objekt, das diesen Dienst bereitstellt, über die gesamte Zeit instanziiert und belegt Speicherplatz (z.B. heap).Usually becomes an offered service directly upon registration of the bundle logged on to the framework and stays the same throughout the life of the OSGi system available. The bundle object remains the same provides this service over instantiates the entire time and occupies space (e.g., heap).

Bei einer Vielzahl angebotener Dienste, die nicht alle zur gleichen Zeit in Anspruch genommen werden, muss dennoch der Speicher für alle Bundles bereitgehalten werden, auch wenn sie aktuell nicht verwendet werden.at a variety of services offered, not all at the same time However, the memory must be kept available for all bundles even if they are not currently used.

Die vom Framework angebotenen Mechanismen, ein Bundle bei Nichtverwendung des Dienstes zu entfernen, so dass sein Speicherplatz freigegeben werden kann, laufen auf eine komplette Deinstallation des Bundles hinaus, die mit einem Abmelden des Dienstes einhergeht.The Mechanisms offered by the framework, a non-use bundle to remove the service so that its free space can be run on a complete uninstallation of the bundle addition, which is accompanied by a deregistration of the service.

Erläuterung der ErfindungExplanation of the invention

Ausgehend von diesem Stand der Technik liegt der Erfindung die Aufgabe zugrunde, ein Verfahren zu schaffen, mit dem ein Großteil der Bundle-Ressourcen vorübergehend freigegeben werden können, um derart über freie Speicherkapazität zu verfügen. Weiterhin soll eine entsprechend ausgebildete Datenbank angegeben werden.outgoing From this prior art, the invention is based on the object to create a process with which much of the bundle resources temporarily can be released so over free storage capacity to dispose of. Furthermore, a suitably trained database is specified become.

Diese Aufgaben werden durch die Merkmale der Ansprüche 1 und 9 gelöst.These Tasks are solved by the features of claims 1 and 9.

Der Kerngedanke der Erfindung besteht darin, dass die verschiedenen Dienste eines Bundles nicht mehr unmittelbar über geeignete Schnittstellen mit anderen Bundles in Verbindung stehen bzw. Daten austauschen, sondern dass ein schlankes Proxy-Objekt dazwischengeschaltet ist. Der Dienst wird in Form dieses Proxy-Objekts am Applikationsrahmen angemeldet. Somit ist der eigentliche Dienst nur über dieses Proxy-Objekt zu erreichen. Das Proxy-Objekt enthält dazu alle Schnittstellen des Dienstes. Darüberhinaus enthält das Proxy-Objekt zum Einen eine Schnittstelle, um den zu verbindenden Dienst in einen Suspend- oder Ruhezustand zu versetzen und um das Dienstobjekt wieder frei zu geben. Zum Anderen enthält es vorzugsweise softwaremäßig ausgestaltete Mechanismen, um den Dienst bei Bedarf wieder herzustellen. Dabei wird vorzugsweise im letzten, abgespeicherten Zustand des Dienstes dieser fortgesetzt. Weiterhin sind an dem Dienst zusätzliche Schnittstellen vorgesehen, die ein Sichern der aktuell relevanten Zustände, sowie ein Wiederherstellen derselben ermöglichen.Of the The core idea of the invention is that the various Services of a bundle no longer directly via suitable interfaces with other bundles in connection or exchange data, but that a slim proxy object is interposed. The service is logged on to the application frame in the form of this proxy object. Thus, the actual service can only be reached via this proxy object. The proxy object contains to all interfaces of the service. In addition contains the proxy object on the one hand an interface to the service to be connected in one Suspend or hibernate and restore the service object again to give free. On the other hand contains it preferably designed by software Mechanisms to restore the service when needed. there is preferably in the last, stored state of the service of this continued. Furthermore, additional interfaces are provided at the service, a backup of the currently relevant states, as well as a restore enable the same.

Das Proxy-Objekt verfügt über die gleichen Schnittstellen wie der zu verbindende Dienst selbst und kann somit anstelle des ursprünglichen Dienstes am Applikationsrahmen angemeldet werden. Weiterhin enthält das Proxy-Objekt eine Bezugnahme oder eine Referenz auf das eigentliche Dienstobjekt.The proxy object has the same Interfaces such as the service to be connected itself and thus can be registered instead of the original service on the application frame. Furthermore, the proxy object contains a reference or a reference to the actual service object.

Soll der Dienst in Anspruch genommen werden, erfolgt in dem Proxy-Objekt zunächst eine Abfrage, ob das entsprechende Dienst-Objekt existiert, wobei eine im Nachfolgenden beschriebene Instanziierung aufgerufen sowie bei vorheriger Suspendierung der ursprüngliche Zustand des Dienstes wieder hergestellt werden kann.Should The service is claimed in the proxy object first a query as to whether the corresponding service object exists, where an instantiation described below is called as well with previous suspension the original state of the service can be restored.

Soll der Dienst suspendiert werden, wird im Proxy-Objekt dessen Status lokal gespeichert. Das Proxy-Objekt versetzt das Dienst-Objekt in den Ruhezustand. Das Proxy-Objekt meldet den Dienst nicht ab sondern hält ihn für das restliche System aufrecht. Dies erfolgt nachdem dessen Status gespeichert wurde. Gegebenenfalls können überflüssige Daten auch gelöscht oder das Dienst-Objekt vollständig entfernt werden.Should the service is suspended, its status is in the proxy object stored locally. The proxy object puts the service object in the resting state. The proxy object does not report the service, but instead Hold him for the remaining system upright. This is done after its status is saved has been. If necessary, unnecessary data also deleted or the service object completely be removed.

Auf die Schnittstellen des Diensts wird dabei ausschließlich über die gleichnamigen Schnittstellen des Proxy-Objekts zugegriffen. Das Dienst-Objekt kann zum Suspendieren des Dienstes und Freigeben der beanspruchten Ressourcen seinen Zustand an das Proxy-Objekt übermitteln, um später wieder hergestellt zu werden.On the interfaces of the service is exclusively via the same-named interfaces of the proxy object. The Service object can be used to suspend the service and share the service claimed resources submit their state to the proxy object, later to be restored.

Der Vorteil der Erfindung besteht darin, dass kein zusätzlicher Festplatten-Speicherplatz benötigt wird, um momentan nicht notwendige Dienste beispielsweise in einem Swap-Vorgang auszulagern. Weiterhin wird der Applikationsrahmen nicht mit dem Aufrechterhalten oder Bedienen von momentan nicht benötigten Diensten belastet, so dass eine Verarbeitungs- und/oder Übertragungskapazität nicht unnötig beansprucht wird.Of the Advantage of the invention is that no additional Hard disk space is needed to outsource currently unnecessary services, for example, in a swap process. Farther the application frame is not with the maintenance or Operating from currently not needed Services, so that a processing and / or transmission capacity is not unnecessarily stressed becomes.

Eine entsprechend ausgebildete Datenbank bzw. ein mit einem entsprechenden Softwareprogramm versehener Computer verfügt nach Anspruch 9 zur Ausführung des Verfahrens über eine Einrichtung, mit der vorstehend beschriebene Proxy-Objekte erzeugt werden können, um als Schnittstelle zwischen dem Applikationsrahmen und verschiedenen Diensten eines Bundles zu dienen. Dabei können die Proxy-Objekte entweder hard- und/oder softwaremäßig in der Datenbank bzw. dem Computer implementiert werden.A appropriately trained database or one with a corresponding Software program provided computer has according to claim 9 for the execution of Procedure over a device with the proxy objects described above can be generated as an interface between the application framework and various services to serve a bundle. It can the proxy objects either hardware and / or software in the Database or computer.

Um das Wiederaufrufen eines suspendierten Diensts zu beschleunigen bzw. wenn der Dienst suspendiert und wiederhergestellt wird und das Dienst-Objekt entfernt und wiederum instanziiert/erzeugt wird, kann das zugehörige Dienst-Objekt entsprechend dem Anspruch 2 in einem Thread niedriger Priorität instanziiert werden. Wird das Instanziieren nicht bereits vorbereitet kann das Wiederherstellen eines suspendierten Diensts leicht zu Verzögerungen führen, insbesondere wenn dies nach einer Eingabe eines Nutzers erfolgt. Dem kann folgendermaßen begegnet werden: Beispielsweise beim Aufrufen eines Menüs ist es wahrscheinlich, dass einer der Menüpunkte kurz nachfolgend aufgerufen wird, so dass die entsprechenden Dienste der einzelnen Menüpunkte darauf vorbereitet sein sollten, wieder hergestellt zu werden. Hierzu kann im Hintergrund ein Thread niedriger Priorität gestartet werden, um die Instanziierung des Dienst-Objekts vorzubereiten. Im Optimalfall, beispielsweise wenn der entsprechende Menüpunkt aufgerufen wird, ist das entsprechende Dienst-Objekt bereits wieder hergestellt, so dass es übergangslos ablaufen kann. Ein Nutzer hat in diesem Fall von einer vorübergehenden Suspendierung des Dienstes nichts bemerkt.Around speed up the recall of a suspended service or if the service is suspended and restored and the service object is removed and again instantiated / generated, can the associated Service object according to claim 2 in a lower thread priority to be instantiated. If instantiation is not already prepared Restoring a suspended service can be easy too delays to lead, especially if this is done after a user input. This can be done as follows For example, when calling a menu it is likely that one of the menu items will be called shortly below so that the corresponding services of each menu item are prepared for it should be restored. This can be done in the background Low priority thread started to prepare for the instantiation of the service object. in the Ideal case, for example when the corresponding menu item is called is the corresponding service object is already restored, making it seamless can expire. A user in this case has a temporary Suspension of the service noticed nothing.

Falls das entsprechende Dienst-Objekt noch nicht wieder hergestellt worden sein sollte, kann entsprechend dem Anspruch 3 die Priorität des zugehörigen Threads heraufgesetzt werden, um das Wiederherstellen des Dienst-Objekts zu beschleunigen.If the corresponding service object has not yet been restored should be, according to claim 3, the priority of the associated thread to increase the recovery of the service object to accelerate.

Vorzugsweise wird eine aktuelle Ressourcenbelegung, wie im Anspruch 4 gekennzeichnet, durch einen sogenannten Manager des Applikationsrahmens überwacht. Dieser identifiziert anhand der aktuellen Ressourcenbelegung einen Bedarf an zusätzlichem Hauptspeicher. Gleichzeitig werden diejenigen Dienste, die zwar angemeldet aber selten und/oder momentan überhaupt nicht benutzt werden, identifiziert. Bei diesen Diensten wird nachfolgend in den zugehörigen Proxy-Objekten das Suspendieren der Dienste veranlasst. Mit dem Manager kann auch eine nahe bevorstehende Verwendung eines suspendierten Dienstes vorausberechnet werden, beispielsweise wenn ein entsprechendes Menü aufgerufen wird. Somit kann die Wiederherstellung der zugehörigen Dienstobjekte vorab ausgelöst werden. Ebenso kann der Manager eine persistente Speicherung von Dienstzuständen realisieren. Somit kann ein Dienstzustand über einen Applikationsrahmen-Neustart hinaus erhalten werden. Hierzu ist lediglich eine Erweiterung der Schnittstelle im Proxy-Objekt notwendig, mit der ein Austausch des Zustands zwischen dem Proxy-Objekt und dem Manager möglich ist. Der Manager ist hierfür hard- und/oder softwaremäßig in einer Datenbank bzw. einem Applikationsrahmen implementiert.Preferably is a current resource allocation, as characterized in claim 4, by monitors a so-called manager of the application framework. This identifies one based on the current resource allocation Need for additional Main memory. At the same time, those services that are indeed but rarely and / or not used at all, identified. These services are listed below in the associated proxy objects Suspend the services. With the manager can also a anticipating the imminent use of a suspended service for example, when a corresponding menu is called becomes. Thus, the restoration of the associated service objects can be triggered in advance. As well the manager can realize a persistent storage of service states. Thus, a service state can be over get an application frame restart. For this is just an extension of the interface in the proxy object necessary, with an exchange of state between the proxy object and the manager possible is. The manager is for this hardware and / or software in one Database or an application framework implemented.

Es versteht sich, dass im Rahmen der Erfindung beliebige Applikationsrahmen erfindungsgemäß ausgestaltet sein können. Bevorzugt sind dies jedoch, wie im Anspruch 5 beschrieben, Applikationsrahmen nach dem OSGi-Standard, der bereits vorstehend beschrieben wurde.It It is understood that within the scope of the invention, any application frame designed according to the invention could be. However, these are preferably, as described in claim 5, application frame according to the OSGi standard already described above.

Zur Beschleunigung des Hochfahrens eines Computersystems, das mit einem entsprechenden Applikationsrahmen versehen ist, ist im Anspruch 6 vorgeschlagen, dass beim Starten des Systems die Proxy-Objekte instanziiert werden anstelle der Dienst-Objekte. Dies erfordert wesentlich weniger Rechen- und Speicherkapazität. Auch werden die Proxy-Objekte als Diensteanbieter im System angemeldet. Das Dienst-Objekt selbst bzw. der Dienst befindet sich im sogenannten Suspend-Zustand und wird erst aufgerufen, wenn über die Schnittstelle Proxy-Objekt eine Anforderung erfolgt. Dabei ist es allerdings nicht zu vermeiden, dass bei einem beliebigen Diensteaufruf eine Verzögerung auftreten kann, beispielsweise weil der Dienst erst instanziiert werden muss.to Accelerating the startup of a computer system with a appropriate application frame is provided is in the claim 6 suggested that when starting the system the proxy objects be instantiated instead of the service objects. This requires significantly less computation and storage capacity. Also, the proxy objects are registered as service providers in the system. The service object itself or the service is located in the so-called Suspend state and is called only when through the interface proxy object a request is made. However, it is unavoidable there will be a delay on any service call can, for example, because the service must first be instantiated.

Hierzu kann, wie im Anspruch 7 angegeben, der zugehöriger Thread des Dienst-Objekts bereits im Verlauf des Hochfahrens des Systems, beispielsweise eines OSGi-Systems, beim Start des Bundles erfolgen. Dies geschieht wiederum mit niedriger Priorität, um den weiteren Startvorgang möglichst wenig zu beeinflussen.For this can, as indicated in claim 7, the associated thread of the service object already during system startup, for example one OSGi system, done at the start of the bundle. This happens again with low priority, as far as possible for the further starting process little to influence.

Alternativ kann entsprechend dem Anspruch 8 das Starten des Threads erst nachdem der Applikationsrahmen gestartet wurde und alle Proxy-Objekte mit ihren Diensten am Applikationsrahmen angemeldet sind, vorgenommen werden.alternative can according to claim 8, the starting of the thread only after the application frame was started and all proxy objects with their services are logged on the application frame made become.

Kurzbeschreibung der ZeichnungBrief description of the drawing

Eine Ausführungsform der Erfindung wird nachstehend anhand der Zeichnung näher erläutert. Es zeigt in rein schematischer Darstellung:A embodiment The invention is explained below with reference to the drawing. It shows in a purely schematic representation:

1 ein Blockschaltbild eines Applikationsrahmens. 1 a block diagram of an application frame.

In 1 ist ein Applikationsrahmen 100 schematisch dargestellt. Über entsprechend konfigurierte Schnittstellen, wie durch die Verbindungslinien angedeutet, steht der Applikationsrahmen 100 mit mehreren Diensten, realisiert durch die Dienst-Objekte 1, die jeweils zu einem oder verschiedenen Bundles zugehörig sind, in Verbindung. Diese Dienst-Objekte 1 erfordern üblicherweise eine große Rechen- und Speicherkapazität, wenn sie im aktivierten Zustand sind. Zur Verringerung der benötigten Rechenkapazität können nicht benötige Dienst-Objekte 1 auch deaktiviert oder suspendiert werden.In 1 is an application framework 100 shown schematically. By appropriately configured interfaces, as indicated by the connecting lines, the application frame is 100 with several services realized by the service objects 1 , each associated with one or more bundles. These service objects 1 typically require a large amount of computational and memory capacity when they are in the activated state. To reduce the required computing capacity unnecessary service objects 1 also be disabled or suspended.

Erfindungsgemäß wird nun zwischen die Dienst-Objekte 1 und den Applikationsrahmen 100 jeweils ein Proxy-Objekt 2 dazwischen geschaltet, das über eine geeignete Schnittstelle mit den Dienst-Objekten 2 in Verbindung steht. Der Dienst wird über das Proxy-Objekt 2 am Applikationsrahmen angemeldet. Dabei können die Dienst-Objekte 1 suspendiert sein und werden in dem Fall erst instanziiert wenn über das zugehörige Proxy-Objekt 2 ein entsprechender Aufruf erfolgt. Da die Proxy-Objekte 2 wesentlich schlanker sind, bzw. weniger Speicherkapazität beanspruchen, ist die Rechenkapazität des Gesamtsystems bzw. einer entsprechend ausgebildeten Datenbank oder eines Computers wesentlich weniger belastet. Zum Wiederherstellen des Dienstes 1 bzw. eines Dienst-Objekts sind in den Proxy-Objekten 2 entsprechende Mechanismen hard- und/oder softwaremäßig implementiert.According to the invention is now between the service objects 1 and the application frame 100 one proxy object each 2 interposed, via an appropriate interface with the service objects 2 communicates. The service is over the proxy object 2 logged on to the application frame. In doing so, the service objects 1 be suspended and are instantiated in the case only if the associated proxy object 2 a corresponding call is made. Because the proxy objects 2 are significantly slimmer, or claim less storage capacity, the computing capacity of the entire system or a correspondingly formed database or a computer is much less burdened. To restore the service 1 or a service object are in the proxy objects 2 corresponding mechanisms hardware and / or software implemented.

Zusätzlich muss ein Manager 3 vorgesehen sein, der z.B. in den Applikationsrahmern 100 integriert ist, um die Ressourcenbelegung zu überwachen und insbesondere um nicht benötigte Dienste 1 zu suspendieren.In addition, a manager needs 3 be provided, for example, in the application frames 100 is integrated to monitor resource usage and, in particular, unneeded services 1 to suspend.

Claims (9)

Verfahren zum Betreiben eines Applikationsrahmens (100), der mehrere Bundles verwaltet, wobei ein Bundle anderen Bundles verschiedene Dienste, die durch Dienst-Objekte (1) realisiert werden, anbietet und die Dienste zur Freigabe von Speicherkapazitäten suspendierbar sind, dadurch gekennzeichnet, dass die Dienst-Objekte (1) durch Proxy-Objekte (2) ergänzt werden und dadurch entfernt werden können.Method for operating an application frame ( 100 ), which manages multiple bundles, one bundle of other bundles providing different services through service objects ( 1 ), and the services for releasing storage capacities are suspendable, characterized in that the service objects ( 1 ) by proxy objects ( 2 ) and can be removed. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass zum Wiederherstellen eines suspendierten oder noch nicht vorhandenen Dienstes das Dienst-Objekt (1) in einem Thread niedriger Priorität instanziiert wird.A method according to claim 1, characterized in that for restoring a suspended or non-existent service the service object ( 1 ) is instantiated in a low priority thread. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die Priorität des Threads heraufgesetzt wird.Method according to claim 2, characterized in that that the priority of the thread is raised. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass ein Manager (3) eine aktuelle Ressourcenbelegung überwacht.Method according to one of claims 1 to 3, characterized in that a manager ( 3 ) monitors an up-to-date resource allocation. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass der Applikationsrahmen (100) in einem OSGi-System betrieben wird.Method according to one of claims 1 to 4, characterized in that the application frame ( 100 ) is operated in an OSGi system. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass beim Starten eines Systems die Proxy-Objekte (2) instanziiert werden.Method according to one of claims 1 to 5, characterized in that when starting a system, the proxy objects ( 2 ) to be instantiated. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass ein Thread zur Instanziierung eines Dienst-Objektes (2) im Verlauf des Startens eines Systems gestartet wird.A method according to claim 6, characterized in that a thread for instantiating a service object ( 2 ) is started in the course of starting a system. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass der Thread erst nach dem Anmelden aller Proxy-Objekte (2) am Applikationsrahmen (100) gestartet wird.A method according to claim 6, characterized in that the thread only after the login of all proxy objects ( 2 ) on the application frame ( 100 ) is started. Datenbank mit einem Applikationsrahmen (100), der mehrere Bundles verwaltet, wobei ein Bundle anderen Bundles verschiedene Dienste, die durch Dienst-Objekte (1) realisiert werden, anbietet und die Dienste zur Freigabe von Speicherkapazitäten suspendierbar sind, dadurch gekennzeichnet, dass die Dienst-Objekte (1) durch Proxy-Objekte (2) ergänzbar und dadurch entfernbar sind.Database with an application frame ( 100 ), which manages multiple bundles, one bundle of other bundles providing different services through service objects ( 1 ), and the services for releasing storage capacities are suspendable, characterized in that the service objects ( 1 ) by proxy objects ( 2 ) and thereby removable.
DE200610028012 2006-06-19 2006-06-19 Method for operating an application frame and a corresponding database Withdrawn DE102006028012A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE200610028012 DE102006028012A1 (en) 2006-06-19 2006-06-19 Method for operating an application frame and a corresponding database
PCT/EP2007/055047 WO2007147697A1 (en) 2006-06-19 2007-05-24 Method for the operation of an application framework, and corresponding database
EP07729478A EP2035927A1 (en) 2006-06-19 2007-05-24 Method for the operation of an application framework, and corresponding database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200610028012 DE102006028012A1 (en) 2006-06-19 2006-06-19 Method for operating an application frame and a corresponding database

Publications (1)

Publication Number Publication Date
DE102006028012A1 true DE102006028012A1 (en) 2007-12-20

Family

ID=38268708

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200610028012 Withdrawn DE102006028012A1 (en) 2006-06-19 2006-06-19 Method for operating an application frame and a corresponding database

Country Status (3)

Country Link
EP (1) EP2035927A1 (en)
DE (1) DE102006028012A1 (en)
WO (1) WO2007147697A1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7761571B2 (en) * 2003-11-25 2010-07-20 Panasonic Corporation SIP service for home network device and service mobility
US8151281B2 (en) * 2004-01-09 2012-04-03 International Business Machines Corporation Method and system of mapping at least one web service to at least one OSGi service

Also Published As

Publication number Publication date
EP2035927A1 (en) 2009-03-18
WO2007147697A1 (en) 2007-12-27

Similar Documents

Publication Publication Date Title
EP0635792B1 (en) Coordination method for parallel access to resource configurations by a plurality of processors
EP0849666B1 (en) Method for instantiating class versions
DE102012009482B4 (en) Functionally expandable vehicle control unit and method for supplementing the functionality of a vehicle control unit
DE68926345T2 (en) DATA PROCESSING NETWORK
EP0525432A2 (en) Method of changing system configuration data in a telecommunications exchange system
WO2016141998A1 (en) Device and method for providing a digital representation of a physical entity
EP0807883A2 (en) Communications system with means for exchanging software processes
DE102004005128B3 (en) Operating method for parallel computers responds to computer failure for re-assignment of software modules handled by failed computers to remaining computers in accordance with their priority weightings
DE10254410A1 (en) System and method for loading high availability firmware
DE102009004726A1 (en) Systems and methods for tracking instruction pointers and data access
DE19803697A1 (en) Software update
EP1287433A2 (en) Agent system for mobile agents, computer network and method for downloading an agent system from a host computer to a client computer of a computer network
DE102010011652A1 (en) Application platform and method for operating a data processing device with such
DE10332360B4 (en) Method and system for managing and transmitting events from a technical system to be monitored in a web-based client-server environment
DE102004030781A1 (en) SCADA system for process monitoring and data handling has client server arrangement providing low data transmission loads
WO1990002996A1 (en) Operating programme for a data processor
DE102006028012A1 (en) Method for operating an application frame and a corresponding database
EP3441919A1 (en) Method for exchanging data between engineering tools of an engineering system and engineering system for carrying out the method
WO2015014955A1 (en) Method and system for synchronising data
DE60037972T2 (en) Method and device for offering resources in an Internet device
DE102019211908A1 (en) Method and apparatus for distributing an application
EP0825525B1 (en) Method for supporting the creation of objects
EP1461699A2 (en) Method and device for managing resources in a computer system
DE102005053275B4 (en) Highly available computer network system
DE102019000493A1 (en) Method for updating a respective software of several control units of a vehicle

Legal Events

Date Code Title Description
R005 Application deemed withdrawn due to failure to request examination

Effective date: 20130620