G - Physics – 06 – F
Patent
G - Physics
06
F
G06F 9/44 (2006.01) G06F 9/40 (2006.01) G06F 9/455 (2006.01)
Patent
CA 2152041
The invention provides a method and apparatus for switching between execution of a plurality of object code types having different conventions for invoking program procedures and performing stack manipulations. The invention may also be used to switch between different calling conventions within a single object code type. Briefly according to the invention, a computer system comprises a routine descriptor, a stack switch frame, a mode switching mechanism for switching from a first processor, code or calling convention type to a second processor, code or calling convention type and means for executing instructions in various code types. A routine descriptor describes a program or code segment and its code type and calling conventions. A routine descriptor contains, among other; information, a mixed mode field which is set to a specific, predetermined value such as a value indicating an instruction which is not legal in the runtime environment of a first processor, code or calling convention type. When that instruction is encountered, control is transferred to the mode switching mechanism. A routine descriptor also contains a procedure information field which is set to a value indicating the convention for invoking a program segment and performing appropriate stack manipulations. When a routine calls a routine having a different stack model, the mode switching mechanism uses a stack switch frame to provide a transition between the two different stack types.
L'invention concerne un procédé et un appareil permettant d'effectuer une commutation entre l'exécution d'une pluralité de types de codes résultants possédant différentes conventions pour appeler des procédures de programme et effectuer des manipulations de piles. L'invention peut également être utilisée pour effectuer une commutation entre différentes conventions d'appel dans un seul type de code résultant. En bref, selon l'invention, un système d'ordinateur comprend un descripteur de programme, un bloc de commutation de piles, un mécanisme de commutation de modes destiné à effectuer une commutation d'un premier processeur, d'un type de convention d'appel ou de code vers un second processeur, type de code ou de convention d'appel, et un dispositif destiné à exécuter des instructions dans divers types de codes. Un descripteur de programme décrit un segment de programme ou de code ainsi que son type de code et ses conventions d'appel. Un descripteur de programme contient, parmi d'autres informations, une zone de modes mixtes qui est réglée à une valeur prédéterminée, spécifique telle qu'une valeur indiquant une instruction qui n'est pas admise dans le cadre de la durée de l'exécution d'un premier processeur, type de code ou de convention d'appel. Lorsque cette instruction est rencontrée, la commande est transférée au mécanisme de commutation de mode. Un descripteur de programme contient également une zone d'informations de procédures qui est réglée à une valeur indiquant la convention pour appeler un segment de programme et effectuer des manipulations de piles appropriées. Lorsqu'un programme appelle un programme ayant un modèle de piles différent, le mécanisme de commutation de mode utilise un bloc de commutation de piles pour effectuer une transition entre les deux types de piles différents.
Eidt Erik L.
Jones Bruce K.
Lillich Alan W.
Mourey Jean-Charles D.
Parent Sean R.
Apple Inc.
Kirby Eades Gale Baker
LandOfFree
An apparatus for executing a plurality of program segments... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with An apparatus for executing a plurality of program segments..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and An apparatus for executing a plurality of program segments... will most certainly appreciate the feedback.
Profile ID: LFCA-PAI-O-1915420