KR20000073581A - Embedded system and its operating method - Google Patents

Embedded system and its operating method Download PDF

Info

Publication number
KR20000073581A
KR20000073581A KR1019990016971A KR19990016971A KR20000073581A KR 20000073581 A KR20000073581 A KR 20000073581A KR 1019990016971 A KR1019990016971 A KR 1019990016971A KR 19990016971 A KR19990016971 A KR 19990016971A KR 20000073581 A KR20000073581 A KR 20000073581A
Authority
KR
South Korea
Prior art keywords
binary code
file
main memory
memory device
code
Prior art date
Application number
KR1019990016971A
Other languages
Korean (ko)
Other versions
KR100544171B1 (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 KR1019990016971A priority Critical patent/KR100544171B1/en
Publication of KR20000073581A publication Critical patent/KR20000073581A/en
Application granted granted Critical
Publication of KR100544171B1 publication Critical patent/KR100544171B1/en

Links

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
    • 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/4401Bootstrapping
    • G06F9/4403Processor initialisation

Landscapes

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

Abstract

PURPOSE: An embedded system and operating method of the same are provided to use an uncompressed application code stored a secondary memory device, by storing a compressed binary code by using a compression algorithm. CONSTITUTION: A file format is formed of a start code, a compression state of a file, a size of a file and a compressed binary code. A binary code which forms an application software and an operating system software is stored into a sub memory apparatus like a ROM, a flash memory, etc. The compressed binary code is a code which completed a file format through a compression process by a file compression algorithm. The algorithm is a LZW(Lempel-ZivWelch Algorithm), a LZSS engaged with an entropy coding, a pure Huffman algorithm, and Winzip which is widely used for a file compression in the PC.

Description

임베디드 시스템 및 그 운용방법{Embedded system and its operating method}Embedded system and its operating method

본 발명은 임베디드 시스템에 관한 것으로, 특히 어플리케이션 코드를 보조기억장치에 저장하여 사용하는 임베디드 시스템에 관한 것이다.The present invention relates to an embedded system, and more particularly, to an embedded system for storing and using application code in an auxiliary memory device.

임베디드 시스템은 전체 운영체제 및 응용프로그램이 운영되는 메인 프로세서 유닛부 및 이들 코드가 보관되어 전원 오프(Power off)시에도 휘발되지 않도록 보관하는 보조기억장치 및 부팅시 보조기억장치에서 로딩되는 코드를 실행하기 위하여 저장하는 주기억장치로 구성된다.The embedded system executes the code loaded from the auxiliary memory device and the auxiliary memory device at boot and the main processor unit unit in which the entire operating system and applications are operated, and these codes are stored so that they are not volatilized even at power off. It consists of a main memory device for storing.

이와 같은 시스템구조에서는 하드웨어 초기화 과정을 거치고 각 어플리케이션이 고속의 주기억장치로 로딩하는 부팅 프로그램에 의해서 동작준비가 완료된다.In such a system structure, the operation preparation is completed by a boot program that undergoes a hardware initialization process and loads each application into a high speed main memory.

기존의 임베디드 시스템에서는 부팅프로그램에 의해 응용 프로그램의 이진코드가 저속의 보조기억장치로부터 고속의 주기억장치로 복사한후 프로세서 카운터를 디램의 시작어드레스로 대치시켜 응용 프로그램이 실행되는 상태가 계속된다. 이때 실행되는 응용 프로그램의 코드와 운영체제 코드는 비압축된 순수 이진코드로 저속의 보조기억장치에 저장되어 있었던 코드이다.In the existing embedded system, the binary code of the application is copied by the boot program from the low speed auxiliary memory to the high speed main memory, and then the processor counter is replaced with the start address of the DRAM. At this time, the code of the application program and the operating system code are uncompressed pure binary codes that are stored in the low speed auxiliary memory device.

이진코드의 크기가 다양한 응용 프로그램을 지원하기 위하여 급격히 증가하는 추세에 있다. 따라서, 이에 따른 보조기억장치의 확장은 가격상승요인이 된다.The size of binary code is increasing rapidly to support various applications. Therefore, the expansion of the auxiliary storage device is a price increase factor.

상기의 구조하에서 네트워크나 PCMCIA 등 외부로부터 응용 프로그램 코드의 업그레이드시 비압축된 이진 코드로인해 압축된 이진코드의 압축에 비해 약 2배의 업그레이드 시간이 발생된다.Under the above structure, when the application code is upgraded from the outside such as the network or PCMCIA, the uncompressed binary code generates about twice as much upgrade time as the compressed binary code.

상기의 구조하에서 대량생산시 수행 응용 프로그램을 보조 기억장치에 저장하는 경우에 생산성에서 약 2배의 비효율적인 면이 발생하게 된다.Under the above structure, in the case of storing the execution application program in the auxiliary storage device during mass production, about twice as inefficiency in productivity occurs.

본 발명이 이루고자하는 기술적 과제는 보조기억장치에 비압축 상태의 어플리케이션 코드를 압축알고리듬을 이용하여 압축된 이진코드로 저장하여 사용하는 임베디드 시스템 및 그 운영방법을 제공함에 있다.An object of the present invention is to provide an embedded system and an operating method for storing and using an uncompressed application code in a secondary memory device as a compressed binary code using a compression algorithm.

본 발명이 이루고자하는 다른 기술적 과제는 동적로딩이 가능한 운영체제에서 압축상태의 로딩가능한 어플리케이션 이진코드를 압축알고리듬을 이용하여 압축된 이진코드로 저장하여 사용하는 동적로더가 수행되는 임베디드 시스템의 운영방법을 제공함에 있다.Another technical problem to be achieved by the present invention is to provide a method of operating an embedded system in which a dynamic loader which stores and loads a loadable application binary code in a compressed state using a compression algorithm in a dynamically loadable operating system. Is in.

도 1은 본 발명에 사용되는 파일포맷의 일실시예를 도시한 것이다.1 shows an embodiment of a file format used in the present invention.

도 2는 본 발명에 의한 임베디드 시스템의 운용과정을 도시한 순서도이다.2 is a flow chart illustrating an operation process of the embedded system according to the present invention.

도 3은 동적로더가 수행되는 임베디드 시스템용 파일포맷의 일실시예를 도시한 것이다.3 illustrates an embodiment of a file format for an embedded system in which a dynamic loader is performed.

도 4는 동적로더가 수행되는 임베디드 시스템에서의 코드 운영도이다.4 is a diagram illustrating code operation in an embedded system in which a dynamic loader is performed.

도 5는 동적로더가 수행되는 임베디드 시스템에서 제어흐름을 도시한 순서도이다.5 is a flowchart illustrating a control flow in an embedded system in which a dynamic loader is performed.

상기 기술적 과제를 해결하기 위한, 본 발명에 따른 임베디드 시스템은 응용소프트웨어 및 운영체제 소프트웨어를 이진코드로 보조기억장치에 저장하고 이를 관리, 운영하는 임베디드 시스템에 있어서, 상기 이진코드를 소정의 압축알고리듬을 이용하여 압축된 이진코드와 파일의 시작코드, 파일상태, 파일크기 정보로 이루어진 파일포맷을 저장하는 보조기억장치; 상기 보조기억장치에 저장된 압축된 이진코드를 로딩하는 주기억장치; 및 상기 주기억장치에 로딩된 압축된 이진코드를 신장하여 실행시키는 중앙처리장치를 포함함을 특징으로 하는 포함함을 특징으로 한다.In order to solve the above technical problem, the embedded system according to the present invention stores an application software and an operating system software as a binary code in an auxiliary memory device, and manages and operates the binary code using a predetermined compression algorithm. A secondary memory device for storing a file format including a compressed binary code and a start code of a file, a file state, and file size information; A main memory for loading the compressed binary code stored in the auxiliary memory; And a central processing unit which expands and executes the compressed binary code loaded in the main memory.

상기 다른 기술적 과제를 해결하기 위한, 본 발명에 따른 임베디드 시스템의 운용방법은 (a)임베디드 시스템을 구동시키기 위하여 전원을 온시키거나 리셋시켜 마이크로프로세서와 하드웨어를 초기화하는 단계; (b)보조기억장치에 저장된 파일포맷의 파일상태를 체크하는 단계; (c)상기 파일상태가 압축모드이면 상기 보조기억장치에 압축되어 저장된 파일을 신장하여 주기억장치에 로딩하고, 상기 파일상태가 압축모드가 아니면 상기 보조기억장치에 저장된 압축되지 않은 파일을 주기억장치에 로딩하는 단계; (d)상기 주기억장치의 응용프로그램의 시작주소를 프로그램카운터로 로딩하는 단계를 포함함을 특징으로 한다.According to another aspect of the present invention, there is provided a method of operating an embedded system, the method including: (a) initializing a microprocessor and hardware by turning on or resetting a power source to drive an embedded system; (b) checking a file state of a file format stored in the auxiliary storage device; (c) If the file state is in the compression mode, the compressed and stored files are expanded to the main memory and loaded into the main memory. Loading; (d) loading the start address of the application program of the main memory into the program counter.

상기 또 다른 기술적 과제를 해결하기 위한, 본 발명에 따른 동적로더가 수행되는 임베디드 시스템의 운영방법은 (a)동적로더가 수행되는 임베디드 시스템을 구동시켜 메인 메뉴를 디스플레이 하고, 키가 입력되었는지를 체크하여 키 입력이 없으면 처음상태로 되돌아가고, 키가 입력되었으면 주기억장치에 실행하고자하는 어플리케이션이 존재하는지 체크하는 단계; (b)상기 (a)단계에서 실행 어플리케이션이 존재하지 않으면, 파일포맷의 어드레스 테이블을 이용하여 보조기억장치에서 압축된 이진코드를 읽은 후 신장한후 주기억장치에 로딩하는 단계; (c)상기 (b)단계를 수행한 후 주기억장치에 존재하는 어플리케이션의 데이터를 보조기억장치에 저장하는 단계; 및 (d)상기 (c)단계를 수행한 후 실행하고자 하는 어플리케이션의 시작주소를 프로그램카운터에 로딩하는 단계를 포함함을 특징으로 한다.In order to solve the above another technical problem, an operating method of an embedded system in which a dynamic loader is performed according to the present invention includes (a) driving an embedded system in which a dynamic loader is performed to display a main menu and check whether a key is input. If there is no key input, returns to the initial state, and if a key is input, checking whether there is an application to be executed in the main memory; (b) if the execution application does not exist in the step (a), reading the binary code compressed in the auxiliary memory device using the address table of the file format, decompressing and loading the loaded binary code into the main memory device; (c) storing data of an application existing in the main memory device in the auxiliary memory device after performing step (b); And (d) loading the start address of the application to be executed into the program counter after performing step (c).

이하 첨부된 도면을 참조하여 본 발명을 상세히 설명하기로 한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

본 발명에 따른 임베디드 시스템은 응용소프트웨어 및 운영체제 소프트웨어를 이진코드로 보조기억장치에 저장하고 이를 관리, 운영하는 것으로, 상기 이진코드를 소정의 압축알고리듬을 이용하여 압축된 이진코드와 파일의 시작코드, 파일상태, 파일크기 정보로 이루어진 파일포맷을 저장하는 보조기억장치와 상기 보조기억장치에 저장된 압축된 이진코드를 로딩하는 주기억장치 및 상기 주기억장치에 로딩된 압축된 이진코드를 신장하여 실행시키는 중앙처리장치로 이루어진다.The embedded system according to the present invention stores and manages and operates application software and operating system software in a binary memory as a binary code. The binary code and the start code of a file are compressed using a predetermined compression algorithm. A secondary memory device for storing a file format consisting of file status and file size information, a main memory for loading the compressed binary code stored in the auxiliary memory device, and a central processing for decompressing and executing the compressed binary code loaded in the main memory device. It is made of a device.

도 1은 본 발명에 사용되는 파일포맷의 일실시예를 도시한 것으로, 파일포맷의 시작코드, 파일의 압축상태, 파일의 크기 및 압축된 이진코드로 이루어진다.1 shows an embodiment of a file format used in the present invention, which comprises a start code of a file format, a compressed state of a file, a file size, and a compressed binary code.

응용소프트웨어 및 운영체제 소프트웨어를 구성하는 일반적인 이진코드를 롬(ROM), 플래시메모리(Flash memory) 등과 같은 보조 기억장치에 도 1에 표현되는 바와 같이 저장된다.General binary codes constituting application software and operating system software are stored in an auxiliary storage device such as a ROM, a flash memory, or the like as shown in FIG. 1.

상기 압축된 이진코드는 개발환경에서 생성된 이진코드를 특정 파일 압축 알고리듬에 의해 압축과정을 거쳐 파일 포맷팅을 마친 코드이다.The compressed binary code is a code that has completed file formatting by compressing the binary code generated in the development environment by a specific file compression algorithm.

이때 사용될 수 있는 알고리듬은 LZW(Lempel-ZivWelch Algorithm), 엔트로피 코딩이 결합된 LZSS, 순수 허프만 알고리듬 및 PC상의 파일 압축에 널리 사용되는 WinZip 등이 사용될 수 있다.Algorithms that can be used at this time may include LZW (Lempel-ZivWelch Algorithm), LZSS combined with entropy coding, pure Huffman algorithm, and WinZip widely used for file compression on a PC.

표 1은 상기 알고리듬들의 성능을 비교한 것이다.Table 1 compares the performance of the algorithms.

펜티엄 166Mhz PC에서 실험한 표 1에서 보이듯이 압축율이 21%에서 54%까지의 압축이 가능하며, 이 같은 압축된 이진 코드를 신장하는데 필요한 시간은 바이트당 수 μ초 이하 였다.As shown in Table 1 on a Pentium 166Mhz PC, the compression ratio can be compressed from 21% to 54%, and the time required to stretch such a compressed binary code is less than several microseconds per byte.

예를 들어, 4M바이트의 코드크기와 2M바이트의 저장 데이트영역이 필요한 시스템을 설계시 채택되는 보조기억장치는 8M바이트가 된다. 그러나 본 발명의 시스템 운영체제를 사용할 때 코드 영역만 압축상태로 관리해도 2M바이트의 코드 크기와 2M바이트의 데이터 영역을 저장할 수 있는 4M바이트의 보조기억장치만으로도 설계가 가능하게 된다.For example, when designing a system that requires a code size of 4Mbytes and a storage data area of 2Mbytes, the auxiliary storage device is 8Mbytes. However, even when only the code region is managed in a compressed state when using the system operating system of the present invention, the design can be performed using only a 4Mbyte auxiliary memory device capable of storing a 2Mbyte code size and a 2Mbyte data region.

이와 같이 보조기억장치를 감축한 하드웨어 플렛폼에서 도 2에 의한 부팅프로그램의 프로시듀어를 수행함으로써 정상 실행이 가능하게 된다.In this way, by performing the procedure of the booting program shown in FIG. 2 on the hardware platform in which the auxiliary memory device is reduced, normal execution is possible.

도 2는 본 발명에 의한 임베디드 시스템의 운용과정을 도시한 순서도이다.2 is a flow chart illustrating an operation process of the embedded system according to the present invention.

전원을 온(On)시키거나 혹은 시스템을 리셋시키면(210단계), 210단계에 의해 초기화를 담당하는 부팅프로그램은 최초 하드웨어의 동작을 원활히 하기 위하여 하드웨어를 초기화 한다(220단계). 불휘발성 메모리를 사용하는 보조기억장치에 저장된 파일이 압축된 상태인지 압축되지 않은 상태인지를 체크한다(230단계). 파일상태가 압축된 상태인 경우 이를 신장알고리듬을 구동하여 입력시킨다(240단계). 파일상태가 압축된 상태가 아니면 신장과정을 거치지 않는다. 이렇게 입력된 코드는 MPU에서 바로 실행이 가능한 이진코드로 신장되어, 본 코드가 수행되는 주기억장치로 로딩된다(250단계). 모든 이진 코드가 신장된후 수행코드의 시작 어드레스로 점프하여(260단계), 응용프로그램이 동작되기 시작한다.When the power is turned on or the system is reset (step 210), the boot program in charge of initialization by step 210 initializes the hardware to smoothly operate the initial hardware (step 220). In operation 230, it is checked whether a file stored in the auxiliary memory device using the nonvolatile memory is in a compressed state or an uncompressed state. If the file state is in a compressed state, it is input by driving an extension algorithm (step 240). If the file state is not compressed, the decompression process is not performed. The code thus input is expanded to binary code that can be executed directly on the MPU, and loaded into the main memory where the code is executed (step 250). After all the binary code has been decompressed, it jumps to the start address of the execution code (step 260), and the application program starts to operate.

도 3은 동적로더가 수행되는 임베디드 시스템용 파일포맷의 일실시예를 도시한 것이다. 이러한 파일포맷은 파일포맷의 시작코드, 파일의 압축상태, 어플리케이션 코드의 시작주소와 끝주소, 어플리케이션 데이터의 시작주소와 끝주소, 및 압축된 이진코드를 포함한다.3 illustrates an embodiment of a file format for an embedded system in which a dynamic loader is performed. This file format includes the start code of the file format, the compressed state of the file, the start address and end address of the application code, the start address and end address of the application data, and the compressed binary code.

도 4는 동적로더가 수행되는 임베디드 시스템에서의 코드 운영도이다.4 is a diagram illustrating code operation in an embedded system in which a dynamic loader is performed.

동적로딩이 가능한 운영체제에서 압축상태의 로딩가능한 어플리케이션 이진코드를 어플리케이션의 코드단위로 분리하여 보조기억장치(420)로 다운 로딩을 한후 보조기억장치(420)에 저장된 압축된 이진코드를 중앙처리장치(430)의 신장알고리듬에 의하여 신장되어 주기억장치(410)의 어플리케이션 코드영역에 로딩되고, 주기억장치(410)에 저장된 어플리케이션 데이터는 보조기억장치(420)에 저장된다.In the dynamically loadable operating system, the loadable application binary code in a compressed state is divided into unit of code of the application, downloaded to the auxiliary memory device 420, and the compressed binary code stored in the auxiliary memory device 420 is stored in the central processing unit ( It is expanded by the expansion algorithm of 430 and loaded into the application code area of the main memory 410, and the application data stored in the main memory 410 is stored in the auxiliary memory 420.

도 5는 동적로더가 수행되는 임베디드 시스템에서 제어흐름을 도시한 순서도이다.5 is a flowchart illustrating a control flow in an embedded system in which a dynamic loader is performed.

먼저, 동적로더가 수행되는 임베디드 시스템을 구동시켜 메인 메뉴를 디스플레이 한다(510단계). 키가 입력되었는지를 체크하여 키가 입력되었으면 다음과정을 실행하고, 키 입력이 없으면 처음상태로 되돌아간다(520단계). 520단계에서 키가 입력되었으면 주기억장치에 실행하고자하는 어플리케이션이 존재하는지 체크한다(530단계). 실행 어플리케이션이 존재하지 않으면, 도 3에 도시된 파일포맷의 어드레스 테이블을 이용하여 보조기억장치에서 압축된 이진코드를 읽은 후 신장한후 주기억장치에 로딩한다(540단계), 주기억장치에 저장된 어플리케이션의 데이터를 보조기억장치에 저장한다(550단계). 주기억장치의 어플리케이션의 시작 어드레스가 프로그램카운터에 입력된다(560단계).First, a main menu is displayed by driving an embedded system in which a dynamic loader is performed (step 510). If the key is input and the key is input, the next process is executed. If no key is input, the process returns to the initial state (step 520). If a key is input in step 520, it is checked whether an application to be executed exists in the main memory device (step 530). If the execution application does not exist, the compressed binary code is read from the auxiliary memory device using the address table of the file format shown in FIG. 3 and then decompressed and loaded into the main memory (step 540). The data is stored in the auxiliary memory device (step 550). The start address of the application of the main memory is input to the program counter (step 560).

또한, 프로그램이 압축된 상태에서 관리 되기 때문에 네트워크 PCMCIA등을 통한 외부로부터 일반적인 이진코드의 다운로드시 기존의 기존의 절반에 해당되는 속도단축도 가능하고, 보조기억장치에 저장하는 시간도 단축하는 효과가 크다고 볼 수 있다. 단지 본 발명의 적용시 문제가 될 수 있는 것은 부팅시 보조기억장치에서 DRAM으로의 로딩시간이 기존의 비압축방식에 비해 시간이 더 소요되는 점이나 최근의 고속 프로세서에서는 운영상의 어려움이 없는 것이 특징이다.In addition, since the program is managed in a compressed state, when downloading general binary code from the network PCMCIA, etc., it is possible to reduce the speed corresponding to half of the existing and save time in the auxiliary memory device. It can be seen as large. Only the application of the present invention may be a problem that the loading time from the auxiliary memory device to the DRAM at boot time is longer than that of the conventional non-compression method, but there are no operational difficulties in recent high-speed processors. to be.

본 발명에 의하면, 부팅시 디램(DRAM)과 같은 주기억장치에 복사하여 운영하는 임베디드 시스템에서 보다 효율적으로 보조기억장치를 사용하기 위해 파일 압축방식을 사용하여 저장하는 방법을 사용함으로써 추가적인 보조기억장치의 확장없이 기존의 일반적인 이진코드를 2배 가까이 저장하는 효과를 얻을 수 있다.According to the present invention, in order to use the auxiliary memory device more efficiently in an embedded system which is copied to a main memory device such as a DRAM at boot time, a method of storing the additional auxiliary memory device by using a file compression method is provided. You can get the effect of storing up to twice the normal binary code without expansion.

또한, 코드영역의 반감으로 인해 저장 데이터 영역의 확대가능 Answering Machine의 음성 레코딩 시간이 확장되거나 PIMS 데이터 영역의 확대와 같은 어플리케이션의 저장용 데이터 영역으로 사용이 가능하다.In addition, due to the half-width of the code area, the storage data area can be expanded. The voice recording time of the answering machine can be extended, or it can be used as a storage data area of an application such as the expansion of the PIMS data area.

Claims (4)

응용소프트웨어 및 운영체제 소프트웨어를 이진코드로 보조기억장치에 저장하고 이를 관리, 운영하는 임베디드 시스템에 있어서,In the embedded system that stores the application software and operating system software as a binary code in the auxiliary storage device, and manages and operates it, 상기 이진코드를 소정의 압축알고리듬을 이용하여 압축된 이진코드와 파일의 시작코드, 파일상태, 파일크기 정보로 이루어진 파일포맷을 저장하는 보조기억장치;An auxiliary memory device for storing the binary code compressed in the binary code using a predetermined compression algorithm and a file format including a start code, a file state, and file size information of a file; 상기 보조기억장치에 저장된 압축된 이진코드를 로딩하는 주기억장치; 및A main memory for loading the compressed binary code stored in the auxiliary memory; And 상기 주기억장치에 로딩된 압축된 이진코드를 신장하여 실행시키는 중앙처리장치를 포함함을 특징으로 하는 임베디드 시스템.And a central processing unit to expand and execute the compressed binary code loaded in the main memory. 제1항에 있어서,The method of claim 1, 동적로딩이 가능한 운영체제에서 압축상태의 로딩가능한 응용프로그램의 이진코드를 응용프로그램의 코드단위로 분리하여 보조기억장치로 다운 로딩을 한후 이를 수행하는 과정에서 신장알고리듬을 거쳐 주기억장치상으로 스와핑하여 수행함을 특징으로 하는 임베디드 시스템.In the operating system which can be dynamically loaded, binary code of the loadable application program in the compressed state is separated into the unit of code of the application program, downloaded to the auxiliary memory device, and then swapped onto the main memory device through an extension algorithm in the process of performing this operation. Characterized embedded system. (a)임베디드 시스템을 구동시키기 위하여 전원을 온시키거나 리셋시켜 마이크로프로세서와 하드웨어를 초기화하는 단계;(a) initializing the microprocessor and hardware by turning on or resetting the power source to drive the embedded system; (b)보조기억장치에 저장된 파일포맷의 파일상태를 체크하는 단계;(b) checking a file state of a file format stored in the auxiliary storage device; (c)상기 파일상태가 압축모드이면 상기 보조기억장치에 압축되어 저장된 파일을 신장하여 주기억장치에 로딩하고, 상기 파일상태가 압축모드가 아니면 상기 보조기억장치에 저장된 압축되지 않은 파일을 주기억장치에 로딩하는 단계;(c) If the file state is in the compression mode, the compressed and stored files are expanded to the main memory and loaded into the main memory. Loading; (d)상기 주기억장치의 응용프로그램의 시작주소를 프로그램카운터로 로딩하는 단계를 포함함을 특징으로 하는 임베디드 시스템의 부팅방법.(d) a method of booting an embedded system, comprising loading the start address of the application program of the main memory into a program counter. (a)동적로더가 수행되는 임베디드 시스템을 구동시켜 메인 메뉴를 디스플레이 하고, 키가 입력되었는지를 체크하여 키 입력이 없으면 처음상태로 되돌아가고, 키가 입력되었으면 주기억장치에 실행하고자하는 어플리케이션이 존재하는지 체크하는 단계;(a) Run the embedded system where the dynamic loader is executed to display the main menu, check if a key has been entered, return to the initial state if no key is entered, and if there is an application to be executed in the main memory if a key is entered. Checking; (b)상기 (a)단계에서 실행 어플리케이션이 존재하지 않으면, 파일포맷의 어드레스 테이블을 이용하여 보조기억장치에서 압축된 이진코드를 읽은 후 신장한후 주기억장치에 로딩하는 단계;(b) if the execution application does not exist in the step (a), reading the binary code compressed in the auxiliary memory device using the address table of the file format, decompressing and loading the loaded binary code into the main memory device; (c)상기 (b)단계를 수행한 후 주기억장치에 존재하는 어플리케이션의 데이터를 보조기억장치에 저장하는 단계; 및(c) storing data of an application existing in the main memory device in the auxiliary memory device after performing step (b); And (d)상기 (c)단계를 수행한 후 실행하고자 하는 어플리케이션의 시작주소를 프로그램카운터에 로딩하는 단계를 포함함을 특징으로 하는 동적로더가 수행되는 임베디드 시스템의 운영방법.and (d) loading the start address of the application to be executed on the program counter after performing step (c).
KR1019990016971A 1999-05-12 1999-05-12 Embedded system and its operating method KR100544171B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990016971A KR100544171B1 (en) 1999-05-12 1999-05-12 Embedded system and its operating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990016971A KR100544171B1 (en) 1999-05-12 1999-05-12 Embedded system and its operating method

Publications (2)

Publication Number Publication Date
KR20000073581A true KR20000073581A (en) 2000-12-05
KR100544171B1 KR100544171B1 (en) 2006-01-23

Family

ID=19585017

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990016971A KR100544171B1 (en) 1999-05-12 1999-05-12 Embedded system and its operating method

Country Status (1)

Country Link
KR (1) KR100544171B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100319755B1 (en) * 1999-12-02 2002-01-05 오길록 Bytecode compression method for embedded java virtual machine
KR100369799B1 (en) * 2000-12-30 2003-01-30 삼성전자 주식회사 Method and apparatus for managing dynamic memory of embed system
KR20140111482A (en) * 2013-03-11 2014-09-19 삼성전자주식회사 Apparatus and method for processing data in a terminl
KR20150114200A (en) * 2014-04-01 2015-10-12 (주)새한이엔씨 Low-Power Bus Information Terminal using Solar

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100319755B1 (en) * 1999-12-02 2002-01-05 오길록 Bytecode compression method for embedded java virtual machine
KR100369799B1 (en) * 2000-12-30 2003-01-30 삼성전자 주식회사 Method and apparatus for managing dynamic memory of embed system
KR20140111482A (en) * 2013-03-11 2014-09-19 삼성전자주식회사 Apparatus and method for processing data in a terminl
KR20150114200A (en) * 2014-04-01 2015-10-12 (주)새한이엔씨 Low-Power Bus Information Terminal using Solar

Also Published As

Publication number Publication date
KR100544171B1 (en) 2006-01-23

Similar Documents

Publication Publication Date Title
US5794049A (en) Computer system and method for executing architecture specific code with reduced run-time memory space requirements
CA2636160C (en) System and method for storing a program using partial compression
KR980004056A (en) Computer system and method for executing execution threads with the need for reduced run-time memory space
KR20120055352A (en) Apparatus and method for booting based on a snapshot image
US20130179670A1 (en) Booting method of multimedia device and multimedia device
JPH10228380A (en) Method and computer system for executing network moving code having reduced run-time memory space request
CN101135978B (en) Compression version application program generating, executing method and apparatus and applications method and system
KR100747901B1 (en) Method for compression of executable file in mobile telecommunication terminal
CN112783558B (en) Method for accelerating self-decompression phase of Linux kernel start
US6104506A (en) Facsimile apparatus having function of updating incorporated program
US20070283130A1 (en) Compact Storage Of Program Code On Mobile Terminals
US6023761A (en) Method and system for using decompression on compressed software stored in non-volatile memory of an embedded computer system to yield decompressed software including initialized variables for a runtime environment
KR100544171B1 (en) Embedded system and its operating method
JP3201716B2 (en) Computer equipment
US20040114808A1 (en) Compressing a firmware image
US6694393B1 (en) Method and apparatus for compressing information for use in embedded systems
FI113708B (en) Method and device for storing and running executable programs
US20070288661A1 (en) Method and media for reducing executable storage requirements in wireless environment
CN113296781A (en) Application program installation package file compiling and constructing method and device and electronic equipment
JPH118547A (en) Reconfigurable arithmetic unit
RU2390823C2 (en) Compact storage of program code on mobile terminals
JP4845497B2 (en) Electronic device and control method thereof
KR101055125B1 (en) Mobile terminal and its boot method
JPH0628150A (en) Method for compressing program capacity
KR101691656B1 (en) Processing unit and booting method thereof

Legal Events

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

Payment date: 20121228

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20131230

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20141223

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20151229

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee