KR100865640B1 - 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치 - Google Patents

무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치 Download PDF

Info

Publication number
KR100865640B1
KR100865640B1 KR1020077004513A KR20077004513A KR100865640B1 KR 100865640 B1 KR100865640 B1 KR 100865640B1 KR 1020077004513 A KR1020077004513 A KR 1020077004513A KR 20077004513 A KR20077004513 A KR 20077004513A KR 100865640 B1 KR100865640 B1 KR 100865640B1
Authority
KR
South Korea
Prior art keywords
application
components
memory
component
applications
Prior art date
Application number
KR1020077004513A
Other languages
English (en)
Other versions
KR20070032396A (ko
Inventor
브라이언 미니어
미첼 비 올리버
리차드 웨인 3세 가드너
필 티엔 누옌
에릭 제이 렉벤
스티븐 에이 스프리그
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 KR1020077004513A priority Critical patent/KR100865640B1/ko
Publication of KR20070032396A publication Critical patent/KR20070032396A/ko
Application granted granted Critical
Publication of KR100865640B1 publication Critical patent/KR100865640B1/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
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0203Power saving arrangements in the radio access network or backbone network of wireless communication networks
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

셀룰러 전화기, 퍼스널 디지털 어시스턴스, 페이저 또는 다른 컴퓨터 플랫폼 같은 무선 디바이스 상에서 소프트웨어 애플리케이션 컴포넌트의 삭제 및 리로딩을 관리하는 시스템 및 방법. 무선 디바이스는 하나 이상의 애플리케이션 컴포넌트와 애플리케이션-관련 데이터를 갖는 하나 이상의 상주 실행가능 소프트웨어 애플리케이션을 각각 갖는다. 무선 디바이스는 무선 디바이스 상의 리소스를 소거하기 위해서 애플리케이션-관련 데이터의 손실없이 상주 소프트웨어 애플리케이션의 하나 이상의 애플리케이션 컴포넌트를 선택적으로 삭제하고, 애플리케이션을 실행하기 위해서 무선 디바이스 상에 재인스톨될 필요가 있는 삭제된 애플리케이션 컴포넌트를 송신하기 위해서 무선 네트워크를 통해서 애플리케이션 다운로드 서버를 선택적으로 프롬프트한다.
무선 디바이스, 소프트웨어 애플리케이션, 다운로드 서버

Description

무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트 삭제 및 리로딩을 위한 시스템 및 장치 {SYSTEM AND METHOD FOR TEMPORARY APPLICATION COMPONENT DELETION AND RELOAD ON A WIRELESS DEVICE}
도 1 은 무선 네트워크를 통해서 하나 이상의 애플리케이션 다운로드 서버와 선택적 통신을 하는 무선 디바이스상의 소프트웨어 애플리케이션 컴포넌트의 일시적 삭제 및 리로딩을 관리하는 본 발명의 대표적인 시스템을 나타내는 도면이다.
도 2 은 서로다른 무선 디바이스와 애플리케이션 다운로드 서버와 데이터베이스사이에 통신을 제공하는 대표적인 무선 네트워크의 하드웨어 부품의 블록도이다.
도 3 은 그 구성 컴포넌트를 갖는 애플리케이션을 구체적으로 나타내는 무선 디바이스 플랫폼상에 상주하는 파일 테이블이다.
도 4 은 무선 디바이스상의 애플리케이션 컴포넌트의 선택적 삭제를 나타내는 플로우차트이다.
도 5 는 무선 디바이스상에 애플리케이션을 복원하여 애플리케이션이 다시 실행가능하게 되도록 무선 디바이스가 애플리케이션 다운로드 서버로부터 애플리케이션 컴포넌트를 복구하는 것을 나타내는 플로우차트이다.
본 발명은 일반적으로 데이터 네트워크, 및 그 데이터 네트워크를 통한 컴퓨터 통신에 관한 것이다. 보다 구체적으로, 본 발명은 무선 데이터 네트워크를 통해서 하나 이상의 애플리케이션 다운로드 서버와 선택적 통신을 하는 무선 디바이스상의 소프트웨어 애플리케이션들과 그들의 컴포넌트의 인스톨 및 삭제에 관한 것이다.
셀룰러 전화기 같은 무선 디바이스는 무선 네트워크를 통해서 보이스 및 데이터를 포함하는 패킷을 통신한다. 셀룰러 전화기 자체는 향상된 컴퓨팅 능력을 갖도록 제조되고 있으며, 퍼스널 컴퓨터와 휴대용 퍼스널 디지털 어시스턴스 (PDA) 와 동등하게 되어 가고 있다. 이들 "스마트" 셀룰러 전화기는, 셀룰러 전화기에서 전부 실행가능한 소프트웨어 애플리케이션 (일반적으로, "프로그램" 이라고 함) 을 소프트웨어 개발자가 만들어낼 수 있게 하는 그들의 로컬 컴퓨터 플랫폼상으로 애플리케이션 프로그래밍 인터페이스 (API) 를 인스톨하였다. API 는 무선 디바이스 시스템 소프트웨어와 소프트웨어 애플리케이션사이에 위치하여, 소프트웨어 개발자에게 특정한 셀룰러 전화기 시스템 소스 코드를 갖도록 요구하지 않고서 셀룰러전화기 컴퓨팅 기능이 애플리케이션에 이용가능하도록 한다.
소프트웨어 애플리케이션은 무선 전화기가 제조되는 시점에 미리 로딩될 수 있거나, 사용자가 나중에 추가적인 프로그램이 셀룰러 원격통신 캐리어 네트워크를 통하여 다운로드되도록 요구할 수 있으며, 여기서 다운로드된 애플리케이션은 무선 전화기상에서 실행가능하다. 그결과, 무선 전화기의 사용자는 게임, 인쇄 매체, 주식 업데이트, 뉴스, 또는 무선 네트워크를 통한 다운로드가 가능한 임의의 다른 유형의 정보나 애플리케이션 같은 애플리케이션의 선택적 다운로딩을 통하여 그들의 무선 전화기를 맞춤제작할 수 있다. 셀룰러 전화기 리소스를 관리하기 위해서, 무선 전화기의 사용자는, 저장 공간을 소거하여 새로운 애플리케이션이 소거된 스토리지상에 로딩될 수 있도록 무선 전화기 플랫폼으로부터 애플리케이션과 데이터를 의도적으로 삭제한다.
퍼스널 컴퓨터와 PDA 의 큰 플랫폼과는 대조적으로, 무선 디바이스는 비필수적인 애플리케이션에 사용되는 스토리지와 프로세싱 같은 제한된 리소스를 갖는다. 일반적으로, 원격통신 애플리케이션은 시스템 리소스의 사용의 우선순위를 갖고, 다른 애플리케이션에는 이용가능한 리소스가 할당된다. 이와같이, 무선 디바이스는 애플리케이션에 대한 모든 파일들을 보유하기 위한 제한된 용량을 갖으며, 리소스의 관리는 무선 디바이스에 다운로드되도록 요구되는 새로운 애플리케이션에 대한 공간을 만들기 위해서 애플리케이션을 삭제하는 전화기 사용자의 판단에 맡겨진다. 그렇지 않은 경우, 무선 디바이스는 보유하고 실행할 리소스를 갖지 않기 때문에 애플리케이션을 다운로드하지 않게 된다.
무선 디바이스상의 리소스를 비우고자 할 때, 사용자는 일반적으로 전체 상주 애플리케이션을 디스에이블시키지 않고서는 상주 애플리케이션의 일정 컴포넌트를 제거할 수 없다. 사용자가 특정한 컴포넌트를 제거하고자 하는 경우, 이러한 행동은 디스에이블된 상주 애플리케이션이 완전한 리인스톨없이 다시 복원될 수 없기 때문에 리소스를 비우려는 의도에 반하게 될 수 있다. 주요 애플리케이션이 실행가능하지 않을지라도, 쓸모없는 삭제되지 않는 애플리케이션 컴포넌트는 여전히 불필요하게 저장 공간을 차지한다. 무선 디바이스상의 상주 소프트웨어 애플리케이션에 대한 이런 전부냐 무냐의 삭제 요건은 무선 디바이스상에 상주하고 사용자에게 이용가능한 애플리케이션의 개수를 크게 제한한다.
따라서, 무선 디바이스상의 컴퓨터 리소스의 이용을 최대화하기 위해서 라이센스 및 사용자 특정 데이터 같은 애플리케이션에 대한 중요 데이터를 유지하면서 애플리케이션의 일정한 컴포넌트를 제거할 수 있는 무선 디바이스를 제공하는 것이 유리할 수 있다. 무선 디바이스가 삭제된 소프트웨어 컴포넌트가 애플리케이션을 다시 실행하도록 요구할 때, 무선 디바이스는 무선 네트워크를 통하여 소프트웨어 컴포넌트를 얻을 수 있다. 이와 같이, 본 발명이 본질적으로 지향하는 것은, 무선 디바이스에서의 소프트웨어 애플리케이션 컴포넌트의 선택적 삭제 및 리로딩을 제어할 수 있는 시스템 및 방법을 제공하는 것이다.
본 발명은 셀룰러 전화기, 퍼스널 디지털 어시스턴스, 페이저, 또는 다른 컴퓨터 플랫폼 같은 무선 디바이스상의 소프트웨어 애플리케이션 컴포넌트의 로딩과 삭제를 관리하는 시스템 및 방법이다. 무선 디바이스는, 소프트웨어 라이센스, 사용자-특정 데이터 같은 하나 이상의 애플리케이션 컴포넌트와 애플리케이션-관련 데이터를 각각 포함하는 하나 이상의 상주 실행가능 소프트웨어 애플리케이션을 가 지며, 무선 디바이스는 무선 네트워크와 선택적 통신을 한다. 무선 디바이스와 선택적으로 통신하고, 소프트웨어 애플리케이션과 애플리케이션 컴포넌트를 무선 디바이스로 다운로드하는 무선 네트워크상에는 하나 이상의 애플리케이션 다운로드 서버가 존재한다.
시스템 리소스와, 특히 저장 공간을 관리하기 위해서, 무선 디바이스는 애플리케이션-관련 데이터의 손실없이 하나 이상의 상주 소프트웨어 애플리케이션의 하나 이상의 애플리케이션 컴포넌트를 선택적으로 삭제한 후, 애플리케이션이 무선 디바이스상에 실행되도록 다시 요청되는 경우 하나 이상의 애플리케이션 컴포넌트의 송신을 위하여 무선 네트워크를 통해서 애플리케이션 다운로드 서버를 선택적으로 프롬프트한다. 일단 하나 이상의 애플리케이션 컴포넌트가 애플리케이션 다운로드 서버로부터 수신되는 경우, 무선 디바이스는 컴포넌트가 이전에 삭제된 상주 애플리케이션에 대해 하나 이상의 애플리케이션 컴포넌트를 인스톨하여 상주 애플리케이션이 무선 디바이스상에서 다시 실행가능하게 된다.
애플리케이션-관련 데이터는 삭제되는 경우 일반적으로 복구불가능한 데이터이다. 애플리케이션-관련 데이터의 예로서는, 라이센스 (license) 같은 소프트웨어 애플리케이션을 실행하는 데 요청되는 데이터일 수 있거나, 라이센스가 없는 또는 라이센스가 있는 상태의, 개인 식별 데이터, 게임 고득점, 및 주소록 같은 사용자-특정 데이터일 수 있다. 또한, 애플리케이션-관련 데이터는 특정 운전자 또는 애플리케이션 필수 모듈 (Application Critical Module) 같은 무선 디바이스상의 애플리케이션을 실행하는 데 필요한 애플리케이션 컴포넌트를 포함할 수 있 다.
따라서, 무선 디바이스상에 상주하는 하나 이상의 소프트웨어 애플리케이션의 컴포넌트의 로딩과 삭제를 관리하는 방법은, 애플리케이션-관련 데이터의 손실없이 하나 이상의 상주 소프트웨어 애플리케이션의 하나 이상의 애플리케이션 컴포넌트를 무선 디바이스에서 선택적으로 삭제하는 단계, 하나 이상의 삭제된 애플리케이션 컴포넌트의 송신을 위해서 애플리케이션 다운로드 서버를 프롬프트하는 무선 디바이스로부터 애플리케이션 다운로드 서버로 통신 링크를 선택적으로 확립하는 단계; 및 송신된 하나 이상의 애플리케이션 컴포넌트를 인스톨하여 그 인스톨된 애플리케이션 컴포넌트를 포함하는 하나 이상의 상주 애플리케이션이 무선 디바이스상에서 실행가능하게 되는 단계를 포함한다.
바람직하게는, 통신 링크를 확립하는 단계는, 특히 무선 디바이스가 셀룰러 전화기 또는 페이저인 경우에, 셀룰러 원격통신 네트워크를 통하여 통신 링크를 확립하는 것이다. 일반적으로, 통신 링크의 확립은 무선 디바이스가 하나 이상의 관련 컴포넌트가 삭제된 상주 소프트웨어 애플리케이션을 실행하고자 할 때 발생하며, 무선 디바이스는 필요한 경우 삭제된 컴포넌트의 카피를 복구하기 위해서 애플리케이션 다운로드 서버에 통신 링크를 확립하도록 사용자를 프롬프트할 수 있다.
바람직하게는, 무선 디바이스에서 하나 이상의 상주 소프트웨어 애플리케이션의 하나 이상의 애플리케이션 컴포넌트를 선택적으로 삭제하는 단계는, 리소스를 필요로 하는 새로운 소프트웨어 애플리케이션을 다운로드하기 위해서 사용자가 리소스를 소거하기를 원하는 경우, 무선 디바이스 사용자의 명령에 따른다. 한 편, 삭제는, 시스템 리소스를 비우는 것을 필요로 하는 애플리케이션을 다운로드하고자 하는 사용자의 행동에 따라서 그 리소스를 관리하는 무선 디바이스에 의해 결정된 대로 행해진다.
또한, 본 발명은 진보적인 시스템에서 기능할 수 있는 무선 디바이스 자체, 및 컴퓨터 플랫폼을 갖는 무선 디바이스가 진보적인 방법의 단계들을 수행하도록 명령하는 컴퓨터 판독가능 매체의 프로그램을 포함할 수 있다.
따라서, 본 발명의 주 목적은 스토리지 같은 컴퓨터 리소스의 이용을 최대화하기 위해서 라이센스와 사용자-특정 데이터 같은 애플리케이션에 대한 중요 데이터를 유지하면서 그 상주 소프트웨어 애플리케이션의 일정한 컴포넌트를 무선 디바이스가 삭제하도록 하는 시스템과 방법을 제공하는 것이다. 무선 디바이스는 애플리케이션 다운로드 서버로부터 무선 네트워크를 통해서 삭제된 소프트웨어 컴포넌트의 카피를 복구하여 컴포넌트가 삭제된 소프트웨어 애플리케이션을 여전히 실행할 수 있다. 이와 같이, 본 발명은 무선 디바이스 시스템 리소스의 효율적인 사용을 통하여 사용자가 무선 디바이스에 완전히 저장될 수 있는 더 큰 양의 실행가능 소프트웨어 애플리케이션에 즉시 억세스할 수 있게 되는 이점을 무선 디바이스의 사용자에게 제공하는 것이다. 컴포넌트 삭제와 리로딩 프로세스는 사용자의 명령에 따르며, 또한 프로세스는 무선 디바이스상에서 완전히 자동화되어 프로세스가 사용자에게 투명하게 된다.
이하, 본 발명의 다른 목적, 이점, 및 특성을 도면의 간단한 설명, 발명의 상세한 설명, 및 청구항을 통하여 보다 명백하게 설명한다.
도 1 을 참조하면, 무선 통신 포탈 또는 무선 네트워크 (14) 로의 다른 데이터 억세스를 통해서 소프트웨어 애플리케이션 및 컴포넌트를 무선 디바이스에 선택적으로 송신하는 하나 이상의 애플리케이션 다운로드 서버 (16) 와 무선 네트워크 (14) 를 통해서 통신하는 셀룰러 전화기 (12) 같은 무선 디바이스상의 소프트웨어 애플리케이션 컴포넌트를 삭제 및 리로딩하는 본 발명의 시스템 (10) 을 나타내고 있다. 여기 나타낸 바와 같이, 무선 디바이스는, 셀룰러 전화기 (12), 퍼스널 디지털 어시스턴스 (18), 여기서는 양방향 텍스트 페이저로 나타낸 페이저 (20), 또는 무선 통신 포탈을 갖는 별개의 컴퓨터 플랫폼 (22) 일 수 있으며, 다른 방법으로는 네트워크 또는 인터넷으로의 유선 접속 (24) 을 가질 수 있다. 이와 같이, 진보적인 시스템은 무선 모뎀, PCMCIA 카드, 억세스 터미널, 퍼스널 컴퓨터, 디스플레이나 키패드가 없는 전화기, 또는 그들의 임의의 조합이나 부조합을 제한없이 포함하는 임의의 형태의 원격 모듈상에서 수행될 수 있다.
애플리케이션 다운로드 서버 (16) 를 무선 네트워크 (14) 와 통신하는 다른 컴퓨터 부품과 함께 네트워크 (26) 상에 나타내었다. 제 2 서버 (30) 와 스탠드 어론 서버 (32)가 존재하며, 각각의 서버는 개별 서비스와 프로세스를 무선 네트워크 (14) 를 통해서 무선 디바이스 (12, 18, 20, 22) 에 제공할 수있다. 바람직하게는, 무선 디바이스 (12, 18, 20, 22) 에 의해 다운로드될 수 있는 애플리케이션을 보유하는 하나 이상의 저장된 애플리케이션 데이터베이스 (28) 도 존재한다.
도 2 에는, 무선 네트워크 (14) 의 구성요소들과 본 발명의 구성요소들간의 상관관계를 보다 자세하게 나타내는 블록도가 도시되어 있다. 무선 네트워크 (14) 는 단순히 예시적인 것이며, 무선 디바이스 (12, 18, 20, 22) 같은 원격 모듈이 서로간에, 또는 무선 네트워크 캐리어 및/또는 서버를 제한없이 포함하는 무선 네트워크 (14) 의 부품들과 통신할 수 있게 하는 임의의 시스템을 포함할 수 있다. 애플리케이션 다운로드 서버 (16) 와 저장된 애플리케이션 데이터베이스 (28) 는 셀룰러 원격 통신 서비스를 제공하기 위해 필요한 서버 (30) 같은 임의의 다른 서버와 함께, 인터넷, 보안 LAN, WAN, 또는 다른 네트워크 같은 데이터 링크를 통하여 캐리어 네트워크 (40) 와 통신한다. 캐리어 네트워크 (40) 는 메시징 서비스 컨트롤러 ("MSC"; 42) 로 송신되는 메시지 (데이터 패킷으로서 송신됨) 를 조절한다. 캐리어 네트워크 (40) 은 네트워크, 인터넷, 및/또는 POTS ("plain ordinary telephone system") 에 의해 MSC (42) 와 통신한다. 일반적으로, 캐리어 네트워크 (40) 와 MSC (42) 간의 네트워크 또는 인터넷 접속은 데이터를 전달하고, POTS 는 보이스 정보를 전달한다. MSC (42) 는 다수의 기지국 ("BTS"; 44) 에 접속된다. 캐리어 네트워크와 유사한 방식으로, MSC (42) 는 일반적으로 데이터 전달을 위한 네트워크 및/또는 인터넷과, 음성 정보를 위한 POTS 양쪽에 의해 BTS (44) 에 접속된다. 결국, BTS (44) 는 단문 메시징 서비스 ("SMS") 또는 당업계에 알려진 다른 무선 방식에 의해 셀룰러 전화기 (12) 같은 무선 디바이스에 무선으로 메시지를 방송한다.
셀룰러 전화기 (12) 같은 무선 디바이스는 애플리케이션 다운로드 서버 (16) 으로부터 송신된 소프트웨어 애플리케이션을 수신하고 실행할 수 있는 컴퓨터 플랫 폼 (590) 을 갖는다. 컴퓨터 플랫폼 (50) 은 주문형 집적회로 ("ASIC" 52) 또는 다른 프로세서, 마이크로 프로세서, 논리 회로, 또는 다른 데이터 처리 장치를 구비한다. ASIC (52) 는 무선 디바이스의 제조 시점에 인스톨되며, 일반적으로 업그레이드가 불가능하다. ASIC (52) 또는 다른 프로세서는, 무선 디바이스의 메모리 (56) 의 임의의 상주 프로그램과 인터페이스하는 애플리케이션 프로그래밍 인터페이스 ("API") 계층을 실행한다. 메모리는 리드온리 또는 랜덤 억세스 메모리 (RAM 및 ROM), EPROM, 플래쉬 카드, 또는 컴퓨터 플랫폼에 통상적인 임의의 메모리로 구성될 수 있다. 또한, 컴퓨터 플랫폼 (50) 은 메모리 (56) 에서 실제적으로 사용되지 않는 애플리케이션을 보유할 수 있는 로컬 데이터 베이스 (58)을 구비한다. 일반적으로, 로컬 데이터베이스 (58) 는 플래쉬 메모리셀이지만, 자기 매체, EPROM, 광학 매체, 테이프 또는 소프트 또는 하드 디스크 같은 당업계에 알려진 임의의 보조 저장 매체일 수 있다.
이와 같이, 셀룰러 전화기 (12) 같은 무선 디바이스는 게임, 뉴스, 주식 모니터 등의 하나 이상의 소프트웨어 애플리케이션을 다운로드하고, 사용하지 않을 때 로컬 데이터베이스 (58) 상에 애플리케이션을 보유하고, 사용자에 의해 요구될 때 API (54) 상에서의 실행을 위해 메모리 (56) 로 로컬 데이베이스 (58) 상의 저장된 상주 애플리케이션을 업로드한다. 한편, 무선 디바이스상에는 로컬 데이터 베이스 (58) 와 메모리 (56) 에서 이용가능한 인스톨된 저장 능력을 제한하는 중요한 비용 및 사이즈 제한이 있기 때문에, 제한된 양의 상주 소프트웨어 애플리케이션이 무선 디바이스상에 보유될 수 있다. 본 진보적인 시스템 및 방법은 여기서 더 설명하는 바와 같이, 개별 소프트웨어 애플리케이션 컴포넌트의 선택적 삭제와 리로딩을 통하여 저장 용량의 제한을 관리한다.
도 3 을 참조하면, API (54) 에 보유된 예시적인 파일 구조 또는 데이터 관리 구조를 나타내고 있다. 상위 레벨 도메인은 컴퓨터 플랫폼 (50) 상의 모든 별개의 소프트웨어 파일을 포함하는 "파일 (Files)" (60) 이다. 도 3 의 파일 구조는 단순히 예시적인 것이며, 컴퓨터 플랫폼 (50) 상에 이러한 형태로 존재하지 않을 수도 있고, 식별가능한 파일 구조가 없이 단순히 무선 디바이스 (12, 18, 20, 22) 상에 기계어로서 존재할 수도 있다. 파일 (60) 에는 API 가 존재하며, 이는 여기서 윈도우 ("BREW"; 62) 용 이진 런타임 환경으로서 나타내며, 무선 디바이스 컴퓨터 플랫폼 (50) 상의 소프트웨어 애플리케이션과 상호작용하도록 QUALCOMM
Figure 112007016464383-pat00001
에서 사용하는 API 이다. BREW (62) 파일은 애플리케이션 파일 (64) 를 포함하고, 하나의 파일은 애플리케이션 다운로드 서버 (16) 로부터 다운로드된 체스 (66; Chess) 게임이며, 현재 무선 디바이스의 컴퓨터 플랫폼 (50) 의 로컬 데이터베이스 (58) 상에 상주하고 있다. 설명 목적에서, 체스 (66) 애플리케이션은 무선 디바이스의 상주 소프트웨어 애플리케이션이다.
체스 (66) 애플리케이션은 chess.mod 와 chess.bar 파일 같은 여러 소프트웨어 컴포넌트 (68) 를 포함한다. 애플리케이션 컴포넌트 (68) 는 컴퓨터 플랫폼 (50) 상에서 체스 애플리케이션을 실행하기 위하여 필요한 모듈이다. 또한, 체스 (66) 은 컴퓨터 플랫폼 (50) 상에서 체스 게임을 하는 사용자에 대하여 기록된 스코어인, 여기서는 scores.sig (70) 으로 나타내는 특정 애플리케이션-관련 데이 터를 포함한다. 또한, 체스 (66) 애플리케이션에는 숨겨진 파일로서 포함된 라이센스가 존재할 수 있다. 이와 같이, 체스 게임의 실행을 가능하게 하는 애플리케이션 컴포넌트 (68) 는 애플리케이션 다운로드 서버로부터 송신된 카피로 쉽게 복제될 수 있고, 스코어 (70) 와 라이센스 같은 애플리케이션-관련 데이터는 그들의 파일 또는 모듈이 삭제되는 경우 손실되게 된다. 이와 같이, 본 발명은 라이센스 같은 복구-불가 애플리케이션-관련 데이터, 또는 퍼스널 정보 및 어드레스 같은 사용자 특정 데이터, 또는 체스 게임에 대한 이전 스코어 (70) 같은 단순한 환경관련 데이터도 유지하면서, 애플리케이션 다운로드 컴포넌트 (16) 로부터 비필수적인 애플리케이션 컴포넌트의 다른 카피를 얻을 수 있는 능력을 이용한다.
사용자가 다른 소프트웨어 애플리케이션을 컴퓨터 플랫폼 (50) 으로 다운로드하길 원하고 특히 로컬 데이터 베이스 (58) 상의 저장에 대하여 리소스가 불충분한 경우, BREW API (62) 또는 다른 공간-관리 부품은 체스에 대한 애플리케이션 컴포넌트가 제거되어 요청된 다운로드된 애플리케이션이 컴퓨터 플랫폼 (50) 상에 설치될 수 있는지를 묻기 위해서 사용자에게 프롬프트를 트리거할 수 있다. 다른 방법으로는, BREW API (62) 는 어떤 컴포넌트를 삭제할지를 결정할 수 있고 시스템 리소스를 자동으로 관리한다. chess.mod 와 chess.bar 파일이 체스 (66) 파일로부터 삭제되면, 체스 게임은 컴퓨터 플랫폼 (50) 상에서 실행가능하지 않게 된다. 컴퓨터 플랫폼 (50) 상의 필수적인 파일과 비필수적인 파일의 분리를 통하여, 무선 디바이스는 스코어 파일 (70; Score file) 같은 애플리케이션-관련 데이터의 손실없이 하나 이상의 내지 소프트웨어 애플리케이션의 애플리케이션 컴포넌 트 (68) 중 하나 이상을 선택적으로 삭제할 수 있다.
chess.mod 와 chess.bar 애플리케이션 컴포넌트 (68) 가 삭제된 체스 게임 (66) 같이 하나 이상의 애플리케이션 컴포넌트가 애플리케이션에서 삭제되고 사용자가 그 애플리케이션을 다시 사용하고자 원하는 경우, 무선 디바이스는 하나 이상의 애플리케이션 컴포넌트 (68) 의 송신을 위하여 무선 네트워크 (14) 를 통해서 애플리케이션 다운로드 서버 (16) 를 선택적으로 프롬프트하게 된다. 일단 무선 디바이스가 애플리케이션 컴포넌트 (68) 를 수신하게 되면, 무선 디바이스는 송신된 하나 이상의 애플리케이션 컴포넌트 (68) 를 컴퓨터 플랫폼 (50) 에 다시 인스톨하여 상주 애플리케이션 또는 여기서는 체스 (66) 가 다시 실행가능하게 된다. 모든 애플리케이션 컴포넌트 (68) 가 삭제되야 할 필요는 없으며, 애플리케이션의 사이즈 또는 다른 기준에 기초하여 삭제될 수 있다. 또한, scores.sig (70) 등의 애플리케이션-관련 데이터를 포함하는 파일들은 애플리케이션을 실행하기 위해 요구되는 애플리케이션 컴포넌트를 포함하며, 반드시 단순한 데이터-콘테이너 (data-container) 는 아니다.
도 4 와 5 는 무선 디바이스 (12, 18, 20, 22) 의 컴퓨터 플랫폼상에 상주하는 하나 이상의 소프트웨어 애플리케이션의 애플리케이션 컴포넌트 (68) 의 로딩 및 제거를 관리하는 진보적인 방법을 나타내는 플로우차트이다. 도 4 에 나타낸 바와 같이, 컴퓨터 플랫폼 (50) 이 단계 80 에 나타낸 바와 같이 소프트웨어 애플리케이션을 다운로드하라는 명령을 수신한 후, 판정 82 에 나타낸 바와 같이 애플리케이션을 다운로드하는 데 이용가능한 리소스가 충분한지에 관하여 무선 디바 이스의 ASIC (52) 또는 다른 프로세서에 판정을 행한다. 이용가능한 리소스가 충분한 경우, 단계 84 에 나타낸 바와 같이 애플리케이션이 다운로드되고 저장되며, 다운로드 프로세스가 종료한다. 판정 82 에서 리소스가 불충분한 경우, 사용자는 단계 86 에 나타낸 바와 같이 애플리케이션을 다운로드하기 위해서 시스템 리소스를 소거하도록 프롬프트되며, 이는 일정한 애플리케이션 컴포넌트의 삭제를 수반한다. 그후, 판정 88 에 나타낸 바와 같이 사용자가 리소스를 소거하는 데 동의하는지에 관하여 판정이 행해지고, 그렇지 않은 경우 단계 90 에 나타낸 바와 같이 사용자는 다운로드에 이용가능한 리소스가 불충분하다고 통보되며 다운로드 프로세스가 종료한다. 사용자가 단계 88 에서 리소스를 소거하는 것에 동의하는 경우, 컴포넌트 (68) 같은 하나 이상의 애플리케이션 컴포넌트는 필수적인 리소스를 소거하기 위해서 선택적으로 삭제되며, 이런 삭제는 scores.sig 파일 (70) 과 애플리케이션을 사용하기 위한 임의의 라이센스 같은 애플리케이션-관련 데이터의 중요한 손실없이 행해진다. 그후, 단계 94 에서와 같이 애플리케이션이 다운로드되어 컴퓨터 플랫폼 (50) 상에 저장되며, 다운로드 프로세스가 종료한다.
단계 100 에 나타낸 바와 같이 하나 이상의 삭제된 컴포넌트 (68) 로 애플리케이션을 실행하라는 요청이 수신되는 경우, 삭제된 컴포넌트를 재인스톨하는 프로세스를 도 5 에 나타내었다. 이 예는 사용자가 한번더 체스 게임을 하고자 하는 경우일 수 있다. 그후, 바람직하게는, 사용자는 단계 102 로 나타낸 바와 같이 애플리케이션 다운로드 서버 (16) 로의 통신 링크를 확립하도록 프롬프트될 수 있다. 한편, 다른 방법으로는, 실행 요청의 수신시 무선 디바이스는 통신 링크를 자동으로 확립할 수 있다. 애플리케이션을 실행하라는 요청이 사용자에 의해 요청되는 경우, 판정 104 에 나타낸 바와 같이 사용자가 링크를 승인했는지에 대하여 판정이 행해진다. 사용자가 링크를 확립하는 것을 거절하는 경우, 단계 106 에 나타낸 바와 같이 사용자에게 요청 애플리케이션을 실행하기 위해서 필요 애플리케이션 컴포넌트가 다운로드되어야 한다고 통지된후, 실행 요청이 종료한다. 사용자가 판정 104 에서 통신 링크를 승인하는 경우, 단계 108 에 나타낸 바와 같이 애플리케이션 다운로드 서버 (16) 와의 통신 링크가 확립된다.
일단 애플리케이션 다운로드 서버 (16) 와 통신 링크가 확립되면, 애플리케이션 다운로드 서버 (16) 는 단계 110 에 나타낸 바와 같이 요청된 애플리케이션을 실행하기 위해서 무선 디바이스에 의해 필요한 하나 이상의 애플리케이션을 송신하도록 무선 디바이스에 의해 프롬프트된다. 그후, 판정 112 에 나타낸 바와 같이 서버가 필수 애플리케이션 컴포넌트를 송신했는지를 결정하고, 그렇지 않은 경우 사용자는 단계 114 에 나타낸 바와 같이 필수 컴포넌트를 얻는데 실패했다고 통지되며, 실행 요청이 종료한다. 그렇지 않는 경우, 서버가 판정 112 에서 필수 컴포넌트를 송신한 경우, 무선 디바이스는 단계 116 에 나타낸 바와 같이 애플리케이션 다운로드 서버로부터 컴포넌트를 수신하고 그 수신한 컴포넌트를 애플리케이션으로 인스톨하여 단계 118 에 나타낸 바와 같이 애플리케이션이 실행가능하게 된다. 그후, 애플리케이션은 단계 120 에 나타낸 바와 같이 종료될 때까지 무선 디바이스상에서 실행된다.
애플리케이션 컴포넌트 (68) 같은 삭제된 애플리케이션 컴포넌트의 리로딩이 자동인 경우, 도 5 의 프로세스는 단계 100 에서 애플리케이션을 실행하라는 요청의 수신으로부터 바로 단계 110 에서 애플리케이션 다운로드 서버 (16) 를 프롬프트하는 것으로 진행한다. 무선 디바이스는 단계 114 에 나타낸 바와 같이 애플리케이션이 컴포넌트를 다운로드하는 것에 실패했는지를 사용자에게 통지하기만 할 수 있다.
일반적으로, 통신 링크를 확립하는 단계는 도 2 에 나타낸 디지털 또는 아날로그 셀룰러 원격통신 네트워크를 통하여 통신 링크를 확립하는 것이지만, 무선 LAN, 또는 마이크로파 또는 적외선 네트워크 같은 다른 무선 네트워크를 다른 방법으로 사용할 수 있다. 또한, 통신 링크를 확립하는 것은 무선 디바이스 (12, 18, 20, 22) 가 하나 이상의 관련 컴포넌트가 삭제된 상주 소프트웨어 애플리케이션을 실행시도할 때, 즉 무선 디바이스가 무선 네트워크 (14) 를 통하여 애플리케이션 다운로드 서버 (16) 으로 통신을 브리지할 때, 자동으로 발생한다. 다른 방법으로, 통신 링크를 확립하는 단계는 하나 이상의 관련 컴포넌트가 삭제된 상주 소프트웨어 애플리케이션에 대한 하나 이상의 애플리케이션 컴포넌트를 무선 네트워크 (14)를 통하여 송신하도록 통신 링크를 애플리케이션 다운로드 서버 (16) 로 브리지하도록 하는 무선 디바이스 (12, 18, 20, 22) 의 사용자의 특정한 프롬프트가 있을 때 발생할 수 있다. 새로운 애플리케이션 컴포넌트를 무선 디바이스로 송신하기 위해서, 무선 디바이스의 사용자가 셀룰러 전화 통화 같은 통신 링크에 대하여 과금되는 경우, 사용자는 컴포넌트를 리로딩하는데 필요한 통신 링크를 승 인하기 위해서 컴포넌트(들)의 삭제 이전에 프롬프트되어야 한다. 통신 링크가 애플리케이션이 실행가능하도록 애플리케이션의 컴포넌트를 복구하는데 필요하게 될 때, 사용자는 다시 프롬프트될 수 있다. 그러나, 무선 디바이스가 완전히 자동화되고 통신 링크가 사용자에 대한 과금을 필요로 하지 않는 경우, 사용자에 대하여 프롬프트가 행해질 필요가 없게 되며, 단계 114 에서와 같이 문제가 발생하거나 에러 메시지가 생성되지 않는다면 컴포넌트(들)의 리로딩이 투명하게 된다.
진보적인 방법을 고려할 때, 본 발명은 컴퓨터 플랫폼을 갖는 무선 디바이스를 본 발명의 진보적인 단계들을 수행하도록 명령하며 컴퓨터 판독가능 매체내에 상주하는 프로그램을 포함한다. 컴퓨터 판독가능 매체는 셀룰러 전화기 (12) 또는 다른 무선 디바이스의 컴퓨터 플랫폼 (50) 의 메모리 (56) 일 수 있거나 셀룰러 전화기 (12) 의 로컬 데이터베이스 (58) 같은 로컬 데이터 베이스에 있을 수 있다. 또한, 컴퓨터 판독가능 매체는 자기 디스크 또는 테이프, 광 디스크, 하드 디스크, 플래쉬 메모리, 또는 당업계에 알려진 다른 저장 매체 같은 무선 디바이스 컴퓨터 플랫폼상에 로딩할 수 있는 보조 저장 매체에 있을 수 있다. 도 4 와 5 의 내용에서, 본 발명은, 예를 들어 기계 판독가능 명령 시퀀스를 실행하도록무선 네트워크 (14) 의 일부분(들)을 동작시킴으로써 구현될 수 있다. 이들 명령은 이들 명령은 다양한 종류의 신호 베어링 매체에 상주할 수 있다. 이런 신호 베어링 매체는, 예를들어, 무선 네트워크 (14) 의 부품에 의해 억세스가능하거나 그 내부에 존재하는 RAM (미도시) 을 포함할 수 있다. RAM, 디스켓, 또는 다른 보조 저장 매체에 포함되든 아니든, 명령은 DASD 스토리지 (예를 들어, 종래의 "하드 드라이브" 또는 RAID 어레이), 자기 테이프, 전자 리드온리 메모리 (예를 들어, ROM, EPROM, 또는 EEPROM), 광 저장 디바이스 (예를 들어, CD-ROM, WORM, DVD, 디지털 광학 테이프), 페이퍼 "펀치" 카드, 또는 디지털과 아날로그 같은 송신 매체를 포함하는 다른 임의의 적절한 데이터 저장 매체 등의 다양한 기계 판독가능 데이터 저장 매체상에 저장될 수 있다.
이상, 상술한 개시내용은 본 발명의 예시적인 실시형태를 나타내는 것으로서, 첨부된 청구항에 정의된 발명의 범위를 벗어나지 않고서 다양한 변경과 변형을 행할 수 있다. 또한, 본 발명의 구성요소들은 단수로 기재하거나 청구할 수 있지만, 단수에 대한 한정을 명백하게 언급하지 않는 한 복수도 고려할 수 있다.
이와 같이 본 발명에 따르면, 무선 디바이스상의 컴퓨터 리소스의 이용을 최대화하기 위해서 라이센스 및 사용자 특정 데이터 같은 애플리케이션에 대한 중요 데이터를 유지하면서 애플리케이션의 일정한 컴포넌트를 제거할 수 있는 무선 디바이스를 제공하는 효과가 있다.

Claims (25)

  1. 애플리케이션을 저장한 디바이스 내의 메모리를 관리하는 방법에 있어서,
    각각의 애플리케이션은 하나 이상의 애플리케이션 컴포넌트 및 애플리케이션-관련 데이터를 포함하고,
    상기 방법은
    제 1 트랜스액션에 대한 요청을 수신하는 단계;
    상기 메모리의 가용 용량이 상기 제 1 트랜스액션을 수행하기에 충분한지를 판정하는 단계;
    상기 메모리의 가용 용량이 상기 제 1 트랜스액션을 수행하기에 불충분한 경우, 상기 메모리의 가용 용량이 상기 제 1 트랜스액션을 수행하기에 충분할 때까지, 현재 실행되지 않는 하나 이상의 애플리케이션과 관련된 하나 이상의 애플리케이션 컴포넌트를 삭제함에 의해 상기 가용 용량을 증가시키는 것을 지속하는 단계;
    상기 메모리 내에 저장된 상기 애플리케이션으로부터 선택된 애플리케이션을 실행하는 제 2 트랜스액션에 대한 요청을 수신하는 단계;
    상기 선택된 애플리케이션과 관련된 모든 애플리케이션 컴포넌트들이 상기 메모리 내에 저장되었는지를 판정하는 단계; 및
    상기 선택된 애플리케이션의 모든 애플리케이션 컴포넌트들이 상기 메모리 내에 저장되지 않은 경우, 상기 선택된 애플리케이션의 각각의 이전에 삭제된 애플리케이션 컴포넌트만을 재저장하는 단계를 포함하고,
    상기 애플리케이션의 삭제는 상기 메모리 내의 애플리케이션-관련 데이터를 유지시키고,
    상기 제 1 트랜스액션은 애플리케이션 다운로드이고,
    상기 디바이스는 무선 디바이스이고, 상기 애플리케이션 다운로드는 무선 네트워크를 통해 수행되고,
    상기 방법은, 상기 애플리케이션 다운로드를 수행하기 위하여 네트워크를 통해 서버와 통신하는 단계를 더 포함하고,
    상기 재저장 단계는, 상기 선택된 애플리케이션의 각각의 이전에 삭제된 애플리케이션 컴포넌트만을 네트워크 서버로부터 다운로드하는 단계를 포함하는, 메모리 관리 방법.
  2. 삭제
  3. 삭제
  4. 제 1 항에 있어서,
    상기 무선 디바이스는 무선 전화기인, 메모리 관리 방법.
  5. 삭제
  6. 삭제
  7. 제 1 항에 있어서,
    상기 삭제는, 상기 디바이스에 의한 판정에 기초하여 상기 하나 이상의 애플리케이션 컴포넌트를 선택적으로 삭제하는 것인, 메모리 관리 방법.
  8. 제 1 항에 있어서,
    상기 하나 이상의 애플리케이션 컴포넌트는, 상기 하나 이상의 애플리케이션 중 각 하나의 애플리케이션의 실행을 허용하도록 동작하는 컴포넌트인, 메모리 관리 방법.
  9. 제 1 항에 있어서,
    상기 삭제는, 수신된 사용자 입력에 기초하여 상기 하나 이상의 애플리케이션 컴포넌트를 선택적으로 삭제하는 것인, 메모리 관리 방법.
  10. 제 1 항에 있어서,
    상기 재저장 단계는,
    하나 이상의 애플리케이션 서버와 통신 링크를 자동적으로 확립하는 단계;
    상기 선택된 애플리케이션의 각각의 이전에 삭제된 애플리케이션 컴포넌트만을 상기 하나 이상의 애플리케이션 서버로 요청하는 단계; 및
    각 요청된 이전에 삭제된 애플리케이션 컴포넌트만을 수신하는 단계를 포함하는, 메모리 관리 방법.
  11. 제 1 항에 있어서,
    상기 재저장 단계는,
    사용자 인증에 기초하여 하나 이상의 애플리케이션 서버와 통신 링크를 확립하는 단계;
    상기 선택된 애플리케이션의 각각의 이전에 삭제된 애플리케이션 컴포넌트만을 상기 하나 이상의 애플리케이션 서버로 요청하는 단계; 및
    각 요청된 이전에 삭제된 애플리케이션 컴포넌트만을 수신하는 단계를 포함하는, 메모리 관리 방법.
  12. 기기 판독가능 매체에 있어서,
    상기 기기 판독가능 매체는 기기로 하여금,
    제 1 트랜스액션에 대한 요청을 수신하는 단계;
    상기 메모리의 가용 용량이 상기 제 1 트랜스액션을 수행하기에 충분한지를 판정하는 단계;
    상기 메모리의 가용 용량이 상기 제 1 트랜스액션을 수행하기에 불충분한 경우, 상기 메모리의 가용 용량이 상기 제 1 트랜스액션을 수행하기에 충분할 때까지, 현재 실행되지 않는 하나 이상의 애플리케이션과 관련된 하나 이상의 애플리케이션 컴포넌트를 삭제함에 의해 상기 가용 용량을 증가시키는 것을 지속하는 단계;
    상기 메모리 내에 저장된 상기 애플리케이션으로부터 선택된 애플리케이션을 실행하는 제 2 트랜스액션에 대한 요청을 수신하는 단계;
    상기 선택된 애플리케이션과 관련된 모든 애플리케이션 컴포넌트들이 상기 메모리 내에 저장되었는지를 판정하는 단계; 및
    상기 선택된 애플리케이션의 모든 애플리케이션 컴포넌트들이 상기 메모리 내에 저장되지 않은 경우, 상기 선택된 애플리케이션의 각각의 이전에 삭제된 애플리케이션 컴포넌트만을 재저장하는 단계를
    수행하게 하는 명령어의 세트를 저장하고,
    상기 삭제는 상기 메모리 내의 애플리케이션-관련 데이터를 유지시키고,
    상기 제 1 트랜스액션은 애플리케이션 다운로드이고,
    상기 기기는 무선 디바이스이고, 상기 애플리케이션 다운로드는 무선 네트워크를 통해 수행되고,
    상기 명령어의 세트는, 상기 기기로 하여금 상기 애플리케이션 다운로드를 수행하기 위하여 네트워크를 통해 서버와 통신하는 단계를 더 수행하게 하고,
    상기 재저장 단계는, 상기 선택된 애플리케이션의 각각의 이전에 삭제된 애플리케이션 컴포넌트만을 네트워크 서버로부터 다운로드하는 단계를 포함하는, 기기 판독가능 매체.
  13. 서버를 관리하는 방법에 있어서,
    상기 서버 상에 복수의 애플리케이션을 저장하는 단계로서, 각 애플리케이션은 하나 이상의 애플리케이션 컴포넌트 및 애플리케이션-관련 데이터를 포함하는, 저장단계;
    상기 애플리케이션 중 하나의 애플리케이션 전체를 클라이언트 디바이스로 제 1 전송하는 단계; 및
    상기 애플리케이션 중 하나의 애플리케이션의 일부를 상기 클라이언트 디바이스로 제 2 전송하는 단계로서, 상기 일부는 상기 클라이언트 디바이스에 의해 이전에 삭제된 상기 애플리케이션의 상기 하나 이상의 애플리케이션 컴포넌트만을 포함하고 상기 애플리케이션의 상기 애플리케이션-관련 데이터는 포함하지 않는, 제 2 전송 단계를 포함하고,
    상기 클라이언트 디바이스는 무선 디바이스이고, 상기 제 1 및 제 2 전송은 무선 네트워크를 통해 수행되는, 서버 관리 방법.
  14. 삭제
  15. 기기 판독가능 매체에 있어서,
    상기 기기 판독가능 매체는 기기로 하여금,
    상기 서버 상에 복수의 애플리케이션을 저장하는 단계로서, 각 애플리케이션은 하나 이상의 애플리케이션 컴포넌트 및 애플리케이션-관련 데이터를 포함하는, 저장단계;
    상기 애플리케이션 중 하나의 애플리케이션 전체를 클라이언트 디바이스로 제 1 전송하는 단계; 및
    상기 애플리케이션 중 하나의 애플리케이션의 일부를 상기 클라이언트 디바이스로 제 2 전송하는 단계로서, 상기 일부는 상기 클라이언트 디바이스에 의해 이전에 삭제된 상기 애플리케이션의 상기 하나 이상의 애플리케이션 컴포넌트만을 포함하고 상기 애플리케이션의 상기 애플리케이션-관련 데이터는 포함하지 않는, 제 2 전송단계를 수행하게 하는 명령어의 세트를 저장하고,
    상기 클라이언트 디바이스는 무선 디바이스이고, 상기 제 1 및 제 2 전송은 무선 네트워크를 통해 수행되는, 기기 판독가능 매체.
  16. 애플리케이션을 저장하는 스토리지의 가용 용량을 증가시키는 방법에 있어서,
    각각의 애플리케이션은 하나 이상의 애플리케이션 컴포넌트 및 애플리케이션-관련 데이터를 포함하고,
    상기 방법은
    실행되지 않는 애플리케이션으로부터, 상기 애플리케이션의 애플리케이션-관련 데이터를 유지하면서 하나의 애플리케이션 컴포넌트를 검출하는 단계;
    상기 스토리지의 가용 용량의 최소 임계치를 판정하는 단계; 및
    상기 스토리지의 가용 용량의 현재 레벨이 상기 최소 임계치보다 작은 경우, 상기 현재 레벨이 상기 임계치 이상이 될 때까지, 상기 애플리케이션의 애플리케이션-관련 데이터는 유지하면서 부가적인 애플리케이션 컴포넌트의 삭제를 지속하는 단계를 포함하고,
    상기 애플리케이션의 실행 전에, 상기 애플리케이션의 상기 이전에 삭제된 애플리케이션 컴포넌트만을 스토리지에 재저장하고,
    상기 재저장은, 상기 선택된 애플리케이션의 각각의 이전에 삭제된 애플리케이션 컴포넌트만을 무선 네트워크 서버로부터 다운로드하는 것을 포함하는, 가용 용량 증가방법.
  17. 기기 판독가능 매체에 있어서,
    상기 기기 판독가능 매체는 기기로 하여금,
    실행되지 않는 애플리케이션으로부터, 상기 애플리케이션의 애플리케이션-관련 데이터를 유지하면서 하나의 애플리케이션 컴포넌트를 검출하는 단계;
    상기 스토리지의 가용 용량의 최소 임계치를 판정하는 단계; 및
    상기 스토리지의 가용 용량의 현재 레벨이 상기 최소 임계치보다 작은 경우, 상기 현재 레벨이 상기 임계치 이상이 될 때까지, 상기 애플리케이션의 애플리케이션-관련 데이터는 유지하면서 부가적인 애플리케이션 컴포넌트의 삭제를 지속하는 단계를 수행하게 하는 명령어의 세트를 저장하고,
    상기 애플리케이션의 실행 전에, 상기 애플리케이션의 상기 이전에 삭제된 애플리케이션 컴포넌트만을 스토리지에 재저장하고,
    상기 재저장은, 상기 선택된 애플리케이션의 각각의 이전에 삭제된 애플리케이션 컴포넌트만을 무선 네트워크 서버로부터 다운로드하는 것을 포함하는, 기기 판독가능 매체.
  18. 네트워크를 통해 통신하는 네트워크 컴포넌트, 및
    컴퓨터 플랫폼을 포함하는 디바이스에 있어서,
    상기 컴퓨터 플랫폼은
    소프트웨어 애플리케이션을 저장하는 메모리로서, 각각의 소프트웨어 애플리케이션은 하나 이상의 애플리케이션 컴포넌트 및 애플리케이션-관련 데이터를 포함하는, 메모리; 및
    상기 네트워크 컴포넌트를 통한 상기 디바이스와 서버 사이의 통신을 제어하고 상기 메모리의 콘텐츠를 관리하는 프로세싱 소자를 포함하고,
    상기 프로세싱 소자는, 상기 메모리의 가용 용량이 트랜스액션을 수행하기에 충분할 때까지, 상기 메모리 내의 실행되지 않는 애플리케이션의 애플리케이션-관련 데이터는 유지하면서, 상기 메모리 내에 저장된 상기 실행되지 않는 하나 이상의 애플리케이션 컴포넌트를 삭제함에 의해 상기 메모리의 가용 용량을 관리하도록 구성되며,
    상기 프로세싱 소자는 또한, 상기 네트워크 컴포넌트로 하여금 상기 애플리케이션의 실행전에 상기 애플리케이션의 각각의 이전에 삭제된 애플리케이션 컴포넌트만을 다운로드하게 하도록 구성되고,
    상기 네트워크 컴포넌트는 무선 트랜시버이고, 상기 네트워크는 무선 네트워크인, 디바이스.
  19. 삭제
  20. 제 18 항에 있어서,
    상기 디바이스는 무선 전화기인, 디바이스.
  21. 제 18 항에 있어서,
    상기 프로세싱 소자는 또한, 상기 하나 이상의 애플리케이션 컴포넌트를 선택적으로 판정하도록 구성되는, 디바이스.
  22. 제 18 항에 있어서,
    상기 프로세싱 소자는 또한, 수신된 사용자 입력에 기초하여 상기 하나 이상의 애플리케이션 컴포넌트를 선택적으로 삭제하도록 구성되는, 디바이스.
  23. 제 18 항에 있어서,
    상기 하나 이상의 애플리케이션 컴포넌트는, 상기 실행되지 않는 애플리케이션의 실행을 허용하도록 동작하는 컴포넌트를 포함하는, 디바이스.
  24. 제 18 항에 있어서,
    상기 프로세싱 소자는 또한, 상기 디바이스로 하여금,
    하나 이상의 애플리케이션 서버와 통신 링크를 자동적으로 확립하고,
    각각의 이전에 삭제된 애플리케이션 컴포넌트만을 상기 하나 이상의 애플리케이션 서버로 요청하고,
    각각의 이전에 삭제된 애플리케이션 컴포넌트만을 상기 애플리케이션 서버로부터 수신하게끔 구성되는, 디바이스.
  25. 제 18 항에 있어서,
    상기 프로세싱 소자는 또한, 상기 디바이스로 하여금,
    사용자 인증에 기초하여 하나 이상의 애플리케이션 서버와 통신 링크를 확립하고,
    각각의 이전에 삭제된 애플리케이션 컴포넌트만을 상기 하나 이상의 애플리케이션 서버로 요청하고,
    각각의 이전에 삭제된 애플리케이션 컴포넌트만을 상기 하나 이상의 애플리케이션 서버로부터 수신하게끔 구성되는, 디바이스.
KR1020077004513A 2001-08-13 2002-08-08 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치 KR100865640B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020077004513A KR100865640B1 (ko) 2001-08-13 2002-08-08 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/929,250 2001-08-13
KR1020077004513A KR100865640B1 (ko) 2001-08-13 2002-08-08 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020037002182A Division KR100815099B1 (ko) 2001-08-13 2002-08-08 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치

Publications (2)

Publication Number Publication Date
KR20070032396A KR20070032396A (ko) 2007-03-21
KR100865640B1 true KR100865640B1 (ko) 2008-10-29

Family

ID=41649304

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077004513A KR100865640B1 (ko) 2001-08-13 2002-08-08 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치

Country Status (1)

Country Link
KR (1) KR100865640B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5302947A (en) * 1992-07-31 1994-04-12 Motorola, Inc. Method and apparatus for loading a software program from a radio modem into an external computer
US5742829A (en) 1995-03-10 1998-04-21 Microsoft Corporation Automatic software installation on heterogeneous networked client computer systems
US5835911A (en) * 1994-02-08 1998-11-10 Fujitsu Limited Software distribution and maintenance system and method
WO1999022325A1 (en) * 1997-10-24 1999-05-06 Microsoft Corporation System and method for managing application installation for a mobile device
US6031830A (en) * 1996-08-07 2000-02-29 Telxon Corporation Wireless software upgrades with version control

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5302947A (en) * 1992-07-31 1994-04-12 Motorola, Inc. Method and apparatus for loading a software program from a radio modem into an external computer
US5418524A (en) 1992-07-31 1995-05-23 Motorola, Inc. Method and apparatus for over-the-air upgrading of radio modem application software
US5835911A (en) * 1994-02-08 1998-11-10 Fujitsu Limited Software distribution and maintenance system and method
US5742829A (en) 1995-03-10 1998-04-21 Microsoft Corporation Automatic software installation on heterogeneous networked client computer systems
US6031830A (en) * 1996-08-07 2000-02-29 Telxon Corporation Wireless software upgrades with version control
WO1999022325A1 (en) * 1997-10-24 1999-05-06 Microsoft Corporation System and method for managing application installation for a mobile device

Also Published As

Publication number Publication date
KR20070032396A (ko) 2007-03-21

Similar Documents

Publication Publication Date Title
KR100815099B1 (ko) 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치
KR100915564B1 (ko) 실행하는 동안 애플리케이션을 업그레이드하기 위한 방법,소프트웨어 및 장치
KR100984599B1 (ko) 어플리케이션 디스에이블/복원 관리를 위한 시스템 및 방법
KR100663415B1 (ko) 무선장치상에 상주하는 데이터세트 버전을 업데이트하기위한 시스템 및 방법
RU2339076C2 (ru) Выполнение неверифицированных программ в операционной среде устройства радиосвязи
JP2006505029A (ja) 無線装置に存在するデータセットのバージョンを更新するためのサーバー処理
KR100579759B1 (ko) 무선장치용 대화형 스크린을 서버에 의하여 처리하기 위한방법 및 시스템
KR100865640B1 (ko) 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치
KR100864387B1 (ko) 무선 디바이스상에서의 일시적인 애플리케이션 컴포넌트삭제 및 리로딩을 위한 시스템 및 장치
AU2002356071A1 (en) System for updating software in a wireless device
MXPA06004669A (es) Metodo, programa y aparato para actualizar aplicaciones durante la ejecucion

Legal Events

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

Payment date: 20120927

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130927

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140929

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150930

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160929

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170929

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190924

Year of fee payment: 12