KR100722233B1 - Method and Apparatus for Linking Separate Execution Files for Embedded System - Google Patents

Method and Apparatus for Linking Separate Execution Files for Embedded System Download PDF

Info

Publication number
KR100722233B1
KR100722233B1 KR1020050095929A KR20050095929A KR100722233B1 KR 100722233 B1 KR100722233 B1 KR 100722233B1 KR 1020050095929 A KR1020050095929 A KR 1020050095929A KR 20050095929 A KR20050095929 A KR 20050095929A KR 100722233 B1 KR100722233 B1 KR 100722233B1
Authority
KR
South Korea
Prior art keywords
memory
program
application program
application
system program
Prior art date
Application number
KR1020050095929A
Other languages
Korean (ko)
Other versions
KR20070040508A (en
Inventor
백창규
Original Assignee
인포뱅크 주식회사
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 인포뱅크 주식회사 filed Critical 인포뱅크 주식회사
Priority to KR1020050095929A priority Critical patent/KR100722233B1/en
Publication of KR20070040508A publication Critical patent/KR20070040508A/en
Application granted granted Critical
Publication of KR100722233B1 publication Critical patent/KR100722233B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 임베디드 시스템에서 분리된 실행 파일의 링크 방법 및 장치에 관한 것으로서, 상기 실행 파일의 링크 방법에서는, 응용 다운로드 프로그램 형태의 콘트롤러가 시스템 프로그램이 로드되어 있는 메모리로부터 링크 정보를 받아 해당 응용 프로그램을 상기 시스템 프로그램과 링크된 프로그램으로 변경하고 ROM에 다운로드될 형식으로 코드화한다. The present invention relates to a method and an apparatus for linking an executable file separated in an embedded system. In the method for linking an executable file, a controller in the form of an application download program receives link information from a memory in which a system program is loaded, and executes the application program. Change to a program linked with the system program and code it in a format to be downloaded to a ROM.

실행 파일, 응용 프로그램, 실행 프로그램, 링크, 다운로드 Executable, application, launcher, link, download

Description

임베디드 시스템을 위한 분리된 실행 파일의 링크 방법 및 장치{Method and Apparatus for Linking Separate Execution Files for Embedded System} Method and Apparatus for Linking Separate Executable Files for Embedded Systems {Method and Apparatus for Linking Separate Execution Files for Embedded System}

도 1은 일반적인 컴퓨터 시스템에서 실행을 위하여 응용 프로그램과 시스템 프로그램이 메인 메모리에 다운로드되는 과정을 설명하기 위한 도면이다.1 is a diagram illustrating a process of downloading an application program and a system program to a main memory for execution in a general computer system.

도 2는 일반적인 임베디드 시스템의 메모리를 설명하기 위한 도면이다.2 is a diagram illustrating a memory of a general embedded system.

도 3은 본 발명의 일실시예에 따른 임베디드 시스템의 실행 파일 링크 장치를 나타내는 도면이다. 3 is a diagram illustrating an executable file linking apparatus of an embedded system according to an exemplary embodiment of the present invention.

도 4는 도 3의 실행 파일 링크 장치의 동작 설명을 위한 흐름도이다. 4 is a flowchart illustrating an operation of an executable file linking apparatus of FIG. 3.

도 5는 응용 프로그램이 시스템 프로그램을 참조하는 부분을 링크하는 과정을 설명하기 위한 도면이다.5 is a diagram for explaining a process of linking a part of an application program referring to a system program.

도 6은 시스템 프로그램이 응용 프로그램을 참조하는 부분을 링크하는 과정을 설명하기 위한 도면이다.6 is a diagram for describing a process of linking a part of a system program referring to an application program.

<도면의 주요 부분에 대한 부호의 설명> <Explanation of symbols for the main parts of the drawings>

310: 응용 프로그램310: application

320: 임베디드 시스템 메모리320: embedded system memory

330: 콘트롤러330: controller

본 발명은 임베디드(embedded) 시스템에서 실행 파일을 메모리에 다운로드하는 장치 및 방법에 관한 것으로서, 더욱 상세하게는 실행 파일을 시스템 프로그램과 응용 프로그램으로 분리하여 메모리에 다운로드시킬 수 있는 임베디드 시스템의 실행 파일 링크 장치 및 방법에 관한 것이다. The present invention relates to an apparatus and method for downloading an executable file to a memory in an embedded system, and more particularly, to an executable file link of an embedded system that can be downloaded into a memory by separating the executable file into a system program and an application program. An apparatus and method are provided.

도 1은 일반적인 컴퓨터 시스템(100)에서 실행을 위하여 응용 프로그램(110)과 시스템 프로그램(130)이 메인 메모리(main memory)에 다운로드되는 과정을 설명하기 위한 도면이다. PC(Personal Computer)나 수퍼 컴퓨터 등과 같은 일반적인 컴퓨터에서는, 응용 프로그램(110)의 실행을 위하여 시스템 프로그램(130)이 로드(load)되 있는 RAM(Random Access Memory) 형태의 메인 메모리에 해당 목적 프로그램(120)을 다운로드한다. 메인 메모리에 다운로드된 해당 목적 프로그램(120)은 시스템 프로그램(130) 중의 소정 링커들(linker)에 의하여 시스템 프로그램(140)과 다이내믹(dynamic)하게 링크된 새로운 파일로 변경된다. 응용 프로그램(110)의 해당 목적 프로그램(120)과 시스템 프로그램(140)의 링크를 위하여 심볼 테이블(130)이 이용된다. 심볼 테이블(130)에는 응용 프로그램(110)이 참조할 시스템 프로그램(140)의 심볼들에 대한 주소 정보가 기록되어 있다. FIG. 1 is a diagram for describing a process of downloading an application program 110 and a system program 130 to main memory for execution in a general computer system 100. In a typical computer such as a personal computer (PC) or a supercomputer, a corresponding target program may be stored in a main memory in the form of a random access memory (RAM) in which the system program 130 is loaded to execute the application program 110. 120). The target program 120 downloaded to the main memory is changed into a new file dynamically linked with the system program 140 by predetermined linkers in the system program 130. The symbol table 130 is used to link the target program 120 of the application program 110 and the system program 140. In the symbol table 130, address information of symbols of the system program 140 to which the application program 110 refers is recorded.

