DE3105527A1 - Verfahren zur verbesserung des antwortzeitverhaltens von prozessrechnern - Google Patents

Verfahren zur verbesserung des antwortzeitverhaltens von prozessrechnern

Info

Publication number
DE3105527A1
DE3105527A1 DE19813105527 DE3105527A DE3105527A1 DE 3105527 A1 DE3105527 A1 DE 3105527A1 DE 19813105527 DE19813105527 DE 19813105527 DE 3105527 A DE3105527 A DE 3105527A DE 3105527 A1 DE3105527 A1 DE 3105527A1
Authority
DE
Germany
Prior art keywords
operating system
system kernel
processor
computing
response time
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
DE19813105527
Other languages
English (en)
Inventor
Theodor Dr Tempelmeier
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE19813105527 priority Critical patent/DE3105527A1/de
Publication of DE3105527A1 publication Critical patent/DE3105527A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Description

  • Beschreitungw
  • Erfindung : Verfahren zur Verbesserung des Antwortzeitverhaltens von Prozeßrechnern* Die Erfindung betrifft ein Verfahren zur Verbesserung des Antwortzeitverhaltens von Prozeßrechnern mit Betriebssystem.
  • Das Antwortzeitverhalten ist das wichtigste Leistungsmerkmal von Prozeßrechnern; die Antwortzeiten sind bei dem in Prozeßrechnern vorliegenden Realzeitbetrieb möglichst kurz zu halten.
  • Stand der Technik: Es ist bekannt, daß für den sicheren und einfachen Betrieb eines Prozeßrechners ein Betriebssystem vorteilhaft ist. Die für den Ablauf des Betriebssystems nötige Rechenzeit hat allerdings einen negativen Einfluß auf das Antwortzeitverhalten des Prozeßrechners. Eine Verschlechterung des Antwortzeitverhaltens durch den Ablauf von Prozessen 2.Art (Schale) des Betriebssystems kann zwar im allgemeinen dadurch umgangen werden daß die entsprechende Leistung des Betriebssystems bereits vor der zeitkritischen Phase angefordert und erbracht wird ( z.B. : Prozesse werden rechtzeitig geladen und resident im Arbeitsspeicher gehalten ) ; jedoch hat der Ablauf des Betriebssystemkerns* (Prozesse 1. Art des Betriebssystems) in zweifacher Hinsicht einen bisher unvermeidbaren negativen Einfluß auf das Antwortzeitverhalten in besonders zeitkritischen Fällen 1. Antwortzeiten der Rechenprozesse Die für den Ablauf des Betriebssystemkerns nötige Rechenzeit ist für die Rechenprozesse verloren und hemmt deren Arbeitsfortschritt und verzögert deren Fertigstellung.
  • 2. Reaktionszeiten auf Unterbrechungswünsche Während des Ablaufs von Funktionen des Betriebssystemkerns ist (zumindest teilweise) Unterbrechungssperre nötig, so daß Unterbrechungswünsche nur verzögert behandelt werden können. ( Selbstverständlich könnte man auch während des Ablaufs von Betriebssystemkernfunktionen Unterbrechungen zulassen, wenn die zugehörigen Unterbrechungsantwortprogramme keinen Gebrauch von Daten und Funktionen des Betriebssystemkerns machten; man muß jedoch bei Prozeßrechnern in der Praxis zulassen, * Alle Begriffe werden im Sinne von VDI/VDE-Richtllnle 3554 (Entwurf, 3.80), "Funktionelle Beschreibung von Prozeßrechner-8etriebssystemen", verwendet.
  • daß auch aus Unterbrechungsantwortprogrammen Funktionen des Betriebssystemkerns aufgerfufen werden können, weil nur so der Programmierer der Unterbrechungantwortprogramme eine sichere Verbindung der Unterbrechungssignale zu den Rechenprozessen herstellen kann.) Durch den Einsatz von Multiprozessor-Systemen kann zwar zusätzliche Rechenkapazität bereitgestellt werden , und die Rechenprozesse und die Prozesse 2. Art des Betriebssystems können auf die vorhandenen Prozessoren verteilt werden und teilweise parallel ablaufen. Auf jedem Prozessor bleibt aber in herkömmlichen Systemen der Kern des Betriebssystems ( und damit auch die beschriebene Problematik bezüglich des Antwortzeitverhaltens ) erhalten; die Ursache hierfür ist offenbar, daß gerade bei Prozeßrechnern der Betriebssystemkern aufs engste mit den Rechenprozessen verbunden ist : Es muß nämlich jeder Rechenprozeß Zugang zum Betriebssystemkern haben, damit er mit den anderen# Rechenprozessen geordnet zusammenarbeiten kann, was erforderlich ist, weil ja alle Rechenprozesse an der gleichen Aufgabe (technischer Prozeß) arbeiten. Damit ist bei Prozeßrechnern ständige Kommunikation und Synchronisation der Rechenprozesse#nötig, die über den Betriebssystemkern abgewickelt wird.
  • Zusammenfassend läßt sich also bisher der negative Einfluß des Betriebssystemkerns auf das Antwortzeitverhalten bei Prozeßrechnern nicht vermeiden, auch nicht durch den Einsatz von Multiprozessoren.
  • Aufgabe: Der Erfindung liegt die Aufgabe zugrunde, bei Prozeßrechnern den negativen Einfluß des Betriebssystemkerns auf das Antwortzeitverhalten weitestgehend zu vermeiden.
  • Lösung: Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß für den Ablauf des Betriebssystemkerns des Prozeßrechners ein eigener, zusätzlicher Prozessor, der mit dem Prozeßrechner mit der Möglichkeit zu schneller Kommunikation verbunden ist, verwendet wird.
  • Für eine geeignete Durchführung dieses Verfahrens wird folgende weitere Ausgestaltung vorgeschlagen Der Prozessor, auf dem der Betriebssystemkern abläuft (im folgenden kurz Betriebssystemprozessor genannt), unterbricht den Prozeßrechner immer dann, wenn entsprechend der Strategie des Betriebssystems ein anderer Rechenprozeß fortgesetzt werden soll und führt die die Prozessorzuteilung für den gewtinschten Rechenprozeß durch, gegebenenfalls mit geringfügiger Unterstützung durch den Prozeßrechner. Umgekehrt wird jeder Aufruf einer Betriebssystemkernfunktion am Prozeßrechner sofort dem Betriebssystemprozessor Ubermittelt; hierzu werden die Betriebssystemkernfunktlonen in zwei Gruppen eingeteilt, in solche , die den aufrufenden Rechenprozeß sicher nicht in den Zustand Wwartend Ueberführen (Beispiel: Semaphoroperation V), und in solche, die den aufrufenden Rechenprozeß möglicherweise in den Zustand "wartend" überführen (Beispiel: Semaphoroperation P). Im ersteren Fall werden Aufrufe von Betriebssystemkernfunktlonen sofort zum Betriebssystemprozessor abgesetzt, und der Aufrufer setzt seine Tätigkeit fort; der Betriebssystemprozessor wird den ablaufenden Rechenprozeß jedoch eventuell mit Ende des Ablaufs der aufgerufenen Betri ebssystemkernfunkti on unterbrechen und einen anderen Rechenprozeß fortsetzen. Im letzteren Fall jedoch wird der Aufrufer sofort beim Aufruf angehalten , und ein anderer Rechenprozeß kann vorübergehend fortgesetzt werden; mit Ende des Ablaufs der aufgerufenen Betriebssystemkernfunktion wird dann eventuell vom Betriebssystemprozessor wieder die Fortsetzung eines anderen Rechenprozesses , eventuell auch des vorübergehend angehaltenen Aufrufers, erzwungen.
  • Alle zum Betriebssystemprozessor abgesetzten Aufrufe von Betriebssystemkernfunktionen werden zweckmäßigerweise dort nötigenfalls in einer Eingangswarteschlange gespeichert; damit ist der Betriebssystemprozessor immer bereit,Aufrufe von Betriebssystemkernfunktionen anzunehmen und der Prozeßrechner kann nicht durch den Betriebssystemprozessor aufgehalten werden, solange irgendein lauffähiger Rechenprozeß vorhanden ist.
  • Das beschriebene Verfahren ist offenkundig auch auf Multiprozessoren anwendbar, wobei jedoch die Möglichkeit besteht, für jeden Prozessor einen zusätzlichen Prozessor für den Ablauf des Betriebssystemkerns zu verwenden, oder auch, Gruppen von Prozessoren zusammenzufassen,'iufld jeder Gruppe nur einen zusätzlichen Prozessor für den Ablauf der Betriebssystemkerne zuzuordnen.
  • Vorteile: Die mit der Erfindung erzielbaren Vorteile bestehen insbesondere darin, daß sich das Antwortzeitverhalten von Prozeßrechnern mit Betriebssystem verbessert; es verkürzen sich dle#Ablaufzelten von Rechenprozessen, dadurch daß die für den Ablauf des Betriebssystemkerns nötige Rechenzeit von den Rechenprozessen ausgenützt werden kann; ferner verbessern sich die Reaktionszeiten auf Unterbrechungswünsche, da die während des Ablaufs des Betriebssystemkerns nötigen Ununterbrechbarkei tsphasen am Prozeßrechner entfallen; diese sofortige Reaktion auf Unterbrechungswtinsche ist auch sichergestellt, wenn in dem zugehörigen Unterbrechungsantwortprogramm eine Funktion des Betriebssystemkerns aufgerufen werden soll.
  • Durch die Zweiteilung Rechenprozeß - Betriebssystemkern können ferner Prozessoren mit jeweils für ihre Tätigkeit speziell geeigneten Befehlssätzen eingesetzt werden, was sowohl die Prbgrammerstellung erleichtert als auch die Abläufe von Rechenprozessen und Betriebssystemkern weiter beschleunigt.
  • Ausführungsbeispiele: Das beschriebene Verfahren läßt sich beispielsweise auf folgenden Anordnungen durchführen : 1. Gemeinsamer Speicher Prozeßrechner und Betriebssystemprozessor sind über einen gemeinsamen Speicher verbunden. Dieser dient zur Aufnahme der Parameter von Aufrufen von Betriebssystemkernfunktlonen einerseits und zur Ablage von Information über lauffähige Rechenprozesse andererseits und ermöglicht so die Kommunikation zwischen den beiden Prozessoren. Der gemeinsame Speicher kann relativ klein sein, wenn beide Prozessoren zusätzlich private Speicher zur Verfugung haben.
  • 2. Gemeinsamer Bus Bei Prozeßrechnern mit Bus-Struktur wird der Betriebssystemprozessor ebenfalls an den Bus des Prozeßrechners angeschlossen; die Kommunikation erfolgt dann über den gemeinsamen Bus durch Zugriff auf den Speicher des Prozeßrechners. Wieder ist ein zusätzlicher privater Speicher des Betrlebssystemprozessors, der nicht über den gemeinsamen Bus angesprochen wird und zur Ablage der Daten und des Programmcodes des Betriebssystemkerns dient, vorteilhaft, weil dadurch die Busbelastung gering ist (Nur für die Kommunikation zwischen den beiden Prozessoren wird der Bus von beiden Prozessoren benötigt).
  • In beiden Beispielen wird ein zusätzliches Signal mit der Möglichkeit, den jeweils anderen Prozessor zu unterbrechen, für die Kommunikation vorteilhaft sein (z.B. zur Festlegung von Anfang und Ende einer Kommunikationsphase).
  • Die beschriebenen Anordnungen lassen sich mit den heutigen elektronischen Bauteilen unschwer realisieren.
  • Für beide Beispiele wird ferner vorgeschlagen, für den Betriebssystemprozessor einen Prozessor mit einem speziellen Befehlssatz, der für Betriebssystemabläufe besonders geeignet ist, zu verwenden; beispielsweise wird man auf Befehle für Gleitkomma-Rechenoperationen verzichten können und dafür spezielle Befehle zur Listenverarbeitung vorsehen.

