WO2008054092A1 - Terminal having lazy loading function of wireless internet platform and method of controlling the same - Google Patents
Terminal having lazy loading function of wireless internet platform and method of controlling the same Download PDFInfo
- Publication number
- WO2008054092A1 WO2008054092A1 PCT/KR2007/005298 KR2007005298W WO2008054092A1 WO 2008054092 A1 WO2008054092 A1 WO 2008054092A1 KR 2007005298 W KR2007005298 W KR 2007005298W WO 2008054092 A1 WO2008054092 A1 WO 2008054092A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- storage medium
- dsl
- executed
- api
- library
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000006870 function Effects 0.000 claims abstract description 63
- 239000008186 active pharmaceutical agent Substances 0.000 claims description 20
- 238000012790 confirmation Methods 0.000 claims description 6
- 230000001413 cellular effect Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 4
- 238000010295 mobile communication Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 101100328887 Caenorhabditis elegans col-34 gene Proteins 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/38—Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
- H04B1/40—Circuits
Definitions
- the present invention relates to a terminal having a lazy loading function of a wireless Internet platform and a method of controlling the same, and more particularly, to a terminal having a lazy loading function of a wireless Internet platform and a method of controlling the same, which improve memory utilization of the terminal and reduce a library loading time when an application is executed.
- wireless data communication a communication function that a person who is moving transmits and receives data such as characters, figures and images wirelessly using a portable mobile terminal capable of wirelessly transmitting/receiving signals through a base station system is called wireless data communication.
- This wireless data communication is a mobile communication system that bi-directionally exchanges or searches data while being moved using various terminals such as cellular phones, portable computers, facsimile machines, credit card readers and so on.
- a conventional terminal used in the mobile communication system includes an OEM area associated with a terminal manufacturer and a wireless Internet platform for interoperability (WIPI) area managed by a network operator that operates a communication network of the terminal.
- WIPI wireless Internet platform for interoperability
- the application program uses an application program interface (API) of the manufacturer or WIPI platform.
- the API is an interface by which an application program uses the function of another program such as a computer operating system (OS) or a database management system (DBMS) and so on.
- the API means a set of functions which define the function of a program such as OS and a method of using the function, and the application program can use various functions of the OS through the API.
- FIG. 1 illustrates an application program execution process of a conventional terminal.
- a conventional terminal 70 having a platform loading function includes a ROM 71, a RAM 72, and a controller 73.
- the ROM 71 is a nonvolatile memory which stores phone BIOS (Basic Input/Output System) data and application programs for operating a platform in an embedded form.
- the RAM 72 stores internally processed temporary data including data copied from the ROM 71.
- the controller 73 loads an application program set by a user to the RAM 72 and controls the execution of the function of the platform, for example, the platform of a manufacturer or WIPI through an API.
- the controller 73 of the terminal 70 executes booting when the system is turned on, and then loads all libraries related to an application program desired by a user when the user executes the application program through a key pad.
- the application program can be a program having 10 game levels, for example.
- the controller 73 of the terminal 70 loads the phone BIOS data, for example,
- the controller 73 executes the OS and application programs, for example, manufacturer applications or WIPI applications.
- the controller 70 loads a program related to a game, the controller 70 loads all libraries to be executed during the game to the RAM 72 at a time, and then calls APIs of the libraries to use them.
- the conventional terminal having the platform loading function loads an application program to use it
- the conventional terminal should load even a library having an API which is not currently used. For example, when libraries of a game having 10 game levels are loaded, only a library corresponding to a currently used level is not loaded but even a library including an API that will be used last is loaded in a memory, and then the game is executed. Accordingly, a loading time of the terminal is increased, and thus it is very inconvenient for a user to use the terminal.
- all libraries of a program must be loaded at once, large memory capacity is required irrespective of whether a memory is actually used or not so that the efficiency of a memory space is considerably decreased. Disclosure of Invention Technical Solution
- the present invention has been made in view of the above-mentioned problems occurring in the prior art, and it is a primary object of the present invention to provide a terminal having a lazy loading function of a wireless Internet platform and a method of controlling the same, which search a library having a currently required API through a dummy function without loading all libraries of an application program at once when the application program is executed, load the library and call the currently required API of the library to remove necessity of securing a large memory space due to unnecessary loading, thereby maximizing memory space utilization of the terminal.
- Another object of the present invention is to provide a terminal having a lazy loading function of a wireless Internet platform and a method of controlling the same, which call only a library of an application, which has a required API, through a dummy function only if required when the application is executed to remove necessity of loading all libraries of a platform in a loading time, thereby considerably reducing a loading time when the application is executed.
- a library having a currently required API is searched through a dummy function without loading all libraries of an application program at once when the application program is executed, the searched library is loaded and the currently required API of the library is called to remove necessity of securing a large memory space due to unnecessary loading. Accordingly, memory space utilization of the terminal is maximized.
- FIG. 1 illustrates an application program execution process of a conventional terminal
- FIG. 2 illustrates a terminal having a lazy loading function of a wireless Internet platform module according to an embodiment of the present invention
- FIG. 3 is a flow chart of a method of controlling a terminal having a lazy loading function of a wireless Internet platform according to the present invention. Best Mode for Carrying Out the Invention
- a terminal having a lazy loading function of a wireless Internet platform including: a first storage medium for storing application programs configured in the form of a plurality of DSL modules each having only a table configured of a dummy function for an API required by a corresponding application program and a stub function block storing an address value of a library having an API, the first storage medium being adapted to function as a nonvolatile memory; a second storage medium for storing temporary data, the second storage medium being adapted to function as a volatile memory; and a main controller for loading only a DSL module required for the current execution from the first storage medium to the second storage medium without simultaneously loading all the DSL modules when a program stored in the first storage medium is loaded to the second storage medium.
- the present invention also provides a method of controlling a terminal having a lazy loading function of a wireless Internet platform, comprising: a sequential execution step of loading only a DSL module require for the current execution to a second storage medium and calling an API corresponding to the DSL module to execute the DSL module when an application program is executed in a terminal; a next execution confirmation step of confirming whether the execution of the current DSL module is completed; and a lazy processing step of searching the DSL module that has been executed for a library having an API required to execute the next DSL module and linking to the searched library when the currently DSL module has been executed and the next DSL module is required to be executed.
- FIG. 2 illustrates a terminal 2 having a lazy loading function of a wireless Internet platform module according to an embodiment of the present invention.
- the terminal 2 configures all libraries of a mobile platform in the form of a plurality of dynamic linking library (DSL) modules Ia through In and makes each DSL module have only a table configured of a dummy function for an API required for a corresponding application.
- DSL dynamic linking library
- the terminal 2 searches a corresponding library for each API using a stub function block 5 having a library value of an API, loads the library having a required API and calls the API.
- the terminal 2 can be a PDA, a notebook computer, a PC and a cellular phone which have an RF module.
- the stub function block 5 records the address value of a library in which an API required by next DSL module to be executed exists.
- the terminal 2 includes a fist storage medium 3, a second storage medium 4, a main controller 6, an RF module 8, a display 9, a codec 11, and a key panel 12.
- the first storage medium 3 is configured in the form of a ROM.
- the first storage medium 3 stores phone BIOS and application programs configured in the form of the plurality of DSL modules Ia through In.
- Each of the DSL modules Ia through In has only the table configured of a dummy function for an API required by an application and includes the stub function block 5 which stores the address value of a library in which an API exists.
- the second storage medium 4 is configured in the form of a RAM storing temporary data.
- an application program stored in the form of DSL modules Ia through In in the first storage medium 3 is executed, the plurality of DSL modules Ia through In are not simultaneously executed and required APIs are sequentially loaded to the second storage medium 4 with reference to an address value of the stub function block 5.
- the second storage medium 4 stores temporary data internally processed in the terminal 2.
- the main controller 6 does not simultaneously load the entire DSL modules Ia through In but loads only a DSL module required for the current execution when an application program stored in the first storage medium 2 is loaded. Then, the main controller 6 searches the address value of a library having an API through the stub function block 5 included in the currently executed DSL module and links to the DSL module of the library to call the corresponding API in order to execute the next DSL module.
- the RF module 8 processes an RF call signal (including a multimedia signal) including a video signal and an audio signal transmitted to the terminal 2 via a mobile communication network system 7 according to a transmission control signal of the main controller 6.
- the display 9 displays data processed in the terminal 2 according to a display control signal of the main controller 6.
- the codec 11 converts an analog voice signal inputted through a handset 10 into a digital signal or converts a digital voice signal into an analog signal according to a call connection control signal of the main controller 6.
- the key panel 12 is connected to one terminal of the main controller 6 and inputs a function setting signal of a user to the main controller 6.
- FIG. 3 is a flow chart of a method of controlling the terminal having a lazy loading function of a wireless Internet platform module according to the present invention.
- the terminal loads only a DSL module required to currently execute the application program to a memory, calls and executes an API corresponding to the DSL module, and processes other APIs of the following DSL modules required by the application program with a dummy function to load arbitrary binary values that are not the library values of the APIs to a RAM in a sequential execution step S3.
- the stub function block of the current DSL module which has been executed is searched for an address value of a library having an API required for executing the next DSL module in a stub search step S5.
- API of the next DSL module is linked and the API is called to execute the next DSL module in a lazy linking step S6.
- the main controller 4 of the terminal 2 recognizes it, loads only the currently executed DSL module from the first storage medium 3, that is, a ROM, to the second storage medium 4, that is, a RAM, without loading the entire application program from the first storage medium 3 to the second storage medium 4, and then sequentially executes the DSL modules of the application program.
- the main controller 6 of the terminal 2 loads only a DSL module Ia corresponding to the first level required for the current execution from the first storage medium 3 corresponding to a ROM to the second storage medium 4 corresponding to a RAM and calls an API corresponding to the DSL module to execute the DSL module.
- the main controller 6 processes other APIs required by the application program into values designated by a dummy function of a dummy function table. These dummy function values are not the library value of the APIs and they are arbitrary binary values and loaded to the RAM 4 to perform lazy loading of the other APIs.
- the main controller 6 searches the stub function block 5 of the DSL module Ia that has been executed for an address value of a library having an API required to execute the next DSL module Ib when the DSL module Ia has been executed and the API for the next DSL module Ib is required to be called. [39] When the controller 6 searches the stub function block 5 of the DSL module Ia that has been executed for the address value of the library having the API required to execute the next DSL module Ib, the main controller 6 links to the position of the searched library address value, calls the corresponding API and executes the next DSL module Ib.
- the main controller 6 When the application program of the terminal 2, for example, a game having 10 game levels, is executed, the main controller 6 displays the contents of the executed game on the display 9 and outputs an audio signal to the handset 10 through the codec 11. If there is an incoming RF call received through the RF module 8, the main controller 6 of the terminal 2 alarms a user of the incoming RF call through the display 9 or the handset 10. When the user wants to connect the RF call, the main controller 6 transmits a response call to a counterpart s terminal 13 (illustrated in FIG. 2) through the mobile communication network system 7 to accomplish the call between the terminals 2 and 13.
- a counterpart s terminal 13 illustrated in FIG. 2
- the present invention can also be embodied as computer readable codes on a computer readable recording medium.
- the computer readable recording medium is any data storage device that can store data which can be thereafter read by a computer system. Examples of the computer readable recording medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, and carrier waves (such as data transmission through the Internet).
- ROM read-only memory
- RAM random-access memory
- CD-ROMs compact discs
- magnetic tapes magnetic tapes
- floppy disks optical data storage devices
- carrier waves such as data transmission through the Internet
Abstract
Disclosed herein is a terminal having a lazy loading function of a wireless Internet platform, comprising: a first storage medium for storing application programs configured in the form of a plurality of DSL modules each having only a table configured of a dummy function for an API required by a corresponding application program and a stub function block storing an address value of a library having an API, the first storage medium being adapted to function as a nonvolatile memory; a second storage medium for storing temporary data, the second storage medium being adapted to function as a volatile memory and; and a main controller for loading only a DSL module required for the current execution from the first storage medium to the second storage medium without simultaneously loading all the DSL modules when a program stored in the first storage medium is loaded to the second storage medium, and a method of controlling the same. The present invention calls only a library of an application, which has a required API, through a dummy function only if required when the application is executed, and thus there is no need to load all libraries of a platform in a loading time. Accordingly, a loading time when the application is executed is considerably reduced.
Description
Description
TERMINAL HAVING LAZY LOADING FUNCTION OF
WIRELESS INTERNET PLATFORM AND METHOD OF
CONTROLLING THE SAME
Technical Field
[1] The present invention relates to a terminal having a lazy loading function of a wireless Internet platform and a method of controlling the same, and more particularly, to a terminal having a lazy loading function of a wireless Internet platform and a method of controlling the same, which improve memory utilization of the terminal and reduce a library loading time when an application is executed. Background Art
[2] In general, a communication function that a person who is moving transmits and receives data such as characters, figures and images wirelessly using a portable mobile terminal capable of wirelessly transmitting/receiving signals through a base station system is called wireless data communication. This wireless data communication is a mobile communication system that bi-directionally exchanges or searches data while being moved using various terminals such as cellular phones, portable computers, facsimile machines, credit card readers and so on.
[3] A conventional terminal used in the mobile communication system includes an OEM area associated with a terminal manufacturer and a wireless Internet platform for interoperability (WIPI) area managed by a network operator that operates a communication network of the terminal.
[4] When the conventional terminal uses an application in order to execute a set application program, the application program uses an application program interface (API) of the manufacturer or WIPI platform. The API is an interface by which an application program uses the function of another program such as a computer operating system (OS) or a database management system (DBMS) and so on. The API means a set of functions which define the function of a program such as OS and a method of using the function, and the application program can use various functions of the OS through the API.
[5] FIG. 1 illustrates an application program execution process of a conventional terminal. Referring to FIG. 1, a conventional terminal 70 having a platform loading function includes a ROM 71, a RAM 72, and a controller 73. The ROM 71 is a nonvolatile memory which stores phone BIOS (Basic Input/Output System) data and application programs for operating a platform in an embedded form. The RAM 72 stores internally processed temporary data including data copied from the ROM 71.
The controller 73 loads an application program set by a user to the RAM 72 and controls the execution of the function of the platform, for example, the platform of a manufacturer or WIPI through an API.
[6] A loading operation of the aforementioned terminal having the platform loading function is explained. The controller 73 of the terminal 70 executes booting when the system is turned on, and then loads all libraries related to an application program desired by a user when the user executes the application program through a key pad. Here, the application program can be a program having 10 game levels, for example.
[7] That is, the controller 73 of the terminal 70 loads the phone BIOS data, for example,
OS and application programs stored in an image form, to the RAM 72 to generate a RAM disk at the same time when the system is booted. Then, the controller 73 executes the OS and application programs, for example, manufacturer applications or WIPI applications. When the terminal 70 loads a program related to a game, the controller 70 loads all libraries to be executed during the game to the RAM 72 at a time, and then calls APIs of the libraries to use them.
[8] However, when the conventional terminal having the platform loading function loads an application program to use it, the conventional terminal should load even a library having an API which is not currently used. For example, when libraries of a game having 10 game levels are loaded, only a library corresponding to a currently used level is not loaded but even a library including an API that will be used last is loaded in a memory, and then the game is executed. Accordingly, a loading time of the terminal is increased, and thus it is very inconvenient for a user to use the terminal. Furthermore, since all libraries of a program must be loaded at once, large memory capacity is required irrespective of whether a memory is actually used or not so that the efficiency of a memory space is considerably decreased. Disclosure of Invention Technical Solution
[9] Accordingly, the present invention has been made in view of the above-mentioned problems occurring in the prior art, and it is a primary object of the present invention to provide a terminal having a lazy loading function of a wireless Internet platform and a method of controlling the same, which search a library having a currently required API through a dummy function without loading all libraries of an application program at once when the application program is executed, load the library and call the currently required API of the library to remove necessity of securing a large memory space due to unnecessary loading, thereby maximizing memory space utilization of the terminal.
[10] Another object of the present invention is to provide a terminal having a lazy loading
function of a wireless Internet platform and a method of controlling the same, which call only a library of an application, which has a required API, through a dummy function only if required when the application is executed to remove necessity of loading all libraries of a platform in a loading time, thereby considerably reducing a loading time when the application is executed.
Advantageous Effects
[11] According to the present invention, a library having a currently required API is searched through a dummy function without loading all libraries of an application program at once when the application program is executed, the searched library is loaded and the currently required API of the library is called to remove necessity of securing a large memory space due to unnecessary loading. Accordingly, memory space utilization of the terminal is maximized.
[12] Furthermore, according to the present invention, since only a library of an application, which has a required API, is called through a dummy function only if required when the application is executed to remove necessity of loading all libraries of a platform in a loading time. This considerably reduces a loading time when the application is executed. Brief Description of the Drawings
[13] The above and other objects, features and advantages of the present invention will be apparent from the following detailed description of the preferred embodiments of the invention in conjunction with the accompanying drawings, in which:
[14] FIG. 1 illustrates an application program execution process of a conventional terminal;
[15] FIG. 2 illustrates a terminal having a lazy loading function of a wireless Internet platform module according to an embodiment of the present invention; and
[16] FIG. 3 is a flow chart of a method of controlling a terminal having a lazy loading function of a wireless Internet platform according to the present invention. Best Mode for Carrying Out the Invention
[17] To accomplish the above objects of the present invention, according to the present invention, there is provided a terminal having a lazy loading function of a wireless Internet platform, including: a first storage medium for storing application programs configured in the form of a plurality of DSL modules each having only a table configured of a dummy function for an API required by a corresponding application program and a stub function block storing an address value of a library having an API, the first storage medium being adapted to function as a nonvolatile memory; a second storage medium for storing temporary data, the second storage medium being adapted to function as a volatile memory; and a main controller for loading only a DSL module
required for the current execution from the first storage medium to the second storage medium without simultaneously loading all the DSL modules when a program stored in the first storage medium is loaded to the second storage medium.
[18] The present invention also provides a method of controlling a terminal having a lazy loading function of a wireless Internet platform, comprising: a sequential execution step of loading only a DSL module require for the current execution to a second storage medium and calling an API corresponding to the DSL module to execute the DSL module when an application program is executed in a terminal; a next execution confirmation step of confirming whether the execution of the current DSL module is completed; and a lazy processing step of searching the DSL module that has been executed for a library having an API required to execute the next DSL module and linking to the searched library when the currently DSL module has been executed and the next DSL module is required to be executed. Mode for the Invention
[19] FIG. 2 illustrates a terminal 2 having a lazy loading function of a wireless Internet platform module according to an embodiment of the present invention. Referring to FIG. 2, the terminal 2 configures all libraries of a mobile platform in the form of a plurality of dynamic linking library (DSL) modules Ia through In and makes each DSL module have only a table configured of a dummy function for an API required for a corresponding application. Furthermore, when a DSL module is executed, the terminal 2 searches a corresponding library for each API using a stub function block 5 having a library value of an API, loads the library having a required API and calls the API.
[20] The terminal 2 can be a PDA, a notebook computer, a PC and a cellular phone which have an RF module. The stub function block 5 records the address value of a library in which an API required by next DSL module to be executed exists.
[21] As illustrated in FIG. 2, the terminal 2 according to an embodiment of the present invention includes a fist storage medium 3, a second storage medium 4, a main controller 6, an RF module 8, a display 9, a codec 11, and a key panel 12.
[22] The first storage medium 3 is configured in the form of a ROM. The first storage medium 3 stores phone BIOS and application programs configured in the form of the plurality of DSL modules Ia through In. Each of the DSL modules Ia through In has only the table configured of a dummy function for an API required by an application and includes the stub function block 5 which stores the address value of a library in which an API exists.
[23] The second storage medium 4 is configured in the form of a RAM storing temporary data. When an application program stored in the form of DSL modules Ia through In
in the first storage medium 3 is executed, the plurality of DSL modules Ia through In are not simultaneously executed and required APIs are sequentially loaded to the second storage medium 4 with reference to an address value of the stub function block 5. The second storage medium 4 stores temporary data internally processed in the terminal 2.
[24] The main controller 6 does not simultaneously load the entire DSL modules Ia through In but loads only a DSL module required for the current execution when an application program stored in the first storage medium 2 is loaded. Then, the main controller 6 searches the address value of a library having an API through the stub function block 5 included in the currently executed DSL module and links to the DSL module of the library to call the corresponding API in order to execute the next DSL module.
[25] The RF module 8 processes an RF call signal (including a multimedia signal) including a video signal and an audio signal transmitted to the terminal 2 via a mobile communication network system 7 according to a transmission control signal of the main controller 6.
[26] The display 9 displays data processed in the terminal 2 according to a display control signal of the main controller 6.
[27] The codec 11 converts an analog voice signal inputted through a handset 10 into a digital signal or converts a digital voice signal into an analog signal according to a call connection control signal of the main controller 6.
[28] The key panel 12 is connected to one terminal of the main controller 6 and inputs a function setting signal of a user to the main controller 6.
[29] FIG. 3 is a flow chart of a method of controlling the terminal having a lazy loading function of a wireless Internet platform module according to the present invention.
[30] Referring to FIG. 3, after an initialization step Sl, it is confirmed whether the execution of an application program is currently set in the terminal in an application program execution confirmation step S2. When the execution of the application program is not currently set in the terminal, the application program execution confirmation step S2 is finished and the routine goes to a standby state.
[31] When the execution of the application program is currently set in the terminal, the terminal loads only a DSL module required to currently execute the application program to a memory, calls and executes an API corresponding to the DSL module, and processes other APIs of the following DSL modules required by the application program with a dummy function to load arbitrary binary values that are not the library values of the APIs to a RAM in a sequential execution step S3.
[32] Then, it is confirmed whether the execution of the current DSL module is completed in a next execution confirmation step S4. When the execution of the current DSL
module is not finished, the routine goes to the previous step S3 to repeat the loop.
[33] When the execution of the current DSL module is completed and the next DSL module is required to be executed, the stub function block of the current DSL module which has been executed is searched for an address value of a library having an API required for executing the next DSL module in a stub search step S5.
[34] Subsequently, the position of the searched address value of the library having the
API of the next DSL module is linked and the API is called to execute the next DSL module in a lazy linking step S6.
[35] Then, it is confirmed whether the currently executed application program is finished in an executed program completion confirmation step S7. When the currently executed application program has not been completed, the routine goes to the stub search step S 5 to repeat the loop. When the currently executed application program has been completed, that is, when the execution of the current DSL module finishes the application program, the lazy loading process is finished and the routine goes to the standby state.
[36] In other words, when a user pushes a start button of the key panel 12 in order to execute an application program stored in the terminal 2 according to the present invention, the main controller 4 of the terminal 2 recognizes it, loads only the currently executed DSL module from the first storage medium 3, that is, a ROM, to the second storage medium 4, that is, a RAM, without loading the entire application program from the first storage medium 3 to the second storage medium 4, and then sequentially executes the DSL modules of the application program.
[37] For example, when the application program executed in the terminal 2 is a game having 10 game levels, the main controller 6 of the terminal 2 loads only a DSL module Ia corresponding to the first level required for the current execution from the first storage medium 3 corresponding to a ROM to the second storage medium 4 corresponding to a RAM and calls an API corresponding to the DSL module to execute the DSL module. Here, the main controller 6 processes other APIs required by the application program into values designated by a dummy function of a dummy function table. These dummy function values are not the library value of the APIs and they are arbitrary binary values and loaded to the RAM 4 to perform lazy loading of the other APIs.
[38] If a DSL module Ib corresponding to the second step is executed after the DSL module Ia corresponding to the first level, the main controller 6 searches the stub function block 5 of the DSL module Ia that has been executed for an address value of a library having an API required to execute the next DSL module Ib when the DSL module Ia has been executed and the API for the next DSL module Ib is required to be called.
[39] When the controller 6 searches the stub function block 5 of the DSL module Ia that has been executed for the address value of the library having the API required to execute the next DSL module Ib, the main controller 6 links to the position of the searched library address value, calls the corresponding API and executes the next DSL module Ib.
[40] The aforementioned process is repeated to search the stub function block 5 for an address value of a library having an API required for the last DSL module of the application program and link to the position of the searched library address value to call the API. In this manner, lazy loading according to the present invention is carried out.
[41] Accordingly, when the terminal 2 loads an application program according to the aforementioned process, only the library having the API required for the current execution is loaded, and thus there is no need to simultaneously load all the libraries of the application program. This reduces a loading time and improves memory space utilization.
[42] When the application program of the terminal 2, for example, a game having 10 game levels, is executed, the main controller 6 displays the contents of the executed game on the display 9 and outputs an audio signal to the handset 10 through the codec 11. If there is an incoming RF call received through the RF module 8, the main controller 6 of the terminal 2 alarms a user of the incoming RF call through the display 9 or the handset 10. When the user wants to connect the RF call, the main controller 6 transmits a response call to a counterpart s terminal 13 (illustrated in FIG. 2) through the mobile communication network system 7 to accomplish the call between the terminals 2 and 13.
[43] The present invention can also be embodied as computer readable codes on a computer readable recording medium. The computer readable recording medium is any data storage device that can store data which can be thereafter read by a computer system. Examples of the computer readable recording medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, and carrier waves (such as data transmission through the Internet). The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
[44] While this invention has been particularly shown and described with reference to preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. The preferred embodiments should be considered in descriptive sense only and not for purposes of limitation. Therefore, the scope of the invention should be defined not by the detailed
description of the invention but by the appended claims, and all differences within the scope will be construed as being included in the present invention.
Claims
[1] A terminal having a lazy loading function of a wireless Internet platform, comprising: a first storage medium for storing application programs configured in the form of a plurality of DSL modules each having only a table configured of a dummy function for an API required by a corresponding application program and a stub function block storing an address value of a library having an API, the first storage medium being adapted to function as a nonvolatile memory; a second storage medium for storing temporary data, the second storage medium being adapted to function as a volatile memory; and a main controller for loading only a DSL module required for the current execution from the first storage medium to the second storage medium without simultaneously loading all the DSL modules when a program stored in the first storage medium is loaded to the second storage medium.
[2] The terminal according to claim 1, wherein the stub function block stores an address value of a library having an API required for the next DSL to be executed.
[3] The terminal according to claim 1, wherein the main controller loads only the
DSL module required for the current execution to the second storage medium, searches the stub function block included in the currently executed DSL module for an address value of a library having an API required for the next DSL to be executed, and links to the position of the DSL module corresponding to the library to call the corresponding API.
[4] The terminal according to claim 1, wherein the second storage medium is a virtual space in which the plurality of DSL modules are not simultaneously loaded but DSL modules having actual APIs are sequentially loaded with reference to address values of the stub function blocks and processed according to a loading control signal of the main controller when an application program stored in the form of the plurality of DSL modules in the first storage medium is executed.
[5] The terminal according to claim 1, wherein the terminal is a PDA, a notebook computer, a PC or a cellular phone, which includes an RF module.
[6] A method of controlling a terminal having a lazy loading function of a wireless
Internet platform, comprising: a sequential execution step of loading only a DSL module require for the current execution to a second storage medium and calling an API corresponding to the DSL module to execute the DSL module when an application program is
executed in a terminal; a next execution confirmation step of confirming whether the execution of the current DSL module is completed; and a lazy processing step of searching the DSL module that has been executed for a library having an API required to execute the next DSL module and linking to the searched library when the currently DSL module has been executed and the next DSL module is required to be executed.
[7] The method according to claim 6, wherein the sequential execution step comprises a dummy function processing step of processing other APIs of the following modules, required by the application program, with a dummy function and loading arbitrary binary values that are not library values of the APIs to the second storage medium.
[8] The method according to claim 6, wherein the lazy processing step comprises: a stub search step of searching a stub function block included in the current DSL module which has been executed for an address value of a library having an API required to execute the next DSL module when the current DSL module has been executed and the next DSL module is required to be executed; and a lazy linking step of linking to the position of the searched address value of the library having the API required for the next DSL module and calling the API to execute the next DSL module.
[9] The method according to claim 8, wherein the lazy linking step comprises the steps of: confirming whether a current application program has been executed; allowing the program to proceed to the stub search step to repeatedly perform the loop when the current application program has not been executed; and terminating the lazy loading process and proceeding to a standby state when the current application program has been executed.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060106561A KR101200236B1 (en) | 2006-10-31 | 2006-10-31 | terminal having a lazy loading function of the wireless internet platform module and controlling method for the same |
KR10-2006-0106561 | 2006-10-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2008054092A1 true WO2008054092A1 (en) | 2008-05-08 |
Family
ID=39344412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2007/005298 WO2008054092A1 (en) | 2006-10-31 | 2007-10-26 | Terminal having lazy loading function of wireless internet platform and method of controlling the same |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101200236B1 (en) |
WO (1) | WO2008054092A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101034697B1 (en) * | 2008-08-07 | 2011-05-16 | 주식회사 케이티 | Method and system for supporting dynamic loading of mobile platform module |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030120651A1 (en) * | 2001-12-20 | 2003-06-26 | Microsoft Corporation | Methods and systems for model matching |
US6687846B1 (en) * | 2000-03-30 | 2004-02-03 | Intel Corporation | System and method for error handling and recovery |
US7020697B1 (en) * | 1999-10-01 | 2006-03-28 | Accenture Llp | Architectures for netcentric computing systems |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100478463B1 (en) | 2003-07-22 | 2005-03-23 | 재단법인서울대학교산학협력재단 | Dynamic Linking Method for Application Program |
-
2006
- 2006-10-31 KR KR1020060106561A patent/KR101200236B1/en active IP Right Grant
-
2007
- 2007-10-26 WO PCT/KR2007/005298 patent/WO2008054092A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7020697B1 (en) * | 1999-10-01 | 2006-03-28 | Accenture Llp | Architectures for netcentric computing systems |
US6687846B1 (en) * | 2000-03-30 | 2004-02-03 | Intel Corporation | System and method for error handling and recovery |
US20030120651A1 (en) * | 2001-12-20 | 2003-06-26 | Microsoft Corporation | Methods and systems for model matching |
Also Published As
Publication number | Publication date |
---|---|
KR101200236B1 (en) | 2012-11-09 |
KR20080038971A (en) | 2008-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101019298B1 (en) | Storage medium containing concurrence management program, concurrence management method, and electronic device | |
JP5201599B2 (en) | Terminal device and program | |
EP1762937A1 (en) | Linkage operation method and mobile communication terminal | |
US7925634B2 (en) | Data recovery method and system of mobile device | |
US8977244B2 (en) | Extensible phone application | |
KR100754534B1 (en) | Wireless communication device and system startup method for the same | |
WO2004102930A1 (en) | Information processing device, information processing method, and information processing program | |
CN101924820A (en) | A kind of method for downloading software, system and portable terminal | |
US8826159B2 (en) | Method, device and computer software product for controlling user interface of electronic device | |
CN107105478A (en) | network registering method and device | |
CN101350993A (en) | Apparatus and method for selective loading in mobile communication terminal | |
CN102714671B (en) | Mobile terminal device and display control method | |
KR101281183B1 (en) | terminal system having a boot lazy loading function of the wireless internet platform module and controlling method for the same | |
US20080072218A1 (en) | Apparatus and method for upgrading software in portable terminal | |
EP1762938B1 (en) | Linked operation method and mobile communication terminal device | |
CN109086102A (en) | Dynamic loading method, device and the storage medium of diagnostic software | |
KR20070094167A (en) | Method and apparatus for starting multiple operating system using external memory in a mobile station | |
KR101182534B1 (en) | terminal having a mutual calling function an API in the platform library, DSL module generating method and mutual API calling method | |
WO2008054092A1 (en) | Terminal having lazy loading function of wireless internet platform and method of controlling the same | |
KR101273914B1 (en) | terminal having a platform library dynamic linking function and controlling method for the same | |
US20080026784A1 (en) | Method and system for rapid initiation sequence for mobile unit | |
CN1951094B (en) | User interface methods, such as for customer self-support on a mobile device | |
JP2002259367A (en) | Information registering method for electronic equipment, electronic equipment and computer program | |
CN103369087A (en) | Setting method of contact multimedia data and mobile terminal | |
CN101282545A (en) | Multi-card multi-standby mobile terminal equipment as well as telephone setting method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 07833607 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC OF 100809 |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 07833607 Country of ref document: EP Kind code of ref document: A1 |