이와 같이 일반적인 컴퓨터 시스템(100)에서 다이내믹 링크가 가능한 것은 응용 프로그램(110)과 시스템 프로그램(140)이 서로 분리된 독립성을 가지고 동작하기 때문이다. 예를 들어, 응용 프로그램(110)이 시스템 프로그램(140)을 참조하 여 동작하는 경우에, call (a)와 같이 서브루틴(subroutine) 형태의 시스템 파일을 읽어 실행하기만 하면, 시스템 프로그램(140)은 그 결과를 응용 프로그램(110)으로 리턴한다. 또한, 시스템 프로그램(140)이 응용 프로그램(110)을 참조하여 동작하는 경우에도, 시스템 프로그램(140)은 해당 응용 프로그램의 파일을 읽어 실행한 후 그 결과를 응용 프로그램(110)으로 리턴한다. The dynamic link is possible in the general computer system 100 because the application program 110 and the system program 140 operate with independent independence from each other. For example, when the application program 110 operates with reference to the system program 140, the system program 140 may be read by executing a subroutine type system file as shown in call (a). ) Returns the result to the application 110. In addition, even when the system program 140 operates with reference to the application program 110, the system program 140 reads and executes a file of the application program and returns the result to the application program 110.

이와 같은 일반적인 컴퓨터 시스템(100)에서는, 응용 프로그램(110)과 시스템 프로그램(140)이 서로 독립적으로 동작되도록 하기 위하여, 응용 프로그램(110) 또는 시스템 프로그램(140)의 파일 구조에 불필요하게 중복되는 코드들을 가지게 되는 문제점이 있다. In such a general computer system 100, in order for the application program 110 and the system program 140 to operate independently of each other, code that is unnecessaryly duplicated in the file structure of the application program 110 or the system program 140 There is a problem with them.

반면, 휴대폰, 디지털 카메라, 로봇(robot) 등과 같은 소형의 임베디드 시스템에서는, 도 2와 같은 ROM(Read Only Memory) 형태의 메모리(200)에 다운로드된 응용 프로그램(210)과 시스템 프로그램(220)이 서로 복잡하게 참조하고 독립성이 없는 하나의 실행 프로그램으로서 동작한다. 따라서, 종래의 임베디드 시스템에서는 응용 프로그램(210)과 시스템 프로그램(220)이 도 1에서 설명된 일반적인 컴퓨터 시스템(100)에서의 파일 구조보다 비교적 간단하다 하더라도, 상기 ROM 형태의 메모리(200)에 다운로드될 하나의 실행 프로그램에 대하여, 컴파일링(compiling), 어셈블링(assembling), 디버깅(debugging) 및 링크 작업이 모두 수행되어야만 최종 실행 가능한 파일로서 상기 메모리(200)에 다운로드될 수 있다. On the other hand, in a small embedded system such as a mobile phone, a digital camera, a robot, etc., the application program 210 and the system program 220 downloaded to the memory 200 in the form of a ROM (Read Only Memory) as shown in FIG. It acts as an executable program that makes complex references to each other and has no independence. Therefore, in the conventional embedded system, although the application program 210 and the system program 220 are relatively simpler than the file structure of the general computer system 100 described with reference to FIG. 1, the application program 210 and the system program 220 are downloaded to the memory 200 in the ROM form. For one executable program to be compiled, compiling, assembling, debugging, and linking operations must all be performed to be downloaded to the memory 200 as a final executable file.

그러나, 임베디드 시스템에서 사용되는 실행 파일은 상당히 클 수 있다. 이러한 경우에, 하나의 큰 실행 파일에 대하여 컴파일링, 어셈블링, 디버깅 및 링크 작업을 순환하며 작업하는 개발자에게 큰 부담을 주는 문제점이 있다. 또한, 한번만 기록할 수 있는 ROM의 특성 때문에, 임베디드 시스템에서 시용되는 실행 파일을 서로 복잡하게 의존적으로 참조하고 있는 응용 프로그램(210)과 시스템 프로그램(220)으로 분리하여 도 1에서 설명된 다이내믹 링크 방식과 같이 다운로드 할 수 없다는 문제점이 있다. 이에, 실행 파일을 ROM에 다운로드 하는 단계에서 서로 참조하는 함수나 변수들을 링크시킬 새로운 대안이 요구된다. However, the executable used in embedded systems can be quite large. In this case, there is a problem that burdens the developer who cycles through the compilation, assembling, debugging, and linking operations for one large executable file. In addition, because of the characteristics of the ROM that can be written only once, the dynamic link method described in FIG. 1 is separated into an application program 210 and a system program 220 that refer to executable files used in an embedded system in a complicated way. There is a problem that can not be downloaded. Thus, a new alternative is needed to link the functions or variables that are referenced to each other in the download of the executable file to the ROM.

따라서, 본 발명은 상술한 문제점을 해결하기 위한 것으로서, 본 발명의 목적은, 임베디드 시스템을 동작시키기 위한 실행 파일을 응용 프로그램과 시스템 프로그램으로 분리시켜 다운로드 시에 서로 링크시키는 방법을 제공하는 데 있다.Accordingly, an object of the present invention is to provide a method of separating an executable file for operating an embedded system into an application program and a system program and linking each other at the time of download.