Claims (4)

  1. Patentansprüche Erfindung : Verfahren zur Verbesserung des Antwortzeitverhaltens von Prozeßrechnern* Patentansprüche : Verfahren zur Verbesserung des Antwortzeitverhaltens von Prozeßrechnern mit Betriebssystem, dadurch gekennzeichnet, daß für den Ablauf des Betriebssystemkerns* des Prozeßrechners ein eigener, zusätzlicher Prozessor, der mit dem Prozeßrechner mit der Möglichkeit zu schneller Kommunikation verbunden ist, verwendet wird.
  2. 2. Verfahren nach 1., dadurch gekennzeichnet, daß bei Aufrufen von Funktionen des Betriebssystemkerns der aufrufende Rechenprozeß sofort nach Absenden des Aufrufs fortgesetzt wird, falls die aufgerufene Betrlebssystemkernfunktion von einem Typ ist, der den Aufrufer sicher nicht in einen Wartezustand versetzt, während andererseits der aufrufende Rechenprozeß sofort beim Aufruf (vorübergehend) angehalten wird, falls die aufgerufene ßetrlebssystemkernfunktion von einem Typ ist, der den Aufrufer möglicherweise in einen Wartezustand versetzen kann, in welchem Fall ein anderer Rechenprozeß vorübergehend bearbeitet werden kann und über die Fortsetzung des Aufrufers endgültig erst mit Ende des Ablaufs der aufgerufenen Betriebssystemkernfunktion entschieden wird.
  3. 3. Verfahren nachl., dadurch gekennzeichnet, daß die Aufrufe von Betriebssystemkernfunktionen am Prozessor für den Ablauf des Betriebssystemkerns in einer Eingangs-Warteschlange gespeichert werden, wodurch der Prozeßrechner nicht durch den Prozessor für den Ablauf des Betriebssystemkerns aufgehalten werden kann, solange irgendein lauffähiger Rechenprozeß am Prozeßrechner vorhanden ist.
  4. 4. Verfahren nach 1., dadurch gekennzeichnet, daß in einem Multiprozessorsystem, in dem auf Prozessoren ein oder mehrere Rechenprozesse und ein Betriebssystemkern ablaufen, für jeden dieser Prozessoren oder aber auch für Gruppen derartiger Prozessoren je ein zusätzlicher Prozessor für den Ablauf des Betriebsystemkerns verwendet wird.
    * Alle Begriffe werden im Sinne von VDI/VDE-Richtlinie 3554 (Entwurf, 3.80), "Funktionelle Beschreibung von Prozeßrechner-Betrfebssystemen, verwendet.
