Patent Document ID: 8627267
Application ID: 11025987
Patent Flag: 1

Claim One:
1. An apparatus for initializing system global variables by using multiple load/store instruction, the apparatus comprising: a first storing unit to store a system global variable initialization function and an initialization function using multiple load/store instruction; a second storing unit to store a return address; a stack in a memory for initialization and a link register; a control unit to copy a first return address of the system global variable initialization function to the link register as a most recent return address of a currently called function, and to copy the first return address from the link register to the second storing unit when the system global variable initialization function is called for initializing the system global variables, to initialize the system global variables including the stack in a block unit of a predetermined number of bytes by calling the initialization function using multiple load/store instruction during performing the system global variable initialization function, to copy the first return address from the second storing unit to the stack after initializing the stack, wherein the link register stores a second return address of the initialization function as a most recent return address of a currently called function, to copy the first return address from the stack to the link register, and to perform a rest of a system initialization by finding and executing an execution sequence based on the first return address stored in the link register; and a third storing unit to store the system global variables initialized according to the control unit, wherein the second storing unit is a general-purpose register that is not initialized during the initializing the system global variables, and the link register is not initialized during the initializing the system global variables, wherein the control unit reads the first return address stored in the second storing unit and writes the first return address to the link register after performing the initialization function, and wherein the multiple load/store instruction comprises a memset function according to a C programming language, and reads or writes multiple bytes of data in a block unit of a predetermined number of bytes.