본 발명의 다른 목적은, 임베디드 시스템에서 ROM 형태의 메인 메모리에 로드될 실행 파일을 응용 프로그램과 시스템 프로그램으로 분리시켜 다운로드하기 위한 링크 장치를 제공하는 데 있다. Another object of the present invention is to provide a link device for downloading an executable file to be loaded into a main memory in a ROM form in an embedded system into an application program and a system program.

상기와 같은 본 발명의 목적을 달성하기 위한 본 발명에 따른 임베디드 시스템을 위한 실행 파일의 링크 방법은, 시스템 프로그램을 메모리에 다운로드하는 단계; 상기 메모리로부터 링크 정보를 수신하는 단계; 상기 링크 정보를 이용하여 응용 프로그램을 상기 시스템 프로그램과 링크된 프로그램으로 변경하는 단계; 및 상기 시스템 프로그램과 링크된 응용 프로그램을 상기 메모리에 다운로드하는 단계를 포함한다. In order to achieve the above object of the present invention, a method of linking an executable file for an embedded system according to the present invention includes: downloading a system program to a memory; Receiving link information from the memory; Changing an application program to a program linked with the system program using the link information; And downloading the application program linked with the system program to the memory.

상기 메모리는 ROM 형태이고, 상기 링크 정보는 상기 응용 프로그램이 다운로드될 상기 메모리 상의 시작 주소와 상기 응용 프로그램 내의 심볼들에 대한 심볼 주소들을 포함하는 것을 특징으로 한다. The memory is in ROM form, and the link information includes a start address on the memory to which the application program is to be downloaded and symbol addresses for symbols in the application program.

상기 임베디드 시스템을 위한 실행 파일의 링크 방법은, 상기 시스템 프로그램을 상기 메모리에 다운로드할 때, 상기 시작 주소와 상기 심볼 주소들을 상기 메모리에 저장시키는 단계; 상기 응용 프로그램 내의 상기 시스템 프로그램을 참조하는 심볼들에 대하여 상기 심볼 주소들에 따라 코드화하는 단계; 및 상기 시스템 프로그램 내의 상기 응용 프로그램을 참조하는 심볼들에 대하여 상기 심볼 주소들에 따라 코드화하는 단계를 포함할 수 있다. The method of linking an executable file for the embedded system includes: storing the start address and the symbol addresses in the memory when the system program is downloaded to the memory; Encoding symbols according to the symbol addresses for symbols that refer to the system program in the application program; And encoding the symbols referring to the application program in the system program according to the symbol addresses.

상기 메모리는 제1 메모리 및 제2 메모리로 이루어질 수 있고, 상기 제1 메모리에 상기 시스템 프로그램을 다운로드하고, 상기 제2 메모리에 상기 응용 프로그램을 다운로드할 수 있다. The memory may include a first memory and a second memory, and the system program may be downloaded to the first memory, and the application program may be downloaded to the second memory.

상기와 같은 본 발명의 다른 목적을 달성하기 위한 본 발명에 따른 임베디드 시스템을 위한 실행 파일의 링크 장치는, 메모리; 및 실행 파일을 응용 프로그램과 시스템 프로그램으로 분리하여 상기 메모리에 다운로드시키는 콘트롤러를 포함하고, 상기 콘트롤러는 상기 시스템 프로그램이 먼저 로드되어 있는 상기 메모리로부터 받는 링크 정보에 따라 상기 응용 프로그램을 상기 시스템 프로그램과 링크된 프로그램으로 변경하여 상기 변경된 응용 프로그램을 상기 메모리에 다운로드시키는 것을 특징으로 한다. Link device of the executable file for the embedded system according to the present invention for achieving another object of the present invention as described above, the memory; And a controller that separates an executable file into an application program and a system program, and downloads it to the memory, wherein the controller links the application program with the system program according to link information received from the memory in which the system program is loaded first. And change the downloaded program to download the changed application program to the memory.

이하 첨부 도면들 및 첨부 도면들에 기재된 내용들을 참조하여 본 발명의 바 람직한 실시예를 상세하게 설명하지만, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings and the contents described in the accompanying drawings, but the present invention is not limited or limited to the embodiments. Like reference numerals in the drawings denote like elements.

도 3은 본 발명의 일실시예에 따른 임베디드 시스템의 실행 파일 링크 장치(300)를 나타내는 도면이다. 도 3을 참조하면, 상기 실행 파일 링크 장치(300)는 메모리(320) 및 콘트롤러(330)를 포함한다. 3 is a diagram illustrating an executable file linking apparatus 300 of an embedded system according to an exemplary embodiment. Referring to FIG. 3, the executable file linking apparatus 300 includes a memory 320 and a controller 330.

상기 실행 파일 링크 장치(300)는 일정 실행 파일을 응용 프로그램(310)과 시스템 프로그램(323)으로 분리시켜 상기 메모리(320)에 다운로드한다. EPROM, EEPROM 등 ROM 형태의 상기 메모리(320)는 휴대폰, 디지털 카메라, 로봇(robot) 등과 같은 임베디드 시스템에서 실행 파일에 따라 펌웨어(firmware) 등의 형태로 동작하여, 임베디드 시스템의 전반적인 제어를 담당할 수 있다. 또한, 감시 카메라와 연동하는 각종 시스템, 자동 현금 입출금기와 같은 금융용 시스템, 원격 제어 시스템, 자동 생산 시스템, 지능형 교통 시스템, 프린터, 스캐너, 팩스, 그리고 복사기와 이들의 기능을 하나로 모은 복합기, 기타 의료용 DNA 분석기, 게임기 등 산업 전반에 걸친 임베디드 시스템의 동작 제어를 위하여 상기 ROM 형태의 메모리(320)가 이용될 수 있다. The executable file linking apparatus 300 divides a predetermined executable file into an application program 310 and a system program 323 and downloads the predetermined executable file to the memory 320. The memory 320 in the form of a ROM, such as an EPROM or an EEPROM, operates in the form of firmware or the like according to an executable file in an embedded system such as a mobile phone, a digital camera, or a robot, and is responsible for overall control of the embedded system. Can be. In addition, various systems linked with surveillance cameras, financial systems such as automated teller machines, remote control systems, automated production systems, intelligent transportation systems, printers, scanners, fax machines, copiers, and all-in-one machines The ROM type memory 320 may be used to control the operation of the embedded system in the industry such as a DNA analyzer and a game machine.

