Traitement en cours

Veuillez attendre...

PATENTSCOPE sera indisponible durant quelques heures pour des raisons de maintenance le samedi 31.10.2020 à 7:00 AM CET
Paramétrages

Paramétrages

Aller à Demande

1. WO1997042574 - PROCEDE DE TRANSCODAGE

Numéro de publication WO/1997/042574
Date de publication 13.11.1997
N° de la demande internationale PCT/DE1997/000900
Date du dépôt international 02.05.1997
CIB
G06F 9/318 2006.01
GPHYSIQUE
06CALCUL; COMPTAGE
FTRAITEMENT ÉLECTRIQUE DE DONNÉES NUMÉRIQUES
9Dispositions pour la commande par programme, p.ex. unités de commande
06utilisant des programmes stockés, c. à d. utilisant un moyen de stockage interne à l'équipement de traitement de données pour recevoir ou conserver les programmes
30Dispositions pour exécuter des instructions machines, p.ex. décodage d'instructions
318avec extension ou modification d'opérations
G06F 9/45 2006.01
GPHYSIQUE
06CALCUL; COMPTAGE
FTRAITEMENT ÉLECTRIQUE DE DONNÉES NUMÉRIQUES
9Dispositions pour la commande par programme, p.ex. unités de commande
06utilisant des programmes stockés, c. à d. utilisant un moyen de stockage interne à l'équipement de traitement de données pour recevoir ou conserver les programmes
44Dispositions pour exécuter des programmes spécifiques
45Compilation ou interprétation de langages de programmation évolués
G06F 9/455 2006.01
GPHYSIQUE
06CALCUL; COMPTAGE
FTRAITEMENT ÉLECTRIQUE DE DONNÉES NUMÉRIQUES
9Dispositions pour la commande par programme, p.ex. unités de commande
06utilisant des programmes stockés, c. à d. utilisant un moyen de stockage interne à l'équipement de traitement de données pour recevoir ou conserver les programmes
44Dispositions pour exécuter des programmes spécifiques
455Émulation; Interprétation; Simulation de logiciel, p.ex. virtualisation ou émulation des moteurs d’exécution d’applications ou de systèmes d’exploitation
CPC
G06F 8/52
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
8Arrangements for software engineering
40Transformation of program code
52Binary to binary
G06F 9/45504
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
44Arrangements for executing specific programs
455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
Déposants
  • SIEMENS NIXDORF INFORMATIONSSYSTEME AG [DE]/[DE] (AllExceptUS)
  • STADEL, Manfred [DE]/[DE] (UsOnly)
Inventeurs
  • STADEL, Manfred
Mandataires
  • FUCHS, Franz-Josef
