...
MAX_SUPPORTED_AID = 30 (datamngr.h)
MAX_KERNEL = 25 (datamngr.h)
MAX_AID = 15 (datamngr.h)
MAX_COMBINATION_PER_TRANSACTION_TYPE = 65 (datamngr.h)
MAX_SIMULTANEOUS_SESSION = 65 (datamngr.h)
MAX_DRL_SET = 4 (datamngr.h)
ONLINE_BUFFER_SIZE = 4096 (datamngr.h)
MAX_SUPPORTED_ADF = 22 (agnostypes.h)
AGNOSK compilation symbol = DEFINED (Agnos library)
AGNOSCL compilation symbol = DEFINED (Agnos library)
AGNOSISR compilation symbol = DEFINED (Agnos library)
AGNOSCPL compilation symbol = DEFINED (Agnos library)
AGNOSFMSG compilation symbol = DEFINED (Agnos library)
SIZE_FOR_EMV_TAGS = 11500 (sharedram.c)
to store all tags for a single transaction
SIZE_FOR_EMV_UNKNOWNTAGS = 2500 (sharedram.c)
to store all unknowns tags for a single transaction
FREE_SIZE_RAM = 4096 (sharedram.c)
L3 implementation + house keeping in C2 (minimum = 3000). Maybe increased depending on L3 needs
SIZE_FOR_PAYPASS_TORN = 2048 (sharedram.c)
Torn is no longer supported by Mastercard (Torn support is still required for CUP, Discover, UPI and RuPay Kernels)
SIZE_FOR_CL_DATA_OBJECT = 17100 (sharedram.c)
set 1 if Contactless Interface is not supported
MAX_CHARACTER_PER_LINE(
MAX_CHARACTERS
) = 16 (display.h)MAX_NB_LANGUAGE = 3 (display.h)
MAX_STRING_LENGTH = 60 (display.h)
NB_EMV_STRINGS = 34 (display.h)
NB_ACQUIRER_STRINGS = 26 (display.h)
MAX_NUMBER_ITEMS = 50 (select.h)
MAX_ITEM_NAME_LENGTH = 100 (select.h)
REPLAY compilation symbol = NOT DEFINED (CAD library)
LOG compilation symbol = NOT DEFINED (Platform library)
TIME_STAMP compilation symbol = NOT DEFINED (Platform library)
NOTANOTE 1: These values are given as a examples and can change versus platform
NOTE 2: The following table uses estimates for the Win32 MinGW Platform with a GCC compiler using Release Optimizations
NOTE 3: RAM column only estimates Heap Memory consumptions
Library | ROM (kB) | RAM (kB) | Comment (Heap Consumption) |
---|---|---|---|
GPI | 26.5 | 40.2 | |
GPI/Platform | 6 |
29.3 | Shared RAM containing all EMV tags and torn transactions | ||
GPI/CAD | 7.7 | < 1 | n/a |
GPI/HSM | 3.4 | < 1 |
NOTE: RAM used byCrypto Libraries are excluded because we recommend using Libraries provided by the Platform | |
GPI/SPED | 7.7 |
5. |
1 | String tables and Selection List (contact only) | ||
GPI/Log | 1.7 | 5 | 0 kB when option |
Core Libraries | 148.8 | 55.2 | |
AgnosDB | 4.5 |
4.5 | Tag Lookup Tables | ||
Agnos | 97.1 | 8.7 | Transactional context |
AgnosMW | 33.8 | 26.3 | Instanciated data model |
AgnosEP | 13.4 | 15.7 | Working buffers for entry point indicators and kernels services management |
Kernels |
235. |
Working buffers for online communication with ACE
7 | 41.1 | |
EMVCo | 7.7 | 8.3 |
Contact Application, most Heap used by Candidate List variable | ||
C-2/MasterCard | 38.3 | 6.7 |
Most Heap used by Tag List Management (~3kB) | |||
C-3/Visa | 14.9 | 4.5 | n/a |
C-4/American Express | 28.8 | 3.2 | n/a |
C-5/JCB | 26.5 | 2,8 | n/a |
C-6/Discover | 25.9 | 2.5 | n/a |
C-7/CUP | 20 | 2 | n/a |
PURE (mada) | 42.7 | 2.5 | n/a |
EFTPOS | 15 | 6.8 | n/a |
Interac Flash | 15.9 | 1.8 | n/a |
TestKernel
< 1
n/a
Kizis/DualCertificationLevel3
28.5
Utils | 7.5 | 0 | |
TLV | 4.5 | 0 | |
COM | 3 | 0 | |
Total (Classic Architecture) | 418.5 | 136.5 |
NOTE: Unused Kernels can be substracted from Total
Level 2 Certification Applications:
L2 Application | ROM (kB) | RAM (kB) | Comment |
Classic Architecture | 74.3 | 47.4 | |
ACE | 18 | 4.4 | Working buffers for online communication with ACE |
Kizis | 56.3 | 43 | Payment and Outcome contexts |
NOTE: Level 2 Applications are required during Certifications and must be added to the Total from the previous section. They should be removed during Terminal Integration/Deployment Phases
Memory Consumption Examples
The follwing sample estimates are for the STMicroelectronics STM32 Processor using the IAR Workbench IDE:
Tool Chain Examples | ROM (kB) | RAM (kB) | Comment |
---|---|---|---|
IAR code | 275 kB | 110 kB | all major kernels along with Kizis provided to TA session |
IAR code | 220 kB | 105 kB | C2, C3, C4 along with Kizis provided to TA session |
...