상기 ROM 형태의 메모리(320)에는 일반적인 컴퓨터에서와 같이 실행 파일을 다이내믹 링크 방식으로 다운로드 할 수 없었으나, 본 발명에서는 실행 파일을 응용 프로그램(310)과 시스템 프로그램(323)으로 분리시켜 다운로드할 수 있도록 하기 위하여 상호간에 참조하는 함수나 변수들과 같은 심볼들을 링크시키는 방법을 제안한다. 개발자는 하나의 큰 실행 파일을 상기 메모리(320)에 다운로드하기 위하여, 해당 파일 전체를 한번에 컴파일링, 어셈블링, 및 디버깅 등의 작업을 순환하며 작업할 필요 없이, 상기 응용 프로그램(310)과 상기 시스템 프로그램(323)으로 분리된 작은 파일들에 대하여 각각 다운로드 이전 과정을 진행할 수 있어서 개발에 드는 오버헤드(overhead)가 줄어든다. In the ROM type memory 320, as in a general computer, an executable file cannot be downloaded by a dynamic link method, but in the present invention, the executable file can be downloaded separately from the application program 310 and the system program 323. We propose a way to link symbols such as functions or variables that are mutually referenced. In order to download one large executable file into the memory 320, a developer does not have to cycle and compile, assemble, and debug the entire file at once. Since the small files separated by the system program 323 can be performed before each download, the overhead for development is reduced.

이를 위하여, 상기 실행 파일 링크 장치(300)에서는 상기 콘트롤러(330)를 이용하여 응용 프로그램(310)과 시스템 프로그램(323)으로 분리된 실행 파일을 상기 메모리(320)에 다운로드시킨다. 상기 콘트롤러(330)는 응용 다운로드 프로그램 형태의 소프트웨어일 수 있고, 또는 상기 응용 다운로드 프로그램의 지원을 받는 일정 콘트롤 장치일 수 있다. 상기 콘트롤러(330)는 컴퓨터에 탑재될 수 있다. 또는, 상기 콘트롤러(330)는 컴퓨터의 지원을 받는 에뮬레이터(emulator)의 일정 마이크로 프로세서에 탑재될 수 있다. To this end, the executable file linking apparatus 300 downloads the executable file separated into the application program 310 and the system program 323 by using the controller 330 to the memory 320. The controller 330 may be software in the form of an application download program, or may be a schedule control device supported by the application download program. The controller 330 may be mounted on a computer. Alternatively, the controller 330 may be mounted in a predetermined microprocessor of an emulator supported by a computer.

상기 콘트롤러(330)는 일정 다운로드 요청을 받으면, 상기 시스템 프로그램(323)이 먼저 로드되어 있는 상기 메모리(320)로부터 받는 링크 정보에 따라 상기 응용 프로그램(310)을 상기 시스템 프로그램(323)에 링크된 프로그램으로 변경하여 상기 변경된 응용 프로그램(321)을 상기 메모리(320)에 다운로드시키게 된다. 상기 응용 프로그램(310)은 시스템 프로그램(323)을 참조하는 심볼들(311)을 가질 뿐만 아니라, 시스템 프로그램(323)이 참조할 심볼들(312)을 가진다. 이외에도, 본 발명의 일실시예에 따른 링크를 수행하기 위한 심볼 테이블(313)을 가질 수 있다. When the controller 330 receives a schedule download request, the controller 330 links the application program 310 to the system program 323 according to link information received from the memory 320 in which the system program 323 is loaded first. A program is changed to download the changed application 321 to the memory 320. The application program 310 not only has symbols 311 referring to the system program 323, but also symbols 312 to which the system program 323 refers. In addition, it may have a symbol table 313 for performing a link according to an embodiment of the present invention.

상기 콘트롤러(330)가 받는 상기 링크 정보는 상기 응용 프로그램(310)이 다 운로드될 상기 메모리(320) 상의 시작 주소를 포함한다. 또한, 상기 링크 정보에는 상기 응용 프로그램(310) 내의 함수나 변수와 같은 심볼들에 대한 심볼 주소들이 포함된다. 상기 응용 프로그램(310)에서 상기 시스템 프로그램(323)을 참조하는 심볼들(311) 및 상기 시스템 프로그램(323)에서 상기 응용 프로그램(310)을 참조하는 심볼들(312)에 대한 심볼 주소들은 상기 시스템 프로그램(323)에 포함되는 심볼 테이블(322)에 저장되어 있고, 링크 시 상기 콘트롤러(330)로 전송될 수 있다. The link information received by the controller 330 includes a start address on the memory 320 to which the application program 310 is to be downloaded. In addition, the link information includes symbol addresses for symbols such as a function or a variable in the application program 310. The symbol addresses for the symbols 311 that refer to the system program 323 in the application 310 and the symbols 312 that refer to the application program 310 in the system program 323 are determined by the system. The symbol table 322 included in the program 323 may be stored and transmitted to the controller 330 at the time of linking.