Données relatives à la priorité
196 17 842.803.05.1996DE
Langue de publication allemand (DE)
Langue de dépôt allemand (DE)
États désignés
Titre
(DE) VERFAHREN ZUR CODETRANSFORMATION
(EN) PROCESS FOR CONVERTING CODE
(FR) PROCEDE DE TRANSCODAGE
Abrégé
(DE)
Die Erfindung gibt ein gegenüber dem Stand der Technik verbessertes Verfahren zur Transformation von für eine Ursprungshardware (M1) geschriebenem Assemblerquellcode (AC1) in auf einer Zielhardware (M2) mit einer unterschiedlichen Rechnerarchitektur ablauffähigen Programmcode (PC2) an. Aus dem Assemblerquellcode (AC1) wird durch einen Assembler (ASS) Objektcode (OC1) für die Ursprungshardware (M1) und durch einen Codetransformator (CT) entsprechender Objektcode (OC2) für die Zielhardware (M2) sowie eine Adreßumsetztabelle (TTAB), die die Beziehung zwischen Adressen (A) im Objektcode (OC1) für die Ursprungshardware (M1) und den zugehörigen Adressen (A') im Objektcode (OC2) für die Zielhardware (M2) herstellt, generiert. Der Programmcode (PC2) für die Zielhardware (M2) wird durch Zusammenfassung dieser beiden Objektcodes (OC1, OC2), der Adreßumsetztabelle (TTAB) sowie eines Emulators (E), der den Objektcode (OC1) für die Ursprungshardware (M1) emulieren kann, gewonnen. Die im transformierten Objektcode (OC2) verwendeten Adreßbezüge beziehen sich zunächst stets auf den Objektcode (OC1) für die Ursprungshardware (M1) und werden beim Ablauf des transformierten Programms (PC2) mit Hilfe der Adreßumsetztabelle (TTAB) in entsprechende Bezüge auf Adressen im Objektcode (OC2) für die Zielhardware (M2) umgesetzt. Befehle oder Befehlsfolgen, die erst während der Ausführung des Programmcodes (PC2) vollständig definiert werden oder im Assemblerquellcode (AC1) nur in Form von Datendefinitionen angegeben sind, werden in Aufrufe an den den entsprechenden Objektcode (OC1) für die Ursprungshardware (M1) emulierenden Emulator (E) transformiert.
(EN)
Relative to the prior art, the invention concerns an improved process for conversion of assembler source code (AC1) which was written for source hardware (M1) into program code (PC2) which is capable of running on target hardware (M2) with a different computer architecture. An assembler (ASS) generates object code (OC1) for the source hardware (M1) out of the assembler source code (AC1), and a code transformer (CT) generates corresponding object code (OC2) for the target hardware (M2) as well as an address transformation table (TTAB), which establishes the relationship between addresses (A) in the object code (OC1) for the source hardware (M1) and addresses (A') in the object code (OC2) for the target hardware (M2). The program code (PC2) for the target hardware (M2) is produced from a combination of these two object codes (OC1, OC2), the address transformation table (TTAB), as well as an emulator (E), which can emulate the object code (OC1) for the source hardware (M1). The address references used in the transformed object code (OC2) relate to the object code (OC1) of the source hardware (M1) and, when the transformed program (PC2) is run, are converted into the corresponding references to addresses in object code (OC2) for the target hardware (M2) with the help of the address transformation table (TTAB). Commands or command sequences which are not completely defined until the program code (PC2) is executed or only appear in the form of data definitions in the assembler source code (AC1) are transformed in calls to the emulator (E) which emulates the corresponding object code (OC1)for the source hardware (M1).
(FR)
Par rapport à la technique antérieure, l'invention concerne un procédé perfectionné pour la conversion d'un code source assembleur (AC1) écrit pour un matériel source (M1) en un code programme (PC2) pouvant tourner sur un matériel cible (M2) avec une architecture informatique différente. Un assembleur (ASS) génère, à partir du code source assembleur (AC1), un code objet (OC1) destiné au matériel source (M1), et un transformateur de code (CT) génère un code objet correspondant (OC2) pour le matériel cible (M2), ainsi qu'une table de conversion d'adresse (TTAB), qui établit la relation entre les adresses (A) dans le code objet (OC1) relatif au matériel source (M1) et les adresses (A') dans le code objet (OC2) relatif au matériel cible (M2). Le code programme (PC2) concernant le matériel cible (M2) est produit à partir d'une combinaison de ces deux codes objet (OC1, OC2), de la table de conversion d'adresse (TTAB), ainsi que d'un émulateur (E) pouvant émuler le code objet (OC1) concernant le matériel source (M1). Les références d'adresse utilisées dans le code objet (OC2) converti se rapportent au code objet (OC1) du matériel source (M1) et, lors de l'exécution du programme converti (PC2), sont converties, à l'aide de la table de conversion d'adresse (TTAB), en références correspondantes relatives aux adresses dans le code objet (OC2) pour le matériel cible (M2). Des instructions ou des séquences d'instruction qui ne sont complétement définies que pendant l'exécution du code programme (PC2) ou sont indiquées uniquement sous forme de définitions de données dans le code source assembleur (AC1), sont transformées en appels à l'émulateur (E) qui émule le code objet (OC1) correspondant pour le matériel source (M1).
Dernières données bibliographiques dont dispose le Bureau international