DE19813105527 1981-02-16 1981-02-16 Verfahren zur verbesserung des antwortzeitverhaltens von prozessrechnern Withdrawn DE3105527A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19813105527 DE3105527A1 (de) 1981-02-16 1981-02-16 Verfahren zur verbesserung des antwortzeitverhaltens von prozessrechnern

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19813105527 DE3105527A1 (de) 1981-02-16 1981-02-16 Verfahren zur verbesserung des antwortzeitverhaltens von prozessrechnern

Publications (1)

Publication Number Publication Date
DE3105527A1 true DE3105527A1 (de) 1982-09-09

Family

ID=6124951

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19813105527 Withdrawn DE3105527A1 (de) 1981-02-16 1981-02-16 Verfahren zur verbesserung des antwortzeitverhaltens von prozessrechnern

Country Status (1)

Country Link
DE (1) DE3105527A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2604543A1 (fr) * 1986-09-30 1988-04-01 Sfena Procede et dispositif pour l'optimalisation des performances de primitives temps reel d'un noyau d'executif temps reel sur des structures multiprocesseurs
WO1988005944A1 (en) * 1987-02-06 1988-08-11 American Telephone & Telegraph Company Multiprocessing method and arrangement
WO1988005943A1 (en) * 1987-02-06 1988-08-11 American Telephone & Telegraph Company Multiprocessing method and arrangement

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2604543A1 (fr) * 1986-09-30 1988-04-01 Sfena Procede et dispositif pour l'optimalisation des performances de primitives temps reel d'un noyau d'executif temps reel sur des structures multiprocesseurs
EP0264317A1 (de) * 1986-09-30 1988-04-20 Sextant Avionique S.A. Vorrichtung zur Optimierung des Leistungsvermögens von Echtzeit-Primitivoperationen eines Echtzeitsteuerprogrammkerns auf Multiprozessorarchitekturen
WO1988005944A1 (en) * 1987-02-06 1988-08-11 American Telephone & Telegraph Company Multiprocessing method and arrangement
WO1988005943A1 (en) * 1987-02-06 1988-08-11 American Telephone & Telegraph Company Multiprocessing method and arrangement
US5109329A (en) * 1987-02-06 1992-04-28 At&T Bell Laboratories Multiprocessing method and arrangement