상기 응용 프로그램(310)과 상기 시스템 프로그램(323)은 서로 분리된 서로 다른 ROM 형태의 메모리(320)에 저장될 수도 있다. 예를 들어, 상기 메모리(320)가 두 개로 분리된 제1 메모리 및 제2 메모리로 이루어질 수 있고, 이때 상기 콘트롤러(330)가 상기 제1 메모리에 상기 시스템 프로그램(323)을 다운로드하고, 상기 제2 메모리에 상기 응용 프로그램(310)을 다운로드할 수 있다. The application program 310 and the system program 323 may be stored in memory 320 having different ROM types. For example, the memory 320 may be composed of two separate first and second memories, wherein the controller 330 downloads the system program 323 to the first memory, and 2 The application 310 can be downloaded to the memory.

이하, 도 4의 흐름도를 참조하여 도 3의 실행 파일 링크 장치(300)의 동작을 좀더 자세히 설명한다. Hereinafter, the operation of the executable file linking apparatus 300 of FIG. 3 will be described in more detail with reference to the flowchart of FIG. 4.

먼저, 메모리(320)에 응용 프로그램(310)을 다운로드하기 전에, 콘트롤러(330)는 시스템 프로그램(323)을 먼저 상기 메모리(320)에 다운로드한다. 이외에도, 상기 시스템 프로그램(323)은 상기 콘트롤러(330)에 의하지 않고 다른 방법이나 장치에 의하여 상기 메모리(320)에 다운로드될 수도 있다. 다만, 상기 시스템 프로그램(323)이 상기 메모리(320)에 다운로드될 때에는, 상기 응용 프로그램(310)이 다운로드될 상기 메모리(320) 상의 시작 주소와 상기 응용 프로그램(310) 내의 심볼들, 즉, 상기 응용 프로그램(310)에서 상기 시스템 프로그램(323)을 참조하는 부분(311) 및 상기 시스템 프로그램(323)에서 상기 응용 프로그램(310)을 참조하는 부분(312)에 대한 심볼 주소들이 상기 메모리(320)의 심볼 테이블(322)에 저장된다. First, before downloading the application 310 to the memory 320, the controller 330 first downloads a system program 323 to the memory 320. In addition, the system program 323 may be downloaded to the memory 320 by another method or apparatus without using the controller 330. However, when the system program 323 is downloaded to the memory 320, the start address on the memory 320 to which the application program 310 is to be downloaded and the symbols in the application program 310, that is, the The symbol addresses for the part 311 which refers to the system program 323 in the application 310 and the part 312 which refers to the application program 310 in the system program 323 are the memory 320. Is stored in the symbol table 322.

예를 들어, 상기 콘트롤러(330)는 상기 시스템 프로그램(323)의 각 심볼들이 상기 메모리(320)에 저장된 주소를 계산하여, 도 5와 같이 상기 응용 프로그램(310)에서 상기 시스템 프로그램(323)을 참조하는 부분(311), 즉, 함수나 변수들에 대한 해당 주소(예를 들어, 도 5에서 함수 (a)에 대한0xffaa)를 상기 메모리(320)의 심볼 테이블(322)에 저장할 수 있다. 마찬가지로, 상기 콘트롤러(330)는 도 6과 같이 상기 시작 주소에 기초하여 상기 시스템 프로그램(323)에서 상기 응용 프로그램(310)을 참조하는 부분(312), 즉, 함수나 변수들 각각에 대한 해당 주소(예를 들어, 도 6에서 함수 (b)에 대한0xffbb)를 계산하여 상기 메모리(320)의 심볼 테이블(322)에 저장할 수 있다.For example, the controller 330 calculates an address in which each symbol of the system program 323 is stored in the memory 320, so that the system program 323 is executed by the application program 310 as shown in FIG. 5. The reference part 311, that is, a corresponding address for a function or variables (for example, 0xffaa for the function (a) in FIG. 5) may be stored in the symbol table 322 of the memory 320. Similarly, the controller 330 may refer to the application program 310 in the system program 323 based on the start address as shown in FIG. 6, that is, a corresponding address for each of functions or variables. For example, in FIG. 6, 0xffbb for the function (b) may be calculated and stored in the symbol table 322 of the memory 320.

이와 같이, 상기 시스템 프로그램(323)이 상기 메모리(320)에 먼저 다운로드 되었다는 가정하에, 응용 다운로드 프로그램이나 장치 형태의 상기 콘트롤러(330)는 상기 응용 프로그램(310)을 상기 메모리(320)에 다운로드시키기 위한 일정 요청을 수신한다(S410). 상기 일정 요청을 위하여 상기 콘트롤러(330)가 탑재된 컴퓨터 또는 마이크로 프로세서의 사용자 인터페이스가 이용될 수 있다. As such, assuming that the system program 323 is first downloaded to the memory 320, the controller 330 in the form of an application download program or a device causes the application program 310 to be downloaded to the memory 320. Receive a schedule request for (S410). A user interface of a computer or a microprocessor on which the controller 330 is mounted may be used for the schedule request.

상기 콘트롤러(330)는 일정 다운로드 요청을 받으면, 상기 시스템 프로그램(323)이 먼저 로드되어 있는 상기 메모리(320)로부터 링크 정보, 즉, 상기 응용 프 로그램(310)이 다운로드될 상기 메모리(320) 상의 시작 주소와 상기 심볼 테이블(322)에 저장된 상기 심볼 주소들을 수신한다(S420). 상기 콘트롤러(330)가 상기 메모리(320)로부터 받는 상기 심볼 주소들은 상기 응용 프로그램(310)의 일부인 심볼 테이블(313)에 임시 저장될 수 있다.When the controller 330 receives a schedule download request, link information, namely, the memory 320 to which the application program 310 is to be downloaded, is downloaded from the memory 320 in which the system program 323 is loaded first. The start address of the symbol and the symbol addresses stored in the symbol table 322 are received (S420). The symbol addresses received by the controller 330 from the memory 320 may be temporarily stored in a symbol table 313 which is part of the application program 310.

