[go: up one dir, main page]

KR101666619B1 - 임베디드 디바이스 환경에서의 메모리 관리 방법 및 그 시스템 - Google Patents

임베디드 디바이스 환경에서의 메모리 관리 방법 및 그 시스템 Download PDF

Info

Publication number
KR101666619B1
KR101666619B1 KR1020100094148A KR20100094148A KR101666619B1 KR 101666619 B1 KR101666619 B1 KR 101666619B1 KR 1020100094148 A KR1020100094148 A KR 1020100094148A KR 20100094148 A KR20100094148 A KR 20100094148A KR 101666619 B1 KR101666619 B1 KR 101666619B1
Authority
KR
South Korea
Prior art keywords
user application
embedded device
application image
image
initialization script
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020100094148A
Other languages
English (en)
Other versions
KR20120032691A (ko
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 KR1020100094148A priority Critical patent/KR101666619B1/ko
Publication of KR20120032691A publication Critical patent/KR20120032691A/ko
Application granted granted Critical
Publication of KR101666619B1 publication Critical patent/KR101666619B1/ko
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Landscapes

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

Abstract

본 발명은 임베디드 디바이스에서의 메모리 관리 방법에 관한 것이다. 좀 더 자세하게는 임베디드 디바이스에서 내용의 변경이 잦은 사용자 애플리케이션에 대한 메모리 관리를 효율적으로 수행하기 위한 것이다.
본 발명에서는, 임베디드 디바이스로서, 부트 로더 및 커널 이미지 및 초기화 스크립트를 저장하기 위한 플래시 메모리와; 디바이스 부팅시 외부로부터 사용자 애플리케이션을 다운로드 받아 저장하기 위한 RAM을 포함하고, 상기 임베디드 디바이스는, 부팅시 부트 로더에 의해 커널 이미지를 로드한 후 상기 초기화 스크립트를 호출하여 상기 초기화 스크립트에 설정된 바에 따라 외부의 서버로부터 사용자 애플리케이션을 다운로드받아 RAM에 저장하는 것을 특징으로 하는 임베디드 디바이스가 제시된다.

Description

임베디드 디바이스 환경에서의 메모리 관리 방법 및 그 시스템{Method and system for memory management in imbedded device environment}
본 발명은 임베디드 디바이스에서의 메모리 관리 방법 및 그 시스템에 관한 것이다. 좀 더 자세하게는 임베디드 디바이스에서 내용의 변경이 잦은 사용자 애플리케이션에 대한 메모리 관리를 효율적으로 수행하기 위한 것이다.
임베디드 시스템(Embedded System)이란 미리 정해진 특정 기능을 수행하기 위해 프로세서를 내장하여 장치를 조작하는 제어 시스템으로서, 각종 전자기기, 가전제품, 기계장치 등의 기능을 제어하는데 사용된다. 임베디드 시스템이 사용되는 가전 제품으로는 IP폰이 포함된다.
시스템은 MCU(Main Control Unit)와 그 MCU를 구동하여 특정한 기능을 수행하도록 프로그램을 탑재함으로써 해당 장치의 용도에 맞는 기본적인 컴퓨팅 능력을 가지고 그 용도에 맞는 애플리케이션을 이용하여 제어 동작을 수행하게 된다.
이에 임베디드 시스템은 크기가 작은 메모리를 사용함으로써, 단가를 낮추고 하드웨어의 크기를 최소화하면서 성능이 최적화되도록 구현하여야 한다.
이러한 임베디드 시스템은 임베디드 리눅스를 OS(운영체제)로 하고, 운영체제와 프로그램을 저장하기 위해 대용량의 하드디스크를 쓰지 아니하고, 메모리 장치를 통해 프로그램과 리소스를 저장한다.
도 1은 기존의 IP 폰 단말의 플래시 메모리 맵 구조이다.
플래시 메모리는 비휘발성이고, 상기 플래시 메모리를 하드 디스크와 같이 사용하기 위하여 MTD(Memory Technology Devices)를 사용하게 된다.
MTD0 영역은 정상적인 상황에서 로드되는 루트 파일시스템 및 사용자 애플리케이션이 저장된 영역이고, MTD1 영역은 정상적인 상황에서 로드되는 리눅스 커널 이미지가 저장된 영역이고, MTD2 영역은 운영체제를 구동하기 위한 부트 로더가 저장된 영역이고, MTD3 영역은 부트 로더에 의해 사용되는 데이터가 저장되는 영역이고, MTD4 영역은 액티브 커널 이미지에 문제가 발생한 경우 로드되는 리눅스 커널 이미지가 저장된 영역이고, MTD5 영역은 MTD0 영역에 문제 발생시 로드되는 루트 파일시스템 및 사용자 애플리케이션이 저장된 영역이고, MTD6 영역은 디바이스 운용 중 발생하는 사용자 데이터 및 변경 가능한 구성 정보가 저장되는 영역을 나타낸다.
위와 같이 리눅스 기반의 임베디드 디바이스가 동작되기 위해서는 부트 로더 영역, 리눅스 커널 영역, 기능 수행에 필요한 공통 라이브러리 및 유틸리티, 파티션이 포함되어 있는 루트 파일 시스템 영역, 비즈니스 로직이 구현되어 있는 라이브러리와 애플리케이션이 포함된 사용자 애플리케이션 영역, 변경 가능한 구성 정보 및 디바이스 동작 중 발생하는 데이터를 저장하는 사용자 데이터 영역 등으로 메모리가 구성될 수 있는데, 이 중 사용자 애플리케이션 영역은 일반적으로 루트 파일시스템 영역에 포함되어 구성된다.
또한, 임베디드 디바이스에서는 S/W 업그레이드 오류와 같은 상황에 의해 해당 영역에 오류가 발생한 상황을 대비하기 위해서 리눅스 커널 영역, 루트 파일시스템 영역은 이중화되어있는 구조를 가지게 된다.
여기에서 문제의 소지가 발생하게 되는데, 이러한 루트 파일시스템 영역은 변경이 거의 발생하지 않는 공통 라이브러리, 유틸리티 등과 비교적 변경이 잦은 사용자 애플리케이션이 섞여 있어서 사용자 애플리케이션을 업그레이드하기 위해서는 변경이 발생하지 않은 부분을 포함한 전체 루트 파일시스템 영역을 다운로드 받아 플래시 메모리의 해당 영역에 쓰기 작업을 통해 업그레이드해야만 한다.
이러한 방식은 비교적 큰 이미지 사이즈 다운로드시에 발생하는 네트워크 에러, 플래시 영역 쓰기 작업 에러 등에 의한 여러 가지 운용 관리 측면 상의 문제점을 유발시키게 된다.
또한 제한적인 메모리 자원을 사용하는 임베디드 디바이스 환경에서 구현된 사용자 애플리케이션이 할당된 메모리 영역의 크기보다 커지게 되면 S/W적으로는 처리할 수 없는 문제를 방지하기 위해 변화가 잦은 사용자 애플리케이션 영역을 위해 필요 이상의 플래시 영역이 할당되어야 하는데, 특히 플래시 메모리 영역을 이중화한 구조에서는 이러한 플래시 메모리의 비효율적인 관리가 더욱 문제시된다.
본 발명은 상기한 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 임베디드 디바이스에서 사용자 애플리케이션을 이용함에 있어 한정된 플래시 메모리 자원을 효율적으로 관리할 수 있는 방법을 제시함에 있다.
상기한 목적을 달성하기 위한 기술적 사상으로서, 본 발명에서는,
일 양태로서, 임베디드 디바이스로서, 부트 로더 및 커널 이미지 및 초기화 스크립트를 저장하기 위한 플래시 메모리와; 디바이스 부팅시 외부로부터 사용자 애플리케이션을 다운로드 받아 저장하기 위한 RAM을 포함하고, 상기 임베디드 디바이스는, 부팅시 부트 로더에 의해 커널 이미지를 로드한 후 상기 초기화 스크립트를 호출하여 상기 초기화 스크립트에 설정된 바에 따라 외부의 서버로부터 사용자 애플리케이션 이미지를 다운로드받아 RAM에 저장하는 것을 특징으로 하는 임베디드 디바이스가 제시된다.
한편, 상기 임베디드 디바이스는, DHCP 서버에 TFTP 서버의 IP주소를 요청하고, 전송받은 IP 주소의 TFTP 서버에 사용자 애플리케이션 이미지를 요청하여 다운로드 받거나, 또는 설정된 IP 주소의 TFTP 서버로 사용자 애플리케이션 이미지를 요청한 후 다운로드 받는 것을 특징으로 한다.
한편, 상기 사용자 애플리케이션 이미지는, 상기 초기화 스크립트 호출 후 사용자 애플리케이션 이미지의 다운로드 전 사이에 마운트된 RAM disk에 저장되는 것을 특징으로 한다.
한편, 상기 임베디드 디바이스는 IP 폰인 것을 특징으로 한다
또한, 다른 양태로서, 부팅시 커널 이미지의 로드가 완료되면, 플래시 메모리에 저장된 초기화 스크립트를 호출하여 초기화 스크립트에 설정된 바에 따라 외부의 서버와 연동하여 사용자 애플리케이션 이미지를 다운로드 받아 RAM에 저장하는 임베디드 디바이스와; 상기 임베디드 디바이스로의 사용자 애플리케이션 이미지의 다운로드를 위해 연결된 외부의 서버와; 상기 임베디드 디바이스와 상기 외부의 서버를 연결하는 통신망을 포함하는 임베디드 디바이스를 위한 메모리 관리 시스템이 제시된다.
한편, 상기 외부의 서버는, 상기 임베디드 디바이스의 요청에 따라 상기 임베디드 디바이스에 TFTP 서버의 IP 주소를 전송하는 DHCP 서버와; 상기 임베디드 디바이스의 요청에 따라 상기 임베디드 디바이스에 저장된 사용자 애플리케이션 이미지를 전송하는 TFTP 서버를 포함하고, 상기 임베디드 디바이스는 상기 DHCP 서버로부터 전송받은 IP 주소를 이용하여 상기 TFTP 서버로 사용자 애플리케이션 이미지의 전송을 요청하는 것을 특징으로 한다.
한편, 상기 외부의 서버는 상기 임베디드 디바이스의 요청에 따라 상기 임베디드 디바이스에 저장된 사용자 애플리케이션 이미지를 전송하는 TFTP 서버이고, 상기 임베디드 디바이스는 상기 초기화 스크립트에 설정된 IP 주소를 이용하여 상기 TFTP 서버에 상기 사용자 애플리케이션 이미지의 전송을 요청하는 것을 특징으로 한다.
한편, 상기 사용자 애플리케이션 이미지는, 상기 초기화 스크립트 호출 후 사용자 애플리케이션 이미지의 다운로드 전 사이에 마운트된 RAM disk에 저장되는 것을 특징으로 한다.
또한, 또 다른 양태로서, 부트 로더에 의해 커널 이미지가 로드되는 1 단계; 커널 이미지의 로드가 완료된 후 초기화 스크립트가 호출되는 2 단계; 초기화 스크립트에 설정된 바에 따라 외부의 서버로부터 사용자 애플리케이션 이미지를 다운로드 받아 RAM에 저장하는 3 단계; 저장된 사용자 애플리케이션 이미지에 대하여 경로가 마운트되는 4 단계를 포함하는 임베디드 디바이스에서의 메모리 관리 방법이 제시된다.
한편, 상기 3 단계는, DHCP 서버로 TFTP 서버의 IP 주소를 요청하고, 전송받은 IP 주소의 TFTP 서버로 사용자 애플리케이션 이미지를 요청하고, 상기 사용자 애플리케이션 이미지를 다운로드 받거나, 설정되어 있는 IP 주소의 TFTP 서버로 사용자 애플리케이션 이미지를 요청하고, 상기 사용자 애플리케이션 이미지를 다운로드 받는 것을 특징으로 한다.
본 발명에 따르면, 임베디드 디바이스의 부팅시 사용자 애플리케이션을 다운로드받아 RAM에 저장하여 실행시키게 함으로써, 사용자 애플리케이션에 내용 변경이 발생할 경우 별도의 S/W 업그레이드 절차를 통해 사용자 애플리케이션 이미지가 포함된 전체 루트 파일시스템 이미지를 다운받아 플래시 메모리 영역에 쓰기 작업을 행하여야 하는 불편함을 해소할 수 있다.
또한, 변경이 발생한 사용자 애플리케이션 이미지가 RAM disk에 저장되기 때문에 플래시 메모리 쓰기 작업이 발생하지 않으므로 사용자 애플리케이션 이미지를 위한 플래시 메모리 영역의 이중화가 필요하지 않게 되므로 한정된 메모리 자원을 효율적으로 관리할 수 있다.
도 1은 기존의 IP 폰 단말의 플래시 메모리 맵 구조이다.
도 2는 본 발명의 실시예에 따른 임베디드 디바이스에서의 메모리 관리를 위한 시스템 구성도이다.
도 3은 본 발명의 실시예에 따른 임베디드 디바이스에서의 메모리 관리 상태도이다.
도 4는 본 발명의 실시예에 따라 임베디드 디바이스에서 부팅시 사용자 애플리케이션 이미지를 메모리에 저장하는 흐름을 설명하기 위한 도면이다.
이하에서는 첨부된 도면을 참조하면서 본 발명의 실시예에 대한 구성 및 작용에 대하여 상세하게 설명하기로 한다.
도 2는 본 발명의 실시예에 따른 임베디드 디바이스에서의 메모리 관리를 위한 시스템 구성도이다.
도면에서 알 수 있듯이, 그 구성은 임베디드 디바이스(100)와, 임베디드 디바이스로 필요한 IP 주소를 전송할 DHCP 서버(200)와, 임베디드 디바이스로 필요한 사용자 애플리케이션 이미지를 다운로드해 주는 TFTP 서버(300)와, 상기 디바이스(100) 및 서버(200, 300)들을 연결하여 주는 통신망(400)을 포함한다.
상기 임베디드 디바이스(100)는 비휘발성 메모리인 플래시 메모리(110)와, 사용자 애플리케이션 이미지를 일시적으로 저장하기 위한 휘발성 RAM(120)을 포함하고 있다.
상기 임베디드 디바이스(100)는 부팅시 상기 DHCP서버(200)로 상기 TFTP서버(300)의 IP주소를 요청하여 전송받고, 상기 TFTP서버(300)로 필요한 사용자 애플리케이션 이미지를 상기 휘발성 RAM(120)에 다운로드받아 사용자 애플리케이션을 실행하게 된다.
여기서, 도 3을 참조하면, 도 3은 본 발명의 실시예에 따른 임베디드 디바이스에서의 메모리 관리 상태도이다.
먼저, 플래시 메모리(110)에 대한 메모리 맵을 보면, MTD0 영역은 정상적인 상황에서 로드되는 리눅스 커널 이미지가 저장된 영역이고, MTD1 영역은 MTD0 영역에 이상 발생시 로드되는 리눅스 커널 이미지가 저장되는 영역이고, MTD2 영역은 부트 로더 영역으로 운영체제를 구동시키는 영역이고, MTD3 영역은 부트 로더에 의해 사용되는 데이터가 저장되는 영역이고, MTD4 영역은 공통 라이브러리 및 유틸리티(DHCP 클라이언트, TFTP 클라이언트 등)와 PXE(Preboot Execution Environment) 기능이 구현된 초기화 스크립트가 포함되어 있는 리눅스 루트 파일시스템이 저장되는 영역이고, MTD5 영역은 디바이스 운용 중 발생하는 사용자 데이터 및 변경 가능한 구성 정보가 저장되는 영역이다.
다음으로, 휘발성 RAM(120)은 상기 TFTP 서버로부터 다운로드 받은 사용자 애플리케이션 이미지를 일시 저장한다.
상기 DHCP(Dynamic Host Configuration Protocol) 서버(200)는 상기 임베디드 디바이스(100)로부터 상기 TFTP 서버(300)의 IP 주소를 요청받아 해당 IP 주소를 전송한다.
상기 TFTP(Trivial File Transfer Protocol) 서버(300)는 상기 임베디드 디바이스에 사용되는 사용자 애플리케이션 이미지를 저장하고, 상기 임베디드 디바이스로 사용자 애플리케이션을 다운로드하여 준다.
상기 통신망(400)은 상기 임베디드 디바이스, 상기 DHCP 서버, 상기 TFTP 서버를 상호 연결하여 주고, 이에는 TCP/IP 통신망이 포함된다.
도 4는 본 발명의 실시예에 따라 임베디드 디바이스에서 부팅시 사용자 애플리케이션 이미지를 메모리에 저장하는 흐름을 설명하기 위한 도면이다.
먼저, 부트 로더는 리눅스 커널 이미지를 로드하여 임베디드 디바이스를 구동시킨다(S410). 이때 MTD0 영역에 장애가 발생한 경우에는 MTD1 영역의 스탠바이 커널 이미지를 로드한다.
커널 이미지 로드시 MTD4 영역의 루트 파일시스템이 마운트(mount)된다.
다음으로, 커널 이미지 로드가 완료되면 MTD4 영역의 초기화 스크립트가 호출된다(S420).
다음으로, 초기화 스크립트에 설정되어 있는 바에 따라 임베디드 디바이스에서 DHCP 서버로 사용자 애플리케이션 이미지를 저장하고 있는 TFTP 서버의 IP 주소를 요청하고, 해당 IP 주소를 전송받는다(S430, S440).
다음으로, 초기화 스크립트에 설정되어 있는 바에 따른 IP주소 또는 상기 DHCP 서버로부터 전송받은 IP 주소를 갖는 TFTP 서버로 사용자 애플리케이션 이미지를 요청한다(S450).
다음으로, 상기 TFTP 서버로부터 사용자 애플리케이션을 다운로드받아 RAM disk에 저장한다(S460). 이때 RAM disk는 초기화 스크립트 호출 후 사용자 애플리케이션을 다운로드 받기 전에 마운트된다.
다음으로, 사용자 애플리케이션 이미지를 MTD4 영역의 특정 경로(예컨대, /usr/local)에 마운트한다(S470). 마운트가 완료되면 임베디드 디바이스에서는 사용자 애플리케이션 및 라이브러리를 사용할 수 있게 된다.
이와 같이 임베디드 디바이스의 부팅시 사용자 애플리케이션을 다운로드받아 RAM에 저장하여 실행시키게 함으로써, 사용자 애플리케이션에 내용 변경이 발생할 경우 별도의 S/W 업그레이드 절차를 통해 사용자 애플리케이션 이미지가 포함된 전체 루트 파일시스템 이미지를 다운받아 플래시 메모리 영역에 쓰기 작업을 행하는 대신 TFTP 서버의 사용자 애플리케이션 이미지를 교체한 후 임베디드 디바이스가 부팅하기만 하면 변경된 이미지가 적용될 수 있다.
또한, 변경이 발생한 사용자 애플리케이션 이미지가 RAM disk에 저장되기 때문에 플래시 메모리 쓰기 작업이 발생하지 않으므로 사용자 애플리케이션 이미지를 위한 플래시 메모리 영역의 이중화가 필요하지 않게 된다.
이상에서는 본 발명의 실시예에 대하여 상세하게 설명하였다. 본 발명의 보호범위는 위 실시예에 한정되는 것은 아니며, 위 실시예를 바탕으로 통상의 기술자가 용이하게 변형할 수 있는 사항에도 미치고, 본 발명의 보호범위는 특허청구범위에 기재된 것에 의하여 정하여진다.
본 발명은 임베디드 디바이스에서 내용의 변경이 잦은 사용자 애플리케이션에 대한 메모리 관리를 효율적으로 수행하기 위한 것으로서, 임베디드 디바이스 관련 산업에 유용하게 이용될 수 있다.
100 : 임베디드 디바이스 110 : 플래시 메모리
120 : RAM 200 : DHCP 서버
300 : TFTP 서버 400 : 통신망

Claims (10)

  1. 임베디드 디바이스로서,
    부트 로더 및 커널 이미지 및 초기화 스크립트를 저장하기 위한 플래시 메모리와;
    디바이스 부팅시 외부로부터 사용자 애플리케이션을 다운로드 받아 저장하기 위한 RAM을 포함하고,
    상기 임베디드 디바이스는, 부팅시 부트 로더에 의해 커널 이미지를 로드한 후 상기 초기화 스크립트를 호출하여 상기 초기화 스크립트에 설정된 바에 따라 외부의 서버로부터 사용자 애플리케이션 이미지를 다운로드받아 RAM에 저장하고,
    상기 임베디드 디바이스는 IP 폰인 것을 특징으로 하는 임베디드 디바이스.
  2. 임베디드 디바이스로서,
    부트 로더 및 커널 이미지 및 초기화 스크립트를 저장하기 위한 플래시 메모리와;
    디바이스 부팅시 외부로부터 사용자 애플리케이션을 다운로드 받아 저장하기 위한 RAM을 포함하고,
    상기 임베디드 디바이스는, 부팅시 부트 로더에 의해 커널 이미지를 로드한 후 상기 초기화 스크립트를 호출하여 상기 초기화 스크립트에 설정된 바에 따라 외부의 서버로부터 사용자 애플리케이션 이미지를 다운로드받아 RAM에 저장하고,
    상기 임베디드 디바이스는,
    DHCP 서버에 TFTP 서버의 IP주소를 요청하고, 전송받은 IP 주소의 TFTP 서버에 사용자 애플리케이션 이미지의 전송을 요청하여 다운로드 받거나, 또는
    설정된 IP 주소의 TFTP 서버로 사용자 애플리케이션 이미지를 요청한 후 다운로드 받는 것을 특징으로 하는 임베디드 디바이스.
  3. 임베디드 디바이스로서,
    부트 로더 및 커널 이미지 및 초기화 스크립트를 저장하기 위한 플래시 메모리와;
    디바이스 부팅시 외부로부터 사용자 애플리케이션을 다운로드 받아 저장하기 위한 RAM을 포함하고,
    상기 임베디드 디바이스는, 부팅시 부트 로더에 의해 커널 이미지를 로드한 후 상기 초기화 스크립트를 호출하여 상기 초기화 스크립트에 설정된 바에 따라 외부의 서버로부터 사용자 애플리케이션 이미지를 다운로드받아 RAM에 저장하고,
    상기 사용자 애플리케이션 이미지는, 상기 초기화 스크립트 호출 후 사용자 애플리케이션 이미지의 다운로드 전 사이에 마운트된 RAM disk에 저장되는 것을 특징으로 하는 임베디드 디바이스.
  4. 청구항 2 또는 3에 있어서,
    상기 임베디드 디바이스는 IP 폰인 것을 특징으로 하는 임베디드 디바이스.
  5. 부팅시 커널 이미지의 로드가 완료되면, 플래시 메모리에 저장된 초기화 스크립트를 호출하여 초기화 스크립트에 설정된 바에 따라 외부의 서버와 연동하여 사용자 애플리케이션 이미지를 다운로드 받아 RAM에 저장하는 임베디드 디바이스와;
    상기 임베디드 디바이스로의 사용자 애플리케이션 이미지의 다운로드를 위해 연결된 외부의 서버와;
    상기 임베디드 디바이스와 상기 외부의 서버를 연결하는 통신망을 포함하고,
    상기 외부의 서버는,
    상기 임베디드 디바이스의 요청에 따라 상기 임베디드 디바이스에 TFTP 서버의 IP 주소를 전송하는 DHCP 서버와;
    상기 임베디드 디바이스의 요청에 따라 상기 임베디드 디바이스에 저장된 사용자 애플리케이션 이미지를 전송하는 TFTP 서버를 포함하고,
    상기 임베디드 디바이스는 상기 DHCP 서버로부터 전송받은 IP 주소를 이용하여 상기 TFTP 서버로 사용자 애플리케이션 이미지의 전송을 요청하는 것을 특징으로 하는 임베디드 디바이스를 위한 메모리 관리 시스템.
  6. 삭제
  7. 청구항 5에 있어서,
    상기 외부의 서버는 상기 임베디드 디바이스의 요청에 따라 상기 임베디드 디바이스에 저장된 사용자 애플리케이션 이미지를 전송하는 TFTP 서버이고,
    상기 임베디드 디바이스는 상기 초기화 스크립트에 설정된 IP 주소를 이용하여 상기 TFTP 서버에 상기 사용자 애플리케이션 이미지의 전송을 요청하는 것을 특징으로 하는 임베디드 디바이스를 위한 메모리 관리 시스템.
  8. 청구항 5에 있어서,
    상기 사용자 애플리케이션 이미지는, 상기 초기화 스크립트 호출 후 사용자 애플리케이션 이미지의 다운로드 전 사이에 마운트된 RAM disk에 저장되는 것을 특징으로 하는 임베디드 디바이스를 위한 메모리 관리 시스템.
  9. 임베디드 디바이스에 내장된 프로세서에서 수행하는 메모리 관리 방법에 있어서,
    부트 로더를 실행하여 커널 이미지를 로드하는 1 단계;
    상기 커널 이미지의 로드를 완료한 후 초기화 스크립트를 호출하는 2 단계;
    상기 초기화 스크립트에 설정된 바에 따라 외부의 서버로부터 사용자 애플리케이션 이미지를 다운로드 받아 RAM에 저장하는 3 단계;
    저장된 상기 사용자 애플리케이션 이미지를 플래시 메모리의 특정 영역의 경로에 마운트하는 4 단계를 포함하는 임베디드 디바이스에서의 메모리 관리 방법.
  10. 청구항 9에 있어서,
    상기 3 단계는,
    DHCP 서버로 TFTP 서버의 IP 주소를 요청하고, 전송받은 IP 주소의 TFTP 서버로 사용자 애플리케이션 이미지를 요청하고, 상기 사용자 애플리케이션 이미지를 다운로드 받거나,
    설정되어 있는 IP 주소의 TFTP 서버로 사용자 애플리케이션 이미지를 요청하고, 상기 사용자 애플리케이션 이미지를 다운로드 받는 것을 특징으로 하는 임베디드 디바이스에서의 메모리 관리 방법.
KR1020100094148A 2010-09-29 2010-09-29 임베디드 디바이스 환경에서의 메모리 관리 방법 및 그 시스템 Expired - Fee Related KR101666619B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100094148A KR101666619B1 (ko) 2010-09-29 2010-09-29 임베디드 디바이스 환경에서의 메모리 관리 방법 및 그 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100094148A KR101666619B1 (ko) 2010-09-29 2010-09-29 임베디드 디바이스 환경에서의 메모리 관리 방법 및 그 시스템

Publications (2)

Publication Number Publication Date
KR20120032691A KR20120032691A (ko) 2012-04-06
KR101666619B1 true KR101666619B1 (ko) 2016-10-14

Family

ID=46135641

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100094148A Expired - Fee Related KR101666619B1 (ko) 2010-09-29 2010-09-29 임베디드 디바이스 환경에서의 메모리 관리 방법 및 그 시스템

Country Status (1)

Country Link
KR (1) KR101666619B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108519885B (zh) * 2017-02-28 2021-07-23 武汉斗鱼网络科技有限公司 一种基于Flash的公共资源加载方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970068361A (ko) * 1996-03-19 1997-10-13 유기범 개인 통신용 단말기의 다운로드 방법 및 그 장치
KR20040056682A (ko) * 2002-12-24 2004-07-01 주식회사 어필텔레콤 휴대폰 단말기의 소프트웨어 다운로딩법
KR100548430B1 (ko) * 2004-05-21 2006-02-02 엘지전자 주식회사 멀티프로세서의 개선된 다운로드 장치 및 방법
JP4711696B2 (ja) * 2005-02-17 2011-06-29 株式会社エヌ・ティ・ティ・ドコモ データ通信管理システム、移動体端末および移動体端末制御プログラム

Also Published As

Publication number Publication date
KR20120032691A (ko) 2012-04-06

Similar Documents

Publication Publication Date Title
US10990411B2 (en) System and method to install firmware volumes from NVMe boot partition
JP5606633B2 (ja) オペレーティングシステム(os)不在サービス環境においてファームウェアをプロビジョニングする方法
US7996720B2 (en) Apparatus and method of mirroring firmware and data of embedded system
US7631173B2 (en) Method and system for performing pre-boot operations from an external memory including memory address and geometry
US9182998B2 (en) Remote bios update in system having multiple computers
US9384094B2 (en) Method and system for instant restore of system volume from a backup image
CN102591675B (zh) 使用共享存储块管理多软件镜像的方法和系统
US9507604B2 (en) Boot method and boot system
US9329943B2 (en) Methods and systems for instant restore of system volume
US20060242395A1 (en) Operating system boot from network location
US10853087B2 (en) UEFI boot mode OS provisioning system
US20100082969A1 (en) Embedded device for implementing a boot process on a host
US20040268113A1 (en) Virtual out-of-band management controller
US20120102159A1 (en) Resource conflict avoidance system and method
CN110908753A (zh) 一种智能融合的云桌面服务器、客户端及系统
US20150363320A1 (en) Write back caching of boot disk in a uefi environment
US20200364040A1 (en) System and Method for Restoring a Previously Functional Firmware Image on a Non-Volatile Dual Inline Memory Module
KR100775431B1 (ko) 임베디드 시스템 및 임베디드 시스템의 펌웨어 업데이트방법
US20230012979A1 (en) Containerized firmware services
KR101666619B1 (ko) 임베디드 디바이스 환경에서의 메모리 관리 방법 및 그 시스템
US10572166B1 (en) Firmware download for a solid state storage card
CN117850886A (zh) linux系统的启动方法、装置、终端设备及存储介质
US11775648B2 (en) Containerized metadata with UEFI firmware file system
US11500995B1 (en) Secure boot runtime universal filesystem
US11334342B1 (en) Updating firmware of unsupported devices

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20100929

PG1501 Laying open of application
N231 Notification of change of applicant
PN2301 Change of applicant

Patent event date: 20140226

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20150728

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20100929

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20160129

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20160729

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20161010

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20161011

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20200721