Similar Documents

Publication Publication Date Title
DE10085374B4 (de) Systemmanagementspeicher für die Systemmanagement-Interrupt-Behandler wird in die Speichersteuereinrichtung integriert, unabhängig vom BIOS und Betriebssystem
DE2411963C3 (de) Elektronische Datenverarbeitungsanlage mit einer Prioritätssteuerschaltung mit änderbaren Steuerblöcken
DE2839726C2 (de) Multiprozessoranlage mit verteilter Steuerarchitektur
EP0006164B1 (de) Multiprozessorsystem mit gemeinsam benutzbaren Speichern
DE2953861C2 (de)
DE1524166B1 (de) Schaltungsanordnung zur Herstellung von Verbindungen zwischen mehreren unabhaengigen Teilen und einem gemeinsamen Teil einer Datenverarbeitungsanlage
DE3735828C2 (de) Verfahren zur Wiederaufnahme der Ausführung von Anweisungen nach einer Unterbrechung in einer mikroprogrammgesteuerten Datenverarbeitungsvorrichtung
DE2835095A1 (de) Gekoppeltes, mikroprogrammiertes prozessorsystem
DE3726168A1 (de) Verfahren und vorrichtung zur steuerung der datenuebertragung zwischen speichern eines datenverarbeitungssystems
DE60027357T2 (de) Eine Unterbrechungssteuerung und ein Mikrorechner, der diese Unterbrechungssteuerung beinhaltet
CH668834A5 (de) Verfahren zum kanalisieren des datenstroms von einer mehrzahl datenquellen an einen datenschreiber und einrichtung zur ausfuehrung dieses verfahrens.
DE2101949A1 (de) Verfahren zum Schutz von Datengruppen in einer Multiprocessing-Datenverarbeitungsanlage
DE3113188C2 (de) Vorrichtung zur Verwaltung der Informationsüberführung in einer Informationsverarbeitungsanlage
DE10063915B4 (de) Informationsverarbeitungsgerät, das eine Mehrzweckverarbeitung und Transaktionsverarbeitung ausführt
DE2745204A1 (de) Mikroprogramm-leitwerk fuer eine datenverarbeitungsanlage
DE3105527A1 (de) Verfahren zur verbesserung des antwortzeitverhaltens von prozessrechnern
DE2658950A1 (de) Mikroprogrammierte verarbeitungseinheit sowie verfahren zur organisation derselben
DE3025167C2 (de) Datenverarbeitungseinrichtung
DE2900460A1 (de) Warteschlangenstruktur
DE2507405C2 (de) Anordnung zum Synchronisieren gleichzeitig auszuführender Tasks für Peripheriegeräte einer Datenverarbeitungsanlage
DE2359037A1 (de) Mikroprogrammrechnereinrichtung
DE3015876A1 (de) Anordnung und verfahren zur einen digitalprozessor zur vorauslesung eines operationscodeteils und eines operandenteils eines befehlswortes
DE2216533C3 (de) Anordnung zur Steuerung der Durchführung mehrerer Aufgaben in einer DTENVERARBEITUNGSANLAGE
DE2951405A1 (en) A computer system having enhancement circuitry for memory accessing
EP0537302A1 (de) Verfahren zur bearbeitung eines benutzerprogramms auf einem parallelrechnersystem.

Legal Events

Date Code Title Description
OR8 Request for search as to paragraph 43 lit. 1 sentence 1 patent law
8139 Disposal/non-payment of the annual fee