FR2795837A1 - Method of comparing timing of data processing in corresponding devices by measuring progress by accumulating meaningful value of time of execution of corresponding instruction - Google Patents
Method of comparing timing of data processing in corresponding devices by measuring progress by accumulating meaningful value of time of execution of corresponding instruction Download PDFInfo
- Publication number
- FR2795837A1 FR2795837A1 FR9908410A FR9908410A FR2795837A1 FR 2795837 A1 FR2795837 A1 FR 2795837A1 FR 9908410 A FR9908410 A FR 9908410A FR 9908410 A FR9908410 A FR 9908410A FR 2795837 A1 FR2795837 A1 FR 2795837A1
- Authority
- FR
- France
- Prior art keywords
- execution
- instruction
- instructions
- time
- processing device
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/88—Monitoring involving counting
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
Procédé pour comptabiliser le temps dans un dispositif de traitement d'information, et dispositif associé L'invention concerne un procédé pour comptabiliser le temps dans un dispositif de traitement d'information comprenant des moyens de traitement et des moyens de mémorisation. Method for recording time in an information processing device, and associated device The invention relates to a method for recording time in an information processing device comprising processing means and storage means.
On peut avoir besoin de comptabiliser le temps pour différents traitements internes du dispositif. On peut aussi en avoir besoin pour gérer une communication avec un autre dispositif. Par exemple, dans le domaine des cartes à puce selon la norme 1S07816-3, un lecteur de carte initie une communication avec la carte en lui envoyant un ordre. La carte, à réception de l'ordre, effectue un traitement défini par l'ordre reçu. Une exigence particulière est que la carte doit réagir en envoyant un message au lecteur de carte dans un certain délai, typiquement dans le délai d'une seconde, faute de quoi la carte est déclarée muette par le lecteur de carte, et la communication est interrompue. Soit la carte a fini d'effectuer son traitement dans ce délai, auquel cas elle fournit un résultat du traitement, soit elle n'a pas encore fini, auquel cas elle envoie un message d'attente lui permettant de bénéficier d'un nouveau délai d'une seconde pour finir son traitement. Or, on a constaté que ce délai n'était pas toujours suffisant pour permettre à la carte de finir son traitement. Cela est particulièrement vrai dans le cas d'une carte incorporant une machine virtuelle capable d'interpréter des instructions interprétables, écrites dans un langage évolué, pour les traduire dans un langage propre aux moyens de traitement de la carte. On peut citer à titre d'exemple la machine virtuelle JAVA (marque déposée par la société Sun Microsystems). It may be necessary to count the time for different internal treatments of the device. You may also need it to manage communication with another device. For example, in the field of smart cards according to the 1S07816-3 standard, a card reader initiates communication with the card by sending it an order. The card, upon receipt of the order, performs a processing defined by the order received. A particular requirement is that the card must react by sending a message to the card reader within a certain period, typically within one second, failing which the card is declared silent by the card reader, and the communication is interrupted . Either the card has finished processing within this period, in which case it provides a result of the processing, or it has not yet finished, in which case it sends a waiting message allowing it to benefit from a new period of a second to finish his treatment. However, it was found that this period was not always sufficient to allow the card to finish its processing. This is particularly true in the case of a card incorporating a virtual machine capable of interpreting interpretable instructions, written in an advanced language, to translate them into a language specific to the means of processing the card. We can cite as an example the JAVA virtual machine (trademark registered by the company Sun Microsystems).
Dans la technique connue, seuls les dispositifs de traitement d'information possédant un compteur de temps sont capables de comptabiliser le temps. Toutefois, le fait d'insérer un compteur de temps dans ces dispositifs présente l'inconvénient d'augmenter à la fois le coût de ceux-ci et leur taille. Ceci est particulièrement vrai dans le domaine des cartes à puces : quasiment tous les circuits du commerce, susceptibles d'être mis en carte, ne sont pas dotés d'un compteur de temps réalisé de façon matérielle. In the known technique, only information processing devices having a time counter are capable of counting time. However, the fact of inserting a time counter in these devices has the drawback of increasing both the cost of these and their size. This is particularly true in the field of smart cards: almost all commercial circuits, which can be carded, do not have a hardware time counter.
Aussi, un but principal de l'invention est de proposer des moyens pour comptabiliser le temps dans un dispositif de traitement d'information, sans nécessiter la présence d'un compteur de temps dans celui-ci. Also, a main object of the invention is to propose means for counting time in an information processing device, without requiring the presence of a time counter therein.
L'invention concerne à cet effet un procédé pour comptabiliser le temps dans un dispositif de traitement d'information comprenant des moyens de traitement et des moyens de mémorisation, caractérisé en ce qu'il comprend les étapes consistant à -évaluer un temps d'exécution nécessaire à l'exécution de chaque instruction d'un ensemble d'instructions à exécuter par les moyens de traitement ; -exécuter un programme comprenant un nombre déterminé d'instructions et, au moment de l'exécution de chaque instruction, faire progresser un compteur en ajoutant à une valeur de cumul du compteur une valeur significative du temps d'exécution de cette instruction. To this end, the invention relates to a method for counting time in an information processing device comprising processing means and storage means, characterized in that it comprises the steps consisting in - evaluating an execution time necessary for the execution of each instruction of a set of instructions to be executed by the processing means; execute a program comprising a determined number of instructions and, at the time of the execution of each instruction, advance a counter by adding to a cumulative value of the counter a significant value of the execution time of this instruction.
L'invention concerne aussi le dispositif associé. The invention also relates to the associated device.
D'autres détails et avantages de la présente invention apparaîtront au cours de la description suivante d'un mode d'exécution préféré mais non limitatif, en regard des dessins annexés sur lesquels La figure 1 représente un objet portatif coopérant avec un dispositif de traitement de données ; et La figure 2 est un organigramme d'une procédure de comptage d'instructions selon l'invention. Other details and advantages of the present invention will appear during the following description of a preferred but non-limiting embodiment, with reference to the appended drawings in which FIG. 1 represents a portable object cooperating with a device for processing data; and Figure 2 is a flow diagram of an instruction counting procedure according to the invention.
La figure 1 représente un dispositif de traitement de données 1 coopérant avec un objet portatif 8. Le dispositif de traitement de données comprend de façon connue en soi un microprocesseur 2 auquel sont reliés une mémoire ROM 3, une mémoire RAM 4, des moyens 5 pour coopérer, avec ou sans contact physique, avec l'objet portatif 8, et une interface de transmission 7 permettant au dispositif de traitement de données de communiquer avec un réseau de communication de données. Le dispositif de traitement de données 1 peut en outre être équipé de moyens de stockage tels que des disquettes ou disques amovibles ou non, de moyens de saisie (tels qu'un clavier etlou un dispositif de pointage du type souris) et de moyens d'affichage, ces différents moyens n'étant pas représentés sur la figure 1. FIG. 1 represents a data processing device 1 cooperating with a portable object 8. The data processing device comprises in a manner known per se a microprocessor 2 to which are connected a ROM memory 3, a RAM memory 4, means 5 for cooperate, with or without physical contact, with the portable object 8, and a transmission interface 7 allowing the data processing device to communicate with a data communication network. The data processing device 1 can also be equipped with storage means such as floppy disks or removable disks or not, input means (such as a keyboard and / or a pointing device of the mouse type) and means of display, these different means not being shown in FIG. 1.
Le dispositif de traitement de données peut être constitué par tout appareil informatique installé sur un site privé ou public et apte à fournir des moyens de gestion de l'information ou de délivrance de divers biens ou services, cet appareil étant installé à demeure ou portable. Il peut notamment s'agir aussi d'un appareil dédié aux télécommunications. The data processing device can consist of any computer device installed on a private or public site and capable of providing means of information management or delivery of various goods or services, this device being permanently installed or portable. It may in particular also be a device dedicated to telecommunications.
Par ailleurs, l'objet portatif 8 porte une puce incluant des moyens de traitement de l'information 9, une mémoire non volatile 10, une mémoire volatile de travail RAM 14, et des moyens 13 pour coopérer avec le dispositif de traitement de données 1. Cette puce est agencée pour définir, dans la mémoire 10, une zone secrète 11 dans laquelle des informations une fois enregistrées, sont inaccessibles depuis l'extérieur de la puce mais seulement accessibles aux moyens de traitement 9, et une zone accessible 12 qui est rendue accessible depuis l'extérieur de la puce par les moyens de traitement 9 pour une lecture etlou une écriture d'informations. Chaque zone de la mémoire non volatile 10 peut comprendre une partie non modifiable ROM et une partie modifiable EPROM, EEPROM, ou constituée de mémoire RAM du type "flash" ou FRAM (cette dernière étant une mémoire RAM ferromagnétique), c'est-à-dire présentant les caractéristiques d'une mémoire EEPROM avec en outre des temps d'accès identiques à ceux d'une RAM classique. En tant que puce, on pourra notamment utiliser un microprocesseur autoprogrammable à mémoire non volatile, tel que décrit dans le brevet américain n 4.382.279 au nom de la Demanderesse. Dans une variante, le microprocesseur de la puce est remplacé - ou tout du moins complété - par des circuits logiques, En effet, de tels circuits sont aptes à effectuer des calculs, notamment d'authentification et de signature, grâce à de l'électronique câblée, et non microprogrammée. Ils peuvent notamment être de type ASIC (de l'anglais Application Specific Integrated Circuit ). Avantageusement, la puce sera conçue sous forme monolithique. Furthermore, the portable object 8 carries a chip including means for processing information 9, a non-volatile memory 10, a volatile working memory RAM 14, and means 13 for cooperating with the data processing device 1 This chip is arranged to define, in memory 10, a secret zone 11 in which information, once recorded, is inaccessible from outside the chip but only accessible to the processing means 9, and an accessible zone 12 which is made accessible from outside the chip by the processing means 9 for reading and / or writing information. Each zone of the non-volatile memory 10 can comprise a non-modifiable part ROM and a modifiable part EPROM, EEPROM, or made up of RAM memory of the "flash" or FRAM type (the latter being a ferromagnetic RAM memory), that is to say -display having the characteristics of an EEPROM memory with in addition access times identical to those of a conventional RAM. As a chip, it is possible in particular to use a self-programming microprocessor with non-volatile memory, as described in US Patent No. 4,382,279 in the name of the Applicant. In a variant, the microprocessor of the chip is replaced - or at least supplemented - by logic circuits, Indeed, such circuits are able to carry out calculations, in particular of authentication and signature, thanks to electronics wired, not firmware. They can in particular be of the ASIC type (from the English Application Specific Integrated Circuit). Advantageously, the chip will be designed in monolithic form.
L'objet portatif 8 contient, en tout ou partie en mémoire ROM, une machine virtuelle, par exemple une machine virtuelle JAVA (marque déposée) sous la forme d'un programme interpréteur capable d'interpréter des instructions interprétables écrites dans un langage évolué, universel, pour les transcrire en des instructions élémentaires écrites dans un langage propre aux moyens de traitement 9. Les instructions interprétables sont stockées en mémoire programmable (EEPROM ou équivalent) ou en mémoire ROM. The portable object 8 contains, in whole or in part in ROM memory, a virtual machine, for example a JAVA virtual machine (registered trademark) in the form of an interpreter program capable of interpreting interpretable instructions written in an advanced language, universal, to transcribe them into elementary instructions written in a language specific to the processing means 9. The interpretable instructions are stored in programmable memory (EEPROM or equivalent) or in ROM memory.
La figure 2 illustre une séquence de comptage d'instructions interprétables selon l'invention. Cette séquence est insérée dans le programme interpréteur de l'objet portatif (en variante, la machine virtuelle n'est pas réalisée de façon logicielle mais matérielle, et la séquence de comptage d'instructions selon l'invention est réalisée sous forme matérielle dans la machine virtuelle). A l'étape 21, l'objet portatif 8 reçoit un ordre du dispositif de traitement de données 1 lui demandant d'exécuter des séquences d'instructions interprétables. Ces instructions interprétables peuvent provenir de deux sources simultanément : soit appartenir à une application stockée dans l'objet portatif, soit appartenir à un système d'exploitation de base des moyens de traitement 9. A l'étape 22, on met un compteur à 0, représenté par un nombre N d'instructions interprétables. A l'étape 23, le programme interpréteur exécute la première instruction interprétable de la séquence à exécuter. FIG. 2 illustrates a sequence of counting of interpretable instructions according to the invention. This sequence is inserted into the interpreter program of the portable object (as a variant, the virtual machine is not produced in software but in hardware, and the sequence of counting instructions according to the invention is carried out in hardware form in the virtual machine). In step 21, the portable object 8 receives an order from the data processing device 1 asking it to execute sequences of interpretable instructions. These interpretable instructions can come from two sources simultaneously: either belong to an application stored in the portable object, or belong to a basic operating system of the processing means 9. In step 22, a counter is set to 0 , represented by a number N of interpretable instructions. In step 23, the interpreter program executes the first interpretable instruction of the sequence to be executed.
A l'étape 24, le programme interpréteur détermine si l'instruction interprétable qu'il vient de traiter était la dernière à exécuter ou non. Dans l'affirmative, il rend la main au dispositif de traitement de données 1 à l'étape 25. Dans la négative, le programme interpréteur incrémente le nombre N d'une unité (étape 26). A l'étape 27, il teste si le nombre N d'instructions interprétables déjà traitées est inférieur à un seuil N,.. Dans l'affirmative, il retourne à l'étape 23 pour traiter l'instruction interprétable suivante. Dans la négative, le programme interpréteur envoie (étape 28) un message au dispositif de traitement de données 1 : il s'agit d'un message d'attente pour indiquer au dispositif de traitement de données 1 que l'objet portatif n'a pas fini d'exécuter la séquence d'instructions interprétables demandée. In step 24, the interpreter program determines whether the interpretable instruction which it has just processed was the last to be executed or not. In the affirmative, it returns control to the data processing device 1 in step 25. In the negative, the interpreter program increments the number N by one unit (step 26). In step 27, it tests whether the number N of interpretable instructions already processed is less than a threshold N,. If so, it returns to step 23 to process the next interpretable instruction. If not, the interpreter program sends (step 28) a message to the data processing device 1: this is a waiting message to indicate to the data processing device 1 that the portable object has not not finished executing the requested sequence of interpretable instructions.
On notera que la séquence de comptage d'instructions interprétables de la figure 2 sera déclenchée à chaque fois qu'une quelconque séquence d'instructions interprétables sera exécutée par les moyens de traitement, notamment dans les cas suivants -lors de l'installation d'une application qui vient d'être chargée dans l'objet portatif, à l'occasion de laquelle une séquence d'installation contenue dans l'application sera exécutée ; -lors de chaque exécution d'une application déjà installée. It will be noted that the sequence of counting of interpretable instructions of FIG. 2 will be triggered each time that any sequence of interpretable instructions will be executed by the processing means, in particular in the following cases - during the installation of an application which has just been loaded into the portable object, during which an installation sequence contained in the application will be executed; -on each execution of an application already installed.
La valeur N,ax est déterminée expérimentalement. Une façon de déterminer cette valeur va maintenant être exposée. Le programmeur élabore un petit programme écrit en langage évolué, constitué d'une boucle exécutant n fois la même séquence d'instructions interprétables : cette séquence contient m instructions interprétables. Pour certaines valeurs de n, telles que 256 par exemple, le programmeur constate que l'objet portatif est déclaré muet par le dispositif de traitement de données 1 car il n'a pu exécuter toutes les instructions interprétables du programme dans le délai normalisé d'une seconde. Le programmeur fait alors baisser la valeur de n à 250, puis 240, etc.... jusqu'à trouver une valeur permettant à l'objet portatif de répondre dans le délai d'une seconde: il calcule alors le produit nxm et trouve un nombre. Puis, le programmeur reouvelle l'expérience avec une séquence contenant des instructions interprétables différentes des précédentes : il va trouver des nombres compris par exemple entre 4150 et 4500. II va se donner une marge en choisissant un nombre un peu plus faible que le plus petit de ces nombres, soit par exemple 4096 qui est une puissance de deux: ce nombre constitue le nombre N". . On notera que le nombre NR,ax dépend de la machine virtuelle utilisée, puisque le temps mis par les instructions interprétables pour s'exécuter dépend directement des performances de la machine virtuelle considérée, telle qu'elle a été écrite. The value N, ax is determined experimentally. A way of determining this value will now be explained. The programmer develops a small program written in advanced language, consisting of a loop executing n the same sequence of interpretable instructions n times: this sequence contains m interpretable instructions. For certain values of n, such as 256 for example, the programmer notes that the portable object is declared mute by the data processing device 1 because he was unable to execute all the interpretable instructions of the program within the standardized time of a second. The programmer then lowers the value of n to 250, then 240, etc., until finding a value allowing the portable object to respond within one second: it then calculates the product nxm and finds a number. Then, the programmer renews the experiment with a sequence containing interpretable instructions different from the previous ones: he will find numbers ranging for example between 4150 and 4500. He will give himself a margin by choosing a number a little lower than the smallest of these numbers, for example 4096 which is a power of two: this number constitutes the number N ". Note that the number NR, ax depends on the virtual machine used, since the time taken by the interpretable instructions for s' to execute depends directly on the performance of the virtual machine considered, as it was written.
Une autre façon de déterminer la valeur N,,a, consiste à mesurer la durée réelle de chaque instruction interprétée puis de faire une moyenne statistique des valeurs trouvées. On détermine par ailleurs un délai dans lequel l'objet portatif doit avoir répondu au dispositif de traitement de données 1 : pour un délai théorique d'une seconde, on prendra par exemple une certaine marge en choisissant le délai de 900 ms. La valeur NR,,x est alors obtenue en divisant 900 ms par la durée moyenne d'une instruction interprétée. Another way of determining the value N ,, a, consists in measuring the real duration of each instruction interpreted then in making a statistical average of the values found. A delay is also determined within which the portable object must have responded to the data processing device 1: for a theoretical delay of one second, for example, a certain margin will be taken by choosing the delay of 900 ms. The value NR ,, x is then obtained by dividing 900 ms by the average duration of an interpreted instruction.
Sur la figure 2, on a incrémenté le nombre N d'instructions interprétables juste après l'exécution de l'instruction interprétable courante on aurait aussi pu le faire juste avant, l'essentiel étant que cette incrémentation s'effectue avant qu'une nouvelle instruction interprétable s'exécute. In FIG. 2, the number N of interpretable instructions has been incremented just after the execution of the current interpretable instruction, we could also have done it just before, the main thing being that this incrementation takes place before a new interpretable instruction is executed.
Dans ce qui précède, on a décrit l'invention dans le cadre d'un objet portatif contenant une machine virtuelle et manipulant des instructions interprétables. L'invention s'applique aussi à un objet portatif dépourvu d'une telle machine virtuelle ; elle s'applique aussi à tout autre dispositif de traitement de données ayant à effectuer, sous un certain délai, une certaine opération, cette opération pouvant consister à fournir une réponse à un autre dispositif avec lequel il coopère, ou bien à effectuer un traitement interne.In the foregoing, the invention has been described in the context of a portable object containing a virtual machine and manipulating interpretable instructions. The invention also applies to a portable object devoid of such a virtual machine; it also applies to any other data processing device having to perform, within a certain period, a certain operation, this operation may consist of providing a response to another device with which it cooperates, or else to perform internal processing .
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9908410A FR2795837B1 (en) | 1999-06-30 | 1999-06-30 | METHOD FOR ACCOUNTING TIME IN AN INFORMATION PROCESSING DEVICE, AND ASSOCIATED DEVICE |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9908410A FR2795837B1 (en) | 1999-06-30 | 1999-06-30 | METHOD FOR ACCOUNTING TIME IN AN INFORMATION PROCESSING DEVICE, AND ASSOCIATED DEVICE |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2795837A1 true FR2795837A1 (en) | 2001-01-05 |
FR2795837B1 FR2795837B1 (en) | 2004-09-17 |
Family
ID=9547524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR9908410A Expired - Fee Related FR2795837B1 (en) | 1999-06-30 | 1999-06-30 | METHOD FOR ACCOUNTING TIME IN AN INFORMATION PROCESSING DEVICE, AND ASSOCIATED DEVICE |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2795837B1 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0237883A1 (en) * | 1986-03-12 | 1987-09-23 | Casio Computer Company Limited | A card and terminal system |
FR2667171A1 (en) * | 1990-09-25 | 1992-03-27 | Gemplus Card Int | Portable support with easily programmable microcircuit and method of programming this microcircuit |
WO1995025304A1 (en) * | 1994-03-14 | 1995-09-21 | Green Hills Software, Inc. | Optimizing time and testing of higher level language programs |
US5797019A (en) * | 1995-10-02 | 1998-08-18 | International Business Machines Corporation | Method and system for performance monitoring time lengths of disabled interrupts in a processing system |
EP0864979A2 (en) * | 1997-03-10 | 1998-09-16 | Digital Equipment Corporation | Processor performance counter for sampling the execution frequency of individual instructions |
WO1998055922A1 (en) * | 1997-06-04 | 1998-12-10 | Marathon Technologies Corporation | Loosely-coupled, synchronized execution |
-
1999
- 1999-06-30 FR FR9908410A patent/FR2795837B1/en not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0237883A1 (en) * | 1986-03-12 | 1987-09-23 | Casio Computer Company Limited | A card and terminal system |
FR2667171A1 (en) * | 1990-09-25 | 1992-03-27 | Gemplus Card Int | Portable support with easily programmable microcircuit and method of programming this microcircuit |
WO1995025304A1 (en) * | 1994-03-14 | 1995-09-21 | Green Hills Software, Inc. | Optimizing time and testing of higher level language programs |
US5797019A (en) * | 1995-10-02 | 1998-08-18 | International Business Machines Corporation | Method and system for performance monitoring time lengths of disabled interrupts in a processing system |
EP0864979A2 (en) * | 1997-03-10 | 1998-09-16 | Digital Equipment Corporation | Processor performance counter for sampling the execution frequency of individual instructions |
WO1998055922A1 (en) * | 1997-06-04 | 1998-12-10 | Marathon Technologies Corporation | Loosely-coupled, synchronized execution |
Also Published As
Publication number | Publication date |
---|---|
FR2795837B1 (en) | 2004-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0990204B1 (en) | Chip card comprising means for managing a virtual memory, associated communication method and protocol | |
WO2008129225A1 (en) | Method for communicating and transmitting a message relating to a transaction for a contactless application, terminal, secured module and associated systems | |
EP2688010A1 (en) | Update of an operating system for a secure element | |
FR2667171A1 (en) | Portable support with easily programmable microcircuit and method of programming this microcircuit | |
EP1967949A1 (en) | Method of executing a program relating to several services, corresponding electronic device and system | |
WO2005084107A2 (en) | Method and device using a sim card device | |
EP2239712A1 (en) | Method for personalising an electronic device, associated data processing method and device | |
WO2014076427A1 (en) | Nfc device comprising configurable notification means | |
WO2015091511A1 (en) | Binary code authentication | |
FR3071987A1 (en) | METHOD AND SYSTEM FOR RECOGNIZING A USER DURING RADIO COMMUNICATION VIA THE HUMAN BODY | |
WO2008065264A1 (en) | Portable electronic entity and method for customising such electronic entity | |
EP1817713A1 (en) | Method for identifying a user by means of modified biometric characteristics and a database for carrying out said method | |
EP1240630A1 (en) | Method for authenticating a portable object, corresponding portable object, and apparatus therefor | |
FR2795837A1 (en) | Method of comparing timing of data processing in corresponding devices by measuring progress by accumulating meaningful value of time of execution of corresponding instruction | |
EP1141903B1 (en) | Device and method for initialising an applicative programme of an integrated circuit card | |
FR2835628A1 (en) | MANAGEMENT OF THE UPDATE OF INFORMATION ENCODED IN MEMORY | |
EP3304531B1 (en) | Encryption method, corresponding encryption method, devices and programs | |
EP3671519A1 (en) | Transaction securisation using a smartcard | |
FR2795836A1 (en) | Method of evaluation of timing of data processing device by executing program contained in memory while adding time of execution to form accumulated value of time during such operation | |
FR2789774A1 (en) | Security module for secure comparison of an authentication code with one stored in memory has additional auxiliary registers in which randomly chosen data words are placed for use in authenticating the code in the main registers | |
EP2252978B1 (en) | Integrated circuit card having a modifiable operating program and corresponding method of modification | |
WO2003071733A1 (en) | Method for generating secure keys for a cryptographic algorithm | |
FR2789779A1 (en) | Secure processing of a program in a register memory and associated security control module used for access to secure computer systems | |
EP2304559A1 (en) | Method for swapping between two versions of a same application within an information processing device, and said device | |
EP2544115A1 (en) | Method for running a process in a secured device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
CA | Change of address | ||
TP | Transmission of property | ||
ST | Notification of lapse |
Effective date: 20100226 |