[go: up one dir, main page]

DE69905776T2 - Sprachenverarbeitungsverfahren mit geringem Aufwand und Speicherbedarf bei der Profildatensammlung - Google Patents

Sprachenverarbeitungsverfahren mit geringem Aufwand und Speicherbedarf bei der Profildatensammlung Download PDF

Info

Publication number
DE69905776T2
DE69905776T2 DE69905776T DE69905776T DE69905776T2 DE 69905776 T2 DE69905776 T2 DE 69905776T2 DE 69905776 T DE69905776 T DE 69905776T DE 69905776 T DE69905776 T DE 69905776T DE 69905776 T2 DE69905776 T2 DE 69905776T2
Authority
DE
Germany
Prior art keywords
call
pair
function call
profile
numerical
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.)
Expired - Fee Related
Application number
DE69905776T
Other languages
English (en)
Other versions
DE69905776D1 (de
Inventor
Takayuki Minato-ku Miura
Rika Minato-ku Ono
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.)
NEC Electronics Corp
Original Assignee
NEC Electronics Corp
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 NEC Electronics Corp filed Critical NEC Electronics Corp
Application granted granted Critical
Publication of DE69905776D1 publication Critical patent/DE69905776D1/de
Publication of DE69905776T2 publication Critical patent/DE69905776T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3604Analysis of software for verifying properties of programs
    • G06F11/3612Analysis of software for verifying properties of programs by runtime analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Description

  • Hintergrund der Erfindung Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft im Allgemeinen ein Sprachverarbeitungssystem, ein Sprachverarbeitungsverfahren und ein Speichermedium, das ein Sprachverarbeitungsprogramm speichert. Insbesondere betrifft die Erfindung ein Sparchverarbeitungsprogramm und ein Sprachverarbeitungsverfahren, die einen Speicherbereich, der für die Sammlung von Profilinformationen eines Computers notwendig ist, und den Verarbeitungsüberhang der Sammlung von Profilinformationen nach Programmausführung reduzieren kann.
  • Beschreibung des Standes der Technik
  • Zur Verbesserung der Leistung bei der Ausführung von Programmen ist es sehr wirksam, das Verhalten von Programmen auf der Basis von Profilinformationen zu kennen. Die Profilinformationen sind Informationen, die durch dynamisches Überwachen der Anzahl der Ausführungen, der Ausführungsdauer eines bestimmten Abschnitts, Verzweigungsinformationen usw. gesammelt werden. Die so erhaltenen Profilinformationen werden als Analyseinformationen des Programms verwendet. Die Optimierung zur Verbesserung der Aus solcher Profilinformationen ausgeführt. Die Profilinformation ist eine nützliche Information, die eine spezifische Optimierung des Programms ermöglicht. Aufrufpaar-Informationen, die die Aufruffrequenz eines Aufrufers/Aufgerufenen (Aufruferseite-Funktion/Aufgerufenenseite-Funktion) anzeigen, sind in dem Programm eine Art solcher Profilinformationen.
  • Nach Sammeln der Profilinformationen, insbesondere der Aufrufpaar-Informationen, ist ein Profilsammelverfahren bekannt, das die Verarbeitungsüberhang bei der Sammlung der Profilinformationen reduziert und konstant macht, und das die Berechnung des Gesamtaufwands ermöglicht (s. ungeprüfte Japanische Patentanm. No. Heisei 9(1997)-62544).
  • 10 ist ein Blockdiagramm, das den Aufbau eines herkömmlichen Profilinformations-Sammelsystems zeigt, und 11A, 11B und 11C sind erklärende Darstellungen eines Aufrufpaarinformations-Erzeugungsverfahrens in dem in 10 gezeigten System.
  • Im Anschluss hieran wird ein herkömmliches Profilinformations-Sammelsystem mit Bezug auf die 10, 11A, 11B und 11C beschrieben. In einem in 10 gezeigten Profilprozess-Einfügeabschnitt 110 wird bei Vorhandensein einer Funktionsaufrufanweisung in einem Quellprogramm 140 ein Quellprogramm, das einen Profilingprozess enthält, erzeugt, indem ein Verzweigungscode direkt vor Ausführung der Funktionsaufrufanweisung in die Profilinformationssammlung eingefügt wird. Ein Compilierungsund Programmausführabschnitt 120 führt die Complierung des Quellprogramms einschließlich des Profilprozesses aus.
  • Wenn der Profilprozess ausgeführt wird, wird eine zweidimensionale in 11A gezeigte Aufrufpaarinformations-Verarbeitungstabelle gezeichnet, indem eine Aufruf-ID, die die Aufruferseitenfunktion anzeigt, und eine Aufgerufenen-ID, die die Aufgerufenenseitenfunktion anzeigt, als Argument für das Einrichten einer linearen in 11C gezeigten Aufrufpaarinformations- Speichertabelle 160 verwendet. Anschließend wird die Aufrufanzahl des Aufrufpaars um 1 erhöht.
  • f (Aufrufen, Aufgerufener) = [ (Aufrufer + Aufgerufener – 1) * (Aufrufer + Aufgerufener -2)]/2 + Aufrufer – 1 ...(1) In 11A, entsprechen ID1, ID2, ID3 und ID4 jeweils der Hauptroutine (als "main" bezeichnet), einer Funktion (als "func1" bezeichnet), einer Funktion (als "func2" bezeichnet"), und einer Funktion (als "func3" bezeichnet), wie es in 11B gezeigt ist.
  • Nach dem Ende der Programmausführung wird in einem Profilinformations-Erzeugungsabschnitt 130 die Anzahl der Aufrufe pro jedem relevanten Aufrufpaar aus der linearen Tabelle der Aufrufpaarinformations-Speichertabelle 160 ausgelesen, indem ein zugeordneter Wert gemäß der vorangehenden Gleichung (1) als Index genommen wird. Indem die ausgelesene Anzahl der Aufrufe aufgezeichnet wird, wird eine Aufrufpaarinformation ausgegeben.
  • In dem oben dargelegten herkömmlichen Profilinformations-Sammelverfahren muss jedoch der notwendige Speicherbereich im Vorhinein in einem Stück konzentriert reserviert sein, um das Aufzeichnen der Anzahl der Aufrufe für alle Aufrufpaarinformationen in dem Programm zu ermöglichen.
  • Da es möglich ist, eine Aufrufbeziehung zu verursachen, kann in diesem Fall bei einer gegenseitigen Beziehung aller in dem Programm enthaltenen Funktionen eine zweidimensionale Tabelle eine Anzahl von Aufrufen für alle möglichen Kombinationen aller Funktionen (einschließlich dem Aufruf der fraglichen Funktion selbst) speichern. Wenn die Anzahl der in dem Programm enthaltenen Funktionen groß ist, ist daher eine große Menge an Kapazität als Bereich für die Tabelle, die Aufrufpaare speichert, erforderlich.
  • Des Weiteren ist eine lange Periode für den Initialisierungsprozess für einen so großen Bereich erforderlich. Außerdem braucht es eine lange Zeit zum Zuordnen der zweidimensionalen Aufrufpaarinformations-Speichertabelle, die für sowohl den Auf ruf er als auch den Aufgerufenen in der linearen Aufrufpaarinformations-Speichertabelle zugeordnet wird. Daher wird der Verarbeitungsüberhang beim Profilprozess nach der Ausführung des Programms groß. Außerdem wird es nötig, den Index sogar nach Ausgabe der Aufrufpaarinformation abzuleiten (zuzuordnen), womit eine lange Zeit für einen solchen Prozess zum weiteren Anstieg des Verarbeitungsüberhangs beim Profilprozess nach der Programmausführung gebraucht wird.
  • Die Druckschrift US-A-5,606,699 offenbart ein Verfahren zum Speichern der und Zugreifen auf die Ausführungsinformationen von objektorientierten Programmen, die auf einem Computer laufen, das das Herausziehen von Informationen aus einem Ereignisstrom durch ein Ausführungsmodel beinhaltet.
  • Zusammenfassung der Erfindung
  • Es ist eine Aufgabe der Erfindung, ein Sprachverarbeitungssystem und ein Sprachverarbeitungsverfahren bereitzustellen, die einen Speicherbereich einer zu verwendenden Tabelle nach dem Sammeln von Profilinformationen in der Programmausführung verkleinern können.
  • Eine weitere Aufgabe der Erfindung ist es, ein Sprachverarbeitungssystem und ein Sprachverarbeitungsverfahren bereitzustellen, die einen Verarbeitungsüberhang durch den Profilprozess nach der Programmausführung so weit wie möglich verringern können. Die genannten Aufgaben werden erfindungsgemäß durch die anliegenden unabhängigen Ansprüche gelöst.
  • Gemäß dem ersten Aspekt der Erfindung weist ein Sprachverarbeitungssystem, das eine Profilinformation während der Ausführung eines Programms sammelt, Folgendes auf:
    eine Profilprozess-Einfügeeinrichtung zum Erfassen eines Funktionsaufrufs in einem Quellprogramm durch statische Analyse, wobei pro in dem Quellprogramm erfassten Funktionsaufruf ein Verzweigungscode in den Profilprozess eingeführt wird und ein Bereich einer Tabelle, die die Anzahl der entsprechenden Funktionsaufrufe pro einer Identifikationsnummer eines Aufrufpaars in dem Funktionsaufruf speichert, gesetzt wird, und
    eine Programm-Ausführeinrichtung zum Ausführen einer Übersetzung des Quellprogramms, bei dem in den Profilprozess der Verzweigungscode eingeführt ist, und Erhöhen der Anzahl der Funktionsaufrufe der Tabelle, indem die Identifikationsnummer als Index genommen wird, die einer Art Aufrufpaar in dem entsprechenden Funktionsaufruf entspricht, wenn der Verzweigungscode zu dem eingeführten Profilprozess vorhanden ist.
  • Bei dem bevorzugten Aufbau weist das Sprachverarbeitungssystem weiter eine Profilinformations-Ausgabeeinrichtung zum Erzeugen von Informationen über eine Anzahl von Aufrufen pro Art des Aufrufpaars durch Auslesen der Anzahl der Funktionsaufrufe aus der Tabelle über die Identifikationsnummer auf.
  • Bei einem weiteren bevorzugten Aufbau weist das Sprachverarbeitungssystem weiter eine Datenbank auf, die Aufrufpaare in dem Funktionsaufruf und deren Identifikationsnummer speichert, wobei die Profilprozess-Einfügeeinrichtung eine Beurteilung abgibt, ob das Aufrufpaar in dem erfassten Funktionsaufruf in der Datenbank registriert ist, und, wenn dies nicht der Fall ist, das Aufrufpaar in dem Funktionsaufruf speichert, indem sie dabei die Identifikationsnummer pro Art hinzufügt.
  • Bei einem weiteren bevorzugten Aufbau weist das Sprachverarbeitungssystem weiter eine Datenbank auf, die Aufrufpaare in dem Funktionsaufruf und deren Identifikationsnummer speichert, wobei die Profilprozess-Einfügeeinrichtung eine Beurteilung abgibt, ob das Aufrufpaar in dem erfassten Funktionsaufruf in der Datenbank registriert ist und speichert, wenn dies nicht der Fall ist, das Aufrufpaar in dem Funktionsaufruf und fügt dabei die Identifikationsnummer pro Art hinzu, und das weiter eine Profilinformations-Ausgabeeinrichtung zur Erzeugung von Informationen über Anzahl der Aufrufe pro Art des Aufrufpaares durch Herauslesen der Nummer des Funktionsaufrufs aus der Tabelle über die Identifikationsnummer der Datenbank aufweist.
  • Bei einem weiteren bevorzugten Aufbau führt die Profilprozess-Informationseinrichtung einen Initialisierungsprozess nach dem Setzen eines Tabellenbereichs durch.
  • Bei einem weiteren bevorzugten Aufbau setzt die Profilprozess-Einfügeeinrichtung entsprechend einer maximalen Anzahl der Identifikationszahl eines Tabellebereichs.
  • Gemäß dem zweiten Aspekt der Erfindung weist ein Sprachverarbeitungsverfahren, das während der Ausführung eines Programmes eine Profilinformation sammelt, folgende Schritte auf:
    den Schritt der Erfassung des Funktionsaufrufs in einem Quellprogramm durch statische Analyse, Einfügen eines Verzweigungscodes über einen in dem Quellprogramm erfassten Funktionsaufruf in den Profilprozess und Setzen eines Tabellenbereichs, der die Anzahl der entsprechenden Funktionsaufrufe über eine Identifikationsnummer des Aufrufpaars in dem Funktionaufruf speichert, und den Schritt der Ausführung einer Übersetzung des Quellprogramms, bei dem in den Profilingprozess der Verzweigungscode eingeführt ist, und Erhöhen der Anzahl des Funktionsaufrufs der Tabelle, indem die der Art des Auf rufpaares in dem entsprechenden Funkti- onsaufruf entsprechende Identifikationsnummer als Index verwendet wird, wenn der in den Profilingprozess eingefügte Verzweigungscode vorhanden ist.
  • Bei dem bevorzugten Aufbau weist das Sprachverarbeitungsverfahren zudem den Schritt des Erzeugens von Informationen über die Anzahl der Aufrufe pro Art eines Aufrufpaars durch Auslesen der Anzahl von Funktionsaufrufen aus der Tabelle über die Identifikationsnummer auf .
  • Bei einem weiteren bevorzugten Aufbau weist das Sprachverarbeitungsverfahren zudem eine Datenbank auf, die Aufrufpaare in dem Funktionsaufruf und deren Identifikationsnummer speichert, wobei der Profilprozess-Einfügeschritt eine Beurteilung abgibt, ob das Aufrufpaar in dem erfassten Funktionsaufruf in der Datenbank registriert ist und, falls dies nicht der Fall ist, speichert er das Aufrufpaar in dem Funktionsaufruf durch Addieren der Identifikationsnummer pro Art, und
    weist weiter einen Schritt der Erzeugung von Informationen über die Aufrufanzahl pro Art von Aufrufpaaren durch Auslesen der Anzahl von Funktionsaufrufen aus der Tabelle durch die Identifikationsnummer der Datenbank auf.
  • Bei einem weiteren bevorzugten Aufbau führt der Profilprozess-Einfügeschritt einen Initialisierungsprozess nach dem Setzen eines Bereichs der Tabelle durch.
  • Bei einem weiteren bevorzugten Aufbau setzt der Profilprozess-Einfügeschritt den Bereich der Tabelle entsprechend einer maximalen Anzahl der Identifikationsnummer.
  • Gemäß einem weiteren Aspekt der Erfindung weist ein computerlesbarer Speicher, der ein zu ladendes und auszuführendes Sprachverarbeitungsprogramm in einem Computer zum Sammeln von Profilinformationen während der Ausführung eines Objektprogramms speichert, Folgendes auf:
    das Erfassen eines Funktionsaufrufs in einem Quellprogramm durch statische Analyse, Einfügen eines Verzweigungscodes in den Pro filprozess pro in dem Quellprogramm erfassten Funktionsaufruf und Setzen eines Tabellenbereichs, der die Anzahl von entsprechenden Funktionsaufrufen pro einer Identifikationsnummer eines Aufrufpaars in einem Funktionsaufruf speichert, und
    das Ausführen der Übersetzung des Quellprogramms, bei dem der Verzweigungscode in den Profilprozess eingeführt wurde, und Erhöhen der Anzahl von Funktionsaufrufen der Tabelle, indem die Identifikationsnummer, die einer Art des Aufrufpaars im entsprechenden Funktionsaufruf entspricht, als Index verwendet wird, wenn der eingeführte Profilingprozess vorhanden ist.
  • Weitere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung ergeben sich aus der folgenden ausführlichen Beschreibung.
  • Kurzbeschreibung der Zeichnungen
  • Die vorliegende Erfindung ist besser verständlich durch die folgende ausführliche Beschreibung und durch die anliegenden Zeichnungen der bevorzugten Ausführungsformen der vorliegenden Erfindung, die jedoch nicht als erfindungsbegrenzend betrachtet werden sollten, sondern allein dem besseren Verständnis dienen.
  • Es zeigen:
  • 1 ein Blockdiagramm, das einen allgemeinen Aufbau eines elektrischen Aufbaus einer Ausführungsform eines erfindungsgemäßen Sprachverarbeitungssystems zeigt;
  • 2 ein Ablaufdiagramm, das den Ablauf des Prozesses eines Statische Analyse- und Profilprozess-Einfügeabschnitts in dem System aus 1 zeigt;
  • 3 ein Ablaufdiagramm, das einen Vorgang des Prozesses eines Compilingprogramm-Ausführabschnitts in dem System aus 1 zeigt;
  • 4 ein Ablaufdiagramm, das den Ablauf des Prozesses eines Profilinformations-Kombinationsabschnitts in dem System aus 1 zeigt;
  • 5 eine erläuternde Darstellung eines Quellprogramms in dem in 1 gezeigten System;
  • 6 eine erläuternde Darstellung einer Aufrufpaar-Datenbank in dem in 1 gezeigten System;
  • 7 eine erläuternde Darstellung eines Quellprogramms, das einen Profilprozess in dem in 1 gezeigten System einschließt;
  • 8 eine erläuternde Darstellung einer Aufrufpaarinformations-Speichertabelle in dem System aus 1;
  • 9 eine erläuternde Darstellung einer Aufrufpaarinformation in dem in 1 gezeigten System;
  • 10 ein Blockdiagramm, das den elektrischen Aufbau des herkömmlichen Profilinformations-Sammelsystems zeigt; und
  • 11A, 11B und 11C erläuternde Darstellungen einer Aufrufpaarinformations-Erzeugungseinrichtung in dem herkömmlichen System.
  • Beschreibung der bevorzugten Ausführungsform
  • Die vorliegende Erfindung wird im Folgenden ausführlich hinsichtlich der bevorzugten Ausführungsform der vorliegenden Erfindung mit Bezug auf die anliegenden Zeichnungen beschrieben. In der folgenden Beschreibung sind zahlreiche spezifische Details dargelegt; um dem Fachmann ein tiefgründiges Verständnis der vorliegenden Erfindung zu eröffnen. Es ist jedoch offensichtlich, dass sie ohne diese spezifischen Details ausgeführt werden kann. Auf der anderen Seite sind gut bekannte Strukturen nicht ausführlich gezeigt, damit die Erfindung klarer hervorkommt.
  • 1 ist ein Blockdiagramm, das einen allgemeinen Aufbau eines elektrischen Aufbaus einer Ausführungsform eines erfindungsgemäßen Sprachverarbeitungssystems zeigt, 2 ist ein Ablaufdiagramm, das den Ablauf des Prozesses eines Statische Analyse- und Profilprozess-Einfügeabschnitts in dem System aus 1 zeigt, 3 ist ein Ablaufdiagramm, das einen Vorgang des Prozesses eines Compilingprogramm-Ausführabschnitts in dem System aus 1 zeigt, 4 ist ein Ablaufdiagramm, das den Ablauf des Prozesses eines Profilinformations-Kombinationsabschnitts in dem System aus 1 zeigt, 5 ist eine erläuternde Darstellung eines Quellprogramms in dem in 1 gezeigten System, 6 ist eine erläuternde Darstellung einer Auf rufpaar-Datenbank in dem in 1 gezeigten System, 7 ist eine erläuternde Darstellung eines Quellprogramms, das einen Profilprozess in dem in 1 gezeigten System einschließt, 8 ist eine erläuternde Darstellung einer Aufrufpaarinformations-Speichertabelle in dem System aus 1, und 9 ist eine erläuternde Darstellung einer Aufrufpaarinformation in dem in 1 gezeigten System.
  • Die gezeigte Ausführungsform des erfindungsgemäßen Sprachverarbeitungssystems ist im Allgemeinen aus einem Statische Analyse- und Profilprozess-Einfügeabschnitt 10, einem Compiling- und Programmausführungsabschnitt 20 und einem Profilinformations-Kombinationsabschnitt 30 aufgebaut.
  • Hier erfasst der Statische Analyse- und Profilprozess-Einfügeabschnitt 10 den Aufruf einer Funktion in einem Quellprogramm 40 durch statische Analyse. Anschließend wird eine Identifikationsnummer eines Auf rufpaares in einer Aufrufpaar-Datenbank 50 registriert, und ein Code für den Profilprozess wird in das Quellprogramm 40 eingefügt. In Verbindung hiermit wird ein Bereich für eine Aufrufpaarinformations-Speichertabelle 70 für das Zählen der Anzahl von Aufrufen pro Aufrufpaar gesetzt.
  • Der Compiling- und Programmausführabschnitt 20 führt das Compillieren des den Profilprozess enthaltenden Quellprogramms aus, in das der Profilprozess eingefügt ist. Wenn der Profilingprozess durchgeführt wird, wird die Anzahl der Aufrufe in der Aufrufpaarinformations-Speichertabelle 70 erhöht, indem die Identifikationsnummer des Aufrufpaars beim Aufrufen der Funktion verwendet wird.
  • Der Profilinformations-Kombinationsabschnitt 30 liest den Inhalt der Aufrufpaarinformations-Speichertabelle 70 aus, um eine Aufrufpaarinformation zu erzeugen.
  • Als Nächstes wird die Arbeitsweise der gezeigten Ausführungsform des Sprachverarbeitungssystems mit Bezug auf 1 bis 9 beschrieben.
  • Es wird angenommen, dass eine Funktionsaufrufroutine in der Hauptroutine des Quellprogramms 40 enthalten ist, wie beispielsweise in 5 gezeigt. Hier wird ebenfalls angenommen, dass die entsprechende Funktion func1, Funktion func2, Funktion func3, Funktion func1 ... von der Hauptroutine abgerufen werden und mit "main" bezeichnet sind, um eine Berechnung mit den entsprechenden Argumenten a, b, c, d, ..., durchzuführen und die entsprechenden x1, x2, x3, x4, ... durch Ergebniswerte zu ersetzen.
  • In dem Statische Analyse- und Profilprozess-Einfügeabschnitt 10 wird eine statische Analyse gemäß dem in 2 gezeigten Ablaufdiagramm durchgeführt, um einen Prozess des Einfügens des Codes, der den Profilprozess für das Quellprogramm 40 befehligt, durchzuführen (Schritt 201 in 2).
  • Eine Anweisung wird nämlich aus dem Quellprogramm 40 entnommen (Schritt 202). Anschließend wird die Anweisung geprüft, ob sie eine Funktionsaufrufanweisung ist oder nicht (Schritt 203). Ist die Anweisung die Funktionsaufrufanweisung, wird ein Paar (Aufrufpaar), das aus einem Aufrufer und einem Aufgerufenen besteht, in dem Funktionsaufruf überprüft, ob es in der Aufrufpaar-Datenbank 50 registriert ist oder nicht (Schritt 204).
  • Wenn das Ergebnis der Überprüfung in Schritt 204 ergibt, dass das geprüfte Auf rufpaar nicht in der Auf rufpaar-Datenbank 50 registriert ist, wird das Aufrufpaar zusammen mit der Identifikationsnummer in der Aufrufpaar-Datenbank 50 registriert (Schritt 205). Wenn das geprüfte Auf rufpaar in Schritt 204 oder nach der Registrierung in der Auf rufpaar-Datenbank bei Schritt 205 in der Auf rufpaar-Datenbank 50 registriert ist, wird ein Verzweigungscode direkt vor einem Verzweigungscode an den Aufrufer in dem Quellprogramm in den Profilprozess eingefügt (Schritt 206). Ein derartiger Prozess wird bis zum Ende des Quellprogramms wiederholt (Schritt 207). Nach Erreichen des Endes des Quellprogramms wird, damit eine Anzahl von Aufrufen für alle in der Aufrufpaar-Datenbank 50 registrierten Auf rufpaare gespeichert werden kann, ein Bereich für die Aufrufpaarinformations-Speichertabelle 70 als die lineare Tabelle gesetzt, und in Verbindung hiermit wird ein Initialisierungsprozess für den gesetzten Bereich in das Quellprogramm eingefügt (Schritt 208). Zu diesem Zeitpunkt wird für den Bereich der Aufrufpaarinformations-Speichertabelle 70 eine Größe festgelegt, die fähig ist, Aufrufinformationen der Aufrufpaare in einer der maximalen Anzahl der Identifikationsnummer entsprechenden Anzahl zu speichern.
  • In der Aufrufpaar-Datenbank 50, in der die Registrierung so abgeschlossen wurde, werden Korrespondenzen zwischen den zugeordneten Identifikationsnummern 51 und den Funktionsnamen des Aufrufers 52 und des Aufgerufenen 53, die das Aufrufpaar bilden, registriert, wie in 6 gezeigt.
  • Andererseits wird durch Einfügen des Profilprozesses für das Quellprogramm 40 das Quellprogramm 60 erzeugt, das den Profilingprozess wie in 7 gezeigt enthält. Nämlich als Profilprozess-Anweisung ein Befehl für das Erhöhen eines relevanten Eintretens um eins, indem die Identifikationsnummer des Aufruf paares als Index der Aufrufpaarinformations-Speichertabelle 70 verwendet wird. Auch ein Code für das Durchführen einer Verzweigung bei dem Profilingprozess wird direkt vor einem Verzweigungscode zu dem Auf ruf er pro Funktionsaufrufanweisung eingefügt.
  • Als Nächstes wird in dem Compiling- und Programmausführabschnitt 20 ein Prozess durchgeführt, wie er im Ablaufdiagramm in 3 gezeigt ist. Zuerst wird das Quellprogramm 40 compiliert (Schritt 301 in 3). Anschließend wird das in ein ausführbares Format übersetzte Programm ausgeführt. Durch Ausführen der Anweisung in dem Programm (Schritt 302) wird eine Überprüfung durchgeführt, ob die momentan ausgeführte Anweisung für die Verzweigung des Profilingprozesses gilt oder nicht (Schritt 303). Wenn die momentan ausgeführte Anweisung für die Verzweigung des Profilingprozesses gilt, wird die Anzahl der Aufrufe des relevanten Aufrufpaars um eins erhöht, indem die Identifikationsnummer als Index der Aufrufpaarinformations-Speichertabelle 70 verwendet wird (Schritt 304). Nach Wiederholen des vorhergehenden Prozesses bis zum Ende des compilierten Programms (Schritt 305) wird die Aufrufpaarinformations-Speichertabelle 70 beispielsweise in Form einer Datei gespeichert (Schritt 306).
  • Als Nächstes führt der Profilinformations-Kombinationsabschnitt 30 den in dem Ablaufdiagramm in 4 gezeigten Prozess durch. Zuerst wird der Inhalt der Aufrufpaarinformations-Speichertabelle 70 ausgelesen, indem die Identifikationsnummer der Aufrufpaar-Datenbank 50 als Index verwendet wird, und eine Aufrufpaarinformation, die die Anzahl der Aufrufe des Aufrufpaars enthält, wird erzeugt (Schritt 401 in 4). Wenn der Bezug auf alle Identifikationsnummern der Aufrufpaar-Datenbank 50 durch Wiederholen des vorhergehenden Prozesses beendet ist (Schritt 402 in 4), endet ein Prozess zur Ausgabe der Aufrufpaarinformation.
  • In dem gezeigten Beispiel ist der Inhalt der Aufrufpaarinformations-Speichertabelle wie in 8 dargestellt. Die Anzahl der Aufrufe der entsprechenden Aufrufpaare ist in sequentieller Reihenfolge der Identifikationsnummern der entsprechenden Aufrufpaare aufgezeichnet. In der Aufrufpaarinformations-Ausgabe von dem Profilinformations-Kombinationsabschnitt 30 sind die Namen der Aufrufer und Aufgerufenen der entsprechenden Auf rufpaare und die Anzahl der Identifikationsnummern der entsprechenden Aufrufpaare in sequentieller Reihenfolge gespeichert.
  • Während die vorliegende Erfindung ausführlich hinsichtlich der in den anliegenden Zeichnungen dargestellten Ausführungsform beschrieben wurde, sollten jegliche Modifikationen oder Veränderungen in der Entwicklung, die gemacht werden können, ohne dass vom Erfindungsprinzip abgewichen wird, als innerhalb des Schutzumfangs der vorliegenden Erfindung verstanden werden. Beispielsweise ist die für die Programmierung verwendete Sprache nicht auf eine Hochsprache beschränkt, sondern kann auch eine Assemblersprache, Maschinensprache oder eine andere Niegrigpegel-Sprache sein. Während FORTRAN oder die C-Sprache als Hochsprachen bevorzugt werden können, können auch ALGOL, COBOL, PL/I, BASIC und andere beliebige gleichwertige Sprachen anwendbar sein.
  • Die Initialisierung der Aufrufpaarinformations-Speichertabelle ist nicht auf nach Setzen des Bereichs beschränkt, sondern kann zu einem beliebigen Zeitpunkt vor dem Schreiben der Anzahl von Aufrufen stattfinden. Andererseits kann die Größe des Bereichs für die Aufrufpaarinformations-Speichertabelle eine beliebige Größe sein, solange sie größer ist, als für das Speichern der maximalen Anzahl von Identifikationsnummern nötig ist.
  • Die gezeigte Ausführungsform des oben dargelegten Sprachverarbeitungssystems wird durch eine programmgesteuerte CPU und einen RAM oder anderen internen Speicher in der Workstation, einem PC oder einem anderen Computersystem umgesetzt. Das Sprachverarbeitungssystem, das die vorangehende Funktion umsetzt, wird in einer Form bereitgestellt, die in einem typischen Speichemedium, wie z. B. einer Magnetplatte, einer Bildplatte, einem Halbleiter- Speicher usw. gespeichert ist. Das in dem Speichermedium gespeicherte Sprachverarbeitungsprogramm wird in dem inneren Speicher des Computersystems geladen, um die CPU zu steuern und Funktionen der entsprechenden Komponenten zu erkennen.
  • Wie oben dargelegt, kann in dem Profilingprozess, der die Aufrufpaarinformationen sammelt, ein Speicherbereich gering gehalten werden, der als eine Tabelle zum Speichern der Aufrufpaarinformationen verwendet wird. Andererseits kann während der Ausführung des Programms in dem Profilingprozess der Gesamtaufwand für das Sammeln der Aufrufpaarinformationen und der Gesamtaufwand für das Ausgeben der Aufrufpaarinformationen gering gehalten werden.
  • In der vorliegenden Erfindung wird nämlich nach Ausführung des Programms für den Profilingprozess die Art des in dem Programm enthaltenen Aufrufpaares zuerst durch die statische Analyse geprüft, um es in der Auf rufpaar-Datenbank zu behalten, und ein Speicherbereich, der der Anzahl der Aufrufpaare entspricht, ist sicherlich als die Aufrufpaarinformations-Speichertabelle vorgesehen, wobei der als Aufrufpaarinformations-Speichertabelle benötigte Bereich verkleinert werden kann im Vergleich zu dem Verfahren, das einen Bereich zum Speichern der Anzahl der Funktionsaufrufe, die allen vorrausgesetzten Auf rufpaaren der Arten in dem Programm entsprechen, bereitstellt.
  • Andererseits kann durch Speichern des durch statische Analyse erhaltenen Aufrufpaars mit der Identifikationsnummer in der Aufrufpaar-Datenbank und Durchführen der Sammlung der Profilinformationen durch Erhöhen des relevanten Eintrags in die Aufrufpaarinformations-Speichertabelle, indem die Identifikationsnummer als Index verwendet wird, nach Erfassung des Funktionsaufrufs in dem Programm der für den Profilingprozess während der Ausführung des Programms nötige Verarbeitungsüberhang verkleinert werden im Vergleich zu dem Verfahren nach dem Stand der Technik, das die Aufrufer-ID bzw. die Aufgerufenen-ID nach Erfassen des Funktionsaufrufs und Eingeben in die Aufrufpaarinformations-Speichertabelle abfragt.
  • Da eine Anzahl der Aufrufe pro Aufrufpaar direkt als Aufrufpaarinformationen von der Aufrufpaarinformations-Speichertabelle ausgegeben werden kann, kann weiter der für den Profilingprozess während der Ausführung des Programms nötige Verarbeitungsüberhang verkleinert werden im Vergleich zu dem Verfahren nach dem Stand der Technik, das Aufrufpaarinformationen von der linearen Tabelle erhält, die durch Zuordnen der zweidimensionalen Tabelle erhalten werden.

Claims (16)

  1. Sprachverarbeitungssystem, das eine Profilinformation während der Ausführung eines Quellenprogramms sammelt, das Folgendes aufweist: eine Profilprozess-Einfügevorrichtung (10) zum Erfassen eines Funktionsrufs in dem Quellenprogramm (40) durch statische Analyse, Einfügen eines Verzweigungscodes in einen dem erfassten Funktionsruf entsprechenden Profilprozess, und Schaffen eines Bereichs in einer Tabelle zum Speichern einer Anzahl von Vorfällen des erfassten Funktionsrufs, wobei der Ort des Bereichs innerhalb der Tabelle einer numerischen Stationskennung eines Rufpaares des erfassten Funktionsrufs entspricht; und eine Programm-Ausführvorrichtung (20) zum Ausführen der Übersetzung des Quellenprogramms einschließlich der in dem dem Quellenprogramm entsprechenden Profilprozess eingefügten Verzweigungscodes, und Erhöhen einer Anzahl von Vorfällen, die in der Tabelle in einem Bereich gespeichert sind, der einer numerischen Stationskennung eines Rufpaares eines erfassten Funktionsrufs entspricht, wenn ein Verzweigungscode vorhanden ist.
  2. Sprachverarbeitungssystem nach Anspruch 1, das weiter eine Profilinformation-Ausgabevorrichtung (30) zum Erzeugen von Informationen über die Anzahl der Rufe pro Art des Rufpaares durch Herauslesen der Anzahl der Funktionsrufe aus der Tabelle pro numerischer Stationskennung aufweist.
  3. Sprachverarbeitungssystem nach Anspruch 1, das weiter eine Datenbank (50) aufweist, die Rufpaare des Funktionsrufs und deren numerische Stationskennung speichert, wobei die Profilprozess-Einfügevorrichtung (10) eine Beurteilung abgibt, ob das Rufpaar in dem erfassten Funktionsruf in der Datenbank registriert ist, und die das Rufpaar in dem Funktionsruf speichert, wenn dies nicht der Fall ist, während sie die numerische Stationskennung pro Art hinzufügt.
  4. Sprachverarbeitungssystem nach Anspruch 1, das weiter eine Datenbank (50) aufweist, die Rufpaare in dem Funktionsruf und dessen numerischer Stationskennung speichert, wobei die Profilprozess-Einfügevorrichtung (10) eine Beurteilung abgibt, ob das Rufpaar in dem erfassten Funktionruf in der Datenbank registriert ist, und die das Rufpaar in dem Funktionsruf speichert, wenn dies nicht der Fall ist, während sie die numerische Stationskennung pro Art hinzufügt, und das weiter eine Profilinformations-Ausgabevorrichtung (30) zum Erzeugen von Informationen über die Anzahl der Rufe pro Art des Rufpaares durch Herauslesen der Anzahl der Funktionsrufe der Tabelle pro numerische Stationskennung der Datenbank (50) aufweist.
  5. Sprachverarbeitungssystem nach Anspruch 1, worin die Profilprozess-Einfügevorrichtung (10) einen Initialisierungsvorgang auf das Setzen eines Bereichs der Tabelle hin durchführt.
  6. Sprachverarbeitungssystem nach Anspruch 1, worin die Profilprozess-Einfügevorrichtung (10) eine maximale Anzahl, die der numerischen Stationskennung entspricht, eines Bereichs der Tabelle (70) setzt.
  7. Sprachverarbeitungsverfahren, das eine Profilinformation während der Ausführung eines Quellenprogramms sammelt, das Folgendes aufweist: einen Schritt des Erfassens eines Funktionsrufs in dem Quellenprogramm (40) durch statische Analyse, Einfügen eines Verzweigungscodes in einen Profilprozess, der dem erfassten Funktionsruf entspricht, und Schaffen eines Bereichs in einer Tabelle zum Speichern einer Anzahl von Vorfällen des erfassten Funktionsrufs, wobei die Stelle des Bereichs innerhalb der Tabelle einer numerischen Stationskennung eines Rufpaares des erfassten Funktionsrufs entspricht; und einen Schritt des Ausführens der Übersetzung des Quellenprogramms einschließlich der in die dem Quellenprogramm entsprechenden Profilprozessen eingefügten Verzweigungscodes und Erhöhen der Anzahl der Vorfälle, die in der Tabelle in einem der numerischen Stationskennung eines Rufpaares eines erfasssten Funktionsrufs entsprechenden Bereich gespeichert sind, wenn ein Verzweigungscode vorhanden ist.
  8. Sprachverarbeitungsverfahren nach Anspruch 7, das weiter einen Schritt des Erzeugens von Informationen über die Anzahl der Rufe pro Art Rufpaar durch Herauslesen der Anzahl von Funktionsrufen der Tabelle pro numerischer Stationskennung aufweist.
  9. Sprachverarbeitungsverfahren nach Anspruch 7, das weiter eine Datenbank enthält, die Rufpaare des Funktionsrufs und deren numerische Stationskennung speichert, wobei der Schritt der Profilprozess-Einfügung eine Beurteilung abgibt, ob das Rufpaar in dem erfassten Funktionsruf in der Datenbank registriert ist, und der das Rufpaar in dem Funktionsruf speichert, wenn dies nicht der Fall ist, während er die numerische Stationskennung pro Art hinzufügt, das weiter den Schritt des Erzeugens von Informationen über die Anzahl der Rufe pro Art des Rufpaars durch Herauslesen der Anzahl der Funktionrufe der Tabelle pro numerischer Stationskennung der Datenbank aufweist.
  10. Sprachverarbeitungsverfahren nach Anspruch 7, worin der Schritt des Profilprozess-Einfügens einen Initialisierungsvorgang auf das Setzen eines Bereichs der Tabelle hin durchführt.
  11. Sprachverarbeitungsverfahren nach Anspruch 7, worin der Schritt des Profilprozesseinfügens eine maximale Anzahl, die der numerischen Stationskennung eines Bereichs der Tabelle entspricht, setzt.
  12. Computerlesbarer Speicher, der ein Sprachverarbeitungsprogramm speichert, das in einem Computer zum Sammeln einer Profilinformation während dem Ausführen eines Quellenprogramms geladen und ausgeführt werden soll, der Folgendes aufweist: Erfassen eines Funktionsrufs in dem Quellenprogramm durch statische Analyse, Einfügen eines Verzweigungscodes in einen dem erfassten Funktionsruf entsprechenden Profilprozess, Schaffen eines Bereichs in einer Tabelle zum Speichern einer Anzahl von Vorfällen des erfassten Funktionsrufs, wobei die Stelle des Bereichs innerhalb der Tabelle einer numerischen Stationskennung eines Rufpaares des erfassten Funktionsrufes entspricht; und Ausführen der Übersetzung des Quellenprogramms einschließlich des in den dem Quellenprogramm entsprechenden Profilprozess eingefügten Verzweigungscodes, und Erhöhen einer Anzahl von Vorfällen, die in der Tabelle in einem der numerischen Stufenkennung eines Rufpaares eines erfassten Funktionruf entsprechenden Bereich gespeichert sind, wenn ein Verzweigungscode vorhanden ist.
  13. Sprachverarbeitungsprogramm nach Anspruch 12, das weiter einen Schritt des Erzeugens von Informationen über die Anzahl der Rufe pro Art Rufpaar durch Herauslesen der Anzahl der Funktionsrufe aus der Tabelle pro numerische Stationskennzahl aufweist.
  14. Sprachverarbeitungsprogramm nach Anspruch 12, das weiter eine Datenbank aufweist, die Rufpaare des Funktionsrufs und deren numerische Stationkennung speichert, wobei der Schritt des Profilprozess-Einfügens eine Beurteilung vornimmt, ob das Rufpaar in dem erfassten Funktionsruf in der Datenbank registriert ist, und der das Rufpaar in dem Funktionsruf speichert, wenn dies nicht der Fall ist, während er die Stationskennung pro Art hinzufügt, und das weiter einen Schritt des Erzeugens von Informationen über die Anzahl der Rufe pro Art des Rufpaares durch Herauslesen der Anzahl der Funktionsrufe aus der Tabelle pro numerische Stationskennung der Datenbank aufweist.
  15. Sprachverarbeitungsprogramm nach Anspruch 12, worin der Schritt des Profilprozess-Einfügens einen Initialisierungsvorgang auf das Setzen eines Bereichs der Tabelle hin durchführt.
  16. Sprachverarbeitungsprogramm nach Anspruch 12, worin der Schritt des Profilprozesseinfügens eine maximale Anzahl, die der numerischen Stationskennung eines Bereichs der Tabelle entspricht, setzt.
DE69905776T 1998-01-26 1999-01-25 Sprachenverarbeitungsverfahren mit geringem Aufwand und Speicherbedarf bei der Profildatensammlung Expired - Fee Related DE69905776T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP01263498A JP3199013B2 (ja) 1998-01-26 1998-01-26 言語処理方法及び言語処理装置並びに言語処理プログラムを記録した記憶媒体
JP1263498 1998-01-26

Publications (2)

Publication Number Publication Date
DE69905776D1 DE69905776D1 (de) 2003-04-17
DE69905776T2 true DE69905776T2 (de) 2004-02-05

Family

ID=11810824

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69905776T Expired - Fee Related DE69905776T2 (de) 1998-01-26 1999-01-25 Sprachenverarbeitungsverfahren mit geringem Aufwand und Speicherbedarf bei der Profildatensammlung

Country Status (4)

Country Link
US (1) US6334210B1 (de)
EP (1) EP0933706B1 (de)
JP (1) JP3199013B2 (de)
DE (1) DE69905776T2 (de)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3807860B2 (ja) 1999-01-29 2006-08-09 インターナショナル・ビジネス・マシーンズ・コーポレーション コンパイル方法および装置、並びにメソッド活動度計算方法および装置
JP4037079B2 (ja) * 2000-10-10 2008-01-23 株式会社リコー 画像形成装置、プロセス監視方法およびこの方法をコンピュータに実行させるプログラム
US7010796B1 (en) * 2001-09-28 2006-03-07 Emc Corporation Methods and apparatus providing remote operation of an application programming interface
US6558409B1 (en) * 2001-09-28 2003-05-06 Tyco Healthcare Group Lp Plasma treated surgical needles and methods for their manufacture
US8214819B2 (en) * 2004-07-09 2012-07-03 Hewlett-Packard Development Company, L.P. Determining call counts in a program
US7774784B2 (en) * 2005-03-17 2010-08-10 Microsoft Corporation Determining an actual amount of time a processor consumes in executing a portion of code
US7500077B2 (en) * 2005-12-09 2009-03-03 International Business Machines Corporation Use of region-oriented memory profiling to detect heap fragmentation and sparse memory utilization
JP4681491B2 (ja) 2006-03-31 2011-05-11 富士通株式会社 プロファイリングプログラムおよびプロファイリング方法
JP4945296B2 (ja) * 2007-02-09 2012-06-06 株式会社エヌ・ティ・ティ・ドコモ コード検出装置及びコード検出方法
JP4940996B2 (ja) * 2007-02-23 2012-05-30 富士通セミコンダクター株式会社 プロファイリング装置およびプロファイリングプログラム
JP5029245B2 (ja) * 2007-09-20 2012-09-19 富士通セミコンダクター株式会社 プロファイリング方法及びプログラム
US8280683B2 (en) * 2008-07-17 2012-10-02 International Business Machines Corporation Probabilistic framework for the highly efficient correlation of call chains with hardware events
EP2450788A4 (de) 2009-07-02 2013-08-07 Fujitsu Ltd Programm für algorithmenauswahl, vorrichtung für algorithmenauswahl und verfahren
JP5496849B2 (ja) 2010-10-15 2014-05-21 インターナショナル・ビジネス・マシーンズ・コーポレーション プロファイル計装方法、プログラム及びコンパイラ
JP5644642B2 (ja) * 2011-04-07 2014-12-24 富士通株式会社 コード変換方法、装置、プログラム、およびリクエストの残り時間応答方法
CN103377045B (zh) * 2012-04-27 2016-12-14 国际商业机器公司 用于翻译验证测试的方法和系统
JP6471615B2 (ja) * 2015-06-02 2019-02-20 富士通株式会社 性能情報生成プログラム、性能情報生成方法及び情報処理装置
JP6540340B2 (ja) * 2015-07-31 2019-07-10 富士通株式会社 関数呼び出し情報収集方法及び関数呼び出し情報収集プログラム
CN107269577B (zh) * 2017-07-31 2023-04-07 重庆水泵厂有限责任公司 带l型叶片的半开式离心泵叶轮及使用该叶轮的离心泵
CN112764990B (zh) * 2021-01-12 2021-11-16 北京自如信息科技有限公司 一种目标进程的监控方法、装置及计算机设备

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6320638A (ja) 1986-07-15 1988-01-28 Nec Corp テストの網羅性測定方式
JPH01184541A (ja) 1988-01-19 1989-07-24 Nec Corp プログラム構造の正当性検査方式
JPH04153743A (ja) 1990-10-18 1992-05-27 Nec Corp モジュールの呼び出し情報表示方式
US5325494A (en) * 1991-06-21 1994-06-28 Kabushiki Kaisha Toshiba Computer
JPH07210424A (ja) 1994-01-14 1995-08-11 Toshiba Corp ソフトウェアテスト支援システム
US5644709A (en) * 1994-04-21 1997-07-01 Wisconsin Alumni Research Foundation Method for detecting computer memory access errors
US5694539A (en) * 1994-08-10 1997-12-02 Intrinsa Corporation Computer process resource modelling method and apparatus
US5606699A (en) * 1995-04-28 1997-02-25 International Business Machines Corporation Storing and querying execution information for object-oriented programs
JP3290567B2 (ja) 1995-08-24 2002-06-10 富士通株式会社 プロファイル計装方法
JPH09198246A (ja) 1996-01-22 1997-07-31 Meidensha Corp 関数呼出し状況の解析方法
US6160883A (en) * 1998-03-04 2000-12-12 At&T Corporation Telecommunications network system and method

Also Published As

Publication number Publication date
EP0933706B1 (de) 2003-03-12
US6334210B1 (en) 2001-12-25
JPH11212837A (ja) 1999-08-06
EP0933706A1 (de) 1999-08-04
JP3199013B2 (ja) 2001-08-13
DE69905776D1 (de) 2003-04-17

Similar Documents

Publication Publication Date Title
DE69905776T2 (de) Sprachenverarbeitungsverfahren mit geringem Aufwand und Speicherbedarf bei der Profildatensammlung
DE69924857T2 (de) Programm-kode-umwandlung
DE69230450T2 (de) Programmverarbeitungssystem und -verfahren
DE69129067T2 (de) Verfahren um die skalaren datenabhängigkeiten für einen optimisationskompiler darzustellen
DE69918334T2 (de) Erzeugung von kompilierten programmen für interpretative laufzeitumgebungen
DE69902908T2 (de) Verfahren und system zum implementieren von parametrisierten typen für kompatibilität mit bestehenden nicht-parametrisierten bibliotheken
DE69800686T2 (de) Verfahren und Gerät für effizienten Operationen auf primären Typwerten ohne statisches Überladen
DE69525706T2 (de) Vorrichtung und Verfahren zum Generieren des Zielsprachcodes durch Verwendung eines objektorientierten Codegenerators
DE3750515T2 (de) Verfahren zur Zugriffssteuerung einer Datenbasis.
EP0502857B1 (de) Verfahren zur dynamischen bindung von definierbaren programmelementen eines interaktiven datenverarbeitungssystems
DE69024515T2 (de) Gerät zur Streckenmessung und -analyse zur Leistungsabschätzung von Software-Entwürfen
DE69030425T2 (de) Verfahren und Vorrichtung zur Kompilierung von Rechnerprogrammen mit Registerzuweisung zwischen Prozeduren
DE69321255T2 (de) Vorrichtung zur ausführung vom mehreren programmteilen mit verschiedenen objektcodetypen in einem einzigen programm oder in einer prozessorumgebung
DE69429305T2 (de) System und Verfahren für Sprachenverarbeitung
DE19928980A1 (de) Codeerzeugung für einen Bytecode-Compiler
DE19959758A1 (de) Bestimmung der Art und der Genauigkeit von lokalen Variablen bei vorhandenen Subroutinen
EP1034475A1 (de) Verfahren zum testen von systemkomponenten eines objektorientierten programms
EP0674784A1 (de) Verfahren zum testen mindestens einer klasse eines objektorientierten programmes auf einem rechner.
DE69420081T2 (de) Vorrichtung und Verfahren zum Einschalten der Vor/Nachbearbeitungsmethode in einem objektorientierten System
DE19581754B4 (de) System und Verfahren zum bedingten Kompilieren einer Software-Kompiliereinheit
DE19600428C2 (de) Vorrichtung und Verfahren zum Reduzieren eines durch einen Prozeß verwendeten tatsächlichen Arbeitssatzes eines Prozesses in einem Computersystem mit virtuellem Speicher
DE10048941A1 (de) Zeitdiagramm-Compiler und Laufzeitumgebung für die interaktive Erzeugung von ausführbaren Testprogrammen zur Logiküberprüfung
DE69933323T2 (de) Kompiler
DE60318993T2 (de) Eingebettete Speicherbereinigung
DE19963832A1 (de) Programmprofilierung

Legal Events

Date Code Title Description
8327 Change in the person/name/address of the patent owner

Owner name: NEC ELECTRONICS CORP., KAWASAKI, KANAGAWA, JP

8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee