-
TECHNISCHES GEBIET
-
Die
vorliegende Erfindung betrifft in einem Mehraufgabensystem eine
Aufgabenmanagementvorrichtung, welche eine der Menge von Systemressourcen
entsprechende Ausführungssicherheitsfunktion
aufweist, und eine Vorrichtung zum Bestimmen der Ausführbarkeit
eines Programms.
-
STAND DER TECHNIK
-
Bei
der Zwischen-Computerkommunikation hat es eine deutliche Zunahme
der Nachfragen nach Durchführen
der Kommunikation von Echtzeitinformationen für Video und Audio in den letzten
Jahren gegeben. Mit Echtzeitkommunikationsdatenstationen beispielsweise
zum Umgang mit Video und Audio ist es notwendig, eine Vielzahl von
Aufgaben wie Aufgaben zum Empfangen von Video- und Audioinformationen
von einer anderen Datenstation, Aufgaben zum Anzeigen von empfangenen
Informationen und Aufgaben zum Übertragen
von Informationen an eine andere Datenstation auszuführen. Demgemäß wird diese
Datenstation ein Mehraufgabensystem zum Ausführen einer Vielzahl von Aufgaben,
die eine Echtzeitverarbeitung benötigen, und wird benötigt, um
eine Dienstqualität
bzw. Servicequalität
(QoS: Qualität
des Service) sicherzustellen.
-
Bei
dieser Art von Mehraufgabensystem wird als Technologie zum Sicherstellen
von Dienstqualität eine
Aufgabenprioritätseinstellungsfunktion
eines OS (Betriebssystem) verwendet, um die Priorität von Aufgaben
einzustellen, die erforderlich sind, um in Echtzeit behandelt zu
werden, um Video und Audio höher
als für
andere Aufgaben zu behandeln, und eine Technik zum Vergeben eines
Vorrangs zum Verarbeiten von Aufgaben mit stark verzögerten Aufforderungen
wird im allgemeinen verwendet. Ebenso wurde als eine andere Technik
zum Sicherstellen der Dienstqualität ein Verfahren in einer Aufgabe
vorgeschlagen, welche eine Ausführungsbestimmungszielzeit
eingestellt hat, indem die Verarbeitung in einer priorisierten Weise
ausgeführt
wird, so dass die Priorität
erhöht
wird, wenn diese Ausführungsbestimmungszielzeit
annähernd
erreicht wird, wobei die Fertigstellung der Aufgabenverarbeitung
bis zu der Ausführungsbestimmungszielzeit
bewirkt wird (
Japanisches Patent
Offenlegung Nr. Sho. 62-284437 ).
-
Es
wurde ebenso ein Mehraufgabensystem zum Ausführen periodische Aufgaben und
Ausführen der
Aufgaben, welche eine Verzögerungssicherung von
der Ausführungszeit
benötigen,
als ein Aufgabenmanagementverfahren vorgeschlagen, um die Dienstqualität eines
Anwendungsprogramms zu steuern, indem die Aufgabenverzögerung von
allen Aufgaben, die eine Verzögerungssicherungs-
und Steuerungsausführung
von Aufgaben benötigen,
sichergestellt wird (beispielsweise das
japanische Patent Offenlegung Nr. Hei. 10-171667 ).
Es wurde ebenso in einem Mehraufgabensystem ein Mehraufgabensystem
zum automatischen Korrigieren der erforderlichen Verarbeitungszeit
und zulässigen
Verzögerungszeit,
die für
jede Aufgabe eingestellt wird, auf der Basis der tatsächlichen
Aufgabenverarbeitungszeit und zum Auszuführen von Aufgaben vorgeschlagen
(
Japanisches Patent Offenlegung
Nr. He. 11-259311 ). Es gibt ebenso eine neue Berechnung der
Periode, die bei der Ausführung
einer Aufgabe verwendet wird, der erforderlichen Verarbeitungszeit und
zulässigen
Verzögerungszeit
basierend auf der tatsächlichen
Pe riode und Verarbeitungszeit jener Aufgabe während des Betriebs (
Japanisches Patent Offenlegung
Nr. 2000-56989 ).
-
Jedoch
ist es mit jeder dieser verwandten Techniken, wenn die gesamte Bedarfsressourcenmenge
für Aufgaben,
die eine Ausführungssicherstellung
benötigen,
die Ressourcenmenge, die von einem System zu jenem Zeitpunkt bereitstellbar
ist, überschreitet,
kann das System die Kapazität überschreitende
Aufgaben ausführen,
nicht möglich,
Aufgaben mit niedriger Priorität
oder Aufgaben, welche eine neue Ausführungsreservierung benötigen, auszuführen, oder
es ist nicht möglich,
alle Aufgaben auszuführen,
und es wird unmöglich,
innerhalb einer bestimmten Fristzulassungsverzögerung auszuführen.
-
Beispielsweise
ist es, wie in 9(a) dargestellt ist,
falls eine Ressourcenmenge R1, welche ein System zu einem besonderen
Zeitpunkt vorsehen kann, größer ist
als die gesamte Bedarfsressourcenmenge der erforderlichen Aufgaben
r1 + r2, möglich für das System,
alle Aufgaben auszuführen,
welche eine Ausführung
erfordern. Jedoch wird von diesem Zustand in dem Fall, dass eine
zusätzliche
Aufgabenverarbeitung für
die Bedarfsressourcenmenge r3 notwendig ist, wie in 9(b) dargestellt
ist, da die gesamte Bedarfsressourcenmenge r1 + r2 + r3 größer ist
als die Ressourcenmenge R1, welche vorgesehen werden kann, entweder
der Empfang von zusätzlichen
Aufgaben zurückgewiesen
werden oder der Empfang von allen Aufgaben zurückgewiesen werden.
-
Indem
ferner, wie in 10(a)–(c) dargestellt ist,
ein Fall von Aufgaben A1, A2 und A3 genommen wird, wo die Periode
auf S1 eingestellt wird, die erforderliche Verarbeitungszeit auf
T1 eingestellt und die Frist (zulässige Zeit oder zulässige Verzögerungszeit,
so dass, falls die Verarbeitung inner halb jener Zeit fertiggestellt
wird, die Qualität
erfüllt
ist) auf H1 eingestellt wird, da die Aufgabe A1 und die Aufgabe A2
jeweilige Fristen erfüllen
können,
wenn sie beide in dieser Reihenfolge ausgeführt werden (die Verarbeitung
endet vor der Frist), können
sie zusammen ausgeführt
werden. Jedoch ist es in dem Fall, dass die Aufgaben A1, A2 und
A3 in dieser Reihenfolge ausgeführt
werden, auch wenn die Fristen für
die Aufgaben A1 und A2 erfüllt
sind, da die Frist für
die Aufgabe A3 nicht erfüllt
werden kann, unmöglich,
die Aufgabe A3 auszuführen.
-
Ebenso
kann, wenn eine spezifische Anwendung tatsächlich in Betrieb ist, beispielsweise
wenn eine neue Aufgabe hinzugefügt
wird oder wenn einige Aufgaben (oben beschriebene Aufgaben A1 und A2)
korrigiert werden, in dem Fall, dass die Aufgabenstruktur jener
Anwendung modifiziert wird, falls die Anwendung nach jener Modifikation
tatsächlich veranlaßt wird,
mit jenem Mehraufgabensystem zu operieren, die Möglichkeit der Ausführung jener
Aufgabe nicht bewertet werden. Demgemäß ist es in der Entwicklungsstufe
einer Anwendung notwendig, wiederholt die Installation und funktionale
Verifikation von Prototypen vielfach auszuführen, wobei somit die Entwicklungsperiode
verlängert
wird, und insbesondere in Fällen
wie bei portablen Telephonen, welche eine Funktion zum Herunterladen
von Anwendungen aufweisen, ist es sehr kompliziert in Fällen, wo
sowohl die Übertragungs-
als auch Empfangsseiten verschiedene Hardware-Strukturen aufweisen.
-
Die
US-A-5 794 036 offenbart
ein periodisches Prozeßlaststeuerungssystem
zum Steuern einer Last einer CPU in Verbindung mit einer Ausführung eines
periodischen Prozesses in einem Mehrfach-Prozeßbetriebssystem. Der periodische
Prozess umfaßt
einen weichen Echtzeitprozeßabschnitt, der
in der Lage ist, eine Auswahl der Ausführung und Weglassung von Verarbeitungen,
eine selektive Ausführung
unter einer Vielzahl von Verarbeitungen, die unterschiedlich bezüglich der
Last sind, oder eine Auswahl der Häufigkeit einer Ausführung von
Verarbeitungen durchzuführen,
und einen Laststeuerungsabschnitt, der wirksam ist, sooft der Fall
auftritt, bei dem ein Zeitintervall zwischen einer vorherigen Betriebszeit
und einer laufenden Betriebszeit gemessen wird, um einen Lastevaluierungswert
zu evaluieren, der aus einem Häufungswert
aus einer Vielzahl von vergangenen Zeitintervallen besteht, um den
weichen Echtzeitprozeßabschnitt
anzuweisen, die Auswahl der Ausführung
und Weglassung von Verarbeitungen, die selektive Ausführung einer
bestimmten Verarbeitung unter der Vielzahl von Verarbeitungen oder
die Auswahl der Häufigkeit
einer Ausführung von
Verarbeitungen entsprechend dem Lastevaluierungswert durchzuführen.
-
OFFENBARUNG DER ERFINDUNG
-
Ein
Ziel der vorliegenden Erfindung besteht darin, Mittel vorzusehen,
die in der Lage sind, eine Kompatibilität zwischen dem Sicherstellen
einer Aufgabenverzögerung
und einer effizienten Ausführung von
Aufgaben zu erzielen.
-
Dieses
Ziel wird erreicht durch eine Aufgabenmanagementvorrichtung gemäß Anspruch
1, ein Aufgabenmanagementverfahren gemäß Anspruch 13 und ein Computerprogrammprodukt
gemäß Anspruch
20.
-
Gemäß den Ausführungsformen
der Erfindung sind Mittel vorgesehen, die in der Lage sind, die Ausführbarkeit
eines Bestimmungsobjektprogramms wie eine Anwendung schnell zu bestimmen.
-
Während einer
Aufgabe gibt es nicht wenige Fälle,
wo einem Anwender erlaubt ist, die Ausführungsqualität um ein
bestimmtes Maß zu
verringern, wie zum Beispiel die Auflösung eines Bilds oder die Frame-Rate
eines Videos (Anzahl von Bildern pro Sekunde). Demgemäß ist es
unvernünftig,
Aufgaben von niedriger Priorität
oder Aufgaben zurückzuweisen,
die neu geplant werden müssen,
auch wenn es Abschnitte gibt, welche in Aufgaben mit hoher Priorität oder Aufgaben,
welche laufend ausgeführt
werden, entfernt werden können.
-
Gemäß der Erfindung
wird dieser Punkt behandelt, indem jener Teil der Aufgaben in gesicherte Abschnitte
und steuerbare Abschnitte aufgeteilt wird und indem eine schrittweise
Art eingestellt wird, und indem dann die letzteren Abschnitte ausgebildet
werden, welche gesteuert werden können, das bedeutet, hinzugefügt, gelöscht, vergrößert oder
reduziert und zwar in Abhängigkeit
von der Situation. In spezifischer Weise bestimmt eine Bestimmungseinrichtung die
Ausführbarkeit
jeder Aufgabe, indem eine Verarbeitungsstufe von zumindest einigen
Aufgaben, welche innerhalb eines Bereichs von steuerbaren Abschnitten
reserviert wurden, virtuell aktualisiert wird basierend auf der
Bedarfsressourcenmenge von jeder Aufgabe, und eine Aufgabenauswahleinrichtung führt die
Auswahl einer Aufgabe aus, welche ein Ausführungsobjekt in der Verarbeitungsstufe
bilden wird, das als ausführbar
bestimmt wird, das bedeutet, dass auch, wenn es externe Zwänge wie
die Systemressourcenmenge, die Fristen von jeder Aufgabe und die
Ausführungsperiode
bezüglich
geplanter Aufgaben gibt, durch Einstellung der Qualität es möglich ist,
Aufgaben mit niedriger Priorität
und Aufgaben zu empfangen und auszuführen, welche erneut eine Planung
benötigen,
und es ist möglich,
eine Kompatibilität
zwischen einer Sicherstellung einer Aufgabenver zögerung und einer effizienten
Ausführung von
Aufgaben zu erzielen.
-
Die
Bestimmungsverarbeitung und Qualitätseinstellung können ausgeführt werden,
indem steuerbare Abschnitte hinzugefügt oder gelöscht werden. In spezifischer
Weise werden, wie in 4(a) dargestellt
ist, Bedarfsressourcenmengen r1, r2 für jede Aufgabe vorher aufgeteilt
in Bedarfsressourcenmengen r1a, r2a, die sich auf gesicherte Abschnitte
beziehen, und Bedarfsressourcenmengen r1b, r2b, die sich auf steuerbare
Abschnitte beziehen, und wenn es beispielsweise notwendig ist, eine
neue Aufgabe (4(b)) zu registrieren,
welche eine Bedarfsressourcenmenge r3 aufweist, wird zuerst bestimmt,
ob gesicherte Abschnitte und steuerbare Abschnitte aller erforderlichen
Aufgaben (Bedarfsressourcenmenge r1 + r2 + r3) ausführbar sind
oder nicht, und wenn sie als ausführbar bestimmt werden, werden
jene gesicherten Abschnitte und steuerbaren Abschnitte ausgewählt. Andererseits
wird in dem Fall, dass bestimmt wird, dass gesicherte Abschnitte
und steuerbare Abschnitte nicht ausführbar sind, dann bestimmt,
ob lediglich die gesicherten Abschnitte aller benötigten Aufgaben
ausführbar
sind oder nicht (4(c)), die Bedarfsressourcenmengen
(r1a + r2a + r3a) ausführbar
sind, und in dem Fall, dass sie als ausführbar bestimmt sind, wird lediglich
der gesicherte Abschnitt von jeder Aufgabe ausgewählt. Auf
diese Weise ist es, da die Bedarfsressourcenmenge eingestellt wird,
indem steuerbare Abschnitte hinzugefügt oder gelöscht werden, möglich, dieselben
Effekte, wie oben erwähnt
wurde, mit einer einfachen Struktur zu erzielen.
-
Gemäß einer
Ausführungsform
der Erfindung ist es, da die Verarbeitungsstufe virtuell für alle geplanten
Aufgaben eingestellt wird, zulässig,
eine große
Variation bezüglich
der Be darfsressourcenmenge als Folge einer großen Einstellungsmenge aufzuweisen.
-
Die
Bestimmung mittels der Bestimmungseinrichtung der vorliegenden Erfindung
wird ausgeführt,
wenn eine Veränderung
hinsichtlich der Bedarfsressourcenmenge vorweggenommen wird, jedoch
ist es insbesondere bevorzugt, solange es ebenso möglich ist,
die Bestimmung auszuführen, wenn
es nötig
ist, um eine Anzahl von Aufgaben, die Verarbeitungsobjekte bilden,
zu ändern,
und die Bestimmung auszuführen,
wenn es nötig
ist, um die Parameter in zumindest einigen Aufgaben zu ändern. Ebenso
sind Parameter vorzugsweise zumindest einige Aufgabenfristen und
zumindest einige Aufgabenausführungsperioden.
-
Gemäß einer
Ausführungsform
der Erfindung ist es, da die Aufgabenauswahleinrichtung eine ein
Ausführungsobjekt
bildende Aufgabe unter Verwendung des gesicherten Objektbezeichners
auswählen
kann, möglich,
dieselben Effekte, wie oben beschrieben wurde, mit einer einfachen
Struktur zu erzielen.
-
Gemäß einer
Ausführungsform
der Erfindung ist es als Folge der Bestimmungseinrichtung, welche
steuerbare Abschnitte von Aufgaben, die Ausführungsobjekte darstellen, unter
Verwendung des Reihenfolgebezeichners und gemäß dieser Auswahlreihenfolge
auswählt,
und die Auswahl und die Bestimmung erprobt, während das Auswahlobjekt geändert wird,
möglich,
die Bedarfsressourcenmenge für
diese Aufgabe noch feiner einzustellen.
-
Gemäß einer
Ausführungsform
der Erfindung kann, da eine Vielzahl von Aufgaben, die eine Haupt-/Unterordnungsbeziehung
aufweisen, zusammen verarbeitet werden als gesicherte Abschnitte und
steuerbare Abschnitte unter Verwendung des Haupt-/Unteraufgabenbezeichners,
die Verarbeitung eines steu erbaren Abschnitts innerhalb einer Aufgabe
und die Verarbeitung einer Haupt-/Unterordnungsbeziehung zwischen
den Aufgaben ausgeführt werden,
indem ein gewöhnlicher
Algorithmus verwendet wird.
-
Gemäß einer
Ausführungsform
der Erfindung kann, falls ein Reihenfolgebezeichner zum Bezeichnen
einer Reihenfolge aus einer Vielzahl von steuerbaren Abschnitten,
die in einer Aufgabe enthalten sind, vorgesehen ist, ein auszuführendes
Programm und verschiedene Aufgabeninformationen, die in dem Programm
enthalten sind, als eine Gruppe behandelt werden.
-
Außerdem ist
es, falls ein in Beziehung zu dem Aufgabenmanagementverfahren der
vorliegenden Erfindung verwendetes Programm versehen ist mit dem
gesicherten Objektbezeichner, um zu bewirken, dass eine vorgeschriebene
Hauptaufgabe von dem System als ein gesicherter Abschnitt erkannt wird,
und um zu bewirken, dass eine Unteraufgabe, welche Ausführungsbedingungen
der Hauptaufgabe bildet, von dem System als ein steuerbarer Abschnitt erkannt
wird, da es möglich
ist, eine Vielzahl von Aufgaben mit einer Haupt-/Unter-Beziehung
zusammen als gesicherte Abschnitte und steuerbare Abschnitte unter
Verwendung eines Haupt-/Unteraufgabenbezeichners zu verarbeiten,
möglich,
die Verarbeitung für
steuerbare Abschnitte innerhalb einer Aufgabe und die Verarbeitung
für eine
Haupt-/Unterordnungsbeziehung
zwischen den Aufgaben auszuführen,
indem ein gewöhnlicher
Algorithmus verwendet wird. Andererseits ist es anstelle des gesicherten
Objektbezeichners möglich,
einen Haupt-/Unteraufgabenbezeichner zum Verarbeiten einer Haupt-/Unter-Beziehung
vorzusehen.
-
Gemäß einer
Ausführungsform
der Erfindung können
Strukturinformationen eines Bestimmungsobjektprogramms, das bedeutet, Informationen
hinsichtlich der Verknüpfung
zwischen Aufgaben, und Bedarfsressourcenmengeninformationen für jede Aufgabe
ermittelt werden und basierend auf diesen Informationen extrahiert
eine Funktionsextraktionseinrichtung Kombinationen von Aufgaben, die
eine einzelne Funktion sein können,
durch gleichzeitige Ausführung.
Dann bestimmt die Bestimmungseinrichtung die Ausführbarkeit
bezüglich
aller dem Objektbestimmungsprogramm gehörenden Funktionen basierend
auf den extrahierten Aufgabenkombinationen und der Bedarfsressourcenmengeninformationen.
Demgemäß kann,
da es möglich ist,
die Ausführbarkeit
zu bestimmen, ohne tatsächlich
Operationen bzw. Betriebsvorgänge
eines Bestimmungsobjektprogramms auszuführen, die Bestimmung der Ausführbarkeit
beschleunigt werden.
-
Gemäß einer
Ausführungsform
der Erfindung korrigiert, wenn die Bestimmung durch die Bestimmungseinrichtung
nicht ausführbar
ist, eine Bedarfsressourcenmenge-Korrektureinrichtung die Bedarfsressourcenmenge
für variable
Aufgaben und bestimmt ferner die Ausführbarkeit basierend auf der Bedarfsressourcenmenge
nach der Korrektur. Demgemäß ist es,
selbst wenn einmal bestimmt ist, dass eine Ausführung nicht möglich ist,
wird es einmal als Folge einer sich geringfügig ändernden Dienstqualität bestimmt
werden, dass eine Ausführung
möglich ist,
möglich,
die Anzahl von Prozessen für
eine Betriebsvorgangsbestätigung
aufgrund der Realisierung jenes Typs der Änderungen zu reduzieren.
-
Gemäß einer
Ausführungsform
der Erfindung ist es, da die Ausführbarkeit bestimmt wird, wenn
eine Vielzahl von Bestimmungsobjektprogrammen parallel ausgeführt wird,
möglich,
eine gute Wiederholbarkeit von äußeren Bedingungen
zu dem Zeitpunkt der Ausführung
des Bestimmungsobjektprogramms zu erzie len, und es ist möglich, eine
korrekte Betriebsvorgangsbestimmung auszuführen.
-
Gemäß einer
Ausführungsform
der Erfindung kann ein in Bezug auf die Aufgabenmanagementvorrichtung
der vorliegenden Erfindung verwendetes Programm mit einer Strukturinformationsspeichereinrichtung
zum Speichern von Strukturinformationen um das Bestimmungsobjektprogramm
herum versehen werden, während,
falls die Bedarfsressourcenmengeninformationsspeichereinrichtung
zum Speichern von Informationen um eine Ressourcenmenge herum, die
zur Ausführung
von jeder Funktion erforderlich sind, vorgesehen wird, es möglich ist,
ein auszuführendes
Bestimmungsobjektprogramm und Aufgabeninformationen, die in dem Programm
enthalten sind, als eine Gruppe zu behandeln.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist
ein Blockdiagramm eines Mehraufgabensystems bezüglich einer ersten Ausführungsform
der vorliegenden Erfindung.
-
2 ist
eine erläuternde
Zeichnung, welche eine Aufgabenmanagementtabelle zeigt.
-
3 ist
ein Blockdiagramm, das eine Aufgabenempfangsverarbeitung der ersten
Ausführungsform
zeigt.
-
4 ist
eine erläuternde
Zeichnung, welche den Betrieb der vorliegenden Erfindung zeigt.
-
5 ist
eine erläuternde
Zeichnung, welche den Betrieb der ersten Ausführungsform zeigt.
-
6 ist
ein Blockdiagramm, das eine Bildanzeigeverarbeitung der ersten Ausführungsform zeigt.
-
7 ist
ein Blockdiagramm, das eine Fristenaktualisierungsempfangsverarbeitung
einer zweiten Ausführungsform
zeigt.
-
8 ist
ein Blockdiagramm, das eine Periodenaktualisierungsempfangsverarbeitung
einer dritten Ausführungsform
zeigt.
-
9 ist
eine erläuternde
Zeichnung, welche ein Beispiel einer Aufgabenempfangsverarbeitung
vor der Verbesserung der vorliegenden Erfindung zeigt.
-
10 ist
eine erläuternde
Zeichnung, welche ein anderes Beispiel einer Aufgabenempfangsverarbeitung
vor der Verbesserung der vorliegenden Erfindung zeigt.
-
11 ist
ein Blockdiagramm einer Betriebsbestimmungsvorrichtung bezüglich einer
vierten Ausführungsform
der vorliegenden Erfindung.
-
12 ist
eine erläuternde
Zeichnung, welche ein Beispiel einer Aufgabenmanagementtabelle zeigt.
-
13 ist
ein Baumdiagramm, welches ein Beispiel einer Aufgabenstruktur bezüglich der
vierten Ausführungsform
zeigt.
-
14 ist
ein Blockdiagramm, das eine Betriebsbestimmungsverarbeitung bezüglich der
vierten Ausführungsform
zeigt.
-
15 ist
ein Blockdiagramm, das eine Betriebsbestimmungsverarbeitung bezüglich einer
fünften
Ausführungsform
zeigt.
-
BEVORZUGTER MODUS ZUM AUSFÜHREN DER ERFINDUNG
-
Jeweilige
Ausführungsformen
der vorliegenden Erfindung werden im folgenden unter Bezugnahme
auf die Zeichnungen beschrieben werden.
-
Erste Ausführungsform
-
In 1 weist
ein Mehraufgabensystem 1 einer Ausführungsform der vorliegenden
Erfindung eine CPU 2, einen Timer bzw. Zeitgeber 3,
eine Speichervorrichtung 4 wie eine Festplatte etc., einen Speicher 5,
ein Netzwerk 11 und eine Netzwerk-Steuerungseinrichtung 6, welche
eine Schnittstelle zu dem Netzwerk 11 bildet, auf. Die
CPU 2, der Timer 3, die Speichervorrichtung 4,
der Speicher 5 und die Netzwerk-Steuerungseinrichtung 6 sind
durch einen internen Bus 7 verbunden.
-
Der
Timer bzw. Zeitgeber 3 wird wiederholt getaktet bis zu
einer eingestellten bestimmten Zeit und ist in der Lage, die CPU 2 von
dem Ablauf einer bestimmten Zeit zu benachrichtigen, indem die CPU 2 zu
jedem gesetzten Zeitpunkt unterbrochen wird. Ein Aufgabenprogramm
etc. wird in der Speichervorrichtung 4 gespeichert und
der Speicher 5 wird, soweit benötigt, gelesen.
-
Beim
Realisieren einer Aufgabenmanagement-Funktion der vorliegenden Erfindung
ist eine CPU-Steuerung notwendig. Um dies zu bewerkstelligen, ist
es notwendig, ein Aufgabenmanagement in einem OS (Betriebssystem)
zu inkorporieren. Demgemäß exis tieren
ein Aufgabenempfangsprogrammspeicherabschnitt 8 zum Speichern
eines Aufgabenempfangsprogramms, um eine Aufgabenempfangsverarbeitung
zu bewirken, welche später
beschrieben werden wird, die von der CPU 2 auszuführen ist, und
ein Aufgabenausführungsprogrammspeicherabschnitt 9 zum
Speichern eines Aufgabenausführungsprogramms,
um eine Aufgabenausführungsverarbeitung
zu bewirken, die von der CPU 2 auszuführen ist, in einem Bereich
in dem Speicher 5, wo das OS geladen ist. Durch Laden dieser
Programme von der Speichervorrichtung 4 in die Speicherabschnitte 8 und 9 sind
die Aufgabenmanagementfunktionen der vorliegenden Erfindung in dem
OS inkorporiert.
-
Als
Ressourcenmenge dieser Ausführungsform
wird die Nutzungszeit der CPU 2 verwendet. Als die Ressourcenmenge
der vorliegenden Erfindung ist es ebenso möglich, selektiv die gesamte
Nutzungszeit oder Speicherkapazität von Vorrichtungen außer der
CPU 2 zu verwenden wie die Speichervorrichtung 4,
der Speicher 5 oder ein nicht dargestellter Videospeicher,
die Netzwerkkommunikationsgeschwindigkeit, die Netzwerksserver-Speicherkapazität, die Speicherkapazität oder die
Hardware-Ressourcen oder
Software-Ressourcen, die erforderlich sind, um eine spezifische
Aufgabe auszuführen.
Verschiedene Ressourcenmengen können
entsprechend dem Aufgabentyp oder der Funktion verwendet werden.
Beispielsweise kann in dem Fall, wo sich eine Aufgabe auf das Datenlesen
bezieht, die Ressourcenmenge eine Festplattenspeicherkapazität und Nutzungszeit und
Kapazität
des Speichers sein, während
in dem Fall, wo sich eine Aufgabe auf die Signalverarbeitung bezieht,
die Ressourcenmenge die Nutzungszeit der CPU 2 und die
Nutzungszeit und Speicherkapazität des
Speichers sein kann, und in dem Fall, wo sich eine Aufgabe auf die
Bildausgabe bezieht, kann die Ressourcenmenge die Nutzungszeit der
CPU 2, die Nut zungszeit und Speicherkapazität des Speichers und
die Nutzungszeit und Speicherkapazität des Videospeichers sein.
-
Mit
dieser Ausführungsform
werden ein gesicherter Abschnitt und ein steuerbarer Abschnitt im voraus
für jede
Aufgabe eingestellt. Beispielsweise ist in dem Fall, wo eine Aufgabe
ein Audio-Wiedergabeprogramm ist, der gesicherte Abschnitt ein Verarbeitungsabschnitt,
der sich auf eine Dekodierungsverarbeitung bezieht, und der steuerbare
Abschnitt ist ein Verarbeitungsabschnitt, der sich auf eine Ergänzungsverarbeitung
bezieht, um eine hohe Klangqualität zu erzielen.
-
Ebenso
ist in dem Fall, wo die Aufgabe ein MPEG-Laufbild-Wiedergabeprogramm
ist, der gesicherte Abschnitt ein Verarbeitungsabschnitt, der einer
Frame-Rate von 1/15-tel einer Sekunde zwischen den Bildern entspricht,
und der steuerbare Abschnitt ist ein Verarbeitungsabschnitt, der
einer Frame-Rate
von 1/30-tel einer Sekunde zwischen den Bildern entspricht. Falls
eine Aufgabe ein Standbild- oder Laufbild-Wiedergabeprogramm ist, ist es möglich, die
Auflösung
einzustellen, indem ein Verarbeitungsabschnitt, welcher der niedrigsten
Auflösung entspricht,
welche das menschliche Auge tolerieren kann, zu einem gesicherten
Abschnitt gemacht wird, und indem ein Verarbeitungsabschnitt, welcher
einer höheren
Auflösung
entspricht, zu einem steuerbaren Abschnitt gemacht wird.
-
Ferner
ist, falls eine Anwendung ein Web-Browser ist, ein gesicherter Abschnitt
ein Verarbeitungsabschnitt, welcher einer Kommunikationsrate eines
Paketkommunikationsintervalls innerhalb einer Netzwerk-Auszeitperiode
entspricht, und ein steuerbarer Abschnitt ist ein Verarbeitungsabschnitt, welcher
ei ner Kommunikationsrate für
eine höhere Kommunikationsrate,
zum Beispiel (Paket-Größe/Durchsatz),
entspricht.
-
Mit
einem Anwendungsprogramm dieser Ausführungsform werden gesicherte
Abschnittsprogramm-Statements bzw. Abschnittsprogrammanweisungen
und steuerbare Abschnittsprogramm-Statements bzw. Abschnittsprogrammanweisungen
von jeder Aufgabe getrennt voneinander beschrieben und ein bestimmtes
gesichertes Objekt-Flag wird der gesicherten Abschnittsspeicheradresse
als ein gesicherter Objektbezeichner der vorliegenden Erfindung angehängt.
-
Die
gesicherten Abschnitte von jeder Aufgabe, das bedeutet, Ressourcenmengen
zum Sichern von Verknüpfungen
von unterer Grenze, werden gemessen, indem eine Zeitmeßfunktion
eines Zeitplanungsprogramms der Hardware- oder Software-Umgebung
verwendet wird, unter welcher die Ausführung ausgeführt wird.
In spezifischer Weise wird eine an der unteren Grenze zu sichernde
Ressourcenmenge im voraus gemessen, indem die Zeit, bei der jede
Ressource verwendet wird, in jeder zugewiesenen Periode von dem
Start der Ausführung
der Objektverarbeitung bis zur Fertigstellung gemessen wird. Ebenso
kann die Frist von jeder Aufgabe gemessen werden, indem die Ausführungsstartzeiteinstellung
eines Prozesses zurück
verschoben wird, und zwar in jeder zugewiesenen Periode, und indem eine
Fensterperiode gemessen wird, bis die Qualität nicht länger erfüllt ist. Es ebenso möglich, die
Ressourcenmenge für
die steuerbaren Abschnitte zu berechnen, indem ein Meßwert für einen
gesicherten Abschnitt von einem Wert abgezogen wird, der gemessen
wird, indem dieselbe Zeitplanungsfunktion verwendet wird, während die
Verarbeitung ausgeführt
wird, indem die höchste
Verarbeitungsqualität für jede Aufgabe
verwendet wird. Diese Punkte der Ressourcenmengeninformationen können ebenso erzielt
werden, indem diese Messungen tatsächlich auf dem System durchgeführt werden
oder indem direkt Spezifikationswerte verwendet werden, die von einem
Anwendungsprogrammverkäufer
erhalten werden.
-
Ebenso
existiert, um Aufgaben zu managen, welche eine Echtzeit erfordern,
nämlich
Aufgaben, welche eine geringe Verzögerungszeit benötigen (im folgenden
wird dieser Typ von Aufgabe als Aufgabe, die eine Verzögerungssicherstellung
benötigt,
bezeichnet), eine Aufgabenmanagementtabelle 10 zum Speichern
von Informationen für
jede dieser Aufgaben in dem Speicher 5.
-
2 ist
eine Zeichnung, welche ein Beispiel der Aufgabenmanagementtabelle 10 zeigt.
Die Aufgabenmanagementtabelle 10 wird aus einer Aufgabeninformationsmanagementtabelle 21 und
einer Aufgabenausführungsmanagementtabelle 22 gebildet.
-
Die
Aufgabeninformationsmanagementtabelle 21 ist eine Tabelle
zum Managen von Informationen, die sich auf Aufgaben beziehen, welche
eine Verzögerungssicherstellung
benötigen,
die durch die Aufgabenempfangsverarbeitung empfangen wird, was später beschrieben
werden wird.
-
Die
in dieser Aufgabeninformationsmanagementtabelle 21 gespeicherten
Informationen enthalten einen Aufgabenbezeichner ID, einen Aufgabenzeiger
P, Perioden, S, gesicherte Abschnittsverarbeitungszeiten G, steuerbare
Abschnittsverarbeitungszeiten C und Fristen H, die jeweils in einem
Aufgabenbezeichner-Speicherabschnitt 21a, einem Aufgabenzeiger-Speicherabschnitt 21b,
einem Perioden-Speicherabschnitt 21c, einem gesicherten
Abschnittsverarbeitungszeit-Speicherabschnitt 21d,
einem steuerbaren Abschnittsverarbei tungszeit-Speicherabschnitt 21e und
einem zulässigen
Verzögerungszeit-Speicherabschnitt 21f gespeichert
sind, wobei diese Punkte von Informationen jeweils für jede Aufgabe
gespeichert werden.
-
2 zeigt
Informationen, die sich auf eine Aufgabe auf einer horizontalen
Zeile beziehen.
-
Der
Aufgabenbezeichner ID bezeichnet bzw. identifiziert jede Aufgabe,
während
der Aufgabenzeiger P die Position von jedem Aufgabenprogramm in der
Speichervorrichtung 4 oder dem Speicher 5 anzeigt.
Die Periode S ist eine Zeit von dem Zeitpunkt, wo die Ausführung von
jeder Aufgabe startet, bis zu dem Zeitpunkt, wo die nächste Ausführung startet, und
falls eine besondere Aufgabe ausgeführt wird, kann jene Aufgabe
während
der eingestellten Periode S nicht neu ausgeführt werden.
-
Die
gesicherte Abschnittsverarbeitungszeit G ist die Bedarfsressourcenmenge
für einen
gesicherten Abschnitt der vorliegenden Erfindung und ist eine Verarbeitungszeit,
die für
die Ausführung
des gesicherten Abschnitts von jeder Aufgabe benötigt wird. Die steuerbare Abschnittsverarbeitungszeit
C ist eine Bedarfsressourcenmenge oder ein steuerbarer Abschnitt
der vorliegenden Erfindung und ist die zur Ausführung eines steuerbaren Abschnitts
von jeder Aufgabe benötigte
Verarbeitungszeit. Die gesicherte Abschnittsverarbeitungszeit G
und die steuerbare Abschnittsverarbeitungszeit C sind Probenwerte,
welche im voraus eingestellt werden, das bedeutet, dass manchmal
tatsächliche
Aufgaben vor diesen Werten fertiggestellt werden können.
-
Die
Frist H ist eine zulässige
Zeit, so dass, falls die Verarbeitung innerhalb jener Zeit fertiggestellt
wird, die Qualität
erfüllt
ist und auf den Bereich der durch die Periode S dargestellten Zeit
eingestellt wird. In einem Zustand, wo ein Ereignis für eine besondere
Aufgabe aufgetreten war, falls die verstrichene Zeit von dem Zeitpunkt,
wo die vorher begonnene Ausführung
die Periode S überschritten
hat, oder falls die Aufgabenverarbeitung unterbrochen wurde, entsteht
eine Verzögerung
in jener Aufgabe. Das Auftreten dieses Verzögerungstyps bedeutet, dass
die zulässige
Verzögerungszeit
H aufgebraucht ist. Es ist demgemäß nötig, die Aufgabenverarbeitung
fertigzustellen, bevor diese zulässige
Verzögerungszeit
vollständig
aufgebraucht ist.
-
Diese
Parameter, die Periode S, die gesicherte Abschnittsverarbeitungszeit
G, die steuerbare Abschnittsverarbeitungszeit C und die Frist H
werden im voraus in einem Anwendungsprogramm, das diese zu planende
Aufgabe benötigt,
gehalten, in der Speichervorrichtung 4 gespeichert als
Folge einer Installation mittels eines außerhalb dieses Anwendungsmediums
vorgesehenen Speichermediums oder eines Netzwerks und in das OS übertragen
als Folge eines Systemaufrufs, was später zu beschreiben sein wird.
Falls der Empfang zugelassen wird, werden diese Parameter dann in
der Aufgabenmanagementinformationstabelle 21 mit einem
angehängten
Aufgabenbezeichner ID3 gespeichert.
-
Eine
Aufgabenausführungsmanagementtabelle 22 ist
eine Tabelle zum Managen von empfangenen Aufgaben, nämlich Informationen,
die zum Zeitpunkt der Ausführung
einer in der Aufgabeninformationsmanagementtabelle 21 registrierten
Aufgabe verwendet werden. Als in dieser Aufgabenausführungsmanagementtabelle 22 gespeicherte
Informationen gibt es einen Aufgabenbezeichner ID, ein Ausführungsbezeichnungs-Flag
F und ein Teilausführungs-Flag
FP, wobei diese Punkte von Informationen jeweils in einem Aufgabenbezeichnungsspeicherabschnitt 22c,
einem Ausführungsbezeichnungs-Flagspeicherabschnitt 22b und
einem Teilausführungs-Flagspeicherabschnitt 22c für jede Aufgabe gespeichert
sind.
-
Das
Ausführungsbezeichnungs-Flag
F dient zur Bezeichnung bzw. Identifizierung einer Aufgabe, die
sich in Ausführung
befindet oder die die Ausführung
unterbrochen hat. Dieses Ausführungsbezeichnungs-Flag
F wird gesetzt (beispielsweise auf "1"), falls
jede Aufgabe in einen Zustand eintritt, der gerade ausgeführt wird
oder der die Ausführung
unterbrochen hat, und wird zurückgestellt
(beispielsweise auf "0"), wenn die Aufgabenausführung fertiggestellt
ist.
-
Das
Teilausführungs-Flag
FP dient zur Bezeichnung bzw. Identifizierung von Aufgaben, für die ein
Ausführungsobjekt
lediglich ein gesicherter Abschnitt ist. Dieses Teilausführungs-Flag
FP wird gesetzt (beispielsweise auf "1"),
falls das Ausführungsobjekt
von jeder Aufgabe lediglich ein gesicherter Abschnitt ist, und wird
zurückgestellt
(beispielsweise auf "0"), falls die Ausführungsobjekte
für jede
Aufgabe sowohl gesicherte Abschnitte als auch steuerbare Abschnitte
sind.
-
Als
nächstes
wird eine Aufgabenempfangsverarbeitung, die zur Verzögerungssicherung
benötigt
wird, unter Verwendung von 3 beschrieben werden.
Beispielsweise werden, falls Bedarfsressourcenmengen r1, r2 und
r3, Bedarfsressourcenmengen r1a, r2a und r3a, die sich auf gesicherte
Abschnitte beziehen, Bedarfsressourcenmengen r1b, r2b und r3b, die
sich auf steuerbare Abschnitte beziehen, und Fristen H1, H2 und
H3 im voraus für
Aufgaben A1, A2 und A3 gesetzt werden, die Aufgaben A1 und A2 auf
bereits geplante gesetzt. Falls die Planung einer neuen Aufgabe
Aw dann wegen eines Systemaufrufs von einer Anwendung benötigt wird, führt die
CPU 2 die Verarbeitung aus, die im folgenden entsprechend
einem in dem Aufgabenempfangsprogrammspeicherabschnitt 8 gespeicherten
Programm beschrieben wird.
-
In 3 liest
zuerst die CPU 2 die laufenden Ressourcenmengen des Systems,
die jeweiligen Bedarfsressourcenmengen für gesicherte Abschnitte und
steuerbare Abschnitte von geplanten Aufgaben A1 und A2, welche bereits
empfangen wurden, und jeweilige Bedarfsressourcenmengen für gesicherte Abschnitte
und steuerbare Abschnitte der neuen Aufgabe A3 (S1). Jeweilige Bedarfsressourcenmengen für die geplanten
Aufgaben A1 und A2 werden von der Aufgabenmanagementtabelle 10 basierend
auf in der Aufgabeninformationsmanagementtabelle 21 registrierte
Informationen extrahiert. Ebenso werden jeweilige Bedarfsressourcenmengen
für die
neue Aufgabe A3 zusammen mit dem Systemaufruf eingegeben und in
einem bestimmten Bereich des Speichers 5 abgespeichert.
-
Als
nächstes
wird bestimmt, ob alle gesicherten Abschnitte und steuerbaren Abschnitte
(Bedarfsressourcenmengen r1 + r2 + r3) der geplanten Aufgaben A1
und A2 und eine Aufgabe A3, die neu eine Planung benötigt, ausführbar sind
oder nicht und zwar basierend auf einem Vergleich der Fristen H1, H2
und H3 von jeder Aufgabe, welche externe Zwänge (S2) sind.
-
Falls
die Ausführbarkeit
in S2 bestimmt wird, werden gesicherte Abschnitte und steuerbare
Abschnitte dieser Aufgaben A1, A2 und A3 als Ausführungsobjekte
ausgewählt
und in der Aufgabeninformationsmanagementtabelle 21 registriert
(S3).
-
Andererseits
wird in solchen Fällen,
in denen, wenn, wie in dem Beispiel von 5(a),
die Frist H3 für
die Aufgabe A3 nicht erfüllt
ist und eine Verzögerungszeit
entsteht, wenn angenommen wird, dass die gesicherten Abschnitte
und die steuerbaren Abschnitte von jeder Aufgabe A1, A2 und A3 in
der Reihenfolge ausgeführt
werden, ein Ausführung-nicht-möglich-Zustand in Schritt
S2 bestimmt und dann wird als benötigte Ressourcenmengen für gesicherte
Abschnitte von allen benötigten
Aufgaben die Gesamtheit der gesicherten Abschnittsverarbeitungszeit
G für jede
Aufgabe mit der Frist von jeder Aufgabe H1, H2, H2 verglichen, um
zu bestimmen, ob alle Aufgaben (5(b),
die Bedarfsressourcenmenge r1a + r2a + r3a) ausführbar sind oder nicht (S4).
-
Falls
bestimmt wird, dass eine Ausführung möglich ist,
werden lediglich gesicherte Abschnitte von allen Aufgaben als Ausführungsobjekte
ausgewählt
und in der Aufgabeninformationsmanagementtabelle 21 registriert
(S5). In spezifischer Weise wird, wenn die Verzögerungssicherung der angeforderten neuen
Aufgabe A3 und der empfangenen Aufgaben A1 und A2 möglich ist,
der Empfang zugelassen, werden Aufgabenbezeichner ID1, ID2 und ID3
von jeder Aufgabe A1, A2 und A3 und Teilausführungs-Flags FP, welche darstellen,
dass lediglich gesicherte Abschnitte das Ausführungsobjekt sind, in die Aufgabenmanagementtabelle 10 in
dem Speicher 5 geschrieben und dann wird die Bezeichnung,
welche darstellt, dass lediglich gesicherte Abschnitte als Ausführungsobjekte
empfangen wurden, an die Anwendung zurückgegeben und die Empfangsverarbeitung
wird fertiggestellt.
-
Wenn
in Schritt S4 bestimmt wird, dass eine Ausführung nicht möglich ist,
kann eine neue Aufgabe nicht geplant werden und wird ein 'Registrierung-nicht-möglich'-Signal zu jenem
Zweck ausgegeben (S6) und wird eine 'kann-nicht-empfangen'-Bezeichnung
auf der Anwendungsseite vermerkt. Als Folge der Anwendungsverarbeitung
wird eine Bezeichnung, dass die Registrierung einer neuen Aufgabe
nicht möglich
ist, an einen Nutzer geliefert, indem eine Testnachricht auf einer
in den Zeichnungen nicht dargestellten Anzeigeeinrichtung verwendet wird,
und der Nutzer kann darauf antworten, indem unnötige Anwendungen etc. geschlossen
werden.
-
Als
Folge der oben beschriebenen Verarbeitung erfüllen die Aufgaben A1, A2 und
A3 jeweils die Fristen H1, H2 und H3 und eine Ressourcenverknüpfung lediglich
für gesicherte
Abschnitte wird zuverlässig
ausgeführt.
Die Startzeitsteuerung zur Ausführung
von jeder Aufgabe wird von einem Systemplaner gesteuert, was bedeutet,
dass beispielsweise, wenn sich eine Aufgabe auf eine Laufbildanzeige
bezieht, die Ausführung
von jeder Aufgabe ausreichend ist, falls es eine Struktur für jede Funktion
wie das Lesen des Frame (S11) und die Frame-Ausgabe (S12) gibt, wie in 6 dargestellt
ist, und es ist nicht notwendig, eine Ausführungszeitsteuerungsverarbeitung
für jede
Aufgabe auf der Anwendungsseite auszuführen, indem beispielsweise
ein Timer bzw. Zeitgeber verwendet wird.
-
Wie
oben beschrieben wurde, werden mit der ersten Ausführungsform
Aufgaben A1, A2 und A3 in gesicherte Abschnitte und steuerbare Abschnitte aufgeteilt,
wobei die letzteren als Abschnitte behandelt werden, welche gesteuert
werden können,
welche gelöscht
werden und zwar entsprechend der Situation. In spezifischer Weise
wird mit dieser Ausführungsform
zusammen mit dem Bestimmen der Ausführbarkeit der Aufgabe A3, welche
erneut eine Zeitplanung benötigt
hat, während
virtuell eine Verarbeitungsstufe der geplanten Aufgaben A1 und A2
zwi schen den zwei Fällen,
in denen steuerbare Abschnitte beinhaltet sind und steuerbare Abschnitte nicht
beinhaltet sind, geändert
wird, eine Auswahl von Aufgaben A1, A2 und A3, welche die Bestimmungsobjekte
bilden, ausgeführt,
indem die Ausführbarkeit
und die bestimmte Verarbeitungsstufe verwendet werden. Demgemäß ist es
mit dieser Ausführungsform
möglich,
den Empfang der Aufgabe A3 auszuführen, welche eine Planung neu
benötigt,
indem die Qualität
der geplanten Aufgaben A1 und A2 eingestellt wird, und es ist möglich, gleichzeitig
die Aufgabenverzögerung
und die effiziente Aufgabenausführung
sicherzustellen.
-
Ebenso
ist es mit dieser Ausführungsform möglich, da
die Bestimmungsverarbeitung und die Qualitätseinstellung ausgeführt werden,
indem steuerbare Abschnitte hinzugefügt oder gelöscht werden, den gewünschten
Effekt in der vorliegenden Erfindung mit einer einfachen Struktur
zu erzielen.
-
Mit
dieser Ausführungsform
ist es, da eine virtuelle Änderung
der Aufgabenverarbeitungsstufe für
alle geplanten Aufgaben A1 und A2 und die Aufgabe A3, welche eine
Planung erfordert, ausgeführt wird,
möglich,
eine große
Variation der Bedarfsressourcenmenge zuzulassen.
-
Ebenso
ist es, da es mit dieser Ausführungsform
möglich
ist, eine Aufgabe auszuwählen,
welche Ausführungsobjekte
durch Verwendung von gesicherten Objektbezeichnern bildet, möglich, den
gewünschten
Effekt in der vorliegenden Erfindung mit einer einfachen Struktur
zu erzielen.
-
Mit
dieser Ausführungsform
wurde eine Beschreibung für
eine Struktur zum Auswählen
einer Priorität
für jede
Aufgabe angegeben, ohne speziell die Priorität in Betracht zu ziehen, je doch
ist es ebenso möglich
für jede
Aufgabe entsprechend der vorgeschriebenen Priorität registriert
zu werden (beispielsweise, indem die Priorität verringert wird, wenn die Summe
aus erforderlicher Verarbeitungszeit und zulässiger Verzögerungszeit für eine Aufgabe
groß wird,
oder indem es notwendig gemacht wird, die erforderliche Verarbeitungszeit
von Aufgaben hoher Priorität
innerhalb der zulässigen
Verzögerungszeit von
Aufgaben niedriger Priorität
anzupassen).
-
Zweite Ausführungsform
-
Als
nächstes
wird eine zweite Ausführungsform
beschrieben werden. Mit der oben beschriebenen ersten Ausführungsform
wurde, wenn es Anforderungen gab, Aufgabenummern, welche Verarbeitungsobjekte
bilden, zu ändern,
die Ausführbarkeit bestimmt,
während
die Bedarfsressourcenmenge virtuell geändert wird. Jedoch kann es,
auch wenn es keine Aufgabenummernänderungsanforderung gibt, beispielsweise
in dem Fall des schnellen Vorspulens eines Films oder Audio-Clips,
Fälle geben,
wo eine Variation der Bedarfsressourcenmenge erwartet wird, und
in derartigen Fällen
ist es bevorzugt, die Bestimmung der Ausführbarkeit zu implementieren, während die
Bestimmung der vorliegenden Erfindung ausgeführt wird, das bedeutet, indem
virtuell die Bedarfsressourcenmenge geändert wird. Die zweite Ausführungsform
führt diesen
Typ der Bestimmung in Fällen
aus, wo es eine Anforderung gibt, einen Parameter in zumindest einigen
Aufgaben zu ändern
und insbesondere eine Friständerungsanforderung.
Mit der zweiten Ausführungsform
ist ebenso die Struktur des Mehraufgabensystems dieselbe wie jene
der ersten Ausführungsform
und somit wird die Beschreibung des Mehraufgabensystems weggelassen
werden.
-
Während der
Ausführung
von Aufgaben A1, A2 und A3, beispielsweise wenn die Änderung
der Frist für
die Aufgabe A3 (beispielsweise durch Subtrahieren eines bestimmten
Wertes von einem Referenzwert) angefordert wird als Folge eines
Systemaufrufs von einer Anwendung, führt die CPU 2 die
unten beschriebene Verarbeitung entsprechend einem in einem Aufgabenempfangsprogrammspeicherabschnitt 8 gespeicherten
Programm aus.
-
In 7 liest
zuerst die CPU 2 die laufende Systemressourcenmenge, die
Fristen für
die in Ausführung
befindlichen Aufgaben A1, A2 und A3 und jeweilige Bedarfsressourcenmengen
für gesicherte
Abschnitte und steuerbare Abschnitte (S21).
-
Als
nächstes
wird die Bestimmung bestimmt, ob eine Friständerung mit der laufenden Bedarfsressourcenmenge
möglich
ist oder nicht, und zwar basierend auf einem Vergleich von Bedarfsressourcenmengen
(sowohl gesicherte Abschnitte als auch steuerbare Abschnitte) für die Aufgaben
A1, A2 und A3, wenn die Fristen virtuell geändert wurden, und der Frist
für jede
Aufgabe (nach Änderung),
welche äußere Zwänge sind
(S22).
-
Wenn
in Schritt S22 bestimmt wird, dass eine Ausführung möglich ist, wird die Frist für die Aufgabe A3
geändert,
indem die laufende Bedarfsressourcenmengeneinstellung verwendet
wird (das bedeutet, der Zustand, wo gesicherte Abschnitte und steuerbare
Abschnitte der Aufgaben A1, A2 und A3 ausgewählt wurden), und wird in der
Aufgabeninformationsmanagementtabelle 21 registriert (S23).
-
Andererseits
wird, falls in Schritt S22 bestimmt wird, dass eine Ausführung nicht
möglich
ist, als nächstes
für die
Bedarfsressourcenmengeneinstellung, die innerhalb eines Be reichs
der steuerbaren Abschnitte reduziert ist (das bedeutet, lediglich die
Bedarfsressourcenmenge der gesicherten Abschnitte), bestimmt, ob
es möglich
ist oder nicht, die Frist basierend auf einer Optimierungsberechnung für diesen
Fall und einem Vergleich von Fristen für jede Aufgabe (nach Änderung)
zu ändern
(S24).
-
Falls
bestimmt wird, dass eine Ausführung möglich ist,
wird die reduzierte Bedarfsressourcenmengeneinstellung übernommen
(das bedeutet, lediglich die gesicherten Abschnitte von allen Aufgaben
werden als Ausführungsobjekte
ausgewählt)
und die Fristen werden in jenem Zustand geändert und in der Aufgabeninformationsmanagementtabelle
registriert (S25). In spezifischer Weise wird in einem Zustand,
wo eine angeforderte Friständerung
durchgeführt
wurde, der Empfang zugelassen, wenn bestimmt wird, dass eine Verzögerungssicherung
für die
Aufgaben A1, A2 und A3 möglich
ist, werden jeweilige Aufgabenbezeichner ID1, ID2 und ID3 für die Aufgaben
A1, A2 und A3 und ein Teilausführungs-Flag
FP, welches anzeigt, dass lediglich gesicherte Abschnitte Ausführungsobjekte
sind, in die Aufgabenmanagementtabelle 10 in dem Speicher 5 geschrieben,
und nach der Anzeige, dass lediglich gesicherte Abschnitte als Ausführungsobjekte
empfangen werden können,
wird zu der Anwendung zurückgekehrt
und wird die Empfangsverarbeitung fertiggestellt.
-
Falls
bestimmt wurde, dass eine Ausführung in
Schritt S24 nicht möglich
ist, ist dies ein Fall, wo die Frist nicht geändert werden kann und ein 'Änderung-nicht-möglich'-Signal, das diese
Tatsache anzeigt, wird ausgegeben (S26), und ebenso wird die Tatsache,
dass der Empfang nicht möglich
ist, auf der Anwendungsseite vermerkt. Als Folge der Anwendungsverarbeitung
wird die Tatsache, dass eine Friständerung nicht mög lich ist,
einem Nutzer mittels einer Textnachricht auf einer nicht dargestellten
Anzeigevorrichtung dargestellt und der Nutzer behandelt dies, indem
beispielsweise unnötige
Anwendungen geschlossen werden.
-
Als
Folge der oben beschriebenen Verarbeitung erfüllen die Aufgaben A1, A2 und
A3 jeweils die geänderten
Fristen und eine Ressourcenverknüpfung
lediglich für
gesicherte Abschnitte wird zuverlässig ausgeführt. Demgemäß ist es mit der zweiten Ausführungsform ähnlich wie
bei der ersten Ausführungsform
möglich,
mit der Ausführung
einer Friständerung
fortzufahren, indem die Qualität
der Aufgaben A1, A2 und A3 eingestellt wird, und es ist möglich, die Aufgabenverzögerung und
die effiziente Aufgabenausführung
gleichzeitig sicherzustellen.
-
Dritte Ausführungsform
-
Als
nächstes
wird eine dritte Ausführungsform
beschrieben werden. Ähnlich
wie die zweite Ausführungsform
führt die
dritte Ausführungsform eine
Bestimmung der Ausführbarkeit
in Reaktion auf eine Parameteränderungsanforderung
aus und wird auf einen Fall angewendet, wo dieser Parameter eine Periodenänderungsanforderung
ist. Mit der dritten Ausführungsform
ist ebenso die Struktur des Mehraufgabensystems dieselbe wie jene
der ersten Ausführungsform
und somit wird die Beschreibung des Mehraufgabensystems weggelassen
werden.
-
Während der
Ausführung
der Aufgaben A1, A2 und A3, beispielsweise wenn eine Änderung
der Periode für
die Aufgabe A3 (beispielsweise durch Subtrahieren eines bestimmten
Werts von einem Referenzwert) angefordert wird als Folge eines Systemaufrufs
von einer Anwendung, führt
die CPU 2 die unten beschrie bene Verarbeitung entsprechend
einem in einem Aufgabenempfangsprogrammspeicherabschnitt 8 gespeicherten
Programm aus.
-
In 8 liest
zuerst die CPU 2 die laufende Systemressourcenmenge, Perioden
für die
in Ausführung
befindlichen Aufgaben A1, A2 und A3 und die jeweilige Bedarfsressourcenmenge
für gesicherte Abschnitte
und steuerbare Abschnitte (S31).
-
Als
nächstes
wird die Bestimmung, ob eine Periodenänderung mit der laufenden Bedarfsressourcenmenge
möglich
ist oder nicht, bestimmt und zwar basierend auf einem Vergleich
von Bedarfsressourcenmengen (sowohl gesicherte Abschnitte als auch
steuerbare Abschnitte) für
die Aufgaben A1, A2 und A3, wenn die Fristen virtuell geändert wurden, und
der Ausführungsperiode
für jede
Aufgabe (nach Änderung).
-
Falls
in Schritt S32 bestimmt wird, dass eine Ausführung möglich ist, wird die Periode
für die
Aufgabe A3 geändert,
indem die laufende Bedarfsressourcenmengeneinstellung verwendet
wird (das bedeutet, der Zustand, wo gesicherte Abschnitte und steuerbare
Abschnitte von Aufgaben A1, A2 und A3 ausgewählt wurden), und in der Aufgabeninformationsmanagementtabelle 21 registriert
(S33).
-
Andererseits
wird, falls in Schritt S32 bestimmt wird, dass eine Ausführung nicht
möglich
ist, als nächstes
für die
Bedarfsressourcenmengeneinstellung, die innerhalb eines Bereichs
der steuerbaren Abschnitte reduziert ist (das bedeutet, eine Bedarfsressourcenmenge
lediglich der gesicherten Abschnitte), bestimmt, ob es möglich ist
oder nicht, die Periode basierend auf einer Optimierungsberechnung
für diesen
Fall und einem Vergleich von Ausführungsfristen für jede Aufgabe
(nach Änderung)
zu ändern
(S34).
-
Falls
bestimmt wird, dass eine Ausführung möglich ist,
wird die reduzierte Bedarfsressourcenmengeneinstellung übernommen
(das bedeutet, lediglich die gesicherten Abschnitte von allen Aufgaben
werden als Ausführungsobjekte
ausgewählt), und
die Perioden werden in jenem Zustand geändert und in der Aufgabeninformationsmanagementtabelle registriert
(S35). In spezifischer Weise wird in einem Zustand, wo eine angeforderte
Periodenänderung durchgeführt wurde,
der Empfang zugelassen, wenn bestimmt wird, dass eine Verzögerungssicherung
für die
Aufgaben A1, A2 und A3 möglich
ist, werden jeweilige Aufgabenbezeichner ID1, ID2 und ID3 für die Aufgaben
A1, A2 und A3 und ein Teilausführungs-Flag
FP, welches anzeigt, dass lediglich gesicherte Abschnitte Ausführungsobjekte
sind, in die Aufgabenmanagementtabelle 10 in dem Speicher 5 geschrieben
und danach wird die Anzeige, dass lediglich gesicherte Abschnitte
als Ausführungsobjekte empfangen
werden können,
an die Anwendung zurückgegeben
und die Empfangsverarbeitung wird fertiggestellt.
-
Falls
bestimmt wurde, dass eine Ausführung in
Schritt S34 nicht möglich
ist, ist dies ein Fall, wo die Periode nicht geändert werden kann, und ein 'Änderung-nicht-möglich'-Signal, das diese Tatsache anzeigt,
wird ausgegeben (S26), und ebenso wird die Tatsache, dass der Empfang
nicht möglich
ist, auf der Anwendungsseite vermerkt. Als Folge der Anwendungsverarbeitung
wird die Tatsache, dass eine Periodenänderung nicht möglich ist,
einem Nutzer mittels einer Textnachricht auf einer nicht dargestellten
Anzeigevorrichtung dargestellt und der Nutzer behandelt dies, indem
beispielsweise unnötige
Anwendungen geschlossen werden.
-
Als
Folge der oben beschriebenen Verarbeitung erfüllen die Aufgaben A1, A2 und
A3 jeweils die geänderten
Perioden und die Ressourcenverknüpfung
lediglich für
gesicherte Abschnitte wird zuverlässig ausgeführt. Demgemäß ist es mit der dritten Ausführungsform ähnlich wie
bei der zweiten Ausführungsform
möglich,
mit der Ausführung
einer Periodenänderung
fortzufahren, indem die Qualität
der Aufgaben A1, A2 und A3 eingestellt wird, und es ist möglich, gleichzeitig
die Aufgabenverzögerung
und die effiziente Aufgabenausführung
sicherzustellen.
-
Mit
jeder der oben beschriebenen Ausführungsformen ist die Struktur
so, dass es einen steuerbaren Abschnitt in jeder Aufgabe gibt, und
die Bedarfsressourcenmenge wird geändert in Übereinstimmung damit, ob es
eine Hinzufügung
zu dem gesicherten Abschnitt der Aufgabe gibt oder nicht. In diesem
Fall ist es ferner bevorzugt, wechselseitig eine Auswahlreihenfolge
in einer Vielzahl von steuerbaren Abschnitten einzustellen (zuzuweisen),
und diese Vielzahl von steuerbaren Abschnitten entsprechend dieser
Auswahlreihenfolge auszuwählen.
Insbesondere ist es bevorzugt, einen bestimmten Sequenzbezeichner
(beispielsweise ein bestimmtes Sequenz-Flag) an Abschnitte anzuhängen, die
jeweils Programmanweisungen von jeder Aufgabe entsprechen, um eine
Auswahlreihenfolge unter der Vielzahl von steuerbaren Abschnitten
zu identifizieren bzw. bezeichnen und eine Bedarfsressourcenmenge
für jene
steuerbaren Abschnitte zu speichern, und dann zum Zeitpunkt des
Betriebs steuerbare Abschnitte von Bestimmungsobjektaufgaben entsprechend
einer durch jenen Auswahlbezeichner dargestellten Auswahlreihenfolge
auszuwählen
und eine Erprobung von jener Auswahl und Bestimmung auszuführen, während Auswahlobjekte
geändert
werden (während
die Anzahl von ausgewählten
steuerbaren Abschnitten geändert
wird). Mit diesem Strukturtyp ist es möglich, eine Bedarfsressourcenmenge
für eine
Aufgabe fein einzustellen, indem die Bestimmung der Ausführbarkeit
wiederholt wird, während die
Verarbeitungsmenge in einer schrittweisen Art reduziert wird, indem
Verarbeitungsobjekte von Abschnitten mit einer geringen Wichtigkeit
bezüglich des
Betriebs gelöscht
werden, und es möglich,
in effektiver Weise die Systemressourcenmenge auszunutzen.
-
Ebenso
wurde mit der ersten bis zur dritten Ausführungsform die Bedarfsressourcenmenge durch
Vergrößern und
Verringern eingestellt, indem steuerbare Abschnitte innerhalb von
Aufgaben verwendet werden, jedoch kann dieser Typ von Bedarfsressourcenmengeneinstellung
ebenso auf eine Einstellung von Betriebsvorgängen bzw. Operationen zwischen
einer Vielzahl von Aufgaben angewandt werden, welche eine Abhängigkeit
von der Ausführungsreihenfolge
oder eine Haupt-/Unter-Beziehung zueinander aufweisen.
-
In
spezifischer Weise wird, wenn es eine bestimmte Hauptaufgabe und
eine Unteraufgabe gibt, für
welche die Ausführung
der Hauptaufgabe eine Ausführungsbedingung
ist, ein gesichertes Objekt-Flag ähnlich wie jenes, das in der
oben beschriebenen ersten Ausführungsform
verwendet wird, der Gesamtheit einer Hauptaufgabe angehängt und
Unteraufgaben werden mit keinem angehängten gesicherten Objekt-Flag
konfiguriert. Mit diesem Typ einer Hauptaufgabe und Unteraufgabe
wird, wenn ein Aufgabenempfangsprogramm der oben beschriebenen ersten
Ausführungsform
ausgeführt
wird wie es ist, die Gesamtheit der Hauptaufgabe zu einem gesicherten
Abschnitt gemacht und die Gesamtheit einer Unteraufgabe zu einem
steuerbaren Abschnitt gemacht und jeweils in dem System quittiert.
Folglich werden, wenn es einen Spielraum in der Ressourcenmenge
gibt, die Hauptaufgabe und die Unteraufgabe beide ausgeführt, und
wenn es keinen Spielraum in der Ressourcenmenge gibt, wird lediglich
die Hauptaufgabe ausgeführt,
und auf diese Weise ist es möglich,
die Verarbeitung für
steuerbare Abschnitte mit einer Aufgabe auszuführen und die Verarbeitung für Haupt-/Unter-Beziehungen zwischen
den Aufgaben auszuführen,
indem ein gewöhnlicher
Algorithmus verwendet wird, und es ist möglich, Aufgabennummern einzusparen,
da es möglich
ist, Hauptaufgaben und Unteraufgaben zusammen als eine Einzelaufgabe
zu behandeln.
-
Anstelle
der Struktur ist es, wo ein gesichertes Objekt-Flag, das als ein
gesicherter Objektbezeichner genommen wird, der bei der Bezeichnung bzw.
Identifikation von gesicherten Abschnitten und steuerbaren Abschnitten
innerhalb einer Aufgabe verwendet wird, auf diese Weise verwendet
wird, ebenso möglich,
einen bestimmten Haupt-/Unterbezeichner (beispielsweise ein Haupt-/Unter-Flag)
vorzusehen, der verwendet wird, um die Hauptaufgabe und Unteraufgabe
entweder in einer Aufgabe oder in beiden Aufgaben aus der Hauptaufgabe
und der Unteraufgabe zu identifizieren, und für ein Aufgabenempfangsprogramm
eine Hauptaufgabe als einen gesicherten Abschnitt zu verarbeiten
und eine Unteraufgabe als einen steuerbaren Abschnitt zu verarbeiten,
was es möglich
macht, dieselben Effekte zu erzielen.
-
Wie
mit der zwölften
Erfindung wird ein Programm, das bezüglich der Aufgabenmanagementvorrichtung
der vorliegenden Erfindung verwendet wird, mit einer Bedarfsressourcenmengeninformationsspeichereinrichtung
versehen, um eine Bedarfsressourcenmenge vor und nach der Änderung
einer Aufgabenverarbeitungsstufe zu speichern, während in der dreizehnten Erfindung
ein gesicherter Objektbezeichner vorgesehen ist, um gesicherte Abschnitte und
steuerbare Abschnitte einer Aufgabe zu bezeichnen bzw. identifizieren.
Falls ein Reihenfolgebezeichner zum Bezeichnen bzw. Identifizieren
einer Reihenfolge aus einer Vielzahl von steuerbaren Abschnitten, die
in einer Aufgabe enthalten sind, vorgesehen ist wie in der achtzehnten
Erfindung, ist es möglich,
ein auszuführendes
Programm und verschiedene in dem Programm enthaltene Aufgabeninformationen
als eine Gruppe zu behandeln.
-
Ebenso
ist es wie in einer fünfzehnten
Erfindung, falls ein bezüglich
der Aufgabenmanagementvorrichtung der vorliegenden Erfindung verwendetes Programm
mit dem gesicherten Objektbezeichner versehen ist, um zu bewirken,
dass eine vorgeschriebene Hauptaufgabe von dem System erkannt wird als
ein gesicherter Abschnitt, und um zu bewirken, dass eine Unteraufgabe,
welche Ausführungsbedingungen
der Hauptaufgabe bildet, von dem System als ein steuerbarer Abschnitt
erkannt wird, da es möglich
ist, eine Vielzahl von Aufgaben, die zusammen eine Haupt-/Unter-Beziehung
aufweisen, als gesicherte Abschnitte und steuerbare Abschnitte zu verarbeiten,
indem ein Haupt-/Unteraufgabenbezeichner
verwendet wird, möglich,
eine Verarbeitung für
steuerbare Abschnitte innerhalb einer Aufgabe auszuführen und
eine Verarbeitung für
eine Haupt-/Unterordnungsbeziehung
zwischen den Aufgaben auszuführen,
indem ein gewöhnlicher
Algorithmus verwendet wird. Andererseits ist es wie in einer sechzehnten
Erfindung anstelle des gesicherten Objektbezeichners möglich, einen
Haupt-/Unteraufgabenbezeichner
zum Verarbeiten einer Haupt-/Unter-Beziehung vorzusehen.
-
Mit
jeder der oben beschriebenen Ausführungsformen ist die Struktur
derart, dass eine Verarbeitungsmenge eingestellt wird, indem die
Gesamtheit von steuerbaren Abschnitten virtuell gelöscht wird,
jedoch ist es umgekehrt ebenso möglich, eine Struktur
aufzuweisen, so dass, wenn es einen Spielraum in der Ressourcenmenge
gibt (in spezifischer Weise, wenn eine Differenz zwischen der Ressourcenmenge,
welche laufend vorgesehen sein kann, und der gesamten Bedarfsressourcenmenge
für alle laufenden
Aufgaben einen bestimmten Wert überschreitet),
zusätzliche
steuerbare Abschnitte, welche die Verarbeitungsqualität steigern
würden,
allen Aufgaben hinzugefügt
werden. Ebenso kann, obgleich mit jeder der oben beschriebenen Ausführungsformen
eine Beschreibung einer Struktur angegeben wurde, wo die Aufgabenverarbeitungsqualität in einer schrittweisen
Art gesteigert oder verringert wird in Reaktion auf die Anwesenheit
oder Abwesenheit eines Spielraums in der Ressourcenmenge, eine Änderung
der Verarbeitungsqualität
der vorliegenden Erfindung ebenso für einige Aufgaben ausgeführt werden,
und es ist ebenso möglich,
den gewünschten
Effekt der vorliegenden Erfindung mit diesem Strukturtyp zu erreichen.
-
Ferner
gibt es mit jeder der oben beschriebenen Ausführungsformen, da die Verarbeitungsqualität aller
Aufgaben geändert
wird, den Vorteil, dass es möglich
ist, eine große
Variation der Bedarfsressourcenmenge zuzulassen, jedoch kann eine Änderung der
Verarbeitungsqualität
in der vorliegenden Erfindung ebenso für einige Aufgaben ausgeführt werden, und
es ist ebenso möglich,
den gewünschten
Effekt der vorliegenden Erfindung mit diesem Strukturtyp zu erreichen.
-
Ferner
kann ein Aufgabenempfangsprogramm der vorliegenden Erfindung als
ein Programm in einem Mehraufgabensystem zum selektiven Ausführen von
irgendeiner aus einer Vielzahl von Aufgaben konfiguriert werden,
um zu bewirken, dass das System eine Bestimmungsverarbeitung zum
Bestimmen der Ausführbarkeit
von jeder Aufgabe basierend auf der Bedarfsressourcenmenge für jede Aufgabe, und
eine Aufgabenauswahlverarbeitung zum Auswählen einer Aufgabe, welche
ein Ausführungsobjekt bildet,
basierend auf dem Bestimmungsergebnis der Bestimmungseinrichtung
ausführt,
wobei ferner eine Bedarfsressourcenmengeninformationsermittlungsverarbeitung
zum Ermitteln der Bedarfsressourcenmengeninformationen für gesicherte
Abschnitte und steuerbare Abschnitte beinhaltet ist, die in zumindest einigen
Aufgaben spezifiziert sind, wobei in der Bestimmungsverarbeitung
die Bestimmung ausgeführt wird,
indem virtuell eine Verarbeitungsstufe von zumindest einigen geplanten
Aufgaben innerhalb eines Bereichs der steuerbaren Abschnitte aktualisiert wird,
und in der Aufgabenauswahlverarbeitung die Auswahl ausgeführt wird,
indem die als ausführbar bestimmte
Verarbeitungsstufe verwendet wird. In einem Zustand, wo dieses Programm
in einem bekannten Speichermedium wie in einer CD-ROM gespeichert wird
oder durch Herunterladen über
ein Netzwerk installiert werden kann, ist es möglich, die gewünschten
Effekte der vorliegenden Erfindung zu erreichen.
-
Vierte Ausführungsform
-
In
jeder der oben beschriebenen Ausführungsformen wird eine Aufgabenmanagementvorrichtung
der vorliegenden Erfindung erzielt, indem ein Mehraufgabensystem
mit einer Aufgabenmanagementfunktion ausgestattet wird. In den nachfolgenden
Ausführungsformen
wird der Fall beschrieben werden, wo eine Aufgabenmanagementvorrichtung
der vorliegenden Erfindung erzielt wird, indem ein Mehraufgabensystem
mit einer Betriebsbestimmungsfunktion ausgestattet wird.
-
In 11 weist
ein Mehraufgabensystem 31 einer Ausführungsform der vorliegenden
Erfindung eine CPU 2, einen Zeitgeber bzw. Timer 3,
eine Speichervorrichtung 4 wie eine Festplatte etc., einen Speicher 5,
ein Netzwerk 11 und eine Netzwerk- Steuerungseinrichtung 6, die
eine Schnittstelle zu dem Netzwerk 11 bildet, auf. Die
CPU 2, der Timer bzw. Zeitgeber 3, die Speichervorrichtung 4,
der Speicher 5 und die Netzwerk-Steuerungseinrichtung 6 sind durch
einen internen Bus 7 verbunden.
-
Der
Timer 3 wird wiederholt getaktet bis zu einer eingestellten
bestimmten Zeit und ist in der Lage, die CPU 2 von dem
Ablauf einer bestimmten Zeit zu benachrichtigen, indem die CPU 2 zu
jedem eingestellten Zeitpunkt unterbrochen wird. Ein Bestimmungsobjektprogramm
etc. wird in der Speichereinrichtung 4 als ein Aufgabenprogramm
ebenso wie das Betriebsbestimmungsprogramm der vorliegenden Erfindung
gespeichert und der Speicher 5 wird, soweit benötigt, gelesen.
-
Der
Speicher 5 enthält
eine Aufgabenmanagementtabelle 32 zum Speichern von Informationen
für jede
Aufgabe, um Aufgaben zu managen, welche eine Verzögerungssicherung
benötigen.
-
12 ist
eine Zeichnung, welche ein Beispiel der Aufgabenmanagementtabelle 32 zeigt.
Die Aufgabenmanagementtabelle 32 wird aus einer Aufgabeninformationsmanagementtabelle 34 und
einer Strukturinformationsmanagementtabelle 35 gebildet.
-
Die
Aufgabeninformationsmanagementtabelle 34 ist eine Tabelle
zu Managen von Informationen, die sich auf Aufgaben beziehen, welche
eine Verzögerungssicherung
benötigen.
Die in dieser Aufgabeninformationsmanagementtabelle 34 gespeicherten
Informationen enthalten einen Aufgabenbezeichner ID, einen Aufgabenzeiger
P, Perioden S, die erforderliche Verarbeitungszeit T und eine Sicherung
und eine Frist H, die jeweils in einem Aufgabenbezeichnerspeicherabschnitt 34a,
einem Aufgabenzeigerspeicherabschnitt 34b, einem Periodenspeicherabschnitt 34c,
einem erforderlichen Verarbeitungszeit-Speicherabschnitt 34d und
einem zulässigen
Verzögerungszeit-Speicherabschnitt 21f gespeichert
sind, wobei diese Punkte von Informationen jeweils für jede Aufgabe
gespeichert werden. 12 zeigt Informationen, die
sich auf eine Aufgabe auf einer horizontalen Zeile beziehen. Der
Aufgabenbezeichner ID bezeichnet bzw. identifiziert jede Aufgabe,
während
der Aufgabenzeiger P die Position von jedem Aufgabenprogramm in
der Speichervorrichtung 4 oder dem Speicher 5 anzeigt.
Die Periode S ist eine Zeit von dem Zeitpunkt, wo die Ausführung von
jeder Aufgabe startet, bis zu dem Zeitpunkt, wo die nächste Ausführung startet,
und falls eine besondere Aufgabe ausgeführt wird, wird jener Aufgabe nicht
erneut erlaubt, während
der eingestellten Periode S ausgeführt zu werden.
-
Die
erforderliche Verarbeitungszeit T ist die bei der Ausführung von
jeder Aufgabe benötigte
Verarbeitungszeit und bildet eine Bedarfsressourcenmenge der vorliegenden
Erfindung. Die benötigte Verarbeitungszeit
T ist ein Probenwert, welcher im voraus eingestellt wird, was bedeutet,
dass manchmal tatsächliche
bzw. effektive Aufgaben vor diesen Werten fertiggestellt werden
können.
-
Die
Frist H ist eine zulässige
Zeit, so dass, falls die Verarbeitung innerhalb jener Zeit fertiggestellt
wird, die Qualität
erfüllt
wird, und wird innerhalb der durch die Periode S dargestellten Zeit
eingestellt. In einem Zustand, wo ein Ereignis für eine besondere Aufgabe aufgetreten
war, falls die verstrichene Zeit von dem Zeitpunkt, wo die vorherige
Ausführung
begonnen hat, die Periode S überschritten
hat, oder falls die Aufgabenverarbeitung unterbrochen wird, entsteht
eine Verzögerung
in jener Aufgabe. Das Auftreten dieses Typs von Verzögerung bedeutet,
dass die zulässige
Verzöge rungszeit
H aufgebraucht ist. Es ist demgemäß notwendig, die Aufgabenverarbeitung
fertigzustellen, bevor diese zulässige
Verzögerungszeit
vollständig
aufgebraucht ist.
-
Jeder
dieser Punkte von Informationen, die Periode S, die erforderliche
Verarbeitungszeit T und die Frist H werden im voraus als Daten in
einem diese Aufgabe enthaltenden Anwendungsprogramm gehalten, in
der Speicherungsvorrichtung 4 als Folge einer Installation
gespeichert mittels eines außerhalb dieses
Anwendungsmediums vorgesehenen Speichermediums oder eines Netzwerks 11 und
in das OS als Folge eines Betriebsbestimmungsanforderungssystemaufrufs übertragen,
was später
zu beschreiben sein wird, und in der Aufgabeninformationsmanagementtabelle 34 mit
einem angehängten Aufgabenbezeichner
ID gespeichert.
-
Die
Strukturinformationsmanagementtabelle 35 enthält Strukturinformationen
der Anwendung, das bedeutet, Informationen über die Zwischenbeziehungen
von jeder Aufgabe von jener Anwendung. In spezifischer Weise ist
die Strukturinformationsmanagementtabelle 35 mit einem
Basisaufgabenbezeichnerabschnitt 35a und einem vermuteten
Aufgabenbezeichnerabschnitt 35b versehen und speichert jeweils
einen Aufgabenbezeichner ID für
eine besondere Aufgabe (nachfolgend als eine willkürliche Referenzaufgabe
bezeichnet) und einen Aufgabenbezeichner für eine Aufgabe (nachfolgend
als eine willkürlich
vermutete Aufgabe bezeichnet), welche die Vermutung für die Ausführung bildet.
-
Beispielsweise
wird, wie in 13 dargestellt ist, eine Anwendung,
welche ein Objekt zur Betriebsbestimmung bildet, aus Aufgaben 1–5 gebildet und
falls vermutet wird, dass die Ausführung der Aufgaben 2 und 4
bei Fertigstellung der Aus führung
der Aufgabe 1 startet, startet jene Ausführung der Aufgabe 3 bei Fertigstellung
der Ausführung
der Aufgabe 2 und startet die Ausführung von Aufgabe 5 bei Fertigstellung
der Ausführung
von Aufgabe 4, wobei der Inhalt der Strukturinformationsmanagementtabelle 35 sein
wird, wie in 12 dargestellt ist. Indem die
erforderliche Verarbeitungszeit T für alle vermuteten Aufgaben
zusammen mit der erforderlichen Verarbeitungszeit T für alle vermuteten
Aufgaben, welche die angenommenen Aufgaben als Referenzaufgaben unter
Verwendung dieser Strukturinformationsmanagementtabelle 35 aufweisen,
hinzugefügt
wird, ist es möglich,
alle Aufgaben, welche gleichzeitig ausgeführt werden können, gänzlich zu
extrahieren. Ein Ressourcenmengeninformationsspeicherungsabschnitt
ist ebenso in dem Speicher 5 vorgesehen, um die Ressourcenmengeninformationen
für die
Anwendungsverwendungsumgebung zu managen. Diese Ressourcenmengeninformationen
halten die Ressourcenmenge für
die Umgebung aufrecht, in welcher die Anwendung für die Betriebsbestimmung
als virtuelle Informationen zusammengesetzt ist, und werden im voraus
in dem Speicherungsabschnitt 4 gespeichert und von einem
geeigneten Speicher 5 ausgelesen.
-
Wenn
die Anwendungsverwendungsumgebung (Hardware-Umgebung oder Software-Umgebung)
bereits existiert, werden die Ressourcenmengeninformationen im voraus
aus einer tatsächlichen Messung
jener Verwendungsumgebung erhalten. Ebenso werden, falls die Verwendungsumgebung nicht
existiert, ursprüngliche
Werte, die von jedem Hardware- und Software-Zulieferer von jener
Verwendungsumgebung bereitgestellt werden, verwendet, wie sie sind.
-
Als
Ressourcenmenge dieser Ausführungsform
wird die Nutzungszeit der CPU 2 in der Verwendungsumgebung
verwendet. Als die Ressourcenmenge der vorliegenden Erfindung ist
es ebenso möglich,
die ganze Nutzungszeit oder Speicherkapazität von Vorrichtungen außer der
CPU zu nutzen wie die Speicherungsvorrichtung, der Speicher oder
ein nicht dargestellter Videospeicher, die Netzwerkkommunikationsgeschwindigkeit,
die Netzwerkserverspeicherkapazität, die Speicherkapazität oder Hardware-Ressourcen
oder Software-Ressourcen, die erforderlich sind, um eine spezifische
Aufgabe auszuführen.
Es ist ebenso möglich
für die
Ressourcenmenge entsprechend dem Typ der Aufgabe oder Funktion abzuweichen,
beispielsweise in dem Fall, wo sich eine Aufgabe auf das Datenlesen
bezieht, kann die Ressourcenmenge eine Festplattenspeicherkapazität und Nutzungszeit
und Kapazität
des Speichers sein, während
in dem Fall, wo sich eine Aufgabe auf die Signalverarbeitung bezieht,
kann die Ressourcenmenge eine Nutzungszeit der CPU und eine Nutzungszeit
und Speicherkapazität
des Speichers sein, und in dem Fall, wo sich eine Aufgabe auf eine
Bildausgabe bezieht, kann die Ressourcenmenge eine Nutzungszeit
der CPU, eine Nutzungszeit und Speicherkapazität des Speichers und eine Nutzungszeit
und Speicherkapazität
des Videospeichers sein.
-
Die
Betriebsbestimmungsverarbeitung dieser Ausführungsform wird nunmehr unter
Bezugnahme auf 14 beschrieben werden. Falls
eine Anwendungsbetriebsbestimmungsanforderung eingegeben wird, führt die
CPU 2 die folgende Verarbeitung entsprechend einem in dem Betriebsbestimmungsprogrammspeicherungsabschnitt 8 gespeicherten
Betriebsbestimmungsprogramm aus.
-
Zuerst
werden die Bedarfsressourcenmengeninformationen (hier wird die Verarbeitungszeit
T benötigt)
und die Strukturinformationen für
die Anwendung jeweils aus der Aufgabeninformationsmanagementtabelle 34 und
der Strukturinformationsmanage menttabelle 35 gelesen (S41).
Die Ressourcenumgebungsinformationen für die Ausführungsumgebung werden ebenso
aus dem Ressourceninformationsspeicherungsabschnitt gelesen (S42).
-
Als
nächstes
werden Strukturinformationen für
die Anwendung, welche in Schritt S41 gelesen wurden, und eine erstellte
Aufgabenkombination, welche eine einzelne Funktion bildet, als ein
Ergebnis einer gleichzeitigen Ausführung basierend auf erforderlichen
Ressourceninformationen für
jede Aufgabe extrahiert (S43). Mit dem oben beschriebenen Beispiel
von 13 werden die Aufgabe 2 und die Aufgabe 4 sowie
die Aufgabe 3 und die Aufgabe 5 als eine einzelne Funktionsaufgabe
als ein Ergebnis einer gleichzeitigen Ausführung extrahiert.
-
Es
wird dann bestimmt, ob alle extrahierten Kombinationen ausführbar sind
oder nicht, indem die in Schritt S42 ausgelesenen Ressourcenmengeninformationen
verglichen werden (S44). In spezifischer Weise werden für alle extrahierten
Kombinationen die Messung der Last in der Implementierungsumgebung
und eine QoS-Evaluierung ausgeführt
und falls die Last niedriger ist als ein spezifizierter Referenzwert
und die QoS über
einem spezifizierten Referenzwert ist, wird bestimmt, dass eine
Ausführung möglich ist,
andernfalls wird bestimmt, dass eine Ausführung nicht möglich ist.
-
Das
Ergebnis der Bestimmung in Schritt S44 wird, wenn bestimmt wird,
dass eine Ausführung möglich ist
(S45), oder wenn bestimmt wird, dass eine Ausführung nicht möglich ist
(S46), an die Anwendung zurückgegeben
und die Verarbeitung wird beendet. Basierend auf der Ausgabe von
S45 oder S46 wird eine geeignete Textnachricht in einer Anzeigevorrichtung
(nicht dargestellt) angezeigt, indem die spezifizierte Anzeigeverarbeitung
verwendet wird.
-
Wie
oben beschrieben wurde, werden mit der vierten Ausführungsform
Strukturinformationen einer Anwendung, welche ein Bestimmungsobjektprogramm
ist, das bedeutet, Informationen, die sich auf eine Verknüpfung (Ausführungsreihenfolge
und Ausführungszeitsteuerung)
zwischen Aufgaben der Anwendung und den Bedarfsressourcenmengeninformationen
für jede
Aufgabe beziehen, ermittelt und basierend auf diesen Informationen
werden die Kombinationen von Aufgaben, welche eine einzelne Funktion
aufweisen, welche ausführbar
ist, durch gleichzeitige Ausführung
extrahiert. Die Ausführbarkeit
aller extrahierten Kombinationen (das bedeutet, die Ausführbarkeit
für alle
Funktionen, die der Anwendung gehören) wird dann bestimmt basierend
auf der extrahierten Kombination und den Bedarfsressourcenmengen.
Demgemäß kann mit
dieser Ausführungsform,
da es möglich
ist, die Ausführbarkeit zu
bestimmen, ohne tatsächlich
Operationen bzw. Betriebsvorgänge
einer Anwendung auszuführen, die
Bestimmung der Ausführbarkeit
beschleunigt werden.
-
Ebenso
ist es mit dieser Ausführungsform, da
die Anwendung Strukturinformationen und die zur Ausführung jeder
Aufgabe erforderlichen Ressourcenmengeninformationen enthält, möglich, Informationen
für verschiedene
Aufgaben, die in einer in Ausführung
befindlichen Anwendung enthalten sind, als eine Kombination zu behandeln.
-
Fünfte Ausführungsform
-
Als
nächstes
wird eine fünfte
Ausführungsform
beschrieben werden. Mit der oben beschriebenen vierten Ausführungsform
gibt es, falls das Ergebnis der Verarbeitung von Schritt S44 darin
besteht, dass eine Ausführung
nicht möglich
ist, eine Ausgabe, die diese Tatsache bezeichnet, jedoch wird mit der
fünften
Ausführungsform,
in dem Fall, wo bestimmt wird, dass eine Ausführung nicht möglich ist, die
Verarbeitungsmenge korrigiert und die Bestimmung wird erneut ausgeführt. Die
Hardware-Struktur des Systems der fünften Ausführungsform ist dieselbe wie
jene der oben beschriebenen vierten Ausführungsform und somit wird eine
Beschreibung weggelassen werden.
-
Mit
der fünften
Ausführungsform
werden ein gesicherter Abschnitt und ein steuerbarer Abschnitt im
voraus für
jede Aufgabe eingestellt. Beispielsweise ist in dem Fall, wo eine
Aufgabe ein Audio-Wiedergabeprogramm ist, der gesicherte Abschnitt
ein Verarbeitungsabschnitt, der sich auf eine Dekodierungsverarbeitung
bezieht, und der steuerbare Abschnitt ist ein Verarbeitungsabschnitt,
der sich auf eine Ergänzungsverarbeitung
bezieht, um eine hohe Klangqualität zu erzielen.
-
Ebenso
ist in dem Fall, wo die Aufgabe ein MPEG-Laufbild-Wiedergabeprogramm
ist, der gesicherte Abschnitt ein Verarbeitungsabschnitt, der einer
Frame-Rate von 1/15tel einer Sekunde zwischen den Bildern entspricht,
und der steuerbare Abschnitt ist ein Verarbeitungsabschnitt, der
einer Frame-Rate von 1/30tel einer Sekunde zwischen den Bildern
entspricht. Falls eine Aufgabe ein Standbild- oder Laufbild-Wiedergabeprogramm
ist, ist es möglich,
die Auflösung
einzustellen, indem ein Verarbeitungsabschnitt, welcher der niedrigsten
Auflösung
entspricht, welche das menschliche Auge tolerieren kann, zu einem
gesicherten Abschnitt gemacht wird, und indem ein Verarbeitungsabschnitt,
der einer höheren
Auflösung
entspricht, zu einem steuerbaren Abschnitt gemacht wird.
-
Ebenso
ist, falls eine Anwendung ein Web-Browser ist, ein gesicherter Abschnitt
ein Verarbeitungsabschnitt, welcher einer Kommunikationsrate für ein Paketkommunikationsintervall
innerhalb einer Netzwerkauszeitperiode entspricht, und ein steuerbarer
Abschnitt ist ein Verarbeitungsabschnitt, welcher einer Kommunikationsrate
für eine
höhere
Kommunikationsrate, beispielsweise (Paket-Größe/Durchsatz), entspricht.
Mit einem Anwendungsprogramm dieser Ausführungsform werden gesicherte
Abschnittsprogrammanweisungen und steuerbare Abschnittsprogrammanweisungen
von jeder Aufgabe getrennt voneinander beschrieben und ein spezifiziertes
gesichertes Objekt-Flag wird an die gesicherte Abschnittsspeicheradresse
als ein gesicherter Objektbezeichner angehängt. Dieses gesicherte Objekt-Flag
wird beim Extrahieren von gesicherten Abschnitten zum Zeitpunkt
der Ausführung
einer Anwendung mit einer geänderten
Einstellung verwendet, wenn die Dienstqualitätseinstellung zum Zeitpunkt
der Ausführung
geändert
wird als Folge der Verarbeitung von Schritt S57, was später beschrieben
werden wird.
-
Ebenso
werden Ressourcenmengen für
die gesicherten Abschnitte von jeder Aufgabe, das bedeutet, Ressourcenmengen
zum Sichern von Verknüpfungen
von unterer Grenze, gemessen, indem eine Zeitmeßfunktion eines Zeitplanungsprogramms der
Hardware- oder Software-Umgebung, unter welcher jene Anwendung ausgeführt wird,
oder auf einem Emulator, der diese Umgebung simuliert, verwendet
wird. In spezifischer Weise wird eine an der unteren Grenze zu sichernde
Ressourcenmenge im voraus gemessen, indem die Zeit gemessen wird,
bei der die Ressource verwendet wird, und zwar in jeder zugewiesenen
Periode von dem Start der Ausführung
der Objektverarbeitung bis zur Fertigstellung. Ebenso kann die Frist
von jeder Aufgabe gemessen werden, indem die Ausführungsstartzeitsteuerung
eines Prozes ses zurück
verschoben wird und zwar in jeder zugewiesenen Periode und indem
eine Fensterperiode gemessen wird, bis die Qualität nicht
länger
erfüllt
wird. Es ist ebenso möglich,
die Ressourcenmenge für
die steuerbaren Abschnitte zu berechnen, indem ein Meßwert für einen
gesicherten Abschnitt von einem Wert subtrahiert wird, der unter Verwendung
derselben Zeitplanungsfunktion gemessen wird, während die Verarbeitung ausgeführt wird, indem
die höchste
Verarbeitungsqualität
für jede
Aufgabe verwendet wird. Diese Punkte von Ressourcenmengeninformationen
können
ebenso erzielt werden durch diese Art von Erprobung und indem tatsächlich diese
Messungen auf dem System durchgeführt werden oder indem direkt
von einem Anwendungsprogrammverkäufer
erhaltene Spezifizierungswerte verwendet werden.
-
15 zeigt
eine Betriebsbestimmungsverarbeitung, die sich auf eine fünfte Ausführungsform bezieht.
In 15 ist die Verarbeitung von Schritt S51 bis S55
dieselbe wie die Verarbeitung von Schritt S41 bis S45 in der oben
beschriebenen vierten Ausführungsform.
-
Wenn
es eine negative Entscheidung in Schritt S54 gibt, insbesondere
wenn für
alle extrahierten Aufgabenkombinationen (das bedeutet, alle Kombinationen
von Aufgaben, welche eine einzelne Funktion durch gleichzeitige
Ausführung
erzielen) als Folge der Ausführung
einer Messung der Last in der Implementierungsumgebung und der QoS-Evaluierung
bestimmt wird, dass eine Aufgabe existiert, welche bewirken wird,
dass die Last höher
ist als ein spezifizierter Referenzwert oder dass QoS niedriger ist
als ein spezifizierter Referenzwert, dann wird danach für jenen
Typ von Aufgabenkombinationen eine Bestimmung, hinsichtlich darin,
ob eine Änderung der
Dienstqualität
möglich
ist, ausgeführt
in Abhängigkeit
davon, ob es steuerbare Abschnitte innerhalb der Aufgabenkombinationen,
welche Bestimmungsobjekte bilden, gibt oder nicht.
-
Wenn
das Ergebnis dieser Bestimmung darin besteht, dass eine Änderung
der Dienstqualität möglich ist,
das bedeutet, dass es eine Aufgabe gibt, welche steuerbare Abschnitte
innerhalb einer ein Bestimmungsobjekt bildenden Aufgabenkombination enthält, werden
Ressourceninformationen, die derart sind, dass die Dienstqualitätsänderung
möglich
ist, korrigiert und erneut eingestellt (S57). In spezifischer Weise
sind für
Aufgaben, welche steuerbare Abschnitte innerhalb von Aufgabengruppen
enthalten, die Bestimmungsobjekte bilden, steuerbare Abschnitte
virtuell von den Verarbeitungsobjekten ausgeschlossen und diese
Tatsache wird dadurch angezeigt, dass beispielsweise ein bestimmtes
Flag in einem bestimmten Speicherbereich des Speichers 5 gespeichert
wird.
-
Dann
wird zur Einstellung, wobei die steuerbaren Abschnitte von Aufgaben,
welche steuerbare Abschnitte enthalten, ausgeschlossen werden, die Ausführbarkeit
der Aufgabengruppe noch einmal basierend auf der Bedarfsressourcenmenge
nach der Korrektur bestimmt (S54) und falls bestimmt wird, dass
eine Ausführung
möglich
ist, geht die Verarbeitung zu Schritt S55 weiter. Wenn es beispielsweise eine
Vielzahl von Aufgaben gibt, welche steuerbare Abschnitte in Schritt
S57 aufweisen, kann die jeweilige Verarbeitung der Schritte S53,
S54, S56 und S57 wiederholt vielfach ausgeführt werden, indem einige Aufgaben,
welche Gegenstände
einer Korrektur bilden, in einer bestimmten Reihenfolge der Priorität sequentiell
ausgewählt
werden.
-
Falls
die Bestimmung in Schritt S56 negativ ist, das bedeutet, wenn bestimmt
wird, dass eine besondere Aufgabengruppe nicht ausgeführt werden kann
und es keinen Bereich zur Änderung
der Dienstqualität
(Einstellung, Löschung)
gibt, wird diese Tatsache an die Anwendung zurückgegeben (S58) und die Verarbeitung
wird beendet. Der Punkt, dass eine geeignete Textnachricht in einer
Anzeigevorrichtung (nicht dargestellt) unter Verwendung einer bestimmten
Anzeigeverarbeitung basierend auf der Ausgabe von S55 oder S56 angezeigt
wird, ist derselbe wie bei der oben beschriebenen vierten Ausführungsform.
-
Wie
oben mit der fünften
Ausführungsform für einige
Aufgabengruppen beschrieben wurde, die aus einer Vielzahl von Aufgaben
gebildet werden, welche eine Möglichkeit
aufweisen, gleichzeitig ausgeführt
zu werden, falls durch Schauen auf die Ressourcenmenge, welche von
dem System vorgesehen werden kann, bestimmt wird, dass eine Ausführung nicht
möglich
ist, wird die Bedarfsressourcenmenge für variable Aufgaben korrigiert
(S57) und wird die Ausführbarkeit
bestimmt basierend auf der Bedarfsressourcenmenge nach der Korrektur
(S54). Demgemäß ist es,
selbst wenn es einmal bestimmt ist, dass eine Ausführung nicht
möglich
ist, wird es einmal als Folge einer sich geringfügig ändernden Dienstqualität bestimmt
werden, dass eine Ausführung
möglich ist,
möglich,
die Anzahl der Prozesse für
die Betriebsbestätigung
aufgrund der Realisierung von jenem Typ der Änderung zu reduzieren.
-
Mit
der oben beschriebenen fünften
Ausführungsform
ist die Struktur so, dass die Verarbeitungsmenge eingestellt wird,
indem virtuell die Gesamtheit von steuerbaren Abschnitten gelöscht wird,
jedoch ist es umgekehrt ebenso möglich,
eine Struktur aufzuweisen, so dass, wenn es einen Spielraum bei
der Ressourcenmenge gibt (in spezifischer Weise, wenn ein Unterschied
zwischen der Ressourcenmenge, welche vorgesehen werden kann, und
der gesamten Bedarfsressourcenmenge für alle Aufgabenkombinationen
einen bestimmten Wert überschreitet),
zusätzliche
steuerbare Abschnitte, welche die Verarbeitungsqualität steigern
würden,
zu allen Aufgaben hinzugefügt
werden. Ebenso kann, obgleich mit der oben beschriebenen vierten
und fünften
Ausführungsform
eine Beschreibung einer Struktur angegeben wurde, wo die Aufgabenverarbeitungsqualität in einer
schrittweisen Art gesteigert oder verringert wird in Reaktion auf
die Anwesenheit oder Abwesenheit eines Spielraums in der Ressourcenmenge,
eine Änderung
der Verarbeitungsqualität
der vorliegenden Erfindung ebenso für einige Aufgaben ausgeführt werden
und es ist ebenso möglich,
den gewünschten Effekt
der vorliegenden Erfindung mit diesem Typ der Struktur zu erzielen.
-
Mit
der oben beschriebenen vierten und fünften Ausführungsform wurde eine Beschreibung
für ein
Beispiel zum Bestimmen der Ausführbarkeit
einer einzelnen Anwendung basierend auf einer Zwischenbeziehung
(Strukturinformationen) zwischen Aufgaben von jener Anwendung angegeben,
jedoch kann die vorliegende Erfindung ebenso auf die Bestimmung
der Ausführbarkeit
angewandt werden, wenn eine Vielzahl von Anwendungen veranlaßt werden, parallel
zu laufen, oder wenn eine Middleware, welche ein Bestimmungsobjektprogramm
ist, und eine auf der Middleware laufende Anwendung gleichzeitig ausgeführt werden.
-
In
spezifischer Weise hängt
im Falle, dass die Ausführbarkeit
für eine
besondere Anwendung bestätigt
wird (nachfolgend als eine erste Anwendung bezeichnet), falls berücksichtigt
wird, dass die Ausführung
parallel zu einer Anwendung neben der ersten Anwendung stattfindet
(nachfolgend als eine zweite Anwendung bezeichnet), die Ausführungszeitsteuerung
für jeweilige
Aufgaben der zweiten Anwendung von der Ausführungszeit steuerung einiger
Aufgaben der ersten Anwendung ab, und falls die Bedarfsressourcenmenge
für jede
Aufgabe der zweiten Anwendung bekannt ist, ist es möglich, die
Ausführbarkeit
von jener Operation bzw. jenem Betriebsvorgang bzw. Betrieb zu bestimmen,
indem dieselbe Verarbeitung wie in der oben beschriebenen vierten Ausführungsform
verwendet wird, indem jeweilige Punkte von Informationen für die Ausführungszeitsteuerung
und die Bedarfsressourcenmenge für
jede Aufgabe dieser zweiten Anwendung der Aufgabenmanagementtabelle 34 der
oben beschriebenen vierten Ausführungsform
und der Strukturinformationsmanagementtabelle hinzugefügt werden
und diese gespeichert werden.
-
Auf
diese Weise ist es, falls die Ausführbarkeit in dem Fall, wo bewirkt
wird, dass eine Vielzahl von Anwendungen in einem bestimmten Mehraufgabensystem
parallel läuft,
bestimmt wird, indem die Betriebsbestimmungsfunktion der vorliegenden
Erfindung verwendet wird, möglich, äußere Bedingungen
zum Zeitpunkt der Ausführung
der ersten und zweiten Anwendung glaubwürdiger zu reproduzieren, und
es ist möglich,
eine genaue Betriebsbestimmung auszuführen. In diesem Fall ist es
ferner, falls die Bedarfsressourceninformationen und die Strukturinformationen
für jede
Aufgabe der ersten Anwendung im voraus in der Form vorgesehen werden, dass
sie in der Speicherungsvorrichtung 4 gespeichert werden,
möglich,
die Betriebsbestimmungsfunktion der vorliegenden Erfindung effektiv
auch in dem Fall zu verwenden, wo ein Anwendungsverkäufer eine
dafür adaptierte
Anwendung entwickelt.
-
Ebenso
werden mit der oben beschriebenen vierten und fünften Ausführungsform die Ressourcenmengeninformationen
für einen
einzelnen Typ einer Implementierungsumgebung (Hardware-Umgebung, Software-Umgebung)
in dem Ressourcenmengeninforma tionsspeicherabschnitt 33 gespeichert,
jedoch ist es anstelle dieses Strukturtyps ebenso möglich, die
Ressourcenmengeninformationen für
eine Vielzahl von unterschiedlichen Typen einer Implementierungsumgebung
in dem Ressourcenmengeninformationsspeicherabschnitt 33 zu
speichern und die Betriebsbestimmungsverarbeitung für diese
Vielzahl von Typen von Ressourcenmengeninformationen sequentiell
zu erproben oder es zu einer Bedingung der Ausführbarkeitsbestimmung zu machen,
dass diese Vielzahl von Typen von Ressourcenmengeninformationen
eine UND-Bedingung erfüllt.
Mit diesem Strukturtyp ist es möglich, die
vorliegende Erfindung auf derartige Fälle anzuwenden, wo sich eine Übertragungs-
und Empfangsseite eine weitreichende Hardware-Struktur wie ein portables
Telefon mit einer Anwendungsherunterladefunktion teilen.
-
Die
Betriebsbestimmungsfunktion der vorliegenden Erfindung kann ebenso
als eine Lastmessungsplatine oder Evaluierungsplatine zum Implementieren
einiger Funktionen durch entfernbares Verbinden mit einem wohlbekannten
Personal-Computer vorgesehen werden. Das bedeutet, dass es möglich ist,
jeweilige Punkte von Informationen, die einer Aufgabenmanagementtabelle 32 und
einem Ressourcenmengeninformationsspeicherabschnitt 33 entsprechen,
und ein Verarbeitungsprogramm der oben beschriebenen vierten und
fünften
Ausführungsform
oder ein modifiziertes Beispiel in der Form vorzusehen, dass sie
in einer wohlbekannten Einzel-Chip-Mikroprozessorplatine, wobei
eine CPU, ein ROM, ein RAM und eine Eingabe-Ausgabe-Schnittstelle mittels
einer Bus-Leitung verbunden sind, gespeichert sind, was es möglich macht,
den gewünschten
Effekt der vorliegenden Erfindung zu erzielen.
-
Ebenso
kann ein Betriebsbestimmungsprogramm der vorliegenden Erfindung
als ein Programm zum Bestimmen der Ausführbarkeit eines eine Vielzahl
von Aufgaben in einem System enthaltenden Programms konfiguriert
werden, um auf einem Computer eine Ausführung der Strukturinformationsermittlungsverarbeitung
zum Ermitteln von Informationen von Aufgaben, welche ein Bestimmungsobjektprogramm
bilden, als Strukturinformationen, der Funktionsextraktionsverarbeitung
zum Extrahieren einer Kombination der Aufgaben, welche eine einzelne
Funktion sein kann, durch gleichzeitige Ausführung auf der Basis der Strukturinformationen,
der Bedarfsressourcenmengeninformationsermittlungsverarbeitung zum
Ermitteln von Informationen über
die zur Ausführung
der jeweiligen Aufgaben erforderliche Ressourcenmenge und der Bestimmungsverarbeitung
zum Bestimmen der Ausführbarkeit
bezüglich aller
dem Objektbestimmungsprogramm gehörenden Funktionen auf der Basis
der extrahierten Aufgabenkombinationen und der Bedarfsressourcenmengeninformationen
zu bewirken, wobei es in einem Zustand, wo dieses Programm in einem
wohlbekannten Speichermedium wie in einer CD-ROM gespeichert wird oder gehandhabt
wird, indem es über
ein Netzwerk heruntergeladen wird, möglich ist, es als effektives
Mittel zum Realisieren der Effekte der Erfindung zu verwenden.