이에 따라 상기 콘트롤러(330)는 상기 응용 프로그램(310) 내의 상기 시스템 프로그램(323)을 참조하는 심볼들(311)에 대하여 상기 메모리(320)의 심볼 테이블(322)로부터 받는 심볼 주소들에 따라 ROM에 기록될 형태로 코드화한다(S430). Accordingly, the controller 330 may perform a ROM according to the symbol addresses received from the symbol table 322 of the memory 320 for the symbols 311 referring to the system program 323 in the application program 310. Coded in the form to be recorded in (S430).

예를 들어, 도 5와 같이, 상기 응용 프로그램(310) 내의 상기 시스템 프로그램(323)을 참조하는 심볼 call (a)에 대하여, 함수 (a)가 상기 시스템 프로그램(323) 내의 주소 0xffaa에서 시작하는 경우에, 상기 심볼 call (a)는 jump 0xffaa와 같이 일정 규칙(예를 들어, 16진법)에 따라 상기 메모리(320)에 기록되도록 코드화될 수 있다. 위에서 기술한 바와 같이, 상기 콘트롤러(330)에 의하여 계산된 상기 시스템 프로그램(323) 내의 각 심볼들에 대한 주소(예를 들어, 0xffaa)는 상기 메모리(320)의 심볼 테이블(322)에 저장되어 있고, 이는 상기 응용 프로그램(310) 내의 상기 시스템 프로그램(323)을 참조하는 심볼(311)에 대한 링크를 위한 코드 변경 시에 상기 콘트롤러(330)로 전송되어 상기 심볼 테이블(313)에 임시 저장되어 이용될 수 있다.For example, for symbol call (a) referring to the system program 323 in the application 310, as shown in FIG. 5, the function (a) starts at address 0xffaa in the system program 323. In this case, the symbol call (a) may be coded to be written to the memory 320 according to a certain rule (eg, hexadecimal) such as jump 0xffaa. As described above, the address (eg 0xffaa) for each symbol in the system program 323 calculated by the controller 330 is stored in the symbol table 322 of the memory 320. Which is transmitted to the controller 330 upon code change for a link to a symbol 311 referring to the system program 323 in the application 310 and temporarily stored in the symbol table 313. Can be used.

이와 같은 링크 시의 코드 변경 방법에 따라 상기 응용 프로그램(310)을 변경하면서, 상기 시스템 프로그램(323)에서 상기 응용 프로그램(310)을 참조하는 심볼들(312)이 나타나면(S440), 상기 콘트롤러(330)는 상기 응용 프로그램(310)을 참 조하는 심볼들(312)에 대하여 상기 메모리(320)의 심볼 테이블(322)로부터 받는 심볼 주소들에 따라 ROM에 기록될 형태로 코드화한다(S450). If the symbols 312 referencing the application program 310 appear in the system program 323 while the application program 310 is changed according to the code change method at the time of linking (S440), the controller ( The symbol 330 codes the symbols 312 referring to the application program 310 to be written in the ROM according to the symbol addresses received from the symbol table 322 of the memory 320 (S450).

예를 들어, 도 6과 같이, 상기 응용 프로그램(310)을 참조하는 심볼 call (b)에 대하여, 상기 응용 프로그램(310) 내의 함수 (b)가 상기 메모리(320) 상의 주소 0xffbb에서 시작하여 기록되도록 16진법 등에 따라 코드화될 수 있다. 위에서 기술한 바와 같이, 상기 시작 주소에 기초하여 상기 콘트롤러(330)에 의하여 계산된 상기 시스템 프로그램(323)에서 상기 응용 프로그램(310)을 참조하는 심볼들에 대한 주소(예를 들어, 0xffbb)는 상기 메모리(320)의 심볼 테이블(322)에 저장되어 있고, 이는 상기 응용 프로그램(310) 내의 상기 시스템 프로그램(323)을 참조하는 심볼(312)에 대한 링크를 위한 코드 변경 시에 상기 콘트롤러(330)로 전송되어 상기 심볼 테이블(313)에 임시 저장되어 이용될 수 있다.For example, as shown in FIG. 6, for the symbol call (b) referring to the application 310, the function (b) in the application 310 is recorded starting at address 0xffbb on the memory 320. It may be coded according to hexadecimal notation or the like. As described above, the address (eg, 0xffbb) for the symbols referring to the application 310 in the system program 323 calculated by the controller 330 based on the start address is Stored in the symbol table 322 of the memory 320, the controller 330 upon code change for a link to a symbol 312 that references the system program 323 in the application program 310; ) May be temporarily stored in the symbol table 313 to be used.

