KR20080038970A - 플랫폼 라이브러리 다이나믹 링킹기능이구비된 단말장비 및 그 제어방법 - Google Patents

플랫폼 라이브러리 다이나믹 링킹기능이구비된 단말장비 및 그 제어방법 Download PDF

Info

Publication number
KR20080038970A
KR20080038970A KR1020060106560A KR20060106560A KR20080038970A KR 20080038970 A KR20080038970 A KR 20080038970A KR 1020060106560 A KR1020060106560 A KR 1020060106560A KR 20060106560 A KR20060106560 A KR 20060106560A KR 20080038970 A KR20080038970 A KR 20080038970A
Authority
KR
South Korea
Prior art keywords
function
area
platform
stub
function block
Prior art date
Application number
KR1020060106560A
Other languages
English (en)
Other versions
KR101273914B1 (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 KR1020060106560A priority Critical patent/KR101273914B1/ko
Priority to PCT/KR2007/005422 priority patent/WO2008054132A1/en
Publication of KR20080038970A publication Critical patent/KR20080038970A/ko
Application granted granted Critical
Publication of KR101273914B1 publication Critical patent/KR101273914B1/ko

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
    • 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/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details 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/38Transceivers, 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/40Circuits

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 Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 RO 영역에 위치하는 플랫폼 함수들을 모듈화하고 이 모듈화된 플랫폼의 각 함수들의 값을 RW영역의 stub함수블록에 각기 위치시키는 비휘발성메모리인 제1 저장매체와; 상기 제1 저장매체의 RW영역으로부터 실행데이터와 함께 stub함수블록 데이터가 전달될 경우 이를 RW영역으로 로딩시키는 휘발성 메모리인 제2 저장매체와; 상기 제1저장매체의 RW영역에 위치한 실행프로그램과 stub함수블록을 로딩시킨 다음 그 실행되는 API의 주소 값을 stub함수블록 내에서 찾아 링킹되게 제어하는 제어부를 포함하여 구성되는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비를 제공한다.
상기와 같은 본 발명은 플랫폼 함수의 실제주소가 RW영역에서 RAM 영역으로 로딩시킬 수 있어 업데이트 시 플랫폼 함수의 주소로 대체하여 새로운 함수를 부를 수 있으므로 그에 따라 단말장비의 업데이트특성을 극대화시킨다.
스태틱, 플랫폼 모듈, 주소값, stub함수블록, 링킹

Description

         플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비 및 그 제어방법{terminal having a platform library dynamic linking function and controlling method for the same}
도 1은 종래 스태틱 링킹기능이 구비된 단말장비를 설명하는 설명도.
도 2는 본 발명의 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비를 설명하는 설명도.
도 3은 본 발명의 일실시예를 설명하는 설명도.
도 4는 본 발명의 플로우차트.
<부호의 상세한 설명>
        1A: ROM의 RO영역            2A-B: RW 영역
        3A-B: ZI영역              4 : stub함수블록
        5 : 제1 저장매체              6 : 제2 저장매체
        7 : 주제어부                   8 : 단말장비
        9 :  이동통신망시스템          10: 무선모듈부
        11: 디스플레이             12: 마이크로폰
13: 코덱부 14: 키패널부
15: 상대방 단말기
본 발명은 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비 및 그 제어방법에 관한 것으로, 특히 단말장비의 ROM의 RO 영역에 위치하는 플랫폼의 함수들을 모듈화하고 이 모듈화된 함수들의 실제 주소들을 RW영역의 stub함수블록에 기록한 다음 RAM 로딩 시 stub함수블록에서 실제 함수의 주소를 불러내어 링킹하는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비 및 그 제어방법에 관한 것이다.
        
일반적으로 이동중인 사람이 무선 송수신이 가능한 휴대형 단말장비를 이용하여 문자, 숫자, 영상 등 각종 데이터를 기지국 시스템을 통해 무선으로 주고받는 통신기능을 무선데이터 통신이라고 말하는데, 이러한 무선데이터 통신은 예컨대, 셀룰러폰, 휴대용 컴퓨터, 팩시밀리, 신용카드 조회기 등 각종 단말장비를 이용하여 이동 중에 양방향으로 자료를 교환하거나 검색하는 이동 통신체계이다.
그런데, 상기와 같은 이동통신체계 중 단말장비에는 내장된 메모리를 관리하는 운영체제가 단말장비를 제조한 제조사(OEM) 영역이 있고, 반면에 그러한 단말장비의 통신망을 운용하는 망운용사업자에 의해서 관리되는 WIPI(Wireless internet platform for interoperability) 영역이 존재하게 된다.
그리고, 상기와 같은 종래 단말장비는 설정된 응용프로그램을 실행하기 위해 어플리케이션을 이용할 경우 예컨대, 응용프로그램이 제조사나 WIPI플랫폼의 API(application program interface)를 이용하게 된다. 그런데, 이러한 API는 응용 프로그램이 컴퓨터 운영 체계(OS)나 데이터베이스 관리 시스템(DBMS) 등 다른 프로그램의 기능을 이용하기 위한 인터페이스로서, 응용 프로그래밍 인터페이스(application programming interface)라고도 하며, 일반적으로 API라는 약어로 부른다. 실제로 이 API는 OS 등의 기능과 그 기능을 사용하는 방법을 정의한 함수의 집합을 말하며, 응용 프로그램은 API를 사용하여 OS 등이 가지고 있는 다양한 기능을 이용할 수 있다. 또한, 상기와 같은 플랫폼 정보를 저장하기 위한 단말장비의 ROM은 통상 NOR-FLASH를 사용한다.
그러면, 상기와 같은 종래 플랫폼 로딩기능이 구비된 단말장비를 도 1을 참고로 살펴보면, RO(READ ONLY)영역, RW(READ WRITE)영역 및 ZI영역으로 구분되고, 이중 RO영역에 스테틱(Static)하게 링크된 어플리케이션 함수의 주소값이 들어있는 실행코드들을 위치시키고 RW 영역에 플랫폼 운용을 위한 폰바이오스 혹은 응용 프로그램들이 임베디드형태로 저장하는 비휘발성메모리인 ROM(71)과;
상기 ROM(71)으로부터 로딩된 폰바이오스 및 응용프로그램의 실행데이터를 포함하여 내부에서 처리된 임시데이터들을 저장하고 RW(READ WRITE)영역 , ZI영역 및 Heap영역으로 구분되는 RAM(72)과;
상기 RAM(72)의 RW영역으로 사용자가 설정한 폰바이오스 혹은 응용프로그램 을 로딩시키고 API를 통해 플랫폼 예컨대, 제조사나 WIPI 플랫폼의 기능을 실행하도록 제어하는 제어부(73)를 포함한다.
한편, 상기와 같은 종래 플랫폼 로딩기능이 구비된 단말장비의 로딩동작을 살펴보면, 먼저, 단말장비(70)의 제어부(73)는 시스템이 온 되면 부팅(booting)을 실행한 후에 단말장비 사용자가 키패드(74)를 통해 자신이 원하는 응용프로그램 예컨대, WIPI영역의 게임이나 기타 제조사영역의 계산기기능의 어플리케이션을 실행시킬 경우 이러한 어플리케이션과 관련된 모든 라이브러리를 ROM(71)에서 RAM(72)으로 로딩시킨다.
즉, 상기 단말장비(70)의 제어부(73)는 부팅이나 프로그램이 실행될 경우 이들을 RAM(72)에 로딩시키게 하는데, 예컨대, ROM(71)의 RW 영역에 위치한OS와 응용프로그램들은 이미지 형태로 저장되어 있다가 부팅 혹은 로딩과 동시에 RAM(72)의 RW영역으로 복사되어 RAM Disk를 만든 후, RAM 디스크 상에서 OS와 응용프로그램 예컨대, 제조사 어플리케이션이나 WIPI 어플리케이션들을 구동시키게 된다. 그리고, 상기 ROM(71)의 ZI영역에 있는 예컨대, 크기 등의 정보 역시 RAM(72)의 ZI영역으로 상기 RW영역에 있는 정보와 함께 로딩된다.
이때, 상기 ROM(71)의 RO영역에 위치한 스테틱(Static)하게 링크된 어플리케이션 함수의 주소값이 들어있는 실행코드들을 RAM(72)에 로딩되지 않고 ROM(71)에서 바로 실행된다.
그러므로, 단말장비(70)의 주제어부(73)는 로딩된 프로그램을 실행하기 위해 필요한 API를 호출할 경우 그 API와 관련된 라이브러리의 실행코드를 ROM(71)의 RO영역에 위치한 실행코드들에서 찾아 해당 API를 호출하여 사용하게 된다.
그러나, 상기와 같은 종래 플랫폼 로딩기능이 구비된 단말장비는 WIPI나 제조사 플랫폼에 추가로 API가 업그레이드 될 경우 이 새로 업그레이드된 API의 실행코드 즉, 함수의 주소를 변경해야 하는데, 이러한 함수들의 주소값이 들어있는 실행코드가 스태틱하게 고정되어  ROM(71)의 RO영역에 위치해 있어서 변경이 불가능하므로 그에 따라 플랫폼모듈의 업그레이특성을 상당히 저하시켰으며, 설령 이를 무시하고 업그레이드된 함수의 주소값을 변경하기를 원할 경우 ROM(71)의 RO영역에 위치한 실행코드 전체를 모두 함께 변경시켜야 하므로 그에 따라 변경비용도 상당히 증가시킨다는 문제점이 있었다.
        이에 본 발명은 상기와 같은 제반 문제점을 해결하기 위해 발명된 것으로, 플랫폼 함수의 실제주소를 RW영역에 위치시킨 다음 이를 RAM 영역에 로딩시킬 수 있기 때문에 플랫폼 함수의 실제주소를 실질적으로 변경하여 API를 호출할 수 있으므로 그에 따라 플랫폼함수의 다이나믹 링킹특성을 상당히 향상시키는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비 및 그 제어방법을 제공함에 그 목적이 있다.
본 발명의 또 다른 목적은 플랫폼 함수의 실제주소가 RW영역에서 RAM 영역으로 로딩시킬 수 있어 업데이트 시 플랫폼 함수의 주소로 대체하여 새로운 함수를 부를 수 있으므로 그에 따라 단말장비의 업데이트특성을 극대화시키는 플랫폼 라이 브러리 다이나믹 링킹기능이 구비된 단말장비 및 그 제어방법을 제공하는데 있다.
        상기와 같은 목적을 달성하기 위한 본 발명은 RO 영역에 위치하는 플랫폼 함수들을 모듈화하고 이 모듈화된 플랫폼의 각 함수들의 값을 RW영역의 stub함수블록에 각기 위치시키는 비휘발성메모리인 제1 저장매체와;
상기 제1 저장매체의 RW영역으로부터 실행데이터와 함께 stub함수블록 데이터가 전달될 경우 이를 RW영역으로 로딩시키는 휘발성 메모리인 제2 저장매체와;
상기 제1저장매체의 RW영역에 위치한 실행프로그램과 stub함수블록을 로딩시킨 다음 그 실행되는 API의 주소값을 stub함수블록 내에서 찾아 링킹되게 제어하는 제어부를 포함하여 구성되는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비를 제공한다.
본 발명의 또 다른 특징은 단말장비에 특정기능이 설정되었을 경우 현재 실행에 필요한 실행데이터와 함께 stub함수블록도 제1저장매체(ROM)의 RW영역으로부터 제2저장매체(RAM)의 RW영역으로 로딩시키는 함수로딩단계와;
상기 함수로딩단계 후에 로딩된 플랫폼모듈을 실행하기 위해 이전 ROM의 RO영역에 위치한 함수를 실행할 경우 이 RO 영역의 함수의 실제함수 값을 이미 제2저장매체의 RW영역으로 로딩된 stub함수블록 내에서 검색하는 실제함수 값 검색단계와;
상기 실제함수 값 검색단계 후에 검색된 함수의 실제 주소값을 이용하여 해당 위치로 링킹한 다음 현재 실행 할 실제 API를 호출하여 플랫폼 모듈의 내용을 실행시키는 링킹실행단계;를 포함하여 구성되는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비의 제어방법.
        이하, 본 발명을 첨부된 예시도면에 의거 상세히 설명한다.
        본 발명은 도 2에 도시된 바와 같이RO(READ ONLY:1A)영역, RW(READ WRITE:2A)영역 및 ZI영역(3A)으로 구분된 영역에서 RO 영역에 위치하는 플랫폼 함수들을 모듈화하고 이 모듈화된 플랫폼의 각 함수(Function 1 -n)들의 값을 RW영역의 stub함수블록(4)에 각기 위치시키며, 플랫폼 운용을 위한 폰바이오스 혹은 응용 프로그램들도 저장하는 비휘발성메모리(ROM)인 제1 저장매체(5: 이하 ROM이라 함)와;
상기 제1 저장매체(5)으로부터 stub함수블록(4)과 함께 폰바이오스 혹은 응용프로그램의 실행데이터를 로딩하고 업데이트 시 stub함수블록(4)의 내용을 변경한 다음 이들의 실행에 의해 처리된 데이터들을 임시로 저장하며, RW(READ WRITE:2B)영역 , ZI영역(3B) 및 Heap영역으로 구분되는 휘발성메모리(RAM)인 제2저장매체(6: 이하 RAM이라 함)와;
상기 ROM(6)의 RW영역(2B)으로 사용자가 설정한 폰바이오스 혹은 응용프로그램 및 stub함수블록(4)을 로딩시킨 다음 그 실행되는 API의 주소값을 stub함수블록(4)내에서 찾아 링킹(linking)되게 제어하며, 플랫폼 모듈 업데이트 시 그 변경되는 새로운 함수의 주소값을 상기 RW 영역(2A)에 위치한 stub함수블록(4)내에서 변경하여 대체시키는 제어부(7)를 포함한다.
여기서, 상기 비휘발성메모리(ROM)인 제1 저장매체(5)는 NOR-FLASH를 사용할 수 있다.
또한, 상기 단말장비(8)에는 무선모듈이 구비된 PDA, 무선모듈이 구비된 노트북, 무선모듈이 구비된 PC 및 휴대폰을 포함한다.
그리고, 상기 stub 함수블록(4)은 ROM(5)의 RW영역(2A)에 위치하고, ROM(5)의 RO영역(1A)에 위치하는 모듈화된 함수들이 찾는 API의 실제 주소 값들을 각기 저장한다.
한편, 상기 단말장비(8)에는   주제어부(7)의 전송제어신호에 따라 이동통신망시스템(9)를 경유하여 단말장비(8)로 송수신되는 영상 및 음성신호가 포함된 무선 호신호(멀티미디어신호 포함)를 처리하는 무선모듈부(10)와;
       주제어부(7)의 표시기능 제어신호에 따라 단말장비(2)에서 처리되는 각종 데이터를 외부로 표시하는 디스플레이(11)와;             
        주제어부(7)의 호 연결 제어신호에 따라 마이크로폰(12)을 통해 입력되는 아날로그 음성신호를 디지털신호로 변환하거나 디지털 음성신호를 아날로그신호로 변환하여 출력하는 코덱부(13)와;
        주제어부(4)의 일단에 연결되어 주제어부(7)로 사용자의 기능설정신호를 입력시키는 키패널부(14)를 더 포함한다.
        다음에는 상기와 같은 장치에 적용되는 제어방법을 설명한다.
        본 발명의 방법은 도 3에 도시된 바와 같이 초기상태(S1)에서 기능설정 확인단계(S2)로 진행하여 현재 단말장비에 특정기능 예컨대, 응용프로그램의 실행이 설정되었는 지를 확인한다. 이때, 기능설정 확인단계(S2)중에 확인한 결과 현재 단말장비에 특정기능 예컨대, 응용프로그램이 설정되지 않았을 경우 현단계를 종료하고 대기상태로 진행한다.
그러나, 기능설정 확인단계(S2)중에 확인한 결과 단말장비에 특정기능 예컨대, 응용프로그램이 설정되었을 경우 함수로딩단계(S3)로 진행하여 현재 실행에 필요한 폰바이오스 혹은 응용프로그램의 실행데이터와 함께 stub함수블록도 ROM의 RW영역으로부터 RAM의 RW영역으로 로딩시킨다.
그리고, 함수로딩단계(S3)후에 실제함수 값 검색단계(S4)로 진행하여 로딩된 플랫폼모듈을 실행하기 위해 이전 ROM의 RO영역에 위치한 함수를 실행할 경우 이 RO 영역의 함수의 실제함수 값을 이미 RAM의 RW영역으로 로딩된 stub함수블록 내에서 검색한다.
또한, 실제함수 값 검색단계(S4)후에 링킹실행단계(S5)로 진행하여 검색된 함수의 실제 주소값을 이용하여 해당 위치로 링킹한 다음 현재 실행 할 실제 API를 호출하여 플랫폼 모듈의 내용을 실행시킨다.
한편, 링킹실행단계(S5)후에 함수업데이트 확인단계(S6)로 진행하여 단말장비의 플랫폼 모듈을 업데이트할 것인 지를 확인한다. 이때, 함수업데이트 확인단계(S6)중에 확인한 결과 단말장비의 플랫폼 모듈이 업데이트되지 않았을 경우 실행프로그램 종료 판단단계(S8)로 진행한다.
그런데, 함수업데이트 확인단계(S6)중에 확인한 결과 단말장비의 플랫폼 모듈이 업데이트되었을 경우 함수 업데이트단계(S7)로 진행하여 업데이트되는 새로운 함수의 주소값을 ROM의RW 영역에 위치한 stub함수블록 내에서 변경하여 대체시키고 실제함수 값 검색단계(S4)로 진행하여 루프를 반복 수행한다.
한편, 실행프로그램 종료 판단단계(S8)에서는 현재 실행되고 있는 특정기능 예컨대, 응용프로그램의 실행이 완료되었는 지를 확인한다. 이때, 실행프로그램 종료 판단단계(S8)중에 확인한 결과 현재 실행되고 있는 특정기능 예컨대, 응용프로그램의 실행이 완료되지 않았을 경우 즉, 아직 다음단계의 프로그램의 실행이 더 남아있을 경우 상기 실제함수값 검색단계(S4)로 진행하여 루프를 반복 수행한다. 그러나, 실행프로그램 종료 판단단계(S8)중에 확인한 결과 현재 실행되고 있는 응용프로그램의 실행이 완료되었을 경우 특정기능을 종료하고 대기상태로 진행한다.
다시 말해서, 본 발명의 단말장비(2)는 사용자가 단말장비(2)에 구비된 예컨대, 응용프로그램의 실행이 설정되었을 경우 현재 실행에 필요한 응용프로그램의 실행데이터와 함께 stub함수블록(4)도 ROM(5)으로부터 RAM(6)으로 로딩시킨다.
즉, 상기와 같이 프로그램이 설정될 경우 단말장비(8)의 주제어부(7)는 ROM(5)의 RO 영역(1A)에 위치하는 모듈화된 플랫폼 함수들은 ROM 자체에서 실행되게 하고, ROM(5)의 RW영역(2A)에 위치하는 모듈화된 플랫폼의 각 함수(Function 1 -n)들의 주소값을 갖는 stub함수블록(4)은 플랫폼 운용을 위한 폰바이오스 혹은 응용 프로그램과 함께 RAM(6)으로 로딩시킨다.
그리고, 상기와 같이 플랫폼모듈이 로딩되어 실행될 경우 먼저, 현재 실행되는 API의 호출을 위해 ROM(5)의 RO영역(1A)에 위치한 해당 함수(Function 1-n)들을 실행한 다음 그 실행함수의 실제함수 값을 이미 RAM(6)의 RW영역(2B)으로 로딩된 stub함수블록(4)내에서 검색한다.
이때, 상기 주제어부(7)는stub함수블록(4)내에서 검색한 현재 실행되는 함수의 실제 주소값을 이용하여 해당 API의 위치로 링킹한 다음 현재 실행에 사용될 실제 API를 호출하여 플랫폼 모듈의 내용을 실행시킨다.
여기서, 만약 단말장비(8)의 주제어부(7)는 플랫폼 모듈 중 일부가 업데이트될 경우 예컨대, 도 4에 도시된 바와 같이 ROM(5)의 RO영역(1A)에 위치한 해당 함수(Function 2)의 주소값이 업데이트될 경우 이 주소값의 업데이트를 ROM(5)의 RO영역(1A)에 위치한 해당 함수(Function 1-n)에서 변경하지 않고, ROM(5)의 RW영역(2A)에 위치한 stub함수블록(4)의 해당 함수(Function 2)의 주소값을 실제로 변경하므로 써 업데이트시키게 된다.
이렇게 할 경우 상기 R0영역(1A)에 위치한 함수 값들의 실제 주소 값들을 종래의 스태틱 링킹방식의 ROM과는 달리, 내용의 변경이 가능한 RW영역(2A)에 위치한 stub함수블록(4)을 통해 얼마든지 가능하게 업데이트시킬 수 있다.
한편, 상기와 같은 업데이트과정을 통해 특정 플랫폼 모듈의 주소값이 변경될 경우 단말장비(8)의 주제어부(7)는 이를 실행과정에 적용하여 상기 stub함수블록의 검색과정을 재실행시킨다.
따라서, 상기와 같은 과정을 반복하면서, 설정된 응용프로그램의 마지막 단 계까지 실제API를 호출할 시점에서 스터브 함수블록(4)을 통해 실제 API를 가진 해당 라이브러리 값을 검색하여 다이나믹 링킹시켜 호출하므로 써, 본 발명의 방법을 실행하게 된다.
여기서, 상기와 같이 단말장비(8)의 응용프로그램이 실행될 경우 주제어부(7)는 그 실행되는 내용을 디스플레이(11)에 표시함과 더불어 음성신호는 코덱부(13)를 통해 마이크로폰(12)으로 방출시킨다. 이때, 만약 외부로부터 무선모듈부(10)를 통해 무선 호의 착신이 있을 경우 단말장비(8)의 주제어부(7)는 이를 디스플레이(11)나 마이크로폰(12)을 통해 일람해 준다. 그리고, 단말장비(8)의 사용자가 해당 호를 연결시키기를 원할 경우 주제어부(7)는 이동통신망시스템(9)을 통해 상대방 단말기(15)로 응답 호를 전송하므로 통상의 통화를 이루게 된다.
이상 설명에서와 같이 본 발명은  단말장비의 ROM의 RO 영역에 위치하는 플랫폼의 함수들을 모듈화하고 이 모듈화된 함수들의 실제 주소들을 RW영역의 stub함수블록에 기록한 다음 RAM 로딩 시 stub함수블록에서 실제 함수의 주소를 불러내어 링킹하므로써, 플랫폼 함수의 실제주소를 실질적으로 변경하여 API를 호출할 수 있으므로 그에 따라 플랫폼함수의 다이나믹 링킹특성을 상당히 향상시키는 장점을 가지고 있다.
또한, 본 발명에 의하면, 플랫폼 함수의 실제주소가 RW영역에서 RAM 영역으로 로딩시킬 수 있어 업데이트 시 플랫폼 함수의 주소로 대체하여 새로운 함수를 부를 수 있으므로 그에 따라 단말장비의 업데이트특성을 극대화시키는 효과도 있다.

Claims (8)

  1. RO 영역에 위치하는 플랫폼 함수들을 모듈화하고 이 모듈화된 플랫폼의 각 함수들의 값을 RW영역의 stub함수블록에 각기 위치시키는 비휘발성메모리인 제1 저장매체와;
    상기 제1 저장매체의 RW영역으로부터 실행데이터와 함께 stub함수블록 데이터가 전달될 경우 이를 RW영역으로 로딩시키는 휘발성 메모리인 제2 저장매체와;
    상기 제1저장매체의 RW영역에 위치한 실행프로그램과 stub함수블록을 로딩시킨 다음 그 실행되는 API의 주소값을 stub함수블록 내에서 찾아 링킹되게 제어하는 제어부를 포함하여 구성되는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비.
  2. 제1항에 있어서,
    상기 제어부는 플랫폼 모듈 업데이트 시 그 변경되는 새로운 함수의 주소값을 제1저장매체의RW 영역에 위치한 stub함수블록 내에서 변경하여 대체시키는 것을 특징으로 하는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비.
  3. 제1항에 있어서,
    상기 제2저장매체는 업데이트 시 변경한 stub함수블록의 내용을 다시 갱신한 다음 재실행되는 데이터들을 임시로 저장시키는 것을 더 포함하여 구성되는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비.
  4. 제1항에 있어서,
    상기 제1 저장매체는 NOR-FLASH인 것을 특징으로 하는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비.
  5. 제1항에 있어서,
    상기 단말장비에는 무선모듈이 구비된 PDA, 무선모듈이 구비된 노트북, 무선모듈이 구비된 PC 및 휴대폰을 더 포함하여 구성되는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비.
  6. 제1항에 있어서,
    상기 stub 함수블록은 제1저장매체의 RW영역에 위치시킴과 더불어 RO영역에 위치하는 모듈화된 함수들이 찾는 API의 실제 주소 값들을 각기 저장하는 것을 특징으로 하는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비.
  7. 단말장비에 특정기능이 설정되었을 경우 현재 실행에 필요한 실행데이터와 함께 stub함수블록도 제1저장매체(ROM)의 RW영역으로부터 제2저장매체(RAM)의 RW영역으로 로딩시키는 함수로딩단계와;
    상기 함수로딩단계 후에 로딩된 플랫폼모듈을 실행하기 위해 이전 ROM의 RO 영역에 위치한 함수를 실행할 경우 이 RO 영역의 함수의 실제함수 값을 이미 제2저장매체의 RW영역으로 로딩된 stub함수블록 내에서 검색하는 실제함수값 검색단계와;
    상기 실제함수값 검색단계 후에 검색된 함수의 실제 주소값을 이용하여 해당 위치로 링킹한 다음 현재 실행 할 실제 API를 호출하여 플랫폼 모듈의 내용을 실행시키는 링킹실행단계;를 포함하여 구성되는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비의 제어방법.
  8. 제7항에 있어서,
    상기 링킹실행단계에는 단말장비의 플랫폼 모듈이 업데이트되었을 경우 업데이트되는 새로운 함수의 주소값을 제1저장매체의RW 영역에 위치한 stub함수블록 내에서 변경하여 대체시키고 실제함수값 검색단계로 진행하여 루프를 반복 수행하는 함수 업데이트단계를 더 포함하여 구성되는 플랫폼 라이브러리 다이나믹 링킹기능이 구비된 단말장비의 제어방법.
KR1020060106560A 2006-10-31 2006-10-31 플랫폼 라이브러리 다이나믹 링킹기능이구비된 단말장비 및 그 제어방법 KR101273914B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020060106560A KR101273914B1 (ko) 2006-10-31 2006-10-31 플랫폼 라이브러리 다이나믹 링킹기능이구비된 단말장비 및 그 제어방법
PCT/KR2007/005422 WO2008054132A1 (en) 2006-10-31 2007-10-31 Terminal having platform library dynamic linking function and method of controlling the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060106560A KR101273914B1 (ko) 2006-10-31 2006-10-31 플랫폼 라이브러리 다이나믹 링킹기능이구비된 단말장비 및 그 제어방법

Publications (2)

Publication Number Publication Date
KR20080038970A true KR20080038970A (ko) 2008-05-07
KR101273914B1 KR101273914B1 (ko) 2013-06-12

Family

ID=39344443

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060106560A KR101273914B1 (ko) 2006-10-31 2006-10-31 플랫폼 라이브러리 다이나믹 링킹기능이구비된 단말장비 및 그 제어방법

Country Status (2)

Country Link
KR (1) KR101273914B1 (ko)
WO (1) WO2008054132A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009018603A1 (de) 2008-04-25 2010-02-11 Samsung Electronics Co., Ltd., Suwon Leuchtvorrichtungen, dieselben enthaltende Pakete und Systeme und Herstellungsverfahren derselben
KR101034697B1 (ko) * 2008-08-07 2011-05-16 주식회사 케이티 모바일 플랫폼 모듈의 동적 로딩 지원 방법 및 시스템

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100342833B1 (ko) * 1999-07-31 2002-07-02 구자홍 모듈별 업데이트 장치 및 그 방법
US7007049B2 (en) * 2002-11-18 2006-02-28 Innopath Software, Inc. Device memory management during electronic file updating
KR100561682B1 (ko) * 2003-10-10 2006-03-15 에스케이 텔레콤주식회사 그룹 별 api 관리를 지원하는 모바일 플랫폼이 탑재된이동 통신 단말 및 모바일 플랫폼에서의 api 제어 방법
KR100871778B1 (ko) * 2003-10-23 2008-12-05 이노패스 소프트웨어, 아이엔시. 중앙집중형 동적 어드레싱 매니저를 이용한 동적 어드레싱방법 및 장치
KR100653280B1 (ko) * 2004-06-18 2006-12-04 이처닷컴 주식회사 어플리케이션의 업데이트 가능한 휴대전화 및 업데이트 방법
KR20060065388A (ko) * 2004-12-10 2006-06-14 엘지전자 주식회사 소프트웨어 개발이 용이한 임베디드 시스템 및 그 방법
KR100778293B1 (ko) * 2005-10-10 2007-11-22 삼성전자주식회사 디지털방송처리장치 및 디지털방송처리장치 부트로더의업그레이드 방법
KR100727627B1 (ko) * 2005-11-11 2007-06-13 벨록스소프트(주) 동적링킹 라이브러리를 사용하는 어플리케이션을 지원하는방법 및 이를 이용한 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009018603A1 (de) 2008-04-25 2010-02-11 Samsung Electronics Co., Ltd., Suwon Leuchtvorrichtungen, dieselben enthaltende Pakete und Systeme und Herstellungsverfahren derselben
KR101034697B1 (ko) * 2008-08-07 2011-05-16 주식회사 케이티 모바일 플랫폼 모듈의 동적 로딩 지원 방법 및 시스템

Also Published As

Publication number Publication date
KR101273914B1 (ko) 2013-06-12
WO2008054132A1 (en) 2008-05-08

Similar Documents

Publication Publication Date Title
CN101026848B (zh) 移动终端和软件更新方法
US9298444B2 (en) Software updating method and portable terminal device
US8789035B2 (en) Method and apparatus for updating firmware
US20080119178A1 (en) Allocating Compression-Based Firmware Over the Air
CN101184286B (zh) 在验证移动通信系统中更新数据的设备和方法
US7925634B2 (en) Data recovery method and system of mobile device
US8825991B2 (en) FOTA based data update method and mobile terminal supporting the same
KR20080039080A (ko) 이종언어편집 라이브러리의 인터페이스 기능이 구비된단말장비, api호출방법 및 컴파일함수생성방법
KR100678023B1 (ko) 이동통신 단말기의 부팅시간 단축 방법
KR101273914B1 (ko) 플랫폼 라이브러리 다이나믹 링킹기능이구비된 단말장비 및 그 제어방법
US20080072218A1 (en) Apparatus and method for upgrading software in portable terminal
KR101281183B1 (ko) 무선인터넷 플랫폼모듈의 부트 레이지 로딩 기능이 구비된단말장비 및 그 제어방법
KR101182534B1 (ko) 플랫폼 라이브러리내 상호 에이피아이 호출기능이 구비된단말장비, dsl 모듈 생성방법 및 상호 에이피아이호출방법
KR20090004715A (ko) 분할 압축 기반 무선 펌웨어 업그레이드 방법 및 시스템
CN116257706A (zh) 应用加载方法、装置及存储介质
KR101200236B1 (ko) 무선인터넷 플랫폼의 레이지 로딩 기능이 구비된 단말장비및 그 제어방법
US20120089780A1 (en) Smart memory card, system and method for communicating between smart memory card and external host apparatus
KR100251962B1 (ko) 웹 비디오 폰에서 메모리 스와핑 방법
US7761679B2 (en) Method for recovering from download failure of program and portable terminal employing the method
CN110764837A (zh) 一种设备启动的方法及装置
US7702890B2 (en) Information processing apparatus and program
KR101175825B1 (ko) 휴대용 운영체제를 설치하는 방법 및 그를 이용하는휴대용정보기기
JP2003259438A (ja) アプリケーションプログラム実行可能な情報通信端末及びその制御方法
KR20090018332A (ko) 휴대용 단말기의 사용자 메뉴 구성을 위한 장치 및 방법
KR20070111267A (ko) 임베디드 시스템의 동적 바인딩 구조를 이용한 갱신 장치및 방법

Legal Events

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

Payment date: 20160527

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170525

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180528

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190522

Year of fee payment: 7