KR100617669B1 - 무선 통신 장치의 저장 위치 세트에 기능들을 독립적으로 다운로딩하는 시스템 및 방법 - Google Patents

무선 통신 장치의 저장 위치 세트에 기능들을 독립적으로 다운로딩하는 시스템 및 방법 Download PDF

Info

Publication number
KR100617669B1
KR100617669B1 KR1020017011603A KR20017011603A KR100617669B1 KR 100617669 B1 KR100617669 B1 KR 100617669B1 KR 1020017011603 A KR1020017011603 A KR 1020017011603A KR 20017011603 A KR20017011603 A KR 20017011603A KR 100617669 B1 KR100617669 B1 KR 100617669B1
Authority
KR
South Korea
Prior art keywords
selectable
storage location
optional
wireless communication
communication device
Prior art date
Application number
KR1020017011603A
Other languages
English (en)
Other versions
KR20020006522A (ko
Inventor
제임스 에이. 4세 헛치슨
에릭 제이. 렉벤
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 콸콤 인코포레이티드
Publication of KR20020006522A publication Critical patent/KR20020006522A/ko
Application granted granted Critical
Publication of KR100617669B1 publication Critical patent/KR100617669B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)
  • Transceivers (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

무선 통신 장치의 저장 위치 세트에 주프로그램 및 선택적 기능을 독립적으로 다운로딩하는 시스템 및 방법은 주프로그램 및 선택된 선택적 기능 세트를 저장하기 위하여 메모리를 이용한다. 선택된 선택적 기능 세트중 하나의 세트와 연관된 식별 엘리멘트는 주프로그램이 상기 선택된 선택적 기능 세트중 하나와 상호작용하도록 한다. 프로그래머는 메모리의 저장 위치를 지정함으로써 메모리에 선택된 선택적 기능 프로그램을 프로그래밍한다. 표시자는 선택된 선택적 기능 세트가 메모리에 저장된 시점을 나타낸다. 메모리는 또한 메모리의 저장 위치를 식별하기 위한 포인터 및 링킹 엘리멘트를 포함할 수 있다. 본 발명은 선택된 선택적 기능세트로 하여금 주프로그램이 메모리에 저장된 후에 저장될 수 있게 한다.

Description

무선 통신 장치의 저장 위치 세트에 기능들을 독립적으로 다운로딩하는 시스템 및 방법 {SYSTEM AND METHOD FOR INDEPENDENTLY DOWNLOADING FEATURES INTO A SET OF STORAGE LOCATIONS IN A WIRELESS COMMUNICATION DEVICE}
본 발명은 무선 통신 장치에 관한 것으로서, 특히 무선 통신 장치의 메모리에 기능들을 독립적으로 다운로딩하는 시스템 및 방법에 관한 것이다.
셀룰러 전화기와 같은 현재의 무선 통신 장치들은 사용하기가 편리하며 통상적인 전화기에서 수행하기 어려운 여러 기능들과 옵션을 제공하기 때문에 매우 인기있다. 예를 들어, 무선 통신 장치는 특정한 나라를 위한 특정한 다이얼링 플랜 및 다이얼링 패턴으로 프로그래밍 및 커스터마이징될 수 있다. 이러한 방식으로, 무선 통신 장치는 외국으로 수출하기 위하여 대량으로 만들어진 제품일 수 있으며, 추가의 프로그래밍없이 바로 사용할 수 있다. 미국의 경우, 무선 통신 장치는 북미인의 넘버링 플랜의 10-디지트(digit) 전화번호 및 전화 이동기의 시스템에서 이용될 수 있는 여러 옵션들을 활성화시키는데 사용되는 "스타" 코드들을 수용하기 위하여 프로그래밍될 수 있다.
무선 통신 장치는 또한 데이터 암호화 계획안에 따라 동작하고, 또한 외국어 텍스트로 동작하며, 그 사용자로 하여금 컴퓨터화된 무선 게임을 이용할 수 있도록 프로그래밍 수 있다. 이러한 기능들은 사용자에게 커스터마이징된 여러 기능들을 제공하기 위하여 각각의 무선 통신 장치에서 여러 조합으로 실행될 수 있다.
상술한 선택적 기능들은 제작과정에서 제작자에 의하여 무선 통신 장치에 미리 프로그래밍된다. 각각의 선택적 기능들과 연관되며, 각각의 선택적 기능들을 동작시키는 데이터 및 실행가능 코드/인스트럭션은 무선 통신 장치의 동작을 제어하는 표준 데이터 및 실행가능 코드/인스트럭션(즉, 주프로그램)과 조합된다. 조합된 프로그램은 이후에 무선 통신 장치의 전기적으로 소거할 수 있는 판독전용 메모리(EEPROM)에 기록된다. 즉, 선택적 기능들과 주프로그램은 모두 단일 프로그램으로 EEPROM에 동시에 기록 또는 다운로딩된다. 다른 형태의 기록가능한 비휘발성 저장매체(예를 들어, FERAM, 배터리가 달린 RAM, OPT RAM등)가 사용될 수 있다.
단일 다운로드를 이용하는데는 여러가지 상당한 단점들이 있다. 우선, 주프로그램 및 선택적 기능들이 단일 프로그램으로서 다운로딩될 필요가 있기 때문에, 제작자는 무선 통신 장치에 필요한 선택적 기능이 어떤것인지를 미리 결정한 후 주프로그램에 선택적 기능들을 일치시킨다. 이러한 방법은 어떠한 기능들이 기존의 고객들에 의하여 요청될지를 예측하기가 어려우며, 또한 주프로그램과 모든 가능한 선택적 기능들을 조합함으로써 모든 선택적 특성을 계산하는 것은 메모리 공간을 비효율적으로 사용하기 때문에 바람직하지 않다.
둘째로, 선택적 기능들과 주프로그램이 함께 결합되고 다운로딩되기 때문에, 추가의 선택적 기능들은 초기 다운로딩이 이루어진후에 EEPROM에 추가될 수 없다. 만일 제작자가 무선 통신 장치에 추가의 선택적 기능들을 추가하기를 원한다면, 전체 EEPROM은 소거되거나 교체될 필요가 있으며, 선택적 기능들과 주프로그램의 업데이트된 조합은 새로운 블랭크 EEPROM에 연속적으로 다운로딩된다. 또한, 선택적 기능들은 단일 조합된 프로그램으로서 주프로그램과 관계되어 있기 때문에, 주프로그램의 일부는 자체적으로 제작자가 단순히 단일한 선택적 기능을 추가하기를 원할 때에만 업데이트될 필요가 있을 것이다. 분명히, 이러한 업데이팅은 조합된 프로그램이 EEPROM에 다운로딩되기 전에 행하여지며, 이는 통상적인 시스템이 일단 다운로딩될 때 조합된 프로그램을 업데이트시킬 수 없기 때문이다.
셋째로, 주프로그램과 선택적 기능들을 조합하여 발생된 큰 정보 블록이 기본적으로 다운로딩을 더욱 어렵게 만들 수 있다. EEPROM의 단일한 연속 저장 블록은 다운로딩된 정보의 전체 블록을 수용하기 위하여 미리 할당될 필요가 있다. 다운로딩된 정보의 블록이 EEPROM의 스캐터링된 저장 블록에서 저장되는 부분들로 분리될 수 없다는 것은 가능한 일이다. 예를 들어, EEPROM의 한 저장 블록에 주프로그램을 기록한 후에 EEPROM의 다른 스캐터링된 저장 블록중 이용될 수 있는 어느 부분에라도 선택적 기능을 기록하는 것은 바람직하다.
따라서, 선택적 기능이 주프로그램의 다운로딩과는 독립적으로 EEPROM에 다운로딩될 수 있는 방식으로 선택적 기능을 가진 무선 통신 장치를 커스터마이징할 필요가 있다. 본 발명은 상술한 문제에 대한 해결방법을 제공하고 또한 다음의 첨부된 도면과 상세할 설명에 의하여 명백해질 것이다.
본 발명은 무선 통신 장치의 메모리에 선택적 기능을 다운로딩하는 시스템 및 방법에 관한 것이다. 전형적인 실시예에서, 무선 통신 장치는 무선 통신 장치의 동작을 제어하기 위하여 주프로그램을 저장하는 메모리를 포함한다. 선택가능한 선택적 기능 세트는 주프로그램과는 독립적으로 메모리에 프로그래밍될 수 있다. 주프로그램은 선택된 선택가능한 선택적 기능 세트와 상호작용하도록 하기 위해 선택가능한 선택적 기능 세트 또는 세트들과 연관된 식별 엘리멘트를 이용한다.
전형적인 실시예는 주프로그램을 선택가능한 선택적 기능 세트와 연관시키는 링킹 엘리멘트를 더 포함하며, 상기 링킹 엘리멘트는 상기 선택가능한 선택적 기능들이 메모리에 프로그래밍될 때까지 비활성된다. 링킹 엘리멘트는 주프로그램의 일부일 수 있으며, 메모리의 다수 해당 저장위치를 식별하기 위하여 다수의 포인터를 포함할 수 있다. 주프로그램은 또한 선택가능한 선택적 기능 세트에 해당하는 저장 위치를 위한 메모리를 검색하기 위하여 검색 프로그램을 포함할 수 있으며, 상기 저장 위치는 선택가능한 선택적 기능 세트가 저장위치에 저장될 시점을 나타내는 표시자를 가진다.
링킹 엘리멘트는 또한 제 2 링킹 엘리멘트를 식별하는 포인터를 포함할 수 있으며, 상기 제 2 링킹 엘리멘트는 메모리의 다수 저장 위치를 식별하는 다수의 포인터를 가진다. 본 발명의 전형적인 실시예에서, 선택가능한 선택적 기능 세트는 제 2 링킹 엘리먼트 또는 메모리의 저장 위치를 식별하기 위한 포인터를 포함할 수 있다.
메모리에 결합된 포트 및 프로그래머는 선택가능한 선택적 기능 세트를 수신한다. 프로그래머는 주프로그램의 저장과는 독립적으로 프로그램가능한 메모리내의 저장을 위해 포트에 선택가능한 선택적 기능 세트를 전송한다. 선택가능한 선택적 기능 세트는 다이얼링 플랜 시스템, 암호화 시스템, 브라우저 시스템, 또는 언어 시스템과 같은 기능 또는 진단 확장 및 개조 그리고 오디오 핸들링 확장 및 개조, 생산성 툴 및 게임을 포함할 수 있다.
도면에서, 도면번호는 여러 도면에 걸쳐 동일한 도면 부호를 사용한다.
도 1은 본 발명의 무선 통신 장치의 전형적인 실시예의 기능 블록도이다.
도 2는 도 1에 도시된 실시예의 프로그램가능한 메모리의 도면이다.
도 3은 도 2에 도시된 프로그램가능한 메모리의 링크 테이블이다.
도 4는 도 1-3에 도시된 실시예의 다운로딩 동작을 도시한 흐름도이다.
본 발명은 도 1의 기능 블록도에 도시된 시스템(100)에서 구체화된다. 상기 시스템(100)은 무선 통신 장치(101)를 포함하며, 이는 셀룰러 전화기에서 구현될수 있다. 시스템(100)은 시스템(100) 및 셀 사이트 제어기(도시되지 않음)와 같은 원격국 사이에서 오디오 통신과 같은 데이터를 송신 및 수신하기 위하여 송신기(104) 및 수신기(106)를 포함하는 하우징(102)을 포함한다. 송신기(104) 및 수신기(106)는 트랜시버(108)로 결합될 수 있다. 안테나(110)는 하우징(102)에 부착되며, 트랜시버(108)에 전기적으로 결합된다. 송신기(104), 수신기(106) 및 안테나(110)의 동작은 당업자에게 공지되어 있으며, 본 명세서에서 기술하지 않겠다. 본 발명의 원리들은 셀룰러 전화기로서 본 명세서에 기술되었지만, 셀룰러/PCS, 무선 전화기등을 포함하는 여러 무선 통신 장치에 응용될 수 있다. 따라서 본 발명은 무선 통신 장치의 특정 형태에 제한받지 않는다.
무선 통신 장치(101)는 중앙 처리 유니트(CPU:112)를 가지며, 이는 시스템(100)의 동작을 제어한다. CPU(112)는 시스템(100)의 동작에 관련된 모든 작업 또는 이들의 일부를 수행할 수 있으며, 나머지 작업들은 시스템(100)에 포함된 다른 처리 유니트들(도시도지 않음)에 위임된다.
무선 통신 장치(101)는 하나 이상의 메모리 유니트들을 포함하며, 이는 전기적으로 소거할 수 있는 프로그램가능한 판독전용 메모리(EEPROM)와 같은 프로그램가능한 메모리(116) 및 랜덤 액세스 메모리(RAM)일 수 있다. RAM(114)은 무선 통신 장치(101)를 가동시킬 때 제공되어야하는 정보를 저장하기 위한 비휘발성 RAM을 포함할 수 있다. 기술상 공지된 바와 같이, RAM(114)의 일부는 프로그램가능한 메모리(116) 또는 표준 ROM(도시되지 않음)에 일반적으로 저장되는 데이터 및 실행가능 코드/명령과 같은 정보를 저장하기 위하여 쉐도우 판독전용 메모리(ROM)로서 사용될 수 있다. 또한, 도 1은 프로그램가능한 메모리(116)와 RAM(114)를 구별할 수 있으며, 당업자들은 RAM(114)이 "프로그램가능한" 메모리 타입이라는 것을 이해할 것이다. CPU(112)는 무선 통신 장치(101)를 동작시키기 위하여 프로그램가능한 메모리(116) 또는 RAM(114)에 저장된 정보를 처리한다.
무선 통신 장치(101)는 또한 하우징(102)의 외부에 위치한 프로그래머(122)로부터 "번들(bundle)"로서 참조된 기능 세트(123)를 수신하도록 입/출력 포트(118)를 포함한다. 프로그래머(122)는 상기 기능들이 무선 통신 장치(101)에 다운로딩될 수 있게 하는 하드웨어 및 소프트웨어 시스템이다. 상기 시스템(100)은 또한 프로그래머(122)로부터 상기 기능들을 수신하기 위하여 또는 적당한 메모리 위치에 상기 수신된 기능들을 기록하기 위하여 RAM(114)에 다운로더(115)를 가질 수 있다. 이와 같이, 다운로더(115)는 프로그래머(122)와 프로그램가능한 메모리(116) 또는 RAM(114) 사이에서 프로그램을 즉각적으로 다운로딩하도록 동작한다.
본 발명을 위하여, 본 명세서 전반에 걸쳐 사용된 용어 "기능"은 데이터, 실행가능 소프트웨어 코드, 및 프로그래머(122) 또는 다운로더(115)에 의하여 프로그램가능한 메모리(116) 또는 RAM(114)에 기록된 식별(ID) 코드 및 변수들과 같은 임의의 첨부된 정보를 포함하는 것으로 이해될 수 있다. 상기 세트(123)는 임의의 다수 개별 선택기능(124,126,128,130)과 연관된 각각의 선택적 기능의 통합을 포함한다. 예를 들어, 도 1에서 124로서 도시된 기능(1)은 인도(India)의 다이얼링 플랜을 위한 데이터에 해당할 수 있다. 프로그래머(122)는 세트(123)에 포함된 선택적 기능을 프로그램가능한 메모리(116)에 세트(123)에 기록하거나, 또는 각각의 선택적 기능들(예를 들어 기능1) 또는 각각의 선택적 기능들(예를 들어 기능 1, 기능 3 및 기능4)의 "번들"로서 세트(123)에 포함된 선택적 기능을 RAM(114)에 기록한다. 개별적인 선택적 기능은 "번들"로서 참조될 수 있는데, 이는 임의의 주어진 선택적 기능이 데이터 및 실행가능 코드의 "번들"이기 때문이다. 그러므로, 용어 "번들" 및 "기능"은 본 명세서의 전반에 걸쳐 서로 번갈아 사용된다.
세트(123)는 프로그래머(122)안에 상주할 수 있거나 제 1 통신 링크(132)를 통하여 프로그래머(122)에 액세스될 수 있다. 또한, 도 1에는 단지 하나의 세트(123)만이 도시되어 있지만, 프로그래머(122)에 액세스될 수 있는 다른 여러 세트가 가능하다. 상기 다른 세트들 중 하나는 무선 통신 장치(101)가 기능하기 위한 주프로그램을 포함한다.
제 2 통신 링크(133)는 세트(123)가 프로그램가능한 메모리(116) 또는 RAM(114)에 기록 또는 다운로딩할 수 있도록 프로그래머(122)를 입/출력 포트(118)에 결합시킨다. 하우징(102)내의 여러 성분들은 버스 시스템(120)에 의하여 서로 결합되며, 이는 파워 버스, 제어 버스 및 데이터 버스에 더하여 상태 신호 버스를 포함할 수 있다. 그러나 명료함을 위하여, 여러 버스들이 도 1에는 버스 시스템(120)으로서 도시되어 있다. 또한 도 1에는 본 발명과 관련이 없어 도시하지 않았지만, 당업자는 무선 통신 장치(101)가 키패드, 배터리 및 디스플레이와 같은 추가의 엘리멘트를 가진다는 것을 이해할 것이다.
상술한 바와 같이, 통상적인 무선 통신 시스템은 주프로그램 및 선택적 기능의 조합을 필요로 하며, 조합된 프로그램은 EEPROM에 프로그래밍된다. 본 발명은 하나 이상의 선택적 기능을 위한 다운로딩 처리로 하여금 주프로그램의 다운로딩 처리와 분리되게 한다. 도 2-4는 이것의 실행방법을 도시한다.
도 2는 본 발명의 전형적인 실시예의 프로그램가능한 메모리(116)의 도면이다. 주프로그램은 프로그램가능한 메모리(116)의 저장블록(메모리 위치;134)에 기록된다. 도 1의 세트(123)에 속해있는 번들 기능1, 기능2, 기능3은 각각 124,126, 및 128로 도시되어 있으며, 프로그램가능한 메모리(116)의 다른 저장 블록에 기록된다. 기능 1과 같은 각각의 번들은 또한 식별부(ID;136), 하나 이상의 포인터(138-140) 및 플래그(142)를 포함한다. 빈 저장 블록(152)은 추가의 향후 번들로 하여금 프로그램가능한 메모리(116)에 기록될 수 있게 한다.
상술한 바와 같이, 기능 1 번들은 데이터 및 실행가능 코드를 모두 포함할 수 있으며, 프로그램가능한 메모리(116)의 저장 블록(124)으로서 개략적으로 도시되어 있다. ID(136)는 기능 1 번들의 바이트 크기, 그 메모리 어드레스 및 번들 타입(예를 들면, 다이얼링 플랜)을 식별하는 코드와 같은 정보를 포함할 수 있다.
당업자에 공지된 포인터들은 일반적으로 기능 1 번들과 연관된 특정 세트의 데이터 또는 실행가능 서브루틴이 액세스할 수 있는 RAM(114) 또는 프로그램가능한 메모리(116)의 메모리 어드레스를 포함하는 변수들이다. 번들의 액세스 위치는 "엔트리 포인트"로서 가끔 참조된다. 각각의 번들은 다른 번들의 임의의 엔트리 포인트에 대하여 다수의 포인터를 포함할 수 있다. 예를 들어, 138로서 도시된 포인터 1은 기능 1 번들의 가동을 시작하는 저장 블록(134)의 메모리 위치를 지시할 수 있다. 다른 실시예로서, 139로 도시된 포인터 2는 기능 1 번들과 동시에 가동할 필요가 있는 다른 번들을 지시할 수 있으며, 따라서 기능 1 번들과 다른 번들을 다이나믹하게 링크할 수 있다. 이러한 방식으로, 포인터는 프로그램의 그룹 또는 프로그램의 일부를 각각 다이나믹하게 링크시킬 수 있으며, 단일 프로그램 또는 메모리 위치에 모든 프로그램을 조합하는 필요성을 제거할 수 있다.
플래그(142)는 특정 번들(124)이 유효한지 또는 EEPROM(116)에 성공적으로 로딩되었는지 또는 메모리 위치가 번들에 의하여 점유되었는지와 같은 표시 데이터를 제공한다. 도 2는 저장 블록(124)와 분리된 ID(136), 포인터(138-140) 및 플래그(142)를 도시하고 있지만, 이러한 정보는 또한 저장 블록(124)내에 저장될 수 있다고 이해될 수 있다. 추가적으로 도 2는 프로그램가능한 메모리(116)의 저장 블록(124,126,128)에 위치된 선택적 기능을 도시하는 반면, 당업자는 이러한 기능들의 일부가 RAM(114)의 비휘발성 부분에 기록될 수 있다고 이해할 것이다(도 1 참조). 만일 이것이 실행된다면, 비휘발성 RAM(114)의 정보는 적당한 포인터에 의하여 프로그램가능한 메모리(116)에 링크 및 액세스될 수 있다.
선택적인 기능 및 그 포인터의 다른 예는 저장 블록(126)의 기능 2 번들과 같이 도시된 데이터 암호화 계획이다. 정보를 암호화하는 데이터 및 실행가능 코드는 저장 블록(126)에 저장된다. 이러한 프로그램은 저장 블록(126)이 로딩되는 것을 지시하기 위하여 암호화 번들 및 플래그(150)을 나타내는 ID(144)를 가진다. 포인터(146,148)는 공용 및/또는 사설 암호해독 키가 각각 저장되는 메모리 위치(즉, 엔트리 포인트)를 지시한다. 키 및 유지 기능은 상기 기능에 외부적으로 저장될 수 있으며 상기 기능을 사용하는 호출자에 의하여 번들에 패스될 수 있다.
본 발명의 전형적인 실시예에서, 저장 블록(134)의 주프로그램은 임의의 선택적 기능(124,126,128)을 찾기 위하여 프로그램가능한 메모리(116)를 탐색하는 루틴을 포함한다. 이러한 루틴은 임의의 주어진 선택적 기능을 검색하는데 필요한 시간을 최소화하기 위하여 공지된 최적화 기술을 이용한다. 일단 선택적 기능이 위치되면, 주프로그램의 다른 루틴들은 선택적 기능을 활성화하기 위하여 선택적 기능과 상호 작용한다. 따라서 주프로그램이 선택적 기능들의 특정 메모리 위치를 처음부터 알 필요는 없다. 주프로그램은 단지 선택적 기능이 다운로딩될 수 있는 것을 아는 능력만을 가지면 되고, 선택적 기능을 위한 프로그램가능한 메모리(116)를 탐색할 필요만 있다.
본 발명의 다른 전형적인 실시예에서, 도 3에 도시된 링크 테이블(160)은 RAM(114)의 비휘발성 부분에 또는 프로그램가능한 메모리(116)에 선택적으로 또는 추가적으로 포함될 수 있다. 링크 테이블(160)은 각각의 번들(124,126,128)과 연관된 엔트리 포인트를 통상적으로 위치시키고 다이나믹하게 링크하기 위하여 하나 이상의 포인터(162,164,166)를 포함한다. 즉, 무선 통신 장치(101)의 주프로그램 또는 프로그래머(122)가 특정 번들에 대한 전체 프로그램가능한 메모리(116)를 검색하는 대신에, 주프로그램 또는 프로그래머(122)가 특정 번들의 위치를 즉각적으로 획득하기 위하여 링크 테이블(160)을 참조할 수 있다.
링크 테이블(160)은 다른 링크 테이블을 지시하는 포인터를 포함할 수 있으며, 이는 다음으로 추가의 번들 또는 링크 테이블을 지시할 수 있다. 이러한 방식으로, 시스템(100)의 여러 레벨의 번들은 포인터 및 링크 테이블에 의하여 함께 링크될 수 있다. 링크 테이블(160)의 전형적인 실시예는 또한 추가의 포인터들(다른 링크 테이블에 포인팅 또는 번들에 포인팅)로 하여금 새로운 번들로서 링크 테이블(160)에 추가될 수 있게 하는 위치(168)를 가질 수 있으며, 링크 테이블은 프로그램가능한 메모리(116)에 기록된다. 도 3에 도시되지는 않았지만, 링크 테이블(160)은 또한 각각의 포인터(162,164,166)와 연관된 플래그 또는 ID를 가질 수 있다. 예를 들어, 포인터(162)는 지시된 메모리 위치가 번들과 함께 로딩될 때를 나타내도록 플래그를 가질 수 있다.
저장 블록(134)의 주프로그램은 주프로그램과 링크 테이블(160) 사이의 적당한 상호 관계 및 링킹을 링크 테이블(160)에 제공하기 위하여 포인터(도시되지 않음)를 포함한다. 선택적으로, 링크 테이블(160)은 주프로그램 자체내에 통합될 수 있다. 게다가, 프로그램가능한 메모리(116)의 사용되지 않은 저장 블록은 선택적 기능의 향후 다운로딩을 위하여 미리 할당될 수 있으며, 링크 테이블(160)의 포인터에 의하여 개별적으로 어드레싱 및 벡터화될 수 있다. 링크 테이블(160)을 이용할 수 없는 다른 전형적인 실시예에서, 주프로그램은 각각의 선택적 기능을 활성화하는 선택적 기능 리스트 또는 서브루틴을 포함할 수 있다. 주프로그램은 이후에 통상적인 기능 호출 명령을 이용하여 나중에 다운로딩된 선택적 기능들을 식별 및 활성화시킬 수 있다.
링크 테이블(160)을 이용하는 본 발명의 전형적인 실시예에서, 주프로그램 및 링크 테이블(160)은 초기 다운로딩 처리과정 동안 조합된 프로그램으로서 함께 로딩된다. 선택적 기능은 이 시간에는 로딩될 필요가 없지만, 제작자는 상기 기능들에 대한 번들이 향후에 연속적으로 로딩되는 것을 기대하면서 암호화 및 다이얼링 플랜 포인트와 같은 링크 테이블(160)의 포인터를 포함할 수 있다. 즉, 주프로그램과 함께 미리 결정된 포인터를 갖는 링크 테이블(160)을 로딩함으로써, 주프로그램은 새로운 번들이 추가될 수 있는지, 번들이 무엇인지, 번들이 어디에 위치될 수 있는지를 인식하는 메카니즘을 가지며, 이후에 상기 번들에 다이나믹하게 링크할 수 있다. 이하에 설명되는 바와 같이, 링크 테이블(160)은 무선 통신 장치(101)에 처음으로 로딩될 때 비활성 디폴트 스테이지(inactive default stage)에 존재한다. 링크 테이블은 번들이 다운로딩될 때 프로그래머(122)에 의하여 시작될 때까지 디폴트 스테이지에 남아있다.
요약하면, 본 발명의 전형적인 실시예는 선택적 기능들로 하여금 주프로그램과는 분리되어 다운로드될 수 있게 한다. 선택적 기능 및 주프로그램은 분리되어 다운로드될 수 있지만, 그럼에도 불구하고 포인터의 사용에 의하여 서로 상호작용 및 액세스할 수 없다. 본 발명은 주프로그램이 단일 다운로드동안 선택적 기능과 조합될 수 있지만, 다음에 설명하는 바와 같이, 선택적 기능과 동시에 프로그램가능한 메모리(116)에 주프로그램을 기록하여야하는 필요성을 제거하며, 다이나믹 로딩 기능은 선택적 기능으로 하여금 전체 프로그램가능 메모리(116)를 재프로그래밍할 필요가 없이 추가 또는 변경될 수 있도록 한다. 예를 들어, 프로그램가능한 메모리(116)는 처음으로 미국에서 국내 사용을 위해 기능 2(즉, 암호화) 번들(126)의 버전으로 프로그래밍될 수 있다. 다음으로, 수출하기에 적당한 암호화 버전으로 국내 암호화 버전을 교체하는 것이 바람직하다. 시스템(100)의 다이나믹 로딩은 사용자로 하여금 필요하다면 전체 프로그램가능한 메모리(116)를 재프로그래밍할 필요가 없이 포인터외에 기능 2 번들(126)만을 재프로그래밍하도록 할 수 있다.
도 4는 도 2에 도시된 프로그램가능한 메모리의 다운로딩 처리과정을 도시한 흐름도이다. 다운로더(115)를 이용하는 실시예에서, 다운로더(115;도 1참조)는 이미 RAM(114)의 위치에 존재한다고 가정한다. 다운로더(115)는 프로그램가능한 메모리(116)를 프로그래밍하기 위하여 프로그래머(122)와 상호작용한다. 프로그래머(122) 및 다운로더(115)의 동작은 기술상 공지되어 있으며 본 명세서에서는 상세하게 설명하지 않는다.
본 발명의 전형적인 실시예의 단계 170에서, 무선 통신 장치(101)의 기본 동작과 연관된 주프로그램이 프로그래머(122)에 의하여 프로그램가능한 메모리(116)의 저장 블록(134)에 가장 먼저 다운로딩/기록된다. 링크 테이블(160)이 사용되는 실시예에서, 미리 결정된 포인터를 가지지만 비활성 디폴트 스테이지인 링크 테이블(160)은 단계 170에서 주프로그램과 함께 로딩된다. 링크 테이블(160)은 저장 블록(134)에 기록될 필요가 없다. 만일 필요하다면, 저장 블록(134)의 주프로그램은 링크 테이블(160)의 메모리 위치에 링크하는 포인터를 포함할 수 있다.
단계 172에서, 만일 제작자가 무선 통신 장치(101)에 임의의 추가 기능을 추가하기를 원하지 않는다면, 프로그래머(122)는 단계 182에서 다운로딩 과정을 종료하고, 무선 통신 장치(101)는 소비자를 위해 대기한다. 링크 테이블(160)은 만일 하나의 다운로딩만 존재한다면, 비활성 상태로 남아있는다.
그러나 만일 세트(123)의 번들(124,126,128,130)과 연관된 선택적 기능들이 추가된다면, 단계 174에서, 프로그래머(122)는 번들을 다운로딩하기 위하여 프로그램가능한 메모리(116)의 이용가능 저장 블록을 참조한다. 상술한 바와 같이, 번들이 미리 할당된 저장 블록에 다운로딩될 필요는 없다. 번들은 저장 블록(134)의 주프로그램이 다운로딩후에 번들을 위치시키기 위하여 프로그램가능한 메모리(116)를 검색하는 검색 루틴을 가지기 때문에 임의의 이용가능 저장 블록으로 다운로딩될 수 있다. 단계 174이전에, 제작자는 번들(124,126,128,130)을 개별 번들로서 또는 큰 번들을 형성하는 여러 번들의 조합으로서 프로그램가능한 메모리(116)에 다운로딩하는 것을 결정한다. 번들링 과정은 단계 174이전에 프로그래머(122)에 의하여 오프라인 수행된다.
선택적으로 링크 테이블(160)을 이용하는 실시예의 단계 174에서, 프로그래머(122)는 비활성 링크 테이블(160)을 시작하며, 링크 테이블(160)의 포인터가 번들을 위한 저장 블록을 디자인하는지를 결정하기 위하여 링크 테이블(160)을 판독한 후, 번들을 다운로딩하기 위하여 프로그램가능한 메모리(116)의 상기 저장 블록으로 향한다. 링크 테이블(160)은 프로그래머(122)에 의하여 일단 시작되면 액티브 상태로 남아있는다.
단계 176에서, 프로그래머(122) 또는 다운로더(115)는 프로그램가능한 메모리(116)의 저장 블록에 번들을 다운로딩한다. 단계 178에서, 응용가능 플래그(142 또는 150; 도 2참조)는 번들이 성공적으로 다운로딩되어 기능을 다하는지를 나타내기 위하여 프로그래머(122)에 의하여 세팅된다. 또한 링크 테이블(160)을 이용하는 실시예의 단계 178에서, 링크 테이블(160)의 적당한 포인터(162,164,166)의 플래그는 또한 어떠한 메모리 블록이 로딩되는지를 나타내기 위하여 프로그래머(122)에 의하여 세팅될 수 있다. 단계 178동안, 프로그래머(122)는 또한 만일 필요하다면, 추가의 번들이 다음의 로딩 절차에서 로딩될 수 있는 저장 블록에 새로운 포인터를 추가하기 위하여 위치(168)에서 링크 테이블(160)을 업데이트할 수 있다.
단계 176 및 178에서 프로그램가능한 메모리(116)로의 "번들"의 로딩으로서 넓게 설명되었지만, 상기 "번들"은 선택적 기능, 다른 링크 테이블, 일세트의 포인터, 주프로그램에 대한 변경 또는 이들 아이템들의 조합으로 이해될 수 있다. 따라서, 본 발명은 제작자로 하여금 여러 방식으로 프로그램가능한 메모리(116)의 현존 콘텐츠를 형성 및 업데이트할 수 있도록 하며, 프로그램가능한 메모리(116)에 다운로딩되는 번들타입에 의하여 제한받지 않는다.
번들이 프로그램가능한 메모리(116)에 다운로딩된 후에 만일 어떠한 추가 번들도 단계 180에서 추가되지 않는다면, 다운로딩 과정은 단계 182에서 완료된다. 만일 더 많은 번들이 추가될 필요가 있다면, 상술한 과정은 단계 174를 시작으로 반복된다.
요약하면, 도 4의 흐름도에 도시된 다운로딩 처리과정은 선택적 기능의 번들로 하여금 주프로그램과는 독립적으로 프로그램가능한 메모리(116)에 추가될 수 있도록 한다. 이 방식으로, 무선 통신 장치(101)는 초기 프로그래밍과는 독립적으로 커스터마이징될 수 있다.
본 발명의 특정 실시예들은 설명을 위하여 본 명세서에서 기술되었지만, 향후 본 발명의 사상 및 영역을 벗어나지 않는다면 여러 변경들이 이루어질 수 있다. 예를 들어, 상술한 실시예의 도면은 번들이 프로그램가능한 메모리(116)에 기록되는 것으로 도시되어 있지만, 번들의 일부, 전체 번들 또는 모든 번들이 RAM(114)의 비휘발성 부분에 저장될 수 있다. 상기의 번들은 포인터에 의하여 주프로그램 또는 서로에 대하여 다이나믹하게 링크된다. 따라서 본 발명은 첨부된 청구항을 제외하고는 제한받지않으며, 그 해석은 청구항의 해석 원칙을 따른다.

Claims (29)

  1. 무선 통신 장치로서,
    메모리;
    상기 무선 통신 장치의 동작을 제어하기 위하여 상기 메모리에 저장된 주프로그램;
    상기 주프로그램과 독립적으로 상기 메모리에 프로그램가능한 선택가능한 선택적 기능 세트(a set of selectable optional features);
    독립적으로 프로그래밍된 선택가능한 선택적 기능 세트중 적어도 하나의 세트와 연관된 식별부 - 상기 주프로그램은 상기 독립적으로 프로그래밍된 선택가능한 선택적 기능 세트중 적어도 하나의 세트와 상호작용하기 위하여 상기 식별부를 이용함 - ; 및
    상기 주프로그램을 상기 선택가능한 선택적 기능 세트와 연관시키고, 상기 선택가능한 선택적 기능 세트가 상기 메모리 내에 저장되는 시점을 나타내기 위하여 외부 프로그래머에 의해 세팅되는 표시자를 가지는 링킹 엘리먼트를 포함하는 무선 통신 장치.
  2. 제 1 항에 있어서, 상기 링킹 엘리먼트는 상기 주프로그램의 일부분이고, 상기 메모리내의 다수의 해당 저장 위치들을 식별하기 위한 다수의 포인터들을 포함하며, 상기 다수의 해당 저장 위치는 해당하는 선택가능한 선택적 기능을 세트내에 저장하는 것을 특징으로 하는 무선 통신 장치.
  3. 제 1 항에 있어서, 상기 주프로그램은 상기 선택가능한 선택적 기능 세트중 하나의 세트에 해당하는 저장 위치를 위해 메모리를 검색하기 위한 검색 프로그램을 포함하며, 상기 저장 위치는 상기 선택가능한 선택적 기능 세트중 하나의 세트가 저장 위치에 저장되는 시점을 나타내기 위한 표시자를 가지는 것을 특징으로 하는 무선 통신 장치.
  4. 제 1 항에 있어서, 상기 선택가능한 선택적 기능 세트는 상기 선택가능한 선택적 기능 세트중 하나의 세트가 저장되는 저장 위치를 식별하기 위한 포인터를 포함하는 것을 특징으로 하는 무선 통신 장치.
  5. 제 1 항에 있어서, 상기 선택가능한 선택적 기능 세트중 적어도 하나의 세트는 다이얼링 플랜 시스템, 암호 시스템, 브라우저 시스템, 또는 언어 시스템중에서 선택된 하나를 포함하는 것을 특징으로 하는 무선 통신 장치.
  6. 무선 통신 장치를 위한 프로그래밍 시스템으로서,
    상기 무선 통신 장치의 동작과 연관된 주프로그램을 저장하기 위한 제 1 저장 위치 및 상기 제 1 저장 위치와는 다른 제 2 저장 위치를 포함하는 프로그램가능한 메모리를 갖는 무선 통신 장치;
    상기 무선 통신 장치를 위한 선택가능한 선택적 기능 세트를 수신하기 위하여 상기 프로그램가능한 메모리에 결합된 포트;
    상기 제 2 저장 위치내의 저장을 위하여 상기 선택가능한 선택적 기능 세트를 상기 포트에 전송하도록 상기 포트에 결합되고, 상기 제 1 저장 위치에 주프로그램을 저장하는 것과는 독립적으로 상기 제 2 저장위치에 상기 선택가능한 선택적 기능 세트를 저장하는 프로그래머; 및
    상기 선택가능한 선택적 기능 세트와 상기 주프로그램을 연관시키고, 상기 선택가능한 선택적 기능 세트가 상기 제 2 저장 위치에 저장되는 시점을 나타내기 위해 상기 프로그래머에 의해 세팅되는 표시자를 가지는 링킹 엘리멘트를 포함하는 프로그래밍 시스템.
  7. 제 6 항에 있어서, 상기 링킹 엘리멘트는 상기 선택가능한 선택적 기능 세트를 상기 프로그램가능한 메모리에 저장할 위치를 상기 프로그래머에게 지시하도록 하는 포인터를 포함하는 것을 특징으로 하는 프로그래밍 시스템.
  8. 제 6 항에 있어서, 상기 링킹 엘리멘트는 상기 제 1 저장 위치와는 다른 상기 프로그램가능한 메모리의 저장 위치에 저장되는 것을 특징으로 하는 프로그래밍 시스템.
  9. 제 6 항에 있어서, 상기 선택가능한 선택적 기능 세트는 상기 프로그램가능한 메모리의 메모리 위치를 식별하기 위한 포인터를 포함하는 것을 특징으로 하는 프로그래밍 시스템.
  10. 제 6 항에 있어서, 상기 링킹 엘리멘트는 상기 프로그래머에 의하여 활성화될 때까지 비활성화를 유지하며, 상기 프로그래머는 상기 프로그래머가 상기 선택가능한 선택적 기능 세트를 상기 제 2 저장 위치에 저장하기 위하여 전송할 때 상기 링킹 엘리멘트를 활성화시키는 것을 특징으로 하는 프로그래밍 시스템.
  11. 무선 통신 장치를 위한 프로그래밍 시스템으로서,
    상기 무선 통신 장치의 동작과 연관된 주프로그램을 저장하기 위한 제 1 저장 위치 및 상기 제 1 저장 위치와는 다른 제 2 저장 위치를 포함하는 프로그램가능한 메모리를 갖는 무선 통신 장치;
    상기 무선 통신 장치를 위한 선택가능한 선택적 기능 세트를 수신하기 위하여 상기 프로그램가능한 메모리에 결합된 포트;
    상기 제 2 저장 위치내의 저장을 위하여 상기 선택가능한 선택적 기능 세트를 상기 포트에 전송하도록 상기 포트에 결합되고, 상기 제 1 저장 위치에 주프로그램을 저장하는 것과는 독립적으로 상기 제 2 저장 위치에 상기 선택가능한 선택적 기능 세트를 저장하는 프로그래머; 및
    상기 선택가능한 선택적 기능 세트와 상기 주프로그램을 연관시키고, 제 2 링킹 엘리먼트를 식별하는 포인터를 가지는 링킹 엘리먼트를 포함하며;
    상기 제 2 링킹 엘리먼트는 상기 프로그램가능한 메모리의 메모리 위치들을 식별하기 위한 다수의 포인터들을 가지는 프로그래밍 시스템.
  12. 무선 통신 장치를 위한 프로그래밍 시스템으로서,
    상기 무선 통신 장치의 동작과 연관된 주프로그램을 저장하기 위한 제 1 저장 위치 및 상기 제 1 저장 위치와는 다른 제 2 저장 위치를 포함하는 프로그램가능한 메모리를 가지는 무선 통신 장치;
    상기 무선 통신 장치를 위한 선택가능한 선택적 기능 세트를 수신하기 위하여 상기 프로그램가능한 메모리에 결합된 포트;
    상기 제 2 저장 위치내의 저장을 위하여 상기 선택가능한 선택적 기능 세트를 상기 포트에 전송하도록 상기 포트에 결합되고, 상기 제 1 저장 위치에 주프로그램을 저장하는 것과는 독립적으로 상기 제 2 저장 위치에 상기 선택가능한 선택적 기능 세트를 저장하는 프로그래머; 및
    상기 선택가능한 선택적 기능 세트와 상기 주프로그램을 연관시키기 위한 링킹 엘리먼트를 포함하며;
    상기 선택가능한 선택적인 기능 세트는 상기 프로그램가능한 메모리내의 다수의 상응하는 메모리 위치들을 식별하는 다수의 포인터들을 포함하는 제 2 링킹 엘리먼트를 가지는 프로그래밍 시스템.
  13. 무선 통신 장치를 위한 프로그래밍 시스템으로서,
    상기 무선 통신 장치의 동작과 연관된 주프로그램을 저장하기 위한 제 1 저장 위치 및 상기 제 1 저장 위치와는 다른 제 2 저장 위치를 포함하는 프로그램가능한 메모리를 가지는 무선 통신 장치;
    상기 무선 통신 장치를 위한 선택가능한 선택적 기능 세트를 수신하기 위하여 상기 프로그램가능한 메모리에 결합된 포트;
    상기 제 2 저장 위치내의 저장을 위하여 상기 선택가능한 선택적 기능 세트를 상기 포트에 전송하도록 상기 포트에 결합되고, 상기 제 1 저장 위치에 주프로그램을 저장하는 것과는 독립적으로 상기 제 2 저장 위치에 상기 선택가능한 선택적 기능 세트를 저장하는 프로그래머; 및
    상기 선택가능한 선택적 기능 세트와 상기 주프로그램을 연관시키기 위한 링킹 엘리먼트를 포함하며;
    상기 선택가능한 선택적인 기능 세트는 상기 선택가능한 선택적 기능 세트중 하나의 세트가 저장되는 상기 제 2 저장 위치내의 메모리 위치, 상기 메모리 위치의 크기, 또는 상기 선택가능한 선택적 기능 세트중 하나의 세트의 종류를 식별하기 위한 제 2 표시자를 가지는 프로그래밍 시스템.
  14. 무선 통신 장치로서,
    상기 무선 통신 장치의 동작과 연관된 주프로그램을 저장하는 제 1 저장 위치;
    상기 주프로그램과는 독립적으로 선택가능한 선택적 기능 세트를 저장하도록 프로그램가능한 제 2 저장 위치;
    상기 선택가능한 선택적 기능 세트와 상기 주프로그램을 연관시키고, 상기 제 2 저장 위치가 상기 선택가능한 선택적 기능 세트를 저장하도록 프로그래밍될 때 상기 주프로그램과 상기 선택가능한 선택적 기능 세트를 연관시키는 링킹 엘리먼트; 및
    상기 선택가능한 선택적 기능 세트가 상기 제 2 저장 위치에 저장되는 시점을 나타내기 위한 표시자를 포함하며;
    상기 선택가능한 선택적 기능 세트는 상기 제 1 또는 제 2 저장 위치에서 해다수의 해당하는 메모리 위치들을 식별하기 위한 다수의 포인터들을 가지는 제 2 링킹 엘리먼트를 포함하고, 상기 상응하는 메모리 위치는 상기 선택가능한 선택적 기능 세트중 하나의 세트를 저장하도록 프로그램가능한 무선 통신 장치.
  15. 제 14 항에 있어서, 상기 링킹 엘리멘트는 상기 제 1 저장 위치에 저장된 주프로그램의 일부인 것을 특징으로 하는 무선 통신 장치.
  16. 제 14 항에 있어서, 상기 선택가능한 선택적 기능 세트는 다이얼링 플랜 시스템, 암호화 시스템, 브라우저 시스템 또는 언어 시스템중 하나를 포함하는 것을 특징으로 하는 무선 통신 장치.
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
KR1020017011603A 1999-03-12 2000-03-13 무선 통신 장치의 저장 위치 세트에 기능들을 독립적으로 다운로딩하는 시스템 및 방법 KR100617669B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/267,824 US6449476B1 (en) 1999-03-12 1999-03-12 System and method for independently downloading features into a set of storage locations in a wireless communication device
US09/267,824 1999-03-12

Publications (2)

Publication Number Publication Date
KR20020006522A KR20020006522A (ko) 2002-01-19
KR100617669B1 true KR100617669B1 (ko) 2006-08-28

Family

ID=23020275

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020017011603A KR100617669B1 (ko) 1999-03-12 2000-03-13 무선 통신 장치의 저장 위치 세트에 기능들을 독립적으로 다운로딩하는 시스템 및 방법

Country Status (12)

Country Link
US (1) US6449476B1 (ko)
EP (1) EP1161845A1 (ko)
JP (2) JP4638049B2 (ko)
KR (1) KR100617669B1 (ko)
CN (1) CN1343431B (ko)
AU (1) AU761631B2 (ko)
BR (1) BR0008913A (ko)
CA (1) CA2367193C (ko)
HK (1) HK1043013A1 (ko)
IL (2) IL145318A0 (ko)
MX (1) MXPA01009197A (ko)
WO (1) WO2000054530A1 (ko)

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
US7966078B2 (en) 1999-02-01 2011-06-21 Steven Hoffberg Network media appliance system and method
US6449476B1 (en) * 1999-03-12 2002-09-10 Qualcomm Incorporated System and method for independently downloading features into a set of storage locations in a wireless communication device
GB0003313D0 (en) * 2000-02-15 2000-04-05 Koninkl Philips Electronics Nv Software reconfiguration of communications apparatus
US6993328B1 (en) * 2000-05-08 2006-01-31 Nokia Corporation Method for over the air mobile station management
JP2001356925A (ja) * 2000-06-12 2001-12-26 Nec Corp 携帯電話機
GB2366697A (en) 2000-08-31 2002-03-13 Nokia Mobile Phones Ltd Transmission of user profile via messaging service
US7096010B2 (en) * 2000-11-30 2006-08-22 Qualcomm Inc. Method and apparatus for defining and executing features in a personal wireless handset
JP2002185579A (ja) * 2000-12-08 2002-06-28 Nec Corp 携帯電話端末のアプリケーションバックアップ方法
FR2821231A1 (fr) * 2001-02-19 2002-08-23 Bull Cp8 Procede d'administration d'une carte d'abonne pour un equipement de telephonie mobile du type a lecteur auxiliaire et systeme embarque pour la mise en oeuvre du procede
DE10124139A1 (de) * 2001-05-17 2002-11-21 Philips Corp Intellectual Pty Verfahren und Vorrichtung zur Sicherung der Datenübertragung zwischen einem Zentralprozessor und einem Speicher
US6941133B2 (en) 2001-05-18 2005-09-06 Qualcomm Inc. Dynamic loading and creation of functional objects in a wireless device
US7328007B2 (en) * 2001-07-26 2008-02-05 Kyocera Wireless Corp. System and method for organizing wireless communication device system software
US7143407B2 (en) * 2001-07-26 2006-11-28 Kyocera Wireless Corp. System and method for executing wireless communications device dynamic instruction sets
US9554268B2 (en) 2001-07-26 2017-01-24 Kyocera Corporation System and method for updating persistent data in a wireless communications device
US7159214B2 (en) * 2001-07-26 2007-01-02 Kyocera Wireless Corp. System and method for compacting field upgradeable wireless communication device software code sections
US7184793B2 (en) * 2001-07-26 2007-02-27 Kyocera Wireless Corp. System and method for over the air area code update
US7197302B2 (en) 2001-07-26 2007-03-27 Kyocera Wireless Corp. System and method for interchangeable modular hardware components for wireless communication devices
US7184759B2 (en) * 2001-07-26 2007-02-27 Kyocera Wireless Corp. Modular software components for wireless communication devices
US7027806B2 (en) * 2001-07-26 2006-04-11 Kyocera Wireless, Corp. System and method for field downloading a wireless communications device software code section
US7386846B2 (en) * 2001-07-26 2008-06-10 Kyocera Wireless Corp. System and method for the management of wireless communications device system software downloads in the field
US7200389B2 (en) * 2001-07-26 2007-04-03 Kyocera Wireless Corp. Dynamic interface software for wireless communication devices
US6961537B2 (en) * 2001-08-10 2005-11-01 Kyocera Wireless Corp. System and method for peer-to-peer handset communication
US7254386B2 (en) 2001-08-10 2007-08-07 Kyocera Wireless Corp. System and method for improved security in handset reprovisioning and reprogramming
FI20011985A (fi) * 2001-10-12 2003-04-13 Nokia Corp Muistikorttiväline informaation siirtämiseksi sovelluslaitteen muistikorttipaikan ja langattoman päätelaitteen välillä
CA2410118C (en) * 2001-10-26 2007-12-18 Research In Motion Limited System and method for controlling configuration settings for mobile communication devices and services
DE10153946A1 (de) * 2001-11-06 2003-05-28 T Mobile Deutschland Gmbh Verfahren zur Vereinheitlichung der Bediensteuerung bei Mobilfunkendgeräten
US20030120911A1 (en) * 2001-12-20 2003-06-26 Muench-Casanova Stephen L. Method of reprogramming modules
JP3980901B2 (ja) * 2002-02-12 2007-09-26 沖電気工業株式会社 デジタル信号処理装置
US8126889B2 (en) 2002-03-28 2012-02-28 Telecommunication Systems, Inc. Location fidelity adjustment based on mobile subscriber privacy profile
US9154906B2 (en) 2002-03-28 2015-10-06 Telecommunication Systems, Inc. Area watcher for wireless network
US8918073B2 (en) 2002-03-28 2014-12-23 Telecommunication Systems, Inc. Wireless telecommunications location based services scheme selection
US8027697B2 (en) 2007-09-28 2011-09-27 Telecommunication Systems, Inc. Public safety access point (PSAP) selection for E911 wireless callers in a GSM type system
US8290505B2 (en) 2006-08-29 2012-10-16 Telecommunications Systems, Inc. Consequential location derived information
US7426380B2 (en) 2002-03-28 2008-09-16 Telecommunication Systems, Inc. Location derived presence information
US8666397B2 (en) 2002-12-13 2014-03-04 Telecommunication Systems, Inc. Area event handling when current network does not cover target area
US20040235459A1 (en) * 2003-05-23 2004-11-25 Nokia Corporation Systems and methods for generating a feature list indicating the activated features of a mobile station
US20040266417A1 (en) * 2003-06-26 2004-12-30 David Janas Wirelessly programming memory devices
US7424293B2 (en) 2003-12-02 2008-09-09 Telecommunication Systems, Inc. User plane location based service using message tunneling to support roaming
US7260186B2 (en) 2004-03-23 2007-08-21 Telecommunication Systems, Inc. Solutions for voice over internet protocol (VoIP) 911 location services
US20080126535A1 (en) 2006-11-28 2008-05-29 Yinjun Zhu User plane location services over session initiation protocol (SIP)
US20080090546A1 (en) 2006-10-17 2008-04-17 Richard Dickinson Enhanced E911 network access for a call center using session initiation protocol (SIP) messaging
US20050160414A1 (en) * 2004-01-21 2005-07-21 Nokia Corporation System and method for dynamically adding features to software applications
JP2005352996A (ja) * 2004-06-14 2005-12-22 Ntt Docomo Inc 移動通信端末及びアプリケーション制御方法
US6985105B1 (en) 2004-10-15 2006-01-10 Telecommunication Systems, Inc. Culled satellite ephemeris information based on limiting a span of an inverted cone for locating satellite in-range determinations
US7629926B2 (en) 2004-10-15 2009-12-08 Telecommunication Systems, Inc. Culled satellite ephemeris information for quick, accurate assisted locating satellite location determination for cell site antennas
US7353034B2 (en) 2005-04-04 2008-04-01 X One, Inc. Location sharing and tracking using mobile phones or other wireless devices
US8660573B2 (en) 2005-07-19 2014-02-25 Telecommunications Systems, Inc. Location service requests throttling
US9282451B2 (en) 2005-09-26 2016-03-08 Telecommunication Systems, Inc. Automatic location identification (ALI) service requests steering, connection sharing and protocol translation
US7825780B2 (en) 2005-10-05 2010-11-02 Telecommunication Systems, Inc. Cellular augmented vehicle alarm notification together with location services for position of an alarming vehicle
US7907551B2 (en) 2005-10-06 2011-03-15 Telecommunication Systems, Inc. Voice over internet protocol (VoIP) location based 911 conferencing
US8467320B2 (en) 2005-10-06 2013-06-18 Telecommunication Systems, Inc. Voice over internet protocol (VoIP) multi-user conferencing
US8150363B2 (en) 2006-02-16 2012-04-03 Telecommunication Systems, Inc. Enhanced E911 network access for call centers
US8059789B2 (en) 2006-02-24 2011-11-15 Telecommunication Systems, Inc. Automatic location identification (ALI) emergency services pseudo key (ESPK)
US7471236B1 (en) 2006-03-01 2008-12-30 Telecommunication Systems, Inc. Cellular augmented radar/laser detector
US7899450B2 (en) 2006-03-01 2011-03-01 Telecommunication Systems, Inc. Cellular augmented radar/laser detection using local mobile network within cellular network
US9167553B2 (en) 2006-03-01 2015-10-20 Telecommunication Systems, Inc. GeoNexus proximity detector network
US8208605B2 (en) 2006-05-04 2012-06-26 Telecommunication Systems, Inc. Extended efficient usage of emergency services keys
WO2008057477A2 (en) 2006-11-03 2008-05-15 Telecommunication Systems, Inc. Roaming gateway enabling location based services (lbs) roaming for user plane in cdma networks without requiring use of a mobile positioning center (mpc)
US8050386B2 (en) 2007-02-12 2011-11-01 Telecommunication Systems, Inc. Mobile automatic location identification (ALI) for first responders
US8185087B2 (en) 2007-09-17 2012-05-22 Telecommunication Systems, Inc. Emergency 911 data messaging
US9130963B2 (en) 2011-04-06 2015-09-08 Telecommunication Systems, Inc. Ancillary data support in session initiation protocol (SIP) messaging
US7929530B2 (en) 2007-11-30 2011-04-19 Telecommunication Systems, Inc. Ancillary data support in session initiation protocol (SIP) messaging
KR101185111B1 (ko) * 2008-01-11 2012-09-21 엔에이치엔(주) 웹 런칭 시스템 및 방법
DE102008020343A1 (de) 2008-04-23 2009-10-29 Giesecke & Devrient Gmbh Portabler Datenträger
US8068587B2 (en) 2008-08-22 2011-11-29 Telecommunication Systems, Inc. Nationwide table routing of voice over internet protocol (VOIP) emergency calls
US8892128B2 (en) 2008-10-14 2014-11-18 Telecommunication Systems, Inc. Location based geo-reminders
WO2010044837A1 (en) 2008-10-14 2010-04-22 Telecommunication Systems, Inc. Location based proximity alert
CN101437224A (zh) * 2008-12-22 2009-05-20 中兴通讯股份有限公司 移动终端软件的更新方法和移动终端
US9301191B2 (en) 2013-09-20 2016-03-29 Telecommunication Systems, Inc. Quality of service to over the top applications used with VPN
US8867485B2 (en) 2009-05-05 2014-10-21 Telecommunication Systems, Inc. Multiple location retrieval function (LRF) network having location continuity
WO2012005769A1 (en) 2010-07-09 2012-01-12 Telecommunication Systems, Inc. Location privacy selector
US8336664B2 (en) 2010-07-09 2012-12-25 Telecommunication Systems, Inc. Telematics basic mobile device safety interlock
US8942743B2 (en) 2010-12-17 2015-01-27 Telecommunication Systems, Inc. iALERT enhanced alert manager
US8688087B2 (en) 2010-12-17 2014-04-01 Telecommunication Systems, Inc. N-dimensional affinity confluencer
WO2012141762A1 (en) 2011-02-25 2012-10-18 Telecommunication Systems, Inc. Mobile internet protocol (ip) location
US8649806B2 (en) 2011-09-02 2014-02-11 Telecommunication Systems, Inc. Aggregate location dynometer (ALD)
US9479344B2 (en) 2011-09-16 2016-10-25 Telecommunication Systems, Inc. Anonymous voice conversation
WO2013048551A1 (en) 2011-09-30 2013-04-04 Telecommunication Systems, Inc. Unique global identifier for minimizing prank 911 calls
US9264537B2 (en) 2011-12-05 2016-02-16 Telecommunication Systems, Inc. Special emergency call treatment based on the caller
US9313637B2 (en) 2011-12-05 2016-04-12 Telecommunication Systems, Inc. Wireless emergency caller profile data delivery over a legacy interface
US8984591B2 (en) 2011-12-16 2015-03-17 Telecommunications Systems, Inc. Authentication via motion of wireless device movement
US9384339B2 (en) 2012-01-13 2016-07-05 Telecommunication Systems, Inc. Authenticating cloud computing enabling secure services
US8688174B2 (en) 2012-03-13 2014-04-01 Telecommunication Systems, Inc. Integrated, detachable ear bud device for a wireless phone
US9307372B2 (en) 2012-03-26 2016-04-05 Telecommunication Systems, Inc. No responders online
US9544260B2 (en) 2012-03-26 2017-01-10 Telecommunication Systems, Inc. Rapid assignment dynamic ownership queue
US9338153B2 (en) 2012-04-11 2016-05-10 Telecommunication Systems, Inc. Secure distribution of non-privileged authentication credentials
WO2014028712A1 (en) 2012-08-15 2014-02-20 Telecommunication Systems, Inc. Device independent caller data access for emergency calls
US9208346B2 (en) 2012-09-05 2015-12-08 Telecommunication Systems, Inc. Persona-notitia intellection codifier
US9456301B2 (en) 2012-12-11 2016-09-27 Telecommunication Systems, Inc. Efficient prisoner tracking
US8983047B2 (en) 2013-03-20 2015-03-17 Telecommunication Systems, Inc. Index of suspicion determination for communications request
US9408034B2 (en) 2013-09-09 2016-08-02 Telecommunication Systems, Inc. Extended area event for network based proximity discovery
US9516104B2 (en) 2013-09-11 2016-12-06 Telecommunication Systems, Inc. Intelligent load balancer enhanced routing
US9479897B2 (en) 2013-10-03 2016-10-25 Telecommunication Systems, Inc. SUPL-WiFi access point controller location based services for WiFi enabled mobile devices

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5046082A (en) * 1990-05-02 1991-09-03 Gte Mobile Communications Service Corporation Remote accessing system for cellular telephones
US5109403A (en) * 1990-05-11 1992-04-28 Goldstar Products Co., Limited System for programming of features of a mobile cellular telephone unit
JPH04354445A (ja) * 1991-05-31 1992-12-08 Sony Corp デジタルコードレス電話装置
JPH0594289A (ja) * 1991-10-01 1993-04-16 Daikin Ind Ltd 汎用化アプリケーシヨンシステム
US5418837A (en) * 1993-07-30 1995-05-23 Ericsson-Ge Mobile Communications Inc. Method and apparatus for upgrading cellular mobile telephones
JPH0774744A (ja) * 1993-08-31 1995-03-17 Univ Waseda 情報提供方式
FI955188A (fi) 1995-10-30 1997-06-24 Nokia Telecommunications Oy Matkaviestimen ohjelmiston ylläpito
US5625339A (en) * 1996-01-08 1997-04-29 Minnesota Mining And Manufacturing Company Apparatus for changing the status of magnetic markers in an electronic article surveillance system
JPH09200682A (ja) * 1996-01-12 1997-07-31 Nippon Lsi Card Kk 携帯端末機及びそれを用いた映像・音声情報記録方法
JPH10271562A (ja) * 1997-03-25 1998-10-09 Taito Corp ゲーム動作が可能な移動体通信端末
US6029065A (en) * 1997-05-05 2000-02-22 Nokia Mobile Phones, Ltd. Remote feature code programming for mobile stations
SE512110C2 (sv) 1997-06-17 2000-01-24 Ericsson Telefon Ab L M System och förfarande för att kundanpassa trådlösa kommunikationsenheter
US6125287A (en) * 1997-09-05 2000-09-26 Fujitsu Limited Wireless telephone having an improved user interface
US6449476B1 (en) * 1999-03-12 2002-09-10 Qualcomm Incorporated System and method for independently downloading features into a set of storage locations in a wireless communication device

Also Published As

Publication number Publication date
WO2000054530A1 (en) 2000-09-14
CN1343431A (zh) 2002-04-03
IL145318A (en) 2006-10-31
JP2011040074A (ja) 2011-02-24
IL145318A0 (en) 2002-06-30
CA2367193C (en) 2008-12-23
CN1343431B (zh) 2011-07-06
JP4638049B2 (ja) 2011-02-23
MXPA01009197A (es) 2002-08-12
AU3527300A (en) 2000-09-28
EP1161845A1 (en) 2001-12-12
US6449476B1 (en) 2002-09-10
BR0008913A (pt) 2002-09-24
KR20020006522A (ko) 2002-01-19
CA2367193A1 (en) 2000-09-14
HK1043013A1 (zh) 2002-08-30
AU761631B2 (en) 2003-06-05
JP2002539691A (ja) 2002-11-19

Similar Documents

Publication Publication Date Title
KR100617669B1 (ko) 무선 통신 장치의 저장 위치 세트에 기능들을 독립적으로 다운로딩하는 시스템 및 방법
JP4106020B2 (ja) ハンドセットの再プロビジョニングおよび再プログラミングにおけるセキュリティを改善するシステムおよび方法
JP4953465B2 (ja) 無線通信デバイスシステムソフトウエアダウンロードの管理のための方法およびデバイス
US7027806B2 (en) System and method for field downloading a wireless communications device software code section
JPH02214994A (ja) Icカード
WO2004066091A2 (en) Update system capable of updating software across multiple flash chips
US20010052066A1 (en) Dynamic field patchable microarchitecture
US20020065958A1 (en) System and method for implementing a self-activating embedded application
CN109710287A (zh) 一种热更新方法、装置及计算机存储介质
JP4742469B2 (ja) 複数のosを用いるicカード、icカード処理装置および処理方法
US20030022665A1 (en) System and method for organizing field upgradable wireless communication device software
US9554268B2 (en) System and method for updating persistent data in a wireless communications device
JP2001093030A (ja) 自動販売機制御装置
JP2001209763A (ja) 1チップマイクロコンピュータおよびそれを内蔵したicカード
JP2014182467A (ja) 情報記憶媒体、データ選択処理プログラム、及びデータ選択処理方法
KR100578642B1 (ko) 부트 스트랩 로더가 없는 cpu에서 플레쉬 이이피롬을 갱신하는 장치 및 방법
KR20010076910A (ko) 프로그램 멀티 부팅 방법
JPH0934515A (ja) プログラミング機器
JP2001022573A (ja) 電子機器
JPH09288567A (ja) 通信機器

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: 20120727

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130729

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140730

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 14