상기 응용 프로그램(310)이 상기 시스템 프로그램(323)에 링크된 프로그램으로 완성될 때까지(S460), 상기 콘트롤러(330)는 위와 같은 방법을 반복적으로 수행하여(S430~S460), 상기 응용 프로그램(310)의 모든 코드를 ROM형태의 상기 메모리(320)에 기록될 형태로 모두 코드 변경한다. 이에 따라, 상기 콘트롤러(330)는 상기 시스템 프로그램(323)에 링크된 응용 프로그램(310)을 상기 메모리(320)에 다운로드하여 상기 메모리(320)의 일정 영역에 기록되도록 한다(S470).Until the application 310 is completed as a program linked to the system program 323 (S460), the controller 330 repeatedly performs the above method (S430 ~ S460), the application ( All the codes of 310 are code-changed in the form to be written to the memory 320 in the form of ROM. Accordingly, the controller 330 downloads the application program 310 linked to the system program 323 to the memory 320 to be recorded in a predetermined area of the memory 320 (S470).

위에서 기술한 바와 같이, 본 발명의 일실시예에 따른 임베디드 시스템을 위한 실행 파일의 링크 장치(300)에서는, 응용 다운로드 프로그램 형태의 콘트롤러(330)가 시스템 프로그램(323)이 이미 로드되어 있는 메모리(320)로부터 링크 정보 를 받아 해당 응용 프로그램(310)을 상기 시스템 프로그램(323)과 링크된 프로그램(321)으로 변경하고 ROM에 다운로드될 형식으로 코드화한다. As described above, in the linkage apparatus 300 of an executable file for the embedded system according to the exemplary embodiment of the present invention, the controller 330 in the form of an application download program may include a memory in which the system program 323 is already loaded. Receiving link information from 320, the corresponding application program 310 is changed to the program 321 linked with the system program 323 and coded in a format to be downloaded to the ROM.

본 명세서에서 개시된 방법 및 장치에서 사용되는 기능은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. The functions used in the methods and apparatus disclosed herein can be embodied as computer readable code on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like, and may also be implemented in the form of a carrier wave (for example, transmission over the Internet). do. 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.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다. As described above, although the present invention has been described with reference to limited embodiments and drawings, the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the claims below but also by the equivalents of the claims.

상술한 바와 같이 본 발명에 따른 임베디드 시스템을 위한 실행 파일의 링크 방법 및 장치에서는, 실행 파일을 응용 프로그램과 시스템 프로그램으로 분리시켜 다운로드시키기 위하여, 시스템 프로그램으로부터의 링크 정보에 따라 응용 프로그 램을 링크된 파일로 변경시키므로, 시스템 프로그램이 응용 프로그램을 참조하는 경우까지도 해당 응용 프로그램을 용이하고 정확하게 링크시켜 ROM에 다운로드 할 수 있는 효과가 있다. As described above, in the method and apparatus for linking an executable file for an embedded system according to the present invention, in order to download the executable file separately from an application program and a system program, the application program is linked according to link information from the system program. Since it is changed to a file, even if a system program refers to an application, the application can be easily and accurately linked and downloaded to the ROM.

이와 같은 본 발명의 특징은 임베디드 시스템을 동작시킬 큰 실행 파일의 개발 시에, 응용 프로그램과 시스템 프로그램을 따로 분리하여 컴파일링, 어셈블링, 및 디버깅 등이 가능하게 하여 개발자의 오버헤드(overhead)를 줄여줄 수 있는 효과가 있다. Such a feature of the present invention enables developers to separately compile, assemble, and debug application programs and system programs when developing a large executable file to operate an embedded system, thereby reducing developer overhead. There is an effect that can be reduced.

Claims (10)

시스템 프로그램을 메모리에 다운로드하는 단계;Downloading a system program to a memory; 상기 메모리로부터 링크 정보를 수신하는 단계;Receiving link information from the memory; 상기 링크 정보를 이용하여 응용 프로그램을 상기 시스템 프로그램과 링크된 프로그램으로 변경하는 단계; 및Changing an application program to a program linked with the system program using the link information; And 상기 시스템 프로그램과 링크된 응용 프로그램을 상기 메모리에 다운로드하는 단계Downloading an application linked with the system program to the memory 를 포함하는 것을 특징으로 하는 임베디드 시스템을 위한 실행 파일의 링크 방법.Link method of the executable file for an embedded system, characterized in that it comprises a. 제1항에 있어서, 상기 메모리는 ROM 형태인 것을 특징으로 하는 임베디드 시스템을 위한 실행 파일의 링크 방법.The method of claim 1, wherein the memory is in the form of a ROM. 제1항에 있어서, 상기 링크 정보는 상기 응용 프로그램이 다운로드될 상기 메모리 상의 시작 주소와 상기 응용 프로그램 내의 심볼들에 대한 심볼 주소들을 포함하는 것을 특징으로 하는 임베디드 시스템을 위한 실행 파일의 링크 방법.The method of claim 1, wherein the link information includes a start address in the memory to which the application program is to be downloaded and symbol addresses for symbols in the application program. 제3항에 있어서, The method of claim 3, 상기 시스템 프로그램을 상기 메모리에 다운로드할 때, 상기 시작 주소와 상기 심볼 주소들을 상기 메모리에 저장시키는 단계; When downloading the system program to the memory, storing the start address and the symbol addresses in the memory; 상기 응용 프로그램 내의 상기 시스템 프로그램을 참조하는 심볼들에 대하여 상기 메모리로부터 받는 상기 심볼 주소들에 따라 코드화하는 단계; 및 Encoding symbols referring to the system program in the application program according to the symbol addresses received from the memory; And 상기 시스템 프로그램 내의 상기 응용 프로그램을 참조하는 심볼들에 대하여 상기 메모리로부터 받는 상기 심볼 주소들에 따라 코드화하는 단계Coding symbols referring to the application program in the system program according to the symbol addresses received from the memory 를 포함하는 것을 특징으로 하는 임베디드 시스템을 위한 실행 파일의 링크 방법.Link method of the executable file for an embedded system, characterized in that it comprises a. 제4항에 있어서, The method of claim 4, wherein 상기 시작 주소에 기초하여 상기 시스템 프로그램 내의 상기 응용 프로그램을 참조하는 심볼들에 대한 주소를 계산하는 단계Calculating an address for symbols referring to the application program in the system program based on the start address 를 더 포함하는 것을 특징으로 하는 임베디드 시스템을 위한 실행 파일의 링크 방법.Link method of the executable file for an embedded system, characterized in that it further comprises. 제1항에 있어서, 상기 메모리는 제1 메모리 및 제2 메모리로 이루어지고, 상기 제1 메모리에 상기 시스템 프로그램을 다운로드하고, 상기 제2 메모리에 상기 응용 프로그램을 다운로드하는 것을 특징으로 하는 임베디드 시스템을 위한 실행 파일의 링크 방법.The embedded system of claim 1, wherein the memory comprises a first memory and a second memory, wherein the system program is downloaded to the first memory, and the application program is downloaded to the second memory. How to Link Executable Files 제1항 내지 제6항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록매체. A computer-readable recording medium in which a program for executing the method of any one of claims 1 to 6 is recorded. 메모리; 및Memory; And 실행 파일을 응용 프로그램과 시스템 프로그램으로 분리하여 상기 메모리에 다운로드시키는 콘트롤러 Controller for separating executable files into application programs and system programs and downloading them to the memory 를 포함하고,Including, 상기 콘트롤러는 상기 시스템 프로그램이 먼저 로드되어 있는 상기 메모리로부터 받는 링크 정보에 따라 상기 응용 프로그램을 상기 시스템 프로그램과 링크된 프로그램으로 변경하여 상기 변경된 응용 프로그램을 상기 메모리에 다운로드시키는 것을 특징으로 하는 임베디드 시스템을 위한 실행 파일의 링크 장치.The controller may change the application program into a program linked with the system program according to link information received from the memory in which the system program is loaded first, and download the changed application program into the memory. Link device for executable files. 제8항에 있어서, 상기 메모리는 ROM 형태인 것을 특징으로 하는 임베디드 시스템을 위한 실행 파일의 링크 장치.10. The apparatus of claim 8, wherein the memory is in the form of a ROM. 제8항에 있어서, The method of claim 8, 상기 메모리는 제1 메모리 및 제2 메모리로 이루어지고,The memory consists of a first memory and a second memory, 상기 콘트롤러는 상기 제1 메모리에 상기 시스템 프로그램을 다운로드하고, 상기 제2 메모리에 상기 응용 프로그램을 다운로드하는 것을 특징으로 하는 임베디드 시스템을 위한 실행 파일의 링크 장치.And the controller downloads the system program to the first memory, and downloads the application program to the second memory.
KR1020050095929A 2005-10-12 2005-10-12 Method and Apparatus for Linking Separate Execution Files for Embedded System KR100722233B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050095929A KR100722233B1 (en) 2005-10-12 2005-10-12 Method and Apparatus for Linking Separate Execution Files for Embedded System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050095929A KR100722233B1 (en) 2005-10-12 2005-10-12 Method and Apparatus for Linking Separate Execution Files for Embedded System

Publications (2)

Publication Number Publication Date
KR20070040508A KR20070040508A (en) 2007-04-17
KR100722233B1 true KR100722233B1 (en) 2007-05-29

Family

ID=38176206

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050095929A KR100722233B1 (en) 2005-10-12 2005-10-12 Method and Apparatus for Linking Separate Execution Files for Embedded System

Country Status (1)

Country Link
KR (1) KR100722233B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010011952A (en) * 1999-07-31 2001-02-15 구자홍 Apparatus of Update for Classifying Module and Method Thereof
KR20030089044A (en) * 2002-05-15 2003-11-21 송경섭 Compile system for selecting source code modules and providing web environces and method thereof
KR20050007906A (en) * 2003-07-12 2005-01-21 삼성전자주식회사 Shared library system and method for constructing the system
KR20050010640A (en) * 2003-07-22 2005-01-28 재단법인서울대학교산학협력재단 Dynamic Linking Method for Application Program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010011952A (en) * 1999-07-31 2001-02-15 구자홍 Apparatus of Update for Classifying Module and Method Thereof
KR20030089044A (en) * 2002-05-15 2003-11-21 송경섭 Compile system for selecting source code modules and providing web environces and method thereof
KR20050007906A (en) * 2003-07-12 2005-01-21 삼성전자주식회사 Shared library system and method for constructing the system
KR20050010640A (en) * 2003-07-22 2005-01-28 재단법인서울대학교산학협력재단 Dynamic Linking Method for Application Program

Also Published As

Publication number Publication date
KR20070040508A (en) 2007-04-17

Similar Documents

Publication Publication Date Title
US6003095A (en) Apparatus and method for demand loading a dynamic link library
US5920721A (en) Compiler generating functionally-alike code sequences in an executable program intended for execution in different run-time environments
AU658413B2 (en) System and method for transforming procedure calls in a cross-debugging environment
CN110825386B (en) Code compiling method and device and storage medium
US8806436B2 (en) Systems and methods for debugging applications using dual code generation
US20100281463A1 (en) XML based scripting framework, and methods of providing automated interactions with remote systems
JP2007529063A (en) Method and apparatus for performing native binding
US5764947A (en) System and method for automatically interfacing call conventions between two dissimilar program units
JP2007529063A5 (en)
WO1997012508B1 (en) Transforming and manipulating program object code
JP2009505275A (en) System, method, and computer program for inspecting safety of execution application program in module
JP2007304840A (en) Compilation method, debugging method, compilation program, and debugging program
US5615369A (en) Automated detection and correction of uninitialized variables
CN105159732A (en) Method for installing or updating application program in mobile terminal and mobile terminal
CN102364433B (en) Method for realizing Wine construction tool transplanting on ARM (Advanced RISC Machines) processor
US10452364B2 (en) Method and system for preparing code to be executed by programmable control devices
JPH10507016A (en) System, method and compiler preprocessor for conditionally compiling software compilation units
CN110032425A (en) A kind of dynamic link library file virtual method, system and storage medium
KR100722233B1 (en) Method and Apparatus for Linking Separate Execution Files for Embedded System
US9063723B2 (en) Function-based software comparison method
CN112306539B (en) Development method, system, terminal and medium for SCM application layer
CN115658140A (en) SDK packaging method, device, terminal and storage medium
CN113641389B (en) Software upgrading method, device and equipment based on OpenCPU
CN118069142B (en) Compilation optimization method, device, electronic equipment and storage medium
Navas et al. A component-based run-time evolution infrastructure for resource-constrained embedded systems

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130522

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140516

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150521

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160517

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee