EP1623394A1 - Speicherverwaltung bei einem tragbaren datentrager - Google Patents
Speicherverwaltung bei einem tragbaren datentragerInfo
- Publication number
- EP1623394A1 EP1623394A1 EP04730985A EP04730985A EP1623394A1 EP 1623394 A1 EP1623394 A1 EP 1623394A1 EP 04730985 A EP04730985 A EP 04730985A EP 04730985 A EP04730985 A EP 04730985A EP 1623394 A1 EP1623394 A1 EP 1623394A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- memory area
- program
- memory
- data carrier
- objects
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/0806—Details of the card
- G07F7/0833—Card having specific functional components
- G07F7/084—Additional components relating to data transfer and storing, e.g. error detection, self-diagnosis
Definitions
- the invention relates generally to the technical field of memory management when executing a program using a portable data carrier that has a processor.
- a portable data carrier can in particular be a chip card in different designs or a chip module.
- the invention relates to the use of two different storage areas of the data carrier in order to store objects generated during the execution of the program.
- RAM volatile read / write memory
- EEPROM non-volatile writable memory
- ROM mask-programmed read-only memory
- a write to RAM takes considerably less time - e.g. 30 times less - than a write to the EEPROM.
- a bit in RAM occupies significantly more space on a semiconductor chip of the data carrier than a bit in EEPROM, so that as a rule only relatively little RAM is provided. There is therefore the problem of using the fast but scarce RAM as well and flexibly as possible.
- Portable data carriers with complex memory management functions are known, for example, under the Java Card TM brand.
- Chapter 5 shows that persistent objects are typically stored in the EEPROM of the data carrier, while transient objects are typically be created in RAM. For security reasons, the storage of transient objects in the EEPROM is not permitted.
- transient objects such as those e.g. on pages 81-85 of the document "Java Card TM 2.1 Application Programming Interface", June 2002, published by Sun Microsystems, Inc., Palo Alto, USA, available on the Internet at the above address.
- transient objects as such have a potentially unlimited lifespan; the term “transient” only refers to the data stored in the objects. The use of transient objects therefore only slightly increases the flexibility in memory management.
- the object of the invention is accordingly to at least partially avoid the problems of the prior art and to provide a memory management technology for a portable data carrier, by means of which the use of an efficiently writable memory area - typically a RAM memory - is improved.
- the invention is intended to enable flexible use of the RAM memory without any effort for the programmer.
- this object is achieved in whole or in part by a method according to claim 1 for memory management when executing a program, a method according to claim 7 for implementing a source program, a portable data carrier according to claim 12 and a computer program product according to claim 13.
- a method according to claim 1 for memory management when executing a program a method according to claim 7 for implementing a source program, a portable data carrier according to claim 12 and a computer program product according to claim 13.
- the invention is based on the basic idea of automatically storing certain objects, which are generated by the portable data carrier when the program is executed, in an efficiently writable memory area - e.g. in RAM - to create. Objects that only have a short lifespan are particularly suitable for this. Such objects are referred to in the present document as "local objects". Local objects in the sense of the invention can e.g. exception types as they are generated when exceptions occur. The lifetime of an exception object ends as soon as the corresponding exception has been caught.
- the invention allows temporarily required storage space to be made available temporarily and dynamically - namely in the form of a local object.
- the local object is partially or completely in RAM or another efficiently writable memory.
- This memory is used particularly well by the automatic and dynamic memory management of the invention. This increases the performance of the data carrier both with regard to the processing speed and with regard to the storage space which is effectively available for the programs being executed.
- a local object can be defined in particular by the fact that there is no persistent reference to the object.
- a "persistent reference” is to be understood as a reference to the object that is persistent, e.g. is stored in a field of an object, a static field or a field of an array. As soon as a reference to an object is entered in one of the fields mentioned, the object can no longer be a local object.
- Non-persistent references to an object e.g. are contained in the operand stack or in a local variable, however, do not affect the classification of an object as a local or non-local object.
- the distinction as to whether an object is to be treated as a local or a non-local object can be made at the compile time of the program or at runtime or partly at compile time and partly at runtime. If there is a distinction at runtime, at least some newly created objects are initially created in the second, efficiently writable memory area. During the further execution of the program, it is monitored whether a persistent reference to the object is created. Once this is the case, the object can no longer be treated as a local object. It is then transferred to the first, non-volatile memory area. If a distinction is made at compile time, the compiler analyzes a section of the source program that contains the creation of the object to determine whether a persistent reference to the object is created.
- the compiler then generates program code that creates the object in the first or - in whole or in part - in the second memory area.
- the term "compiler” is intended to encompass all programs in the wording of the present document which carry out automatic conversion processes.
- converters for generating CAP files (card application files) and optimization programs should also be referred to as "compilers”.
- a source program analysis at compile time can usually only give an approximate result. This means that at least one of the two classifications of an object as local or non-local is subject to a certain degree of uncertainty. It can therefore be provided that only objects recognized as locally are created in the second memory area, while all other objects are created in the first memory area. In an alternative embodiment, on the other hand, only the objects that are reliably recognized as non-local are created in the first memory area, while all other objects are created in the second memory area. At least for objects that could not be classified as local, the run time monitoring described above is then carried out. In some embodiments, compiler directives (pragmas). provided with which objects can be identified as local or non-local.
- simple criteria are used, optionally at runtime or at compile time, to determine whether objects should be created in the first or first in the second memory area. For example, it can be provided that objects generated by the program's znsr ⁇ H method are created in the first memory area. In different embodiments, either all other objects can first be created in the second memory area or only individual types of objects. Such object types can be, for example, exception objects or objects that are only needed temporarily for cryptographic operations.
- the lifespan of a local object usually ends with the termination - either by a return or an exception - of the method in which the local object was created, because at this point the possibly existing local references the object will be deleted.
- the storage space required for the object in the second storage area can then be released.
- An exception to the rule just mentioned applies if the object is used as the return parameter of the method that created the object. In this case, the calling method receives a reference to the object, so that the object must not be deleted at least until this method is terminated.
- a garbage collection is provided in some embodiments.
- this causes time expenditure during program execution and increases the complexity of the runtime environment.
- a particularly simple method is therefore preferably used, in which a fill level indicator indicates the occupancy of the second memory area.
- the level pointer is usually reset to the level it was when it was called had this method.
- An exception to this rule is made in preferred embodiments only if the portion of the second memory area released by the reset contains an object which is used as the return parameter of the method.
- an object In order to ensure that an object can be transferred from the second to the first memory area when necessary, it is preferably checked when the object is created in the second memory area whether there is also sufficient space for the object in the first memory area. During the further execution of the program, when new objects are created, it is preferably ensured that there is always enough space in the first memory area for any necessary transfer of objects.
- the first memory area is located in an EEPROM or some other non-volatile writable memory of the data carrier, while the second memory area is arranged in a RAM or other efficiently writable memory.
- the second memory area can in particular be designed as a local heap and / or in a stack. Storage in a batch memory is particularly advantageous for objects that were already identified as local objects at compile time.
- the computer program product according to the invention has program instructions in order to implement the implementation method according to the invention.
- a computer program product can be a physical medium, for example a semiconductor memory or a floppy disk or a CD-ROM, on which a program for executing a method according to the invention is stored.
- the computer program product can also be a non-physical medium, for example one via one Computer network transmitted signal.
- the computer program product is preferably a compiler which is provided for execution by a conventional workstation computer in order to generate programs for portable data carriers.
- the data carrier and / or the computer program product have features which correspond to the features described above and / or to the features mentioned in the dependent method claims.
- FIG. 1 is a block diagram of a portable data carrier according to an embodiment of the invention.
- FIG. 2 shows a flowchart of a method carried out when a new object is created
- FIG. 3 shows an example of the memory allocation in a stack and a local heap during program execution
- FIG. 5 is a schematic representation of the implementation of a Que ⁇ programm in an executable program.
- the data carrier 10 shown in FIG. 1 is configured in the present exemplary embodiment as a chip card in accordance with the Java Card standard. On a single semiconductor chip, the data carrier 10 has a processor 12, a plurality of memory fields configured in different technologies and an interface circuit 14 for contactless or contact-based communication.
- a read-only memory 16 a non-volatile writable memory 18 and a read / write memory 20 are provided as memory fields.
- the read-only memory 16 is in the form of a ROM-programmed ROM, the non-volatile memory 18 in the form of an electrically erasable and programmable EEPROM and the read / write memory 20 in the form of RAM.
- Write operations to the non-volatile memory 18 are relatively complex and, for example, take thirty times as long as write operations into the read / write memory 20.
- system programs 22 are contained which are required for the operation of the data carrier 10.
- the system programs 22 include an operating system 24 and program code 26 for implementing a virtual machine 26, which in the present exemplary embodiment is designed as a JCVM (J ⁇ v ⁇ Card Virtual Machine).
- a class library 28 is also provided that provides application programming interfaces.
- the program 30 has several methods 30.1, 30.2, 30.3, 30.4, which are referred to in the following as 30.x.
- the methods 30.x comprise a method for installing the program 30, designated “install”, a method called “process” for processing incoming data packets and, if appropriate, methods “select” and “deselect” which are used when changing can be called between several programs of the data carrier 10.
- a stack memory 32 located in the read / write memory 20 takes operands, return addresses, local ones during the program execution
- the free area of the stack 32 is illustrated by hatching in FIG. 1.
- a first memory area 34 is reserved in the non-volatile memory 18 and is designed in a manner known per se as a persistent heap (heap or heap). According to the usual Java card architecture, all objects, static data fields and non-transient arrays would be created in this persistent heap. In contrast, in the present exemplary embodiment the persistent heap is only used selectively. Local objects that are likely to have a short lifespan and to which no persistent references refer are not created in the first memory area 34, but in a second memory area 36 in the read / write memory 20. The second memory area 36 is also referred to as a local heap because, like the persistent heap, it serves to store objects.
- FIG. 1 shows, by way of example, two objects 38, 0 created in the first memory area 34, each of which has a plurality of data fields.
- One of the data fields of the first object 38 contains a reference 42 to the second object 40.
- the reference 42 is also referred to as a "persistent reference” because it is contained in a persistently stored data field.
- the second object 40 is not a local, but a persistent object, since the persistent reference 42 refers to it.
- a local object 44 is shown as an example in the second memory area 36.
- a local reference 46 which is contained, for example, in a local variable created in the stack 32, refers to the local object 44.
- a further value in the stack 32 indicates as fill level pointer 48 the beginning of the free memory in the second memory area 36; this free memory is shown hatched in Fig. 1.
- step 50 it is first checked whether there is enough storage space in the first memory area 34 to create the new object If there is not enough storage space available, the object generation is terminated with an error message
- the check in step 50 in the present exemplary embodiment takes place regardless of the type of object to be created, in order to ensure that an object initially created in the second memory area 36 is also available at all times can be transferred into the first memory area 34.
- step 52 it is therefore queried whether the program installation is taking place. If this is the case, the new object is generated in step 54 as a persistent object in the first memory area 34.
- the generation process carried out in step 54 corresponds to the creation of an object in the persistent heap carried out with a conventional Java card. If it was determined in step 52 that the program execution is outside the installation method, the object to be newly created is initially regarded as a local object in the present exemplary embodiment. It is then created in the second memory area 36 - the local heap - if there is enough memory space available there. The latter is checked in step 56.
- step 58 If there is enough storage space in the local heap, the object is created there in step 58 at the next free position - immediately afterwards in the area previously used - and the fill level pointer 48 is updated accordingly. If, on the other hand, the local heap is already too full, the usual object creation process takes place in step 54 in the first memory area 34, in which - as checked in step 50 - there is still sufficient free memory space available.
- each time a persistent reference is generated or changed it is checked whether the reference refers to an object located in the second memory area 36. If this is the case, then the object is transferred to the first memory area 34 from the second 'storage area 36th The query in step 50 ensures that this is possible at any time.
- the second memory area 36 is organized in a manner similar to a stack memory, in order to be able to release the memory space occupied by the local objects generated in this method 30.x in a simple manner after a method 30.x has ended.
- FIG. 3 shows an example occupancy of the stack memory 32 with a plurality of stack frames (stach frames) 60.1, 60.2, 60.3.
- stack frames stack frames
- a new stack frame 60.x is created which is deleted again when method 30.x is ended becomes.
- the stack frame 60.x contains a return address for the calling method, administration and backup data and, if applicable, local variables of the called method.
- each stacking frame 60, x furthermore has a fill level field 62.x, which contains the fill level indicator 48 during the execution of the corresponding method 30.x. 3, the fill level field 62.3 contains the current fill level pointer 48, and the fill level field 62.2 contains the fill level that applied when the method corresponding to the stack frame 60.3 was called.
- Section 64.3 denotes the section in the local heap that has been occupied by the currently executed method since it was called. Sections 64.1 and 64.2 in the local heap were filled by those methods that were called up to create memory frames 60.1 and 60.2, respectively.
- the space occupied by this method in the second memory area 36 is generally completely released when a method is ended. This takes place without further action in that when a method is ended, the corresponding stack frame 60.x - including the fill level field 62.x contained therein - is discarded, and in that the fill level field 62. (xl) of the next older stack frame 62. (xl) also its assignment stored there is used as a new level indicator 48. For example, after the end of that method, when the stack frame 60.3 was called, the content of the fill level field 62.2 is used as the new fill level pointer 48, so that the entire memory section 64.3 is released.
- step 70 either the fill level field 62. (xl) of the previous stack frame 60. (xl) is reactivated (step 72), or the value of the current fill level pointer 48 in the previous stack frame 60. (xl) accepted.
- FIG. 5 shows the known translation process of a J u ⁇ source program 80 by a compiler 82 into a CAP file (Card Application File) 84.
- the CAP file 84 is in turn loaded by a loading program 86 into the data carrier 10 as a program 30, for example when the data carrier 10 is initialized.
- the compiler 82 also has, in addition to the actual compilation module for translating the source program 80 into bytecode, a converter which carries out various correctness checks and is also referred to as an "off-card virtual machine".
- a simple query was carried out in step 52 to determine whether a new object to be created should be created in the first or in the second memory area 34, 36. Further runtime checks were carried out for the system and for updates of persistent references.
- alternative embodiments provide for all or part of the aforementioned checks to be advanced to the level of the compiler 82.
- the compiler 82 can obtain information as to whether an object to be newly created during the later program execution is to be regarded as a local or as a non-local object. Depending on the result of this analysis, the compiler 82 then generates program code which either creates the object in the first memory area 34 or in the second memory area 36. In alternative embodiments, objects that were reliably recognized as local at compile time, such as local variables, are created in the stack 32. Depending on whether a local heap is additionally provided in the read / write memory 20, the stack memory 32 forms the entire second memory area 36 or part of the second memory area 36 in these configurations.
- the source program 80 will receive commands for creating objects which cannot be clearly classified as local or non-local objects at compile time.
- objects can either be immediately created in the first memory area 34, or they can first be created as local objects in the second memory area 36 in the manner described above and can only be transferred to the first memory area 34 if necessary.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Networks & Wireless Communication (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10320062A DE10320062A1 (de) | 2003-05-06 | 2003-05-06 | Speicherverwaltung bei einem tragbaren Datenträger |
PCT/EP2004/004723 WO2004100090A1 (de) | 2003-05-06 | 2004-05-04 | Speicherverwaltung bei einem tragbaren datenträger |
Publications (1)
Publication Number | Publication Date |
---|---|
EP1623394A1 true EP1623394A1 (de) | 2006-02-08 |
Family
ID=33426673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP04730985A Withdrawn EP1623394A1 (de) | 2003-05-06 | 2004-05-04 | Speicherverwaltung bei einem tragbaren datentrager |
Country Status (6)
Country | Link |
---|---|
US (1) | US8819373B2 (de) |
EP (1) | EP1623394A1 (de) |
JP (2) | JP2006525568A (de) |
CN (1) | CN1781127B (de) |
DE (1) | DE10320062A1 (de) |
WO (1) | WO2004100090A1 (de) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100801894B1 (ko) * | 2006-06-15 | 2008-02-12 | 삼성전자주식회사 | 휴대용 단말기에서 메모리 용량을 고려한 프로그램 실행을위한 장치 및 방법 |
DE102006034375A1 (de) * | 2006-07-25 | 2008-01-31 | Giesecke & Devrient Gmbh | Personalisierung von tragbaren Datenträgern |
US8917165B2 (en) * | 2007-03-08 | 2014-12-23 | The Mitre Corporation | RFID tag detection and re-personalization |
US9196346B2 (en) * | 2008-01-23 | 2015-11-24 | Micron Technology, Inc. | Non-volatile memory with LPDRAM |
EP2196934A1 (de) * | 2008-12-09 | 2010-06-16 | Gemalto SA | Verfahren zur Sicherung des Java-Bytecodes |
JP6013103B2 (ja) * | 2012-09-20 | 2016-10-25 | 株式会社東芝 | Icカード |
CN108140100B (zh) * | 2015-10-28 | 2021-10-08 | 赫尔实验室有限公司 | 维护对象的安全标签和引用计数的系统、方法和介质 |
JP7397179B2 (ja) * | 2019-12-20 | 2023-12-12 | インテル・コーポレーション | 階層化オブジェクトメモリ配置のためのランタイム装置の管理 |
DE102022001682A1 (de) * | 2022-05-12 | 2023-11-16 | Giesecke+Devrient ePayments GmbH | Secure Element mit Heap-Speicher |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4829169A (en) * | 1985-07-01 | 1989-05-09 | Toppan Moore Company, Inc. | IC card having state marker for record access |
EP0955577B1 (de) | 1998-05-04 | 2011-11-30 | International Business Machines Corporation | Verfahren und Vorrichtung zum Erzeugen eines Objektes in einem nicht dauerhaften Speicher und/oder Halten des Zugangs zu besagtem Objekt |
DE69817333T2 (de) * | 1998-06-05 | 2004-06-09 | International Business Machines Corp. | Verfahren und Vorrichtung zum Laden von Befehlskodes in einen Speicher und zum Verbinden dieser Befehlskodes |
JP3749798B2 (ja) | 1998-12-01 | 2006-03-01 | 株式会社東芝 | Icカードにおけるデータ書込方法およびicカードにおけるデータ読込方法 |
JP2001067210A (ja) * | 1999-08-30 | 2001-03-16 | Toshiba Corp | Icカードとicカードにおけるアプリケーションのインストール方法 |
EP1239411B1 (de) * | 1999-11-30 | 2006-09-06 | Kabushiki Kaisha Toshiba | Chipkarte und verfahren zur verwaltung eines flüchtigen speichers auf derselben |
DE10040974A1 (de) * | 2000-08-22 | 2002-03-14 | Giesecke & Devrient Gmbh | Verfahren zur virtuellen Vergrößerung des Stacks eines tragbaren Datenträgers |
-
2003
- 2003-05-06 DE DE10320062A patent/DE10320062A1/de not_active Withdrawn
-
2004
- 2004-05-04 CN CN2004800113199A patent/CN1781127B/zh not_active Expired - Fee Related
- 2004-05-04 WO PCT/EP2004/004723 patent/WO2004100090A1/de active Application Filing
- 2004-05-04 EP EP04730985A patent/EP1623394A1/de not_active Withdrawn
- 2004-05-04 JP JP2006505369A patent/JP2006525568A/ja active Pending
- 2004-05-04 US US10/555,704 patent/US8819373B2/en not_active Expired - Fee Related
-
2012
- 2012-05-02 JP JP2012105134A patent/JP5457496B2/ja not_active Expired - Fee Related
Non-Patent Citations (2)
Title |
---|
None * |
See also references of WO2004100090A1 * |
Also Published As
Publication number | Publication date |
---|---|
US8819373B2 (en) | 2014-08-26 |
US20070016744A1 (en) | 2007-01-18 |
JP2006525568A (ja) | 2006-11-09 |
JP5457496B2 (ja) | 2014-04-02 |
DE10320062A1 (de) | 2004-12-16 |
JP2012164350A (ja) | 2012-08-30 |
WO2004100090A1 (de) | 2004-11-18 |
CN1781127A (zh) | 2006-05-31 |
CN1781127B (zh) | 2010-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60032694T2 (de) | Speicherrückforderungsverfahren | |
DE69918334T2 (de) | Erzeugung von kompilierten programmen für interpretative laufzeitumgebungen | |
DE69429305T2 (de) | System und Verfahren für Sprachenverarbeitung | |
WO1997001147A2 (de) | Verfahren zur vereinfachung der kommunikation mit chipkarten | |
DE19581754B4 (de) | System und Verfahren zum bedingten Kompilieren einer Software-Kompiliereinheit | |
EP1623394A1 (de) | Speicherverwaltung bei einem tragbaren datentrager | |
DE60318993T2 (de) | Eingebettete Speicherbereinigung | |
DE60224937T2 (de) | Verfahren und anordnung zum verknüpfen von verwandelten appletdateien | |
DE69328664T2 (de) | Verfahren und Anordnung zur Zusammenbindung von Objekten | |
DE10102202A1 (de) | Mikroprozessorschaltung für tragbare Datenträger | |
EP1695207A2 (de) | Java smart card chip mit für globale variablen reserviertem speicherbereich | |
EP1709534B1 (de) | Ausführung eines programms durch eine virtuelle maschine | |
DE10324384B3 (de) | Behandlung eines Fehlerereignisses bei der Installation eines Anwendungsprogramms in einem tragbaren Datenträger | |
DE102004040296B3 (de) | Schreiben von Daten in einen nichtflüchtigen Speicher eines tragbaren Datenträgers | |
DE19637883B4 (de) | Datenverarbeitungsanlage zur Ausführung großer Programmsysteme | |
DE102004006308B4 (de) | Verfahren zum Verändern von Programmcode eines tragbaren Datenträgers mittels Patchdaten | |
EP1600855B1 (de) | Erzeugen und Verwenden von Speicherbelegungsinformationen bei einem tragbaren Datenträger | |
EP1728162A1 (de) | Speicherbereinigung (garbage collection) für smart cards | |
EP1044409B1 (de) | Programmablaufverfahren und verfahren zur erweiterung eines programmkomponentensystems | |
DE102022001682A1 (de) | Secure Element mit Heap-Speicher | |
DE102008044808B4 (de) | Verfahren zur Generierung von Programmcode in einem Betriebssystemspeicher und einem Applikationsspeicher eines Datenträgers | |
DE102004014885B4 (de) | Verfahren zur Optimierung eines Programms eines tragbaren Datenträgers | |
DE19807191A1 (de) | Programmablaufverfahren und Verfahren zur Erweiterung eines Programmkomponentensystems | |
DE102008057682A1 (de) | Verfahren zum Optimieren von Programmcode für einen tragbaren Datenträger | |
DE10249597A1 (de) | Steuern eines Speicherbereinigungsvorgangs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20051206 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PL PT RO SE SI SK TR |
|
DAX | Request for extension of the european patent (deleted) | ||
RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: KRAMPOSTHUBER, GEORG Inventor name: STOCKER, THOMAS |
|
17Q | First examination report despatched |
Effective date: 20070903 |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: GIESECKE+DEVRIENT MOBILE SECURITY GMBH |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
INTG | Intention to grant announced |
Effective date: 20180718 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20181201 |