DE102008004658A1 - Method for the central control of processes in expandable medical platforms - Google Patents
Method for the central control of processes in expandable medical platforms Download PDFInfo
- Publication number
- DE102008004658A1 DE102008004658A1 DE102008004658A DE102008004658A DE102008004658A1 DE 102008004658 A1 DE102008004658 A1 DE 102008004658A1 DE 102008004658 A DE102008004658 A DE 102008004658A DE 102008004658 A DE102008004658 A DE 102008004658A DE 102008004658 A1 DE102008004658 A1 DE 102008004658A1
- Authority
- DE
- Germany
- Prior art keywords
- order
- resources
- processes
- queue
- platform
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 318
- 230000008569 process Effects 0.000 title claims abstract description 277
- 230000006399 behavior Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 description 13
- 238000003860 storage Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000003325 tomography Methods 0.000 description 4
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000002560 therapeutic procedure Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 208000004434 Calcinosis Diseases 0.000 description 2
- 208000006011 Stroke Diseases 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 241000270295 Serpentes Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000000481 breast Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004195 computer-aided diagnosis Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000029305 taxis Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000008733 trauma Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
Abstract
Das Verfahren verwendet eine zentralen Instanz (5) zum Empfangen aller Aufträge (1) innerhalb der Plattform. Eine Meta-Schnittstelle (30) regelt die Zuordnung von Ressourcen (20) zu Aufträgen (1). Ferner wird jeder Auftrag (1) durch mindestens einen Prozessbearbeiter (40) ausgeführt. Dadurch wird die dead-lock freie Verwendung von Ressourcen (20) innerhlab der Plattform sichergestellt. Darüber hinaus erlaubt die Erfindung ein kontrolliertes Anhalten aktiver Prozessbearbeiter (40) und damit ein Unterbrechen laufender Prozesse (4).The method uses a central entity (5) to receive all orders (1) within the platform. A meta-interface (30) controls the allocation of resources (20) to jobs (1). Furthermore, each job (1) is executed by at least one process handler (40). This ensures the dead-lock free use of resources (20) within the platform. In addition, the invention allows a controlled halt active process worker (40) and thus interrupting ongoing processes (4).
Description
Gegenstand der ErfindungSubject of the invention
Die Erfindung bezieht sich auf ein Verfahren zur zentralen Kontrolle von Ressourcen in erweiterbaren medizinischen Plattformen.The The invention relates to a method for central control resources in extensible medical platforms.
Medizinische erweiterbare Plattformen umfassen in der Regel komplexe Hardware zur Untersuchung von Patienten, zentrale und verteilte Festplatten zur Speicherung von großen Datenmengen. Erweiterbare medizinische Plattformen können sowohl der Verwaltung von medizinischen Patientendaten dienen, wie auch der Organisation von Klinikabläufen, der Therapieplanung, der Klinikverwaltung und der gleichen, wie sie dem Fachmann bekannt sind. Medizinische erweiterbare Plattformen umfassen ferner eine Vielzahl von Knoten bzw. Clients, die auf gespeicherte Daten zugreifen können, Prozesse anstoßen können, und evtl. Zugriff auf komplexe Hardware einer medizinischen Modalität haben.medical Expandable platforms typically include complex hardware for examining patients, centralized and distributed hard drives for storing large Amounts of data. Extensible medical platforms can both the Management of medical patient data, as well as the Organization of hospital procedures, the therapy planning, the clinic administration and the same as they are known in the art. Medical extensible platforms further comprise a plurality of nodes or clients stored on Can access data, Trigger processes can, and possibly have access to complex hardware of a medical modality.
Moderne medizinische Modalitäten, wie z. B. die Magnetresonanz-Tomographie (MR-Tomographie) ist gekennzeichnet durch die Verwendung komplexer Hardware-Geräte, z. B. eines MR-Scanners sowie zahlreiche aufwendige Prozesse, die z. B. von der Erfassung der Rohdaten über die Rekonstruktion von Bildern des Inneren des Körpers eines Patienten bis hin zu Methoden zur Diagnose-Erstellung bzw. Diagnose-Unterstützung reichen.modern medical modalities, such as As the magnetic resonance tomography (MR tomography) is characterized by using complex hardware devices, e.g. B. an MR scanner and numerous complex processes that z. B. from the acquisition of raw data on the Reconstruction of images of the inside of a patient's body all the way up to methods for diagnostic preparation or diagnostic support range.
In einer modernen medizinischen Modalität verfügt der Scanner über ein Echtzeit-Betriebssystem. Ein solches Echtzeit-Betriebssystem stellt sicher, dass zu jedem Zeitpunkt der Zustand des Scanners determiniert ist. Das bedeutet, das Verhalten der Prozesse in einem Echtzeitbetriebssystem, so ge nannter Echtzeitprozesse, ist zu jedem Zeitpunkt bekannt. Neben Echtzeitprozessen, wie z. B. die Erfassung von Rohdaten bei der Untersuchung eines Patienten, gibt es eine Vielzahl von Prozessen im Zusammenhang mit einer medizinischen Modalität, die nicht durch ein Echtzeitbetriebssystem gesteuert werden und gewissermaßen im Hintergrund laufen. Das bedeutet, sie werden im Idealfall vom Benutzer nicht bemerkt. Zu diesen Prozessen gehört die Rekonstruktion von Bildern aus einem 3D-Datensatz oder beispielsweise die Berechnung von Mikrokalzifikationen der weiblichen Brust zur Diagnose-Unterstützung bzw. der Therapieplanung.In The scanner has a modern medical modality Real-time operating system. Such a real-time operating system ensures that too at any time the condition of the scanner is determined. That means, the behavior of the processes in a real-time operating system, so-called Real-time processes are known at all times. In addition to real-time processes, such as B. the collection of raw data in the investigation of a Patients, there are a variety of processes related to a medical modality, which can not be controlled by a real-time operating system and so to speak running in the background. That means they will ideally by the User did not notice. These processes include the reconstruction of images from a 3D record or For example, the calculation of micro-calcifications of the female Breast for diagnosis support or therapy planning.
Im Gegensatz zu den Echtzeitprozessen, die etwa auf einem Scanner ablaufen, sind Prozesse bisher dadurch gekennzeichnet, dass das Verhalten der Prozesse nicht deterministisch ist. Das bedeutet in einer erweiterbaren medizinischen Plattform laufen eine Vielzahl von Prozessen gleichzeitig ab. Es kann deshalb vorkommen, dass z. B. das Schreiben von Rohdaten auf die Festplatte eines Scanners erheblich verlangsamt wird oder schlimmstenfalls gar nicht mehr möglich ist, wenn zu viele Prozesse parallel laufen, die gleichzeitig auf die Festplatte des Scanners zugreifen. Das bedeutet eine hohe Zahl von I/O-Operationen auf die Festplatte eines Scanners kann die Performance des Scanners, z. B. beim Scannen eines Patienten einschränken.in the Unlike the real-time processes that run on a scanner, processes are characterized by the fact that the behavior of the processes is not deterministic. That means in an expandable medical platform run a variety of processes simultaneously from. It may therefore happen that z. B. the writing of raw data on the hard disk of a scanner is slowed down considerably or in the worst case, it is no longer possible if too many processes parallel, accessing the hard disk of the scanner at the same time. This means a high number of I / O operations on the hard disk a scanner, the performance of the scanner, z. When scanning of a patient.
Durch eine verlangsamte Response des Scanners wird wertvolle Zeit verloren, z. B. bei der Untersuchung eines Schlaganfall-Patienten. Durch das geringe Zeitfenster, das zur erfolgreichen Therapie eines solchen Patienten bleibt, ist es erforderlich, für Prozesse innerhalb der medizinischen Plattform ein deterministisches Verhalten zu haben, um auch im Falle eines medizinischen Notfalls eine gesicherte Qualität der innerhalb der erweiterbaren medizinischen Plattform verfügbaren Dienste zu gewährleisten.By a slowed response of the scanner is lost valuable time z. B. in the study of a stroke patient. Due to the small time window, which remains the successful therapy of such a patient is it required for Processes within the medical platform are deterministic To have behavior even in case of a medical emergency a guaranteed quality the services available within the extensible medical platform to ensure.
Mögliche Lösungen dieses Problems sind separate Notfallsysteme, etwa zur Diagnose-Erstellung, die ausschließlich für den Notfall verwendet werden. Ein solches Vorgehen ist teuer, da separate Notfallsysteme in der Regel unbenutzt vorrätig gehalten werden müssen. Die hohen Kosten eines zusätzlichen, separaten Notfallsystems sind also nicht gerechtfertigt.Possible solutions this Problems are separate emergency systems, such as for the creation of a diagnosis, the exclusively for the emergency be used. Such a procedure is expensive because separate emergency systems usually unused in stock must be kept. The high cost of an additional, separate emergency system are therefore not justified.
Ferner wäre es möglich, keine der Prozesse auf Clients zuzulassen, die im Falle eines Notfalls benötigt werden. Ein solches Vorgehen ist ebenfalls teuer, da weitere Clients notwendig werden, die ausschließlich die innerhalb der erweiterbaren medizinischen Plattform anfallenden Prozesse erledigen. Darüber hinaus macht es die zunehmende Vernetzung aller Clients bzw. Knoten innerhalb einer erweiterbaren medizinischen Plattform (kurz Plattform) erforderlich, dass von allen Clients aus Daten empfangen und gesendet werden können. Für einen Client der Plattform, auf dem keine Prozesse zulässig sind, wäre insbesondere kein Netzwerkzugriff auf diesen Client oder von diesem Client auf andere möglich.Further would it be possible, None of the processes allowed on clients in case of an emergency needed become. Such a procedure is also expensive because more clients necessary, exclusively those arising within the extensible medical platform Do processes. About that It also makes the increasing networking of all clients or nodes within an expandable medical platform (short platform) requires that all clients receive and send data can be. For one Client of the platform on which no processes are allowed would be particular no network access to this client or from this client others possible.
Um das vorstehend beschriebene Problem zu lösen, wäre es weiterhin denkbar, Spezialbetriebssysteme für Clients einzusetzen, auf denen Prozesse laufen. Dabei müssten die Spezialbetriebsysteme eine gleich bleibende Quality of Service gewährleisten. Derlei Spezialbetriebsysteme sind dem Fachmann bekannt. Allerdings ist der Programmieraufwand für solche Quality of Service-Systeme hoch und das bedeutet einen zusätzlich Wartungsaufwand, Trainingszeiten für die Programmierer, sowie zusätzliche Programmübersetzungsläufe für Zielsysteme, also Clients, die unter dem Spezialbetriebssystem laufen. Ferner erhöht sich der Testaufwand für die Clients, auf denen Prozesse unter dem Spezialbetriebsystem laufen.In order to solve the problem described above, it would further be conceivable to use special operating systems for clients on which processes are running. The special operating systems would have to guarantee a consistent quality of service. Such special operating systems are known to the person skilled in the art. However, the programming effort for such quality of service systems is high and this means additional maintenance, training times for the programmers, as well as additional program translation runs for target systems, ie clients running under the special operating system. Furthermore, the test effort for the clients, on which processes under the special Be running system.
Weiter wäre es denkbar, Prozesse an ausgewählte dezidierte CPUs zu binden. Dadurch ließe sich zwar die Verfügbarkeit der CPU-Ressource steuern, allerdings ergibt sich daraus noch kein Einfluss auf stattfindende I/O-Aktivitäten, die von Prozessen angestoßen wurden. Das heißt, das gewünschte deterministische Verhalten für ein Notfallsystem wäre immer noch nicht gewährleistet.Further would it be conceivable, processes to selected bind committed CPUs. This could indeed be the availability control the CPU resource, but this does not give any Influence on occurring I / O activities triggered by processes. This means, the wished deterministic behavior for an emergency system would be still not guaranteed.
Ferner wäre es möglich, die Prioritäten für Prozesse herabzusetzen. Solche Verfahren werden in der Regel durch Betriebssysteme zur Verfügung gestellt und sind dem Fachmann bekannt. Möglicherweise beeinträchtigt ein Herabsetzten der Prioritäten für Prozesse das Scheduling-Verhalten des gesamten vom Betriebssystem gesteuerten Client bzw. der gesamten Plattform. Solch ein Ansatz setzt allerdings voraus, dass jeder einzelne Prozess als Prozess auf Betriebssystemebene realisiert ist. Bei der hohen Zahl von Prozessen, die innerhalb einer Plattform laufen, ist dieser Ansatz wenig effektiv. Darüber hinaus bedeutet ein solches Ändern der Betriebssystem-Prioritäten für Prozesse noch kein deterministisches Verhalten in Notfallsituationen.Further would it be possible, the priorities for processes decrease. Such procedures are usually performed by operating systems made available and are known in the art. possibly impaired a lowering of the priorities for processes the scheduling behavior of the entire OS controlled Client or the entire platform. Such an approach, however, requires that every single process as a process at the operating system level is realized. At the high number of processes within run a platform, this approach is not very effective. Furthermore means such a change the operating system priorities for processes no deterministic behavior in emergency situations yet.
Aufgabe der Erfindung ist es, die zuverlässige Verfügbarkeit von Ressourcen der Plattform in Notfallsitutationen zu gewährleisten. Darüber hinaus ist es Aufgabe der Erfindung, auch im regulären Betrieb der Plattform ein deterministisches Verhalten der Prozesse unter Einhaltung der erforderlichen Quality of Service sicherzustellen.task The invention is the reliable Availability to ensure resources of the platform in emergency situations. About that It is also an object of the invention, even in regular operation the platform a deterministic behavior of the processes under Ensure compliance with the required quality of service.
Diese Aufgabe wird durch ein Verfahren, eine Vorrichtung und ein Computerprogrammprodukt gemäß den beiliegenden Hauptansprüchen gelöst.These The object is achieved by a method, a device and a computer program product according to the attached main claims solved.
Nachstehend wird die Lösung der Aufgabe gemäß des Verfahrens beschrieben. Hierbei erwähnte Merkmale, alternative Ausführungsformen und/oder Vorteile sind ebenso auch auf die anderen beanspruchten Gegenstände zu übertragen und umgekehrt. Mit anderen Worten können auch die gegenständlichen Ansprüche mit den Merkmalen, die in Zusammenhang mit dem Verfahren beschrieben oder beansprucht sind, weitergebildet sein. Die entsprechenden funktionalen Merkmale des Verfahrens werden dabei durch entsprechende gegenständliche Module, insbesondere durch Hardware-Module und/oder Softwaremodule des Systems ausgebildet.below becomes the solution the task according to the method described. Mentioned here Features, alternative embodiments and / or Advantages are also to be transferred to the other claimed objects and vice versa. In other words, the figurative can claims with the features described in the context of the procedure or claimed, be further developed. The corresponding functional Features of the method are thereby by appropriate representational modules, in particular by hardware modules and / or software modules of the system educated.
Die Aufgabe wird insbesondere gelöst durch ein Computer implementiertes Verfahren zum Steuern von Zuweisungen von Ressourcen an Prozesse in erweiterbaren medizinischen Plattformen mit einer zentralen Instanz und einer Meta-Schnittstelle zu Ressourcen.The Task is solved in particular computer implemented method for controlling assignments resources to processes in extensible medical platforms with a central instance and a meta-interface to resources.
Ein Auftragstyp im Sinne dieser Erfindung ist eine konzeptionelle Entität, mit anderen Worten eine „Formularvorlage", die beschreibt, welche Informationen ein Client, der einen Auftrag absendet, angeben muss, um einen Auftrag hinreichend zu spezifizieren. Zum Beispiel gibt ein Druck-Auftragstyp an, dass der Client einen Druckernamen, einen Dokumentennamen und einen Druckmodus angeben muss.One Job type in the sense of this invention is a conceptual entity with others Words a "form template" that describes what information a client sending an order must specify to specify an order sufficiently. For example there A print job type indicates that the client has a printer name, a Document name and a print mode must specify.
Ein Auftrag im Sinne der vorliegenden Erfindung ist eine konkrete (dingliche) Instanz eines Auftragstyps. Das heißt eine konkrete Anweisung, was genau zu tun ist. Im Falle eines Druckauftrags zum Beispiel: Druckername = "MyPrinter", Dokumentenname = "Fischer.dcm" und Druckmodus = "600 dpi".One Order within the meaning of the present invention is a concrete (real) Instance of an order type. That means a concrete instruction, what exactly to do. In the case of a print job, for example: Printer name = "MyPrinter", document name = "Fischer.dcm" and print mode = "600 dpi".
Ein Prozessbearbeiter oder ein Auftragsbearbeiter im Sinne der vorliegenden Erfindung ist die Implementierung eines Services, der einen Auftrag ausführen kann. Die Begriffe Auftragsbearbeiter und Prozessbearbeiter werden im Rahmen dieser Beschreibung synonym verwendet.One Process worker or an order processor within the meaning of the present Invention is the implementation of a service that can execute a job. The terms order processor and process editor are used in the Used synonymously within this description.
Der Prozessbearbeiter wird in einem Prozess zur Ausführung gebracht. Das heißt der Prozess stellt einen Ablaufcontainer für den Prozessbearbeiter dar. Der Prozessbearbeiter kann immer nur genau einen Auftrag zu einer Zeit ausführen. Der Prozessbearbeiter kann so umgesetzt werden, dass er auch Aufträge unterschiedlicher Auftragstypen ausführen kann; aber immer nur streng sequentiell, einen Auftragstyp nach dem anderen. Darüber hinaus verfügt der Prozessbearbeiter über eine Vielzahl von Schnittstellen, welche die zentrale Instanz benötigt, um ein Abarbeiten der Aufträge durch Prozessbearbeiter anzuhalten, fortzusetzen oder abzubrechen. Der Prozessbear beiter kennt mindestens einen Auftragstyp, kann aber auch mehrere Auftragstypen verstehen.Of the Process worker is executed in one process. That means the process poses a drain container for the process worker. The process engineer can only ever Do exactly one job at a time. The process worker can be implemented so that it also orders different order types can perform; but always strictly sequential, one order after the other. About that In addition, the Process worker over a variety of interfaces that the central instance needs to a processing of the orders Stop, resume or abort by process operators. The process worker knows at least one order type but can also understand several order types.
In einem Prozess können ein oder mehrere Prozessbearbeiter zur Ausführung gebracht werden. Dabei ist die Zahl der Prozessbearbeiter innerhalb eines Prozesses konfigurierbar. Mit anderen Worten, ein Prozess im Sinne der Erfindung ist eine Instanzierung eines oder mehrerer Prozessbearbeiter.In a process can one or more process handlers are brought to execution. there is the number of process handlers within a process configurable. In other words, a process in the sense of the invention is one Instancing one or more process workers.
Prozesse bzw. Hintergrundprozesse im Sinne dieser Erfindung sind solche computer-bezogenen Aktivitäten, die in der Regel unbemerkt vom Benutzer ablaufen. Darüber hinaus handelt es sich bei den Prozessen um solche Prozesse, die nicht durch ein Echtzeitbetriebssystem gesteuert sind, wie etwa Prozesse auf einem Scanner, was bereits eingangs erwähnt wurde.processes or background processes in the sense of this invention are those computer-related Activities, which usually run unnoticed by the user. Furthermore the processes are those processes that are not controlled by a real-time operating system, such as processes on a scanner, which was already mentioned at the beginning.
Die Prozesse können auf Betriebssystem-Ebene laufen und die Funktionsweise eines Computersystems steuern. Ein Client im Zusammenhang mit der vorliegenden Erfindung ist z. B. ein solches Computersystem.The Processes can run at the operating system level and the functioning of a computer system Taxes. A client in the context of the present invention is z. B. such a computer system.
Vorzugsweise ist unter einem Prozess im Sinne dieser Erfindung eine Instanz einer ausführbaren Einheit, ein Executable, das heißt ausführbarer Programmcode gemeint. Der Prozessbearbeiter ist solch ein ausführbarer Programmcode, der als Instanzierung eines Prozessbearbeiters in einem Prozess zur Ausführung kommt.Preferably is an instance of a process under this invention executable Unit, an executable, that is to say executable program code. The process editor is such an executable program code as Instancing a process worker in a process comes to execution.
Die Prozesse laufen innerhalb der medizinischen Plattform und steuern die Funktionsweise der medizinischen Plattform.The Processes run within the medical platform and control the functioning of the medical platform.
Ein Prozess kann z. B. die Anzeige von MR-Bildern sein. Weitere Beispiele für Prozesse im Sinne der Erfindung können das Drucken von Bilddaten, sowie das Laden von Bilddaten aus dem Plattenspeicher der Plattform sein.One Process can z. B. be the display of MR images. Further examples for processes in the sense of the invention the printing of image data, as well as the loading of image data from the Be disk storage of the platform.
Prozesse werden durch Aufträge für Prozesse angestoßen, die in der Regel von einem Benutzer eines Clients ausgelöst werden. Prozesse sind ferner eine Instanzierung eines Prozessbearbeiters für einen Auftragstyp, wie bereits erwähnt.processes be through orders for processes initiated, which are usually triggered by a user of a client. Processes are also an instantiation of a process editor for one Order type, as already mentioned.
Ein Beispiel für einen Auftrag ist „Zeige die MR-Daten des Patienten Fischer". Aufträge können von ganz unterschiedlichen Typen sein und sind jeweils durch einen Auftragstyp gekennzeichnet. So ist zum Beispiel „Berechne die Mikrokalzifikation der Patientin Müller" ein weiterer Auftrag, dessen Auftragstyp sich vom vorangehenden Beispiel unterscheidet.One example for an order is "Show The MR data of the patient Fischer. "Orders can vary greatly Types and are each characterized by an order type. For example, "Calculate the microcalcification of the patient Mueller "another order whose order type different from the previous example.
Ein Auftrag für einen Prozess wird von der zentralen Instanz empfangen und ist ferner durch einen Auftragstyp gekennzeichnet.One Order for a process is received from the central entity and is further indicated by an order type.
Das bedeutet, die zentrale Instanz muss nicht mehr als den Auftragstyp eines eingehenden Auftrags kennen. Abhängig von dem Auftragstyp des Auftrags wird dieser durch die zentrale Instanz einem Warteschlangenzuweiser zugeordnet.The means the central instance does not have more than the order type an incoming order. Depending on the order type of the order this becomes a queue allocator through the central instance assigned.
Der Warteschlangenzuweiser analysiert den Auftrag und ermittelt für den Auftrag eine Vielzahl von Prozessressourcen aus allen im System verfügbaren Ressourcen, die zur Ausführung des Auftrags notwendig sind. Ferner ermittelt der Warteschlangenzuweiser die Warteschlange in welcher der Auftrag abzulegen ist.Of the Queue allocator analyzes the order and determines for the order a variety of process resources from all resources available in the system, to the execution of the order are necessary. The queue allocator also determines the queue in which the order is to be placed.
Daraufhin fragt die zentrale Instanz die Prozessressourcen wie von dem Warteschlangenzuweiser ermittelt an. Diese Anfrage durch die zentrale Instanz erfolgt bei einer Vielzahl von Meta-Schnittstellen, welche jeweils Ressourcen eines Typs verwalten.thereupon The central instance asks the process resources as from the queue allocator determined. This request by the central authority takes place at a variety of meta-interfaces, each containing resources Manage a type.
Falls es der zentralen Instanz gelingt, alle Prozessressourcen für den Prozess zu belegen, kommt der Prozess zur Ausführung. Nach Abschluss des Prozesses werden die Prozessressourcen freigegeben und die Meta-Schnittstellen über das Freiwerden der Prozessressourcen informiert. Dabei ist ein deterministisches Verhalten der Prozesse innerhalb der Plattform gewährleistet.If the central instance manages all process resources for the process to prove, the process comes to execution. After completing the process The process resources are released and the meta-interfaces are released via the Freeing the process resources informed. It is a deterministic one Ensuring the behavior of the processes within the platform.
Unter Ressourcen sollen im Rahmen dieser Beschreibung verstanden werden: Geräte, Gerätekomponenten und Betriebsmittel. Ressourcen können zum Beispiel sein: ein Drucker, eine dezidierte Graphik-Hardware zur Rekonstruktion von Bilddaten einer modernen medizinischen Modalität, Zugriff auf das Netzwerk oder Zugriffe auf Plattenspeicher. Weitere Ressourcen innerhalb der Plattform sind für den Fachmann offensichtlich.Under Resources should be understood in the context of this description: Equipment, device components and resources. Resources can for example: a printer, a dedicated graphics hardware for the reconstruction of image data of a modern medical modality, access on the network or accesses to disk storage. Other resources within the platform are for the obvious.
Die zentrale Instanz im Sinne der Erfindung koordiniert die Abarbeitung der eingehenden Aufträge für Prozesse und stellt die dead-lock freie Ausführung der Aufträge unter Verwendung der innerhalb der Plattform verfügbaren Ressourcen sicher. Die Ausführung der Aufträge erfolgt dabei durch Prozesse. Die Prozesse sind die Instanzierung des jeweiligen Prozessbearbeiters, wie bereits erwähnt.The central instance in the context of the invention coordinates the processing incoming orders for processes and sets the dead-lock free execution of orders Use the resources available within the platform safely. The execution of assignments takes place through processes. The processes are the instantiation of the respective process editor, as already mentioned.
Im Rahmen dieser Erfindung wird ein explizites Protokoll zur Verwaltung von Prozessen vorgeschlagen. Die zentrale Instanz beeinflusst die Abarbeitung von Aufträgen mittels Kontrollnachrichten an die Prozessbearbeiter, d. h. sie hält die Prozessbearbeiter an oder lässt sie mit der Abarbeitung weiter fortfahren. Das heißt, die zentrale Instanz hält nicht unbedingt einen ganzen Prozess an, in dem ja mehrere unterschiedliche Prozessbearbeiter laufen können. Insbesondere erfolgt die Verwaltung von Prozessen gemäß der vorliegenden Erfindung über die zentrale Instanz. Damit ist die Gesamtheit aller innerhalb der Plattform laufenden Prozesse bekannt.in the This invention provides an explicit protocol for administration proposed by processes. The central instance influences the Processing of orders by means of control messages to the process handlers, d. H. she Hold the Process editor or leaves they continue with the processing. That is, the central instance holds not necessarily a whole process, in which several different ones Process workers can run. In particular, the management of processes according to the present is done Invention over the central instance. This is the totality of all within the Platform known processes.
Beide Eigenschaften der Erfindung, also das Protokoll zum Anhalten von Prozessen sowie die zentrale Instanz zur Steuerung der Prozesse erlauben es, eine Vielzahl von in der Plattform vorhandenen Prozessen gewissermaßen „auf Zuruf" anzuhalten, sofern sich eine Notfallsituation einstellt.Both Features of the invention, so the protocol for stopping Processes and the central instance for controlling the processes allow a variety of existing processes in the platform in a sense "to stop", provided an emergency situation arises.
Die Steuerung von Prozessen in einer erweiterbaren medizinischen Plattform übernimmt also die zentrale Instanz. Die zentrale Instanz registriert alle Aufträge für Prozesse, eine Vielzahl von Warteschlangen und Warteschlangenzuweiser, die durch die zentrale Instanz verwaltet werden. Dabei können die Warteschlangen – abhängig vom Auftragstyp – unterschiedlich sein.The Control of processes in an expandable medical platform takes over So the central instance. The central instance registers all orders for processes, a plurality of queues and queue allocators through the managed central instance. The queues can depend on the Order type - different be.
Ferner umfasst das erfindungsgemäße Verfahren eine Meta-Schnittstelle zur Verwaltung aller in der Plattform verfügbaren Ressourcen. Das erfindungsgemäße Verfahren stellt ein deterministisches Verhalten für alle Prozesse innerhalb der Plattform sicher. Die Erfindung erlaubt es, einen oder alle Prozess/e innerhalb des Systems anzuhalten, und so ausreichend Ressourcen für die sofortige Reaktion auf eine Notfallsituation zu gewährleisten. Eine solche Notfallsituation kann z. B. die Untersuchung eines Schlaganfall- oder Trauma-Patienten ergeben.Furthermore, the method according to the invention comprises a meta-interface for managing all resources available in the platform. The inventive method provides a deterministic Behavior safe for all processes within the platform. The invention allows one or all processes within the system to be paused to provide sufficient resources for immediate response to an emergency situation. Such an emergency situation can z. B. the study of a stroke or trauma patients.
Mit dem erfindungsgemäßen Verfahren ist es möglich gleichzeitig mehrere Aufträge für Prozesse an der zentralen Instanz zu empfangen. Ebenso kann die zentrale Instanz mehrere Prozessbearbeiter parallel ausführen, vorausgesetzt, die Prozessressourcen für die mehreren Prozessbearbeiter konnten erfolgreich den mehreren Prozessbearbeitern zugewiesen werden.With the method according to the invention Is it possible several orders simultaneously for processes to receive the central instance. Likewise, the central instance run multiple process workers in parallel, assuming the process resources for the Several process workers were able to successfully handle the multiple process workers be assigned to.
Das System kann mehrere Warteschlangen für Aufträge unterschiedlichen Typs umfassen. Vorzugsweise wird jedem Auftragstyp eine eigene Warteschlange zugewiesen.The System can include multiple queues for jobs of different types. Preferably, each order type is assigned its own queue.
Warteschlangen im Sinne der Erfindung können als Hardwaremodul und oder Softwaremodul realisiert sein.queues in the sense of the invention be implemented as a hardware module and or software module.
Es ist vorteilhaft für unterschiedliche Auftragstypen unterschiedliche Warteschlangen zu verwenden. Bei gesonderten Warteschlangen für verschiedene Auftragstypen können einzelne Warteschlangen bedarfsgerecht und Ressourcen-schonend implementiert werden.It is beneficial for Different order types allow different queues use. For separate queues for different order types can individual queues are implemented as needed and resource-conserving become.
Selbstverständlich ist es nach einer weiteren Ausführungsform der Erfindung möglich, eine einzige Warteschlange für alle Auftragstypen zu verwenden. Allerdings wäre die Verwaltung einer solchen einzigen Warteschlange deutlich komplizierter in der Verwaltung. Außerdem wäre dann die Modularität des Verfahrens reduziert.Of course it is it according to another embodiment the invention possible a single queue for to use all order types. However, the administration would be such single queue significantly more complicated in administration. Furthermore would be then the modularity reduced the process.
Die Ausführung der Aufträge eines Auftragstyps wird durch mindestens einen Prozessbearbeiter ausgeführt. Der mindestens eine Prozessbearbeiter wird durch die zentrale Instanz gestartet. Welcher Prozessbearbeiter zum Einsatz kommt, ist durch den Auftragstyp des Auftrags festgelegt.The execution Of orders An order type is created by at least one process editor executed. The at least one process editor is the central instance started. Which process worker is used is through the order type of the order.
Das Verfahren erlaubt es, einen laufenden Prozessbearbeiter anzuhalten, wodurch ein deterministisches Unterbrechen der Prozesse sicher gestellt ist.The Procedure allows to stop a running process worker whereby a deterministic interruption of the processes is ensured.
So kann jeder der Prozesse innerhalb der Plattform angehalten werden, und wieder gestartet werden, so dass die weitere Bearbeitung durch den jeweiligen Prozessbearbeiter nach einer Unterbrechung möglich ist.So can any of the processes be stopped within the platform, and start again, so that further processing by the respective process worker is possible after an interruption.
Darüber hinaus kann die zentrale Instanz eine Warnung empfangen, die anzeigt, dass in Kürze ein kritischer Zustand erreicht wird. Daraufhin startet die zentrale Instanz keine weiteren Prozessbearbeiter, lässt die aktiven Prozessbearbeiter jedoch weiter arbeiten.Furthermore the central entity may receive a warning indicating that coming soon critical condition is achieved. Then the central starts Instance no further process worker leaves the active process worker but keep working.
Es ist außerdem vorgesehen, dass jeder der, innerhalb der Plattform aktiven Prozessbearbeiter angehalten werden kann und zum weiteren Bearbeiten wieder freigegeben werden kann. Dadurch werden Ressourcen z. B. für einen Notfall kontrolliert und zuverlässig frei. Das Anhalten und Freigeben erfolgt erfindungsgemäß durch die zentrale Instanz.It is also provided that each of the process processors active within the platform is paused can be and be released for further editing can. As a result, resources z. B. controlled for an emergency and reliable free. The stopping and releasing takes place according to the invention the central instance.
Außerdem kann das Unterbrechen mindestens eines Auftrags durch das Empfangen einer Benachrichtigung an der zentralen Instanz (z. B. auf ein medizinisches Notfallereignis hin) ausgelöst werden. Daraufhin wird automatisch mindestens ein Prozess angehalten, bis ausreichend Ressourcen (zur Notfallbearbeitung) verfügbar sind.In addition, can interrupting at least one order by receiving a Notification at the central instance (eg on a medical Emergency event) become. This will automatically stop at least one process until sufficient resources (for emergency processing) are available.
Darüber hinaus erlaubt es die Erfindung, neue Auftragstypen, die neue Prozesstypen anstoßen, zum System hinzuzufügen. Insbesondere erlaubt es die Erfindung, die neuen Prozesstypen zur Laufzeit hinzuzufügen. Das ist für den Anwender äußerst komfortabel, da Service-Techniker oder Drittanbieter weitere Auftragstypen bzw. neue Funktionalitäten im Zusammenhang mit neuen Auftragstypen gewissermaßen per Knopfdruck hinzufügen können.Furthermore The invention allows new order types, the new types of processes nudge, to add to the system. In particular, the invention allows the new types of processes at runtime add. This is for the user extremely comfortable, because service technicians or third-party vendors have further order types or new functionalities in the context of new order types to a certain extent per Add a button can.
Ferner wird die Bereitstellung neuer Funktionalitäten zur Plattform in Form von neuen Prozesstypen erleichtert, da ein Drittanbieter sich nicht mehr um die Verwaltung von Warteschlangen für seinen neuen Prozess kümmern muss.Further will provide new functionality to the platform in the form of facilitates new types of processes, as a third party does not more to worry about managing queues for his new process.
Aufgabe der Meta-Schnittstelle ist es dabei, die für einen Prozess benötigten Ressourcen, zu verteilen.task the meta-interface is there, the resources needed for a process, to distribute.
Wenn Ressourcen für einen Prozess verfügbar sind, werden Sie von der Meta-Schnittstelle als so genannte Prozessressourcen belegt. Vorzugsweise belegt jede der Meta-Schnittstellen Prozessressourcen für einen Auftragstyp und gibt die Prozessressourcen nach erfolgter Erledigung des Auftrags wieder frei. Sind die Prozessressourcen nicht verfügbar, so verbleibt der Auftrag in der Warteschlange und es erfolgt keine sofortige Ausführung des Auftrags. Die zentrale Instanz kümmert sich in diesem Fall um eine Ausführung des Auftrags zu einem späteren Zeitpunkt.If Resources for a process available You are, by the meta-interface as so-called process resources busy. Preferably, each of the meta-interfaces occupies process resources for one Order type and returns the process resources after completion of the order again. If the process resources are not available, then the job remains in the queue and nothing happens immediate execution of the order. The central instance takes care of this case an execution of the order at a later date Time.
Die einzelnen Komponenten der Erfindung sind modular realisiert, so dass die Warteschlangen und/oder die Warteschlangenzuweiser, der Prozessbearbeiter und die Meta-Schnittstelle zu einem Auftragstyp jeweils unabhängig voneinander geändert werden können. Dadurch wird die Erweiterung und Programmierung einzelner Prozesstypen vereinfacht.The individual components of the invention are implemented modularly, so that the queues and / or the queue allocators, the process handler and the meta-interface to a job type each changed independently of each other can be. This simplifies the expansion and programming of individual process types.
Ein Auftrag ist gekennzeichnet durch seinen Auftragstyp und kann darüber hinaus eine Vielzahl von Parametern umfassen. Solche Parameter können z. B. sein Auflösung, in der die Bild daten eines Druckauftrags gedruckt werden. Weitere Auftragsparameter sind für den Fachmann offensichtlich.One Order is characterized by its order type and may exceed that include a variety of parameters. Such parameters can z. B. its resolution, in which the image data of a print job are printed. Further Order parameters are for the obvious.
Die zentrale Instanz, die Warteschlangen, die Warteschlangenzuweiser, die Meta-Schnittstellen und die Prozessbearbeiter im sinne der Erfindung können jeweils als Hardwaremodule und/oder als Softwaremodule implementiert sein.The central instance, the queues, the queue allocators, the meta-interfaces and the process editors in the sense of the invention can each be implemented as hardware modules and / or as software modules.
Die Erfindung kann weiterhin durch eine Vorrichtung realisiert sein, welche die Steuerung von Zuweisungen von Ressourcen an Prozesse in erweiterbaren medizinischen Plattformen erledigt. Die Vorrichtung umfasst eine zentrale Instanz zum Empfang eines Auftrags für einen Prozess. Der Auftrag ist gekennzeichnet durch seinen Auftragstyp und kann außerdem weitere Auftragsparameter umfassen.The Invention can furthermore be realized by a device which controls the allocation of resources to processes done in expandable medical platforms. The device includes a central instance for receiving an order for one Process. The order is characterized by its order type and can also include further order parameters.
Die in einem Empfangsmodul eingegangenen Einträge werden, abhängig vom Auftragstyp durch einen Warteschlangenzuweiser analysiert und einer Warteschlange zugewiesen. Ferner ermittelt der Warteschlangenzuweiser die Prozessressourcen aus allen in der Plattform verfügbaren Ressourcen und teilt die Prozessressourcen der zentralen Instanz mit. Daraufhin fragt die zentrale Instanz die Prozessressourcen bei den Meta-Schnittstellen der Prozessressourcen an. Die Prozessressourcen werden dem Auftrag zugewiesen, sofern sie verfügbar sind. Der Auftrag wird ausgeführt, sofern die Verfügbarkeit aller Prozessressourcen gegeben ist. Nach Abschluss des Prozesses werden die Prozessressourcen freigegeben und die jeweiligen Metaschnittstellen über das frei werden der Ressourcen informiert. Auf diese Weise wird ein deterministisches Verhalten der Prozesse innerhalb der Plattform gewährleistet.The Entries received in a receive module will be dependent on Order type analyzed by a queue allocator and one Assigned queue. The queue allocator also determines the process resources from all resources available in the platform and Allocates the process resources of the central instance. thereupon the central instance asks the process resources at the meta-interfaces of the Process resources. The process resources are assigned to the job, if available are. The order is executed provided the availability all process resources is given. After completing the process The process resources are released and the respective meta-interfaces via the free to be informed of the resources. In this way one becomes deterministic behavior of the processes within the platform guaranteed.
Eine weitere Aufgabenlösung ist auch als Computerprogrammprodukt möglich, das ladbar in den Speicher eines Computers ist. Das erfindungsgemäße Verfahren wird durch Computerprogrammcode realisiert, der die einzelnen Schritte des Verfahrens abbildet.A additional task solution is also possible as a computer program product that is loadable in the store of a computer. The inventive method is by computer program code realized, which represents the individual steps of the process.
Eine alternative Aufgabenlösung sieht ein Speichermedium vor, das zur Speicherung des vorstehend beschriebenen, computerimplementierten Verfahrens bestimmt ist und von einem Computer lesbar ist.A alternative task solution provides a storage medium for storing the above described, computer-implemented method is determined and readable by a computer.
Darüber hinaus ist es möglich, dass einzelne Komponenten des vorstehend beschriebenen Verfahrens in einer verkaufsfähigen Einheit und die restlichen Komponenten in einer anderen verkaufsfähigen Einheit – sozusagen als verteiltes System – ausgeführt werden können.Furthermore Is it possible, that individual components of the method described above in a salable Unit and the remaining components in another salable unit - so to speak as a distributed system can.
In der folgenden detaillierten Figurenbeschreibung werden nicht einschränkend zu verstehende Ausführungsbeispiele mit deren Merkmalen und weiteren Vorteilen anhand der Zeichnung besprochen. In dieser zeigen:In The following detailed description of the figures are not restrictive Understanding embodiments with their features and other advantages with reference to the drawing discussed. In this show:
Prozesse
Vorzugsweise ist unter einem Prozess im Sinne dieser Erfindung eine Instanz einer ausführbaren Einheit, ein Executable, das heißt ausführbarer Programmcode gemeint. Der Prozessbearbeiter umfasst zum Beispiel ausführbaren Programmcode, der als Instanzierung eines Prozessbearbeiters zu einem Prozess wird. Die bevorzugte Ausführungsform eines Prozesses ist daher nicht notwendig ein Betriebssystemprozess, wie weiter oben erwähnt.Preferably is an instance of a process under this invention executable Unit, an executable, that is to say executable program code. The process editor includes, for example, executable program code called Instantiating a process worker becomes a process. The preferred embodiment a process is therefore not necessary an operating system process, as mentioned above.
Selbstverständlich kann die Erfindung auch auf medizinischen Plattformen zum Einsatz kommen, die nicht notwendig einen Scanner umfassen, wenngleich die Erfindung im Folgenden anhand einer solchen modernen medizinischen Modalität beschrieben wird.Of course you can the invention also be used on medical platforms that not necessarily include a scanner, although the invention described below with reference to such a modern medical modality becomes.
Der
Benutzer eines Clients
Das
Drucken der Bilddaten einer Bilderserie des Patienten „Fischer" auf dem Drucker
MyPrinter ist ein Beispiel für
einen Prozess
Anhand
eines Beispiels soll im Folgenden das Verfahren zur Verwaltung einer
Vielzahl von Prozessen
Der
von einem Client
Für jeden
der Auftragstypen
Die
Vielzahl von Warteschlangenzuweisern
Der
Auftrag
Neben
dem Warteschlangen-Namen
Sofern
die Warteschlange
Die
Vergabe der Prozessressourcen
Die
zentrale Instanz
Zu
jedem Auftragstyp
Wesentliches
Merkmal der Prozessbearbeiter
Darüber hinaus
ist es möglich,
dass die zentrale Instanz
Die,
zu den Prozessressourcen
Insbesondere
belegt die Meta-Schnittstelle
Die
zentrale Instanz
Meta-Schnittstellen
So
könnte
etwa für
die Meta-Schnittstelle zur Verwaltung von Netzwerkschnittstellen
Sofern
der Benutzer des Clients
Eine
andere Ressource
So
ist es etwa denkbar, dass der Benutzer eines Clients
Erfolgt
für dieselbe
Workstation eine zweite Anfrage von der zentralen Instanz
Die
Meta-Schnittstelle
Das
erfindungsgemäße Verfahren
erlaubt die Erweiterung der Plattform um neue Auftragstypen
Um
einen neuen Auftragstyp
Dies
kann z. B. realisiert werden über
die Zuordnung
Darüber hinaus
erlaubt die verteilte Erledigung der zu einem angestoßenen Auftrag
Im
Folgenden wird der dynamische Ablauf des erfindungsgemäßen Verfahrens
gezeigt. Ein Client
Darüber hinaus
sind nun die Prozessressourcen
Ferner
kann die zentrale Instanz
Wie
bereits erwähnt,
können
Ressourcen
In
einem Prozess können
ein oder auch mehrere Prozessbearbeiter
Die
Flexibilität
und Erweiterbarkeit der erfindungsgemäßen Lösung ist gegeben. Neue Auftragstypen
können
zu beliebigen Zeiten hinzugefügt werden.
Die konkrete Realisierung von Warteschlangenzuweiser
Die
Realisierung der gleichzeitigen Anforderung von Ressourcen
Die
Logik der Abarbeitung eines Auftrags
Selbstverständlich werden
Prozessressourcen
Die
zentrale Instanz
Von
einem Client
Durch
eine Warnung kann die zentrale Instanz
Im
Gegensatz dazu steht eine Benachrichtigung an die zentrale Instanz
Die
Warnung ist eine optionale Vorstufe der Benachrichtigung. Offensichtlich
unterstützt
die Warnung das Verhalten der Plattform in kritischen Situationen:
die Warnung kann dazu führen,
dass weniger Prozesse
Ebenso
ist es möglich, über eine
Nachricht mitzuteilen, dass derzeit Rohdaten eines Patienten (z.
B MR-Tomographie Untersuchung des Patienten Fischer) im Scanner
aufgenommen werden und deshalb der Netzwerk-Verkehr hin zum Plattenspeicher des
Scanners für
weitere Prozesse
Die
Registrierung neuer Auftragtypen
Abschließend sei darauf hingewiesen, dass die Beschreibung der Erfindung und die Ausführungsbeispiele grundsätzlich nicht einschränkend in Hinblick auf eine bestimmte physikalische Realisierung der Erfindung zu verstehen sind. Für einen einschlägigen Fachmann ist es insbesondere offensichtlich, dass die Erfindung teilweise oder vollständig in Soft- und/oder Hardware und/oder auf mehrere physikalische Produkte – dabei insbesondere auch Computerprogrammprodukte – verteilt realisiert werden kann.In conclusion, be noted that the description of the invention and the embodiments in principle not restrictive in view of a particular physical implementation of the invention to be understood. For a relevant one It is particularly obvious to a person skilled in the art that the invention partially or completely in soft and / or Hardware and / or on several physical products - there in particular also computer program products - distributed can be realized.
Claims (15)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102008004658A DE102008004658B4 (en) | 2008-01-16 | 2008-01-16 | Method for the central control of processes in expandable medical platforms |
US12/318,807 US8117310B2 (en) | 2008-01-16 | 2009-01-08 | Method for the central control of resources in expandable medical platforms |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102008004658A DE102008004658B4 (en) | 2008-01-16 | 2008-01-16 | Method for the central control of processes in expandable medical platforms |
Publications (2)
Publication Number | Publication Date |
---|---|
DE102008004658A1 true DE102008004658A1 (en) | 2009-07-23 |
DE102008004658B4 DE102008004658B4 (en) | 2010-03-25 |
Family
ID=40785791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102008004658A Active DE102008004658B4 (en) | 2008-01-16 | 2008-01-16 | Method for the central control of processes in expandable medical platforms |
Country Status (2)
Country | Link |
---|---|
US (1) | US8117310B2 (en) |
DE (1) | DE102008004658B4 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110154355A1 (en) * | 2009-12-22 | 2011-06-23 | Siemens Aktiengesellschaft | Method and system for resource allocation for the electronic preprocessing of digital medical image data |
DE102011079429A1 (en) * | 2011-07-19 | 2013-01-24 | Siemens Aktiengesellschaft | Performance simulation of medical procedures in a client-server environment |
JP6165468B2 (en) * | 2012-03-05 | 2017-07-19 | 東芝メディカルシステムズ株式会社 | Medical image processing system |
WO2019212182A1 (en) * | 2018-05-04 | 2019-11-07 | Samsung Electronics Co., Ltd. | Apparatus and method for managing a shareable resource in a multi-core processor |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5317733A (en) * | 1990-01-26 | 1994-05-31 | Cisgem Technologies, Inc. | Office automation system for data base management and forms generation |
US5621886A (en) * | 1995-06-19 | 1997-04-15 | Intel Corporation | Method and apparatus for providing efficient software debugging |
JPH11239165A (en) * | 1998-02-20 | 1999-08-31 | Fuji Photo Film Co Ltd | Medical network system |
US6505229B1 (en) * | 1998-09-25 | 2003-01-07 | Intelect Communications, Inc. | Method for allowing multiple processing threads and tasks to execute on one or more processor units for embedded real-time processor systems |
US6470406B1 (en) * | 1999-06-25 | 2002-10-22 | International Business Machines Corporation | Managing isochronous processes in a heterogenous work environment |
US6721948B1 (en) * | 2000-06-30 | 2004-04-13 | Equator Technologies, Inc. | Method for managing shared tasks in a multi-tasking data processing system |
US6687838B2 (en) * | 2000-12-07 | 2004-02-03 | Intel Corporation | Low-power processor hint, such as from a PAUSE instruction |
US7154621B2 (en) * | 2001-03-20 | 2006-12-26 | Lightsurf Technologies, Inc. | Internet delivery of digitized photographs |
US7509671B1 (en) * | 2001-06-20 | 2009-03-24 | Microstrategy Incorporated | Systems and methods for assigning priority to jobs in a reporting system |
US20030120776A1 (en) * | 2001-07-11 | 2003-06-26 | Sun Microsystems, Inc. | System controller for use in a distributed processing framework system and methods for implementing the same |
JP3975703B2 (en) * | 2001-08-16 | 2007-09-12 | 日本電気株式会社 | Preferential execution control method, apparatus and program for information processing system |
US20030069756A1 (en) * | 2001-10-01 | 2003-04-10 | Higginbotham James C. | Emergency department management process |
US7171468B2 (en) * | 2001-11-10 | 2007-01-30 | Kabushiki Kaisha Toshiba | System and method for accessing a document management repository |
US6988139B1 (en) * | 2002-04-26 | 2006-01-17 | Microsoft Corporation | Distributed computing of a job corresponding to a plurality of predefined tasks |
US20040167465A1 (en) * | 2002-04-30 | 2004-08-26 | Mihai Dan M. | System and method for medical device authentication |
US20040001215A1 (en) * | 2002-06-26 | 2004-01-01 | Canon Kabushiki Kaisha | Print control apparatus, print control method, program product, and print system |
US20040205048A1 (en) * | 2003-03-28 | 2004-10-14 | Pizzo Michael J. | Systems and methods for requesting and receiving database change notifications |
JP3951949B2 (en) * | 2003-03-31 | 2007-08-01 | 日本電気株式会社 | Distributed resource management system, distributed resource management method and program |
US7607571B2 (en) * | 2003-05-30 | 2009-10-27 | Intellidot Corporation | Medical work flow system |
KR100529326B1 (en) * | 2003-06-24 | 2005-11-17 | 삼성전자주식회사 | Method and apparatus for processing printing data, and computer-readable recording media for storing computer program |
US7835931B2 (en) * | 2003-10-03 | 2010-11-16 | Meta Command Systems, Inc. | Method and system for network-based, distributed, real-time command and control of an enterprise |
WO2005055116A2 (en) * | 2003-11-26 | 2005-06-16 | Mckesson Automation Inc. | Integrated suite of medical tools |
US20050165881A1 (en) * | 2004-01-23 | 2005-07-28 | Pipelinefx, L.L.C. | Event-driven queuing system and method |
US20060037021A1 (en) * | 2004-08-12 | 2006-02-16 | International Business Machines Corporation | System, apparatus and method of adaptively queueing processes for execution scheduling |
US20060123111A1 (en) * | 2004-12-02 | 2006-06-08 | Frank Dea | Method, system and computer program product for transitioning network traffic between logical partitions in one or more data processing systems |
US7548335B2 (en) * | 2005-02-25 | 2009-06-16 | Microsoft Corporation | Print job queuing and scheduling systems and methods |
US20060224432A1 (en) * | 2005-03-31 | 2006-10-05 | British Telecommunications Public Limited Company | Workflow scheduling system |
US7752622B1 (en) * | 2005-05-13 | 2010-07-06 | Oracle America, Inc. | Method and apparatus for flexible job pre-emption |
US7844968B1 (en) * | 2005-05-13 | 2010-11-30 | Oracle America, Inc. | System for predicting earliest completion time and using static priority having initial priority and static urgency for job scheduling |
DE102005031245B4 (en) * | 2005-07-01 | 2007-11-15 | Siemens Ag | Method for testing a clinical and / or medical technology system and method for controlling medical examination procedures in a clinical and / or medical technology system and corresponding computer program products |
US7937706B2 (en) * | 2005-08-22 | 2011-05-03 | Runtime Design Automation, Inc. | Method and system for performing fair-share preemption |
JP2007122664A (en) * | 2005-10-31 | 2007-05-17 | Sony Computer Entertainment Inc | Information processing method and information processor |
US8185423B2 (en) * | 2005-12-22 | 2012-05-22 | Canon Kabushiki Kaisha | Just-in time workflow |
WO2008084330A2 (en) * | 2006-06-08 | 2008-07-17 | Softmedical, Inc. | Methods and systems for consolidating medical information |
US8392008B2 (en) * | 2006-10-20 | 2013-03-05 | Rockwell Automation Technologies, Inc. | Module arbitration and ownership enhancements |
US20080250418A1 (en) * | 2007-02-08 | 2008-10-09 | Karamchedu Murali M | Health care administration system |
US20080312967A1 (en) * | 2007-05-31 | 2008-12-18 | America Service Group, Inc. | Comprehensive method and system for intake screening and medical records management |
-
2008
- 2008-01-16 DE DE102008004658A patent/DE102008004658B4/en active Active
-
2009
- 2009-01-08 US US12/318,807 patent/US8117310B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
DE102008004658B4 (en) | 2010-03-25 |
US8117310B2 (en) | 2012-02-14 |
US20090182879A1 (en) | 2009-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102005031245B4 (en) | Method for testing a clinical and / or medical technology system and method for controlling medical examination procedures in a clinical and / or medical technology system and corresponding computer program products | |
EP2648122B1 (en) | Method for loading medical image data and device for executing the method | |
DE102005041628B4 (en) | Apparatus and method for processing data of different modalities | |
DE112004001153T5 (en) | Data migration and format transformation system | |
DE102006051189A1 (en) | Application e.g. task flow application, developing method for use in medical field, involves selecting modules suitable for operational environments at runtime, and configuring application such that modules are interconnected | |
DE102006051187A1 (en) | Task flow processing method for client-server-task flow-architecture, involves interrupting generated task flow in definable time and processing task flow at later time point in definable processing instance | |
DE102006004618A1 (en) | Workflow-based management of medical image data | |
DE102008040009A1 (en) | Load-balanced allocation of medical taskflows to servers of a server farm | |
DE10161381A1 (en) | Patient data processing system for automated recording and processing of patient medical notes has a database with standard and routine records corresponding to investigations and treatments that can be applied to individuals | |
DE102009042128A1 (en) | Method and system for using temporary exclusive locks for parallel resource access | |
DE102008004658B4 (en) | Method for the central control of processes in expandable medical platforms | |
DE102007041345B4 (en) | X-Core Image Reconstruction System (IRS) with x-parallel Recon Pipelines | |
DE10119876A1 (en) | Process system and computer program structure for processing job monitoring | |
DE112013003300T5 (en) | Gradual preparation of videos on the delivery | |
EP2648094B1 (en) | Method and system for creating a source code for a computer program for executing and simulating a process | |
DE102019104865A1 (en) | Application delivery device, application delivery method, and application delivery program | |
DE102017203333A1 (en) | A medical image review method and method for adjusting an examination protocol during a medical imaging examination | |
DE112011100098B4 (en) | Efficient multicore processing of events | |
DE102017203315A1 (en) | Method and data processing unit for selecting a protocol for a medical imaging examination | |
DE112019005043T5 (en) | STREAM ALLOCATION USING STREAM CREDIT | |
DE102015221405A1 (en) | Managed image reconstruction for medical imaging | |
DE112019005038T5 (en) | RESOURCE ALLOCATION USING CREDIT WITH DISTRIBUTED SEGMENT PROCESSING | |
EP2479664B1 (en) | System and method for generating a source code for a computer program | |
DE102009035098A1 (en) | Taskflow unit for controlling computer-aided medical tasks within a medical computer network | |
DE10330078A1 (en) | Conference Management: Procedure, System and Data Structure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8364 | No opposition during term of opposition | ||
R081 | Change of applicant/patentee |
Owner name: SIEMENS HEALTHCARE GMBH, DE Free format text: FORMER OWNER: SIEMENS AKTIENGESELLSCHAFT, 80333 MUENCHEN, DE |
|
R081 | Change of applicant/patentee |
Owner name: SIEMENS HEALTHINEERS AG, DE Free format text: FORMER OWNER: SIEMENS HEALTHCARE GMBH, MUENCHEN, DE |