KR101019298B1 - 경합 관리 프로그램이 기억된 기억 매체, 경합 관리 방법 및 전자 기기 - Google Patents

경합 관리 프로그램이 기억된 기억 매체, 경합 관리 방법 및 전자 기기 Download PDF

Info

Publication number
KR101019298B1
KR101019298B1 KR1020057023708A KR20057023708A KR101019298B1 KR 101019298 B1 KR101019298 B1 KR 101019298B1 KR 1020057023708 A KR1020057023708 A KR 1020057023708A KR 20057023708 A KR20057023708 A KR 20057023708A KR 101019298 B1 KR101019298 B1 KR 101019298B1
Authority
KR
South Korea
Prior art keywords
task
state
application
execution
contention
Prior art date
Application number
KR1020057023708A
Other languages
English (en)
Other versions
KR20060023987A (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 소니 에릭슨 모빌 커뮤니케이션즈 재팬, 아이엔씨.
Publication of KR20060023987A publication Critical patent/KR20060023987A/ko
Application granted granted Critical
Publication of KR101019298B1 publication Critical patent/KR101019298B1/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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • 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
    • 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/48Program initiating; Program switching, e.g. by interrupt

Abstract

애플리케이션을 프로그래밍할 때에, 다른 애플리케이션과의 경합 관계를 고려하지 않고 프로그래밍을 행할 수 있는 경합 관리 프로그램이다. 애플리케이션 매니저(25)에, 현재 실행 중인 애플리케이션을 등록하는 실행 리스트(61) 및 대기 중인 애플리케이션을 등록하는 실행 대기 리스트(62)를 마련한다. 애플리케이션 관리 블록(64)은, 애플리케이션의 경합이 일어난 경우, 상기 각 리스트(61, 62)에 등록되어 있는 실행 중인 애플리케이션의 상태 및 대기 중인 애플리케이션의 상태에 대응하는 경합 조건 테이블을 참조하여, 각 상태의 우선도에 기초해서 각 애플리케이션이 천이될 상태(기동, 종료, 실행 대기 등)를 결정한다. 그리고, 애플리케이션 제어 블록(65)이, 이 애플리케이션 관리 블록(64)에 의해 결정된 상태로 각 애플리케이션을 천이시킴으로써, 각 애플리케이션의 경합 관리를 행한다.
애플리케이션, 경합, 애플리케이션 관리 블록, 실행 리스트, 실행 대기 리스트, 경합 조건 테이블

Description

경합 관리 프로그램이 기억된 기억 매체, 경합 관리 방법 및 전자 기기{STORAGE MEDIUM CONTAINING CONCURRENCE MANAGEMENT PROGRAM, CONCURRENCE MANAGEMENT METHOD, AND ELECTRONIC DEVICE}
본 발명은, 예를 들면 휴대 전화기, PHS 전화기(PHS : Personal Handyphone System), PDA 장치(PDA : Personal Digital (Data) Assistant), 퍼스널 컴퓨터 장치 등의 단말 장치에 설치하기에 바람직한 경합 관리 프로그램, 경합 관리 프로그램이 기억된 기억 매체, 경합 관리 방법 및 전자 기기에 관한 것이다.
오늘에서의 휴대 전화기는 싱글 태스크형으로 애플리케이션의 실행 관리를 행하는 것이 일반적이다.
예를 들면, 한 쪽 애플리케이션의 실행 중에, 다른 쪽 애플리케이션의 실행 지시가 있는 경우, 이들 각 애플리케이션의 우선도를 각각 검출해서, 우선도가 낮은 애플리케이션을 강제적으로 종료시키고, 대신, 우선도가 높은 애플리케이션을 기동함으로써, 해당 애플리케이션의 경합 관리를 행하도록 되어 있다.
구체적으로는, 예를 들면 전자 메일의 작성 중에 착호가 있었던 경우, 전자 메일을 작성하는 애플리케이션보다 착호를 처리하는 애플리케이션쪽이 우선도가 높 기 때문에, 전자 메일을 작성하는 애플리케이션을 강제적으로 종료시키고, 착호를 처리하는 애플리케이션을 기동하여, 착호 처리를 행한다. 이에 따라, 전자 메일의 작성은 중지되고, 착호가 우선하여 처리되게 된다.
이에 대하여, 휴대 전화기보다 정보 처리 능력(퍼포먼스)이 높은 퍼스널 컴퓨터 장치의 경우, 멀티태스크형으로 애플리케이션 실행 관리를 행하는 것이 일반적이다.
이 퍼스널 컴퓨터 장치에서는, 애플리케이션 경합이 일어난 경우, 이하 중 어느 한 방법으로 경합 관리를 행하도록 되어 있다.
우선, 제1 경합 관리 방법으로서, 오퍼레이팅 시스템(OS)이, 실행 중인 애플리케이션의 현재 상태에 관계 없이, 그 실행 중인 애플리케이션의 우선도를 변경하고(우선도를 내리고), 나중에 실행이 지정된 애플리케이션을 우선하여 실행하는 경합 관리를 행하는 방법이다.
구체적으로는, 예를 들면 표 계산 소프트웨어의 실행 중에, 유저로부터 문서 작성 소프트웨어의 기동이 지시된 경우, OS는, 표 계산 소프트웨어의 애플리케이션을 대기 상태로 하고, 문서 작성 소프트웨어의 애플리케이션을 우선하여 기동한다. 이에 의해, 표 계산 소프트웨어에 의한 표 작성을 중단한 상태에서, 문서 작성 소프트웨어에 의한 문서 작성이 가능하게 된다.
다음으로, 제2 경합 관리 방법으로서, 애플리케이션 프로그래밍 단계에서 경합하는 다른 애플리케이션을 예측하고, 경합이 일어난 경우, 애플리케이션끼리 통신을 행하여, 한 쪽 애플리케이션이 다른 쪽 애플리케이션의 상태에 따라 우선도를 변경하도록 해당 애플리케이션을 프로그래밍해 둠으로써 경합 관리를 행하는 방법이다.
이 제2 경합 관리 방법에서는, 경합한 애플리케이션끼리의 통신으로 우선 순위가 결정되기 때문에, 각 애플리케이션이 자체적으로 경합 관리를 행하게 된다.
또한, 일본특허공표 2003-504753호의 공표특허공보에, 이러한 애플리케이션 관리에 관한 선행 기술이 개시되어 있다.
여기서, 상술된 바와 같이, 현행의 휴대 전화기는, 싱글 태스크형으로 애플리케이션 경합 관리를 행하고 있지만, 장래, 멀티태스크형으로 애플리케이션 실행 관리를 행할 것이 예측된다.
그러나, 상술한 제1 관리 방법 혹은 제2 관리 방법으로 경합 관리를 행하도록 하면, 이하의 문제를 일으킨다.
즉, 상기 제1 경합 관리 방법으로 경합 관리를 행하면, OS가 애플리케이션의 현재 상태를 인식하지 않고 순서형으로 애플리케이션이 실행된다. 이 때문에, 나중에 실행 지시가 이루어진 애플리케이션의 실행이 종료되고, 대기 상태로 되어 있었던 애플리케이션(=먼저 실행되고 있던 애플리케이션)의 실행이 재개될 때에, 그 대기 상태로 되어 있었던 애플리케이션이 정상적으로 동작하지 않을 것이 우려된다(대기 상태로 된 애플리케이션의 동작 보증이 없음).
또한, 상기 제2 경합 관리 방법으로 경합 관리를 행하는 경우에는, 미리 경합할 애플리케이션을 모두 예측하여 애플리케이션 프로그래밍을 행할 필요가 있다. 이러한 예측은, 애플리케이션 수가 증가하고 또한 시스템이 복잡하게 될수록, 곤란 하게 된다.
또한, 상기 제2 경합 관리 방법으로 경합 관리를 행하는 것으로 하면, 애플리케이션에 사양 변경이 생긴 경우에는, 다른 모든 애플리케이션도 이 사양 변경에 대응한 사양 변경이 필요하게 되어, 다수의 애플리케이션 재프로그래밍 작업이나 재인스톨 작업(애플리케이션의 설계 및 실장의 변경 작업) 등의 대단히 번거로운 작업이 필요하게 될 것이 우려된다.
멀티태스크를 가능하게 하는 종래의 경합 관리 방법은 이러한 것을 고려할 필요가 있었기 때문에, 소프트웨어의 개발을 곤란하게 하는 문제가 있었다.
본 발명은 상술한 과제를 감안하여 이루어진 것으로, 대기 상태로 한 애플리케이션의 동작을 보증하는 것, 경합하는 애플리케이션을 고려하지 않고 애플리케이션의 프로그래밍(설계)을 가능하게 하는 것, 사양 변경이 생긴 경우에도 다른 애플리케이션의 사양 변경을 필요로 하지 않는 것을 통하여 소프트웨어 개발을 용이하게 하는 것이 가능한 경합 관리 프로그램, 경합 관리 프로그램이 기억된 기억 매체, 경합 관리 방법 및 전자 기기의 제공을 목적으로 한다.
본 발명은, 실행 요구 접수 수단이 태스크의 실행 요구를 접수하였을 때에, 경합 검출 수단이, 기동 중인 태스크가 등록되어 있는 기동 중 태스크 리스트를 참조하여, 태스크끼리의 경합의 유무를 검출한다.
상기 경합 검출 수단에서 상기 태스크끼리의 경합이 검출되면, 천이 상태 결정 수단이, 그 경합하는 각 태스크가 천이될 상태가 기억된 경합 조건 테이블을 참조하여, 상기 실행 요구가 이루어진 태스크 및 상기 기동 중 태스크 리스트에 등록되어 있는 태스크가 천이될 상태를 각각 결정한다.
그리고, 상기 실행 요구가 이루어진 태스크 및 상기 기동 중 태스크 리스트에 등록되어 있는 태스크의 상태를, 상태 천이 수단이, 상기 천이 상태 결정 수단에서 결정된 상태로 각각 천이시킨다.
이에 의해, 본 발명은, 실행 대기로 되어 있는 태스크의 실행 재개를 보증할 수 있다.
또한, 태스크 프로그래밍을 행할 때에, 다른 태스크와의 경합 관계를 고려하지 않고 프로그래밍을 행하는 것을 가능하게 할 수 있다.
또한, 다른 태스크와의 경합 관계를 고려하지 않고 프로그래밍이 가능하게 되기 때문에, 임의의 태스크에 사양 변경이 생긴 경우에는, 그 태스크에 대해서만 사양 변경을 가하면 되게 된다.
이 때문에, 임의의 태스크에 사양 변경이 생긴 경우에, 다른 모든 태스크에 대하여 이 사양 변경에 대응한 사양 변경을 가할 필요가 생겨, 다수의 태스크 재프로그래밍 작업이나 재인스톨 작업(태스크의 설계 및 실장의 변경 작업) 등의 대단히 번거로운 작업이 발생하는 문제를 방지할 수 있다.
그리고, 이와 같이 태스크 프로그래밍을 행할 때에, 다른 태스크와의 경합 관계를 고려하지 않아도 되기 때문에, 소프트웨어 개발을 대폭 간단하게 할 수 있다.
또한, 여기서 말하는 「태스크」의 개념은, 애플리케이션 외에, 컴퓨터가 정보 처리를 행할 때에 실행하는 모든 처리를 포함하는 개념이다.
또한, 「기동 중인 태스크」의 개념은, 현재 실행되고 있는 태스크, 및 기동되어는 있지만, 현재, 실행 대기로 되어 있는 태스크의 양쪽을 포함하는 개념이다.
도 1은 본 발명을 적용한 실시예로 되는 휴대 전화기의 전체적인 블록도.
도 2는 실시예의 휴대 전화기의 주요부의 기능 블록도.
도 3은 실시예의 휴대 전화기에서 실행되는 각 애플리케이션의 기능 블록도.
도 4는 실시예의 휴대 전화기에 설치되어 있는 애플리케이션 매니저의 기능 블록도.
도 5는 각 애플리케이션의 상태 천이를 설명하기 위한 모식도.
도 6은 실시예의 휴대 전화기에 설치되어 있는 애플리케이션 매니저의 애플리케이션 경합 관리 동작을 설명하기 위한 플로우차트.
도 7은 실시예의 휴대 전화기에 설치되어 있는 경합 조건 테이블의 일례를 도시하는 도면.
도 8은 애플리케이션 매니저의 애플리케이션 리스트에 마련되어 있는 실행 리스트를 도시하는 도면.
도 9는 애플리케이션 매니저의 애플리케이션 리스트에 마련되어 있는 실행 대기 리스트를 도시하는 도면.
도 10은 주소록 애플리케이션의 실행 중에 전화 애플리케이션의 실행 요구가 있었던 경우에서의 애플리케이션 매니저의 경합 관리 동작을 설명하기 위한 타임차 트.
도 11은 전화 애플리케이션의 실행 중에 E 메일 애플리케이션의 실행 요구가 있었던 경우에서의 애플리케이션 매니저의 경합 관리 동작을 설명하기 위한 타임차트.
본 발명은, 일례로서, 휴대 전화기에 적용할 수 있다. 이 본 발명의 실시예로 되는 휴대 전화기는, 소위 홈 메모리 기능, 위치 등록 기능, 추적 교환 기능(자동 추적 루틴) 및 핸드오버 기능 등을 갖춘 이동체 통신 시스템에서 이용되는 것이다.
이 이동체 통신 시스템의 서비스 에어리어에는, 복수의 기지국이 분산 배치되어 있다. 그리고, 이들 기지국에 의해, 각각 셀이라고 불리는 무선 통신 에리어가 형성되어 있다. 각 기지국은 자국의 무선 통신 에리어 내에 위치하는 각 휴대 전화기에 대하여 무선 채널을 할당하고, 이 무선 채널을 통하여 각 휴대 전화기와 통신을 행하며, 해당 각 휴대 전화기와 각각 동기를 취하도록 되어 있다.
또한, 이 이동체 통신 단말기 시스템은, 통신 중에 휴대 전화기가 셀 간을 이동한 경우, 이동 전의 셀의 기지국으로부터 이동 후의 셀의 기지국으로, 통신에 이용하는 기지국을 절환하는, 소위 핸드오버를 행하여, 이동 중의 통신을 가능하게 하고 있다.
도 1은 CDMA 방식(CDMA : Code Division Multiple Access)의 이동체 통신 시스템에서 이용되는 본 제1 실시예의 휴대 전화기의 전체적인 블록도이다.
[수신 동작]
이 도 1에서, 기지국으로부터 송신된 무선 주파 신호는 안테나(1)에서 수신되고, 안테나 공용기(2)(DUP)를 통하여 수신 회로(3)(RX)에 공급된다. RX(3)는 상기 무선 주파 신호와 주파수 신시사이저(4)(SYN)부터 공급된 수신 국부 발진 신호를 믹싱 처리하고, 그 무선 주파 신호를 중간 주파 신호로 주파수 변환 처리한다.
또한, SYN(4)로부터 출력되는 수신 국부 발진 신호의 주파수는 제어부(12)(CPU)로부터의 제어 신호(SYC)에 의해 설정된다.
상기 수신 중간 주파 신호는 CDMA 신호 처리부(6)에서 직교 복조 처리가 실시된 후, 수신 채널에 할당된 확산 부호(PN 부호)에 의해 역확산 처리된다. 이에 의해, 상기 수신 중간 주파 신호는 데이터 레이트에 따른 소정 포맷의 복조 데이터로 변환된다. 그리고, 이 변환된 복조 데이터는 데이터 부호 처리부(7)에 공급되고, 또한 상기 수신 데이터 중 데이터 레이트를 나타내는 수신 데이터 레이트는 CPU(12)에 공급된다.
데이터 부호 처리부(7)는, 상기 CDMA 신호 처리부(6)로부터 공급된 복조 데이터에 대하여, CPU(12)로부터 통지되는 수신 데이터 레이트에 따른 신장 처리를 실시한다. 그 후, 이 데이터 부호 처리부(7)는 비터비 복호 등을 이용한 복호 처리 및 오류 정정 복호 처리를 실시하여, 베이스 밴드의 수신 데이터를 형성한다.
PCM 부호 처리부(8)는, 음성 신호 통신의 종별(음성 통신, 데이터 통신)에 따라 상이한 신호 처리를 행하도록, CPU(12)에 의해 제어된다.
구체적으로는, 음성 통신 시에, PCM 부호 처리부(8)는 데이터 부호 처리부 (7)로부터 공급된 수신 데이터를 PCM 복호 처리하여 아날로그 수화 신호를 형성한다. 이 아날로그 수화 신호는 수화 증폭기(9)에서 증폭된 후, 스피커(10)를 통하여 확성 출력된다.
또한, 데이터 통신 시에는, PCM 부호 처리부(8)는 데이터 부호 처리부(7)로부터의 수신 데이터를 CPU(12)에 공급한다. CPU(12)는 이 수신 데이터를 메모리(13)에 기억 제어한다. 또한, 필요에 따라, 상기 수신 데이터를 외부 인터페이스를 통하여 휴대 정보 단말 장치(PDA : Personal Digital Assistance)나 노트형 퍼스널 컴퓨터 장치에 출력한다.
[송신 동작]
다음으로, 음성 통신 시에서의 화자의 송화 음성은 마이크로폰(11)에 의해 집음되고, 송화 증폭기(18)에서 적정 레벨로 증폭된다. 그리고, PCM 부호 처리부(8)에서 PCM 부호화 처리가 실시된 후, 송신 데이터로서 데이터 부호 처리부(7)에 공급된다.
또한, 상기 외부 인터페이스를 통하여, 예를 들면 상기 PDA, 노트형 퍼스널 컴퓨터 장치, 카메라 장치 등의 외부 기기로부터 데이터나 화상 데이터 등이 공급된 경우, 이들 데이터는 CPU(12)에 공급되고, 이 CPU(12)로부터 PCM 부호 처리부(8)를 통하여 데이터 부호 처리부(7)에 공급된다.
데이터 부호 처리부(7)는, 음성 통신 시에, PCM 부호 처리부(8)로부터 공급된 송신 음성 데이터에 기초하여, 입력 음성의 에너지량을 검출한다. 그리고, 이 데이터 부호 처리부(7)는 이 검출 결과에 기초하여 데이터 레이트를 결정한다. 또 한, 이 데이터 부호 처리부(7)는, 상기 송신 데이터를 상기 결정된 데이터 레이트에 따른 포맷의 버스트 신호로 압축 처리한다. 그리고 또한, 이 데이터 부호 처리부(7)는 오류 정정 부호화 처리를 실시한 후, CDMA 신호 처리부(6)에 공급한다.
또한, 데이터 통신 시에는, 데이터 부호 처리부(7)는 PCM 부호 처리부(8)로부터 공급된 송신 데이터를, 미리 설정된 데이터 레이트에 따른 포맷의 버스트 신호로 압축 처리하고, 또한 오류 정정 부호화 처리를 실시해서, CDMA 신호 처리부(6)에 공급한다.
또한, 음성 통신 시 및 데이터 통신 시의 어느 경우에도, 상기 데이터 레이트인 송신 데이터 레이트를 나타내는 정보는 CPU(12)에 공급된다.
CDMA 신호 처리부(6)는, 데이터 부호 처리부(7)에서 압축된 버스트 신호에 대하여, 송신 채널에 할당된 PN 부호를 이용한 확산 처리를 실시한다. 그리고, 이 확산 부호화된 송신 신호에 대하여 직교 변조 처리를 실시하고, 이 직교 변조 신호를 송신 회로(5)(TX)에 공급한다.
송신 회로(5)는, 이 직교 변조 신호를, SYN(4)로부터 공급되는 송신 국부 발진 신호와 믹싱 처리함으로써, 무선 주파 신호로 변환한다. 그리고, 송신 회로(5)는, CPU(12)에 의해 설정된 송신 데이터 레이트에 기초하여, 상기 무선 주파 신호의 유효 부분만을 고주파 증폭 처리한다. 증폭 처리된 신호는 송신 무선 주파 신호로서 DUP(2)를 통하여 안테나(1)에 공급된다. 이에 의해, 이 송신 무선 주파 신호는 안테나(1)로부터 기지국에 대하여 버스트 송신된다.
또한, 조작부(14)(KEY)에는, 다이얼 키, 발신 키, 전원 키, 종료 키, 음량 조절 키, 모드 지정 키 등의 키군이 마련되어 있다.
또한, 표시부(15)에는, 통화 상대 단말기의 전화 번호나 장치의 동작 상태, 그리고, 수신 데이터 등을 표시하기 위한 액정 표시부(LCD)가 마련되어 있다. 또한, 이 액정 표시부 외에, 발신/착신 동작이나 충전지(16)(배터리)의 충전 동작 등을 나타내는 발광부(LED 등)가 마련되어 있다.
또한, 전원 회로(17)는, 배터리(16)에 축전되어 있는 전력에 기초하여, 소정의 동작 전원 전압 Vcc를 형성하고, 이것을 해당 휴대 전화기의 각 회로부에 공급하도록 되어 있다.
[주요부의 구성]
다음으로, 도 2에 본 실시예의 휴대 전화기의 주요부의 구성을 도시한다. 이 도 2로부터 알 수 있듯이, 본 실시예의 휴대 전화기는, 상기 CPU(12)에 의해 동작 제어되는 하드웨어군(21)과, 이 하드웨어군(21)의 각 하드웨어에 대응하는 복수의 드라이버로 이루어지는 드라이버군(22)과, 오퍼레이션 시스템(23)(OS)과, 복수의 애플리케이션으로 이루어지는 애플리케이션군(24)과, 애플리케이션 경합 관리를 행하는 애플리케이션 매니저(25)와, 각 애플리케이션의 동작 상태마다, 경합한 애플리케이션의 기동의 여부 등을 나타내는 정보가 기억된 경합 조건 테이블(26)을 구비하고 있다.
하드웨어군(21)은, 상기 조작부(14) 및 상기 표시부(15)와, 상기 DUP(2), RX(3), CDMA 신호 처리부(6), 데이터 부호 처리부(7) 등의 통신 시스템(30)과, 휴대 카메라 장치(31)와, 발광부(LED)나 음성 디바이스 등의 다른 하드웨어(32)와, 상기 메모리(13) 등의 메모리/파일 시스템(33)을 구비하고 있다.
드라이버군(22)은, 상기 표시부(15)를 구동 제어하는 LCD 드라이버(34)(LCD Task/Driver)와, 상기 조작부(14)를 구동 제어하는 키 드라이버(35)(KEY Driver)와, 상기 통신 시스템을 구동 제어하는 통신 드라이버(36)와, 상기 휴대 카메라 장치(31)를 구동 제어하는 카메라 드라이버(37)(Camera Driver)와, 상기 다른 하드웨어를 구동 제어하는 다른 하드웨어의 드라이버(38)와, 상기 메모리/파일 시스템(33)을 구동 제어하는 메모리/파일 시스템 드라이버(39)를 구비하고 있다.
애플리케이션군(24)은, 각 애플리케이션이 공용하는 데이터군인 라이브러리(40)(Libraries)와, 윈도우 매니저(41)(Window Manager)와, 각 애플리케이션의 기본 데이터군으로 되는 애플리케이션 프레임워크(42)(Application Framework)와, 예를 들면 전화 애플리케이션(Tel App)이나 시계 애플리케이션(Clock), 스크린 세이버(Screen Saver), 애플리케이션 런처(App Launcher) 등의 각 애플리케이션(43)을 구비하고 있다.
또한, 이 도 2에서의 「App1」, 「App2」는 유저 정의의 임의의 애플리케이션을 나타내고 있다.
또한, 이 도 2에서, CPU(12), 조작부(14), 표시부(15), 통신 시스템(30), 휴대 카메라 장치(31), 다른 하드웨어(32) 및 메모리/파일 시스템(33)이 각각 「하드웨어」인 데 대하여, OS(23)∼경합 조건 테이블(26)은 각각 「소프트웨어」이다. 이들 소프트웨어는, 예를 들면, 도 1에 도시하는 메모리(13)에 저장되어 있다.
(각 애플리케이션의 기능 구성)
다음으로, 도 3에 상기 애플리케이션군(24)의 각 애플리케이션(43)의 기능 블록도를 도시한다. 이 도 3에 도시하는 바와 같이, 애플리케이션(43)은, 이 애플리케이션의 인터페이스로 되는 커뮤니케이션 블록(50)과 상기 애플리케이션 매니저(25) 사이에서 상기 커뮤니케이션 블록(50)을 통하여 통신을 행하는 시스템 제어 블록(51)을 구비하고 있다. 또한, 애플리케이션(43)은, 예를 들면 전화 통신이나 휴대 메일의 작성 등의, 이 애플리케이션의 동작을 행하는 블록인 유저 제어 블록(52)을 구비하고 있다.
후술하겠지만, 이 애플리케이션은, 시스템 제어 블록(51)이 애플리케이션 매니저(25)와의 사이에서 통신을 행함으로써, 이 애플리케이션 매니저(25)에 의해 동작 상태(기동, 기동 대기 등)가 제어되도록 되어 있다.
(애플리케이션 매니저의 기능 구성)
다음으로, 도 4에 애플리케이션 매니저(25)의 기능 블록도를 도시한다. 이 도 4에 도시하는 바와 같이, 애플리케이션 매니저(25)는, 이 애플리케이션 매니저(25)의 인터페이스로 되는 커뮤니케이션 블록(60)을 구비하고 있다. 또한, 애플리케이션 매니저(25)는, 실행 중인 애플리케이션을 나타내는 데이터가 저장되는 실행 리스트(61) 및 실행 대기로 되어 있는 애플리케이션을 나타내는 데이터가 저장되는 실행 대기 리스트(62)를 갖춘 애플리케이션 리스트(63)를 구비하고 있다.
또한, 이 애플리케이션 매니저(25)는, 상기 애플리케이션 리스트에 저장되어 있는 각 리스트(61, 62)에 기초하여 애플리케이션의 경합 관리를 행하는 애플리케이션 관리 블록(64)과, 이 애플리케이션 관리 블록(64)의 경합 관리에 대응하여 각 애플리케이션의 기동, 종료, 상태 천이 등을 제어하는 애플리케이션 제어 블록(65)을 구비하고 있다.
(애플리케이션 매니저의 동작 개요)
이러한 애플리케이션 매니저(25)는, 각 애플리케이션이 경합한 경우에, 각 애플리케이션의 우선 순위나 현재 상태 등에 따라서, 실행할 애플리케이션, 기동할 애플리케이션, 기동 대기로 할 애플리케이션, 실행 대기로 할 애플리케이션을 각각 결정하고, 각각 대응하는 상기 리스트(61, 62)에 등록한다.
그리고, 등록한 애플리케이션의 상태나 새로운 애플리케이션의 기동 요구 등의 상황의 변화가 있었던 경우에, 그 현상에 대응하여 상기 각 리스트(61, 62)를 재구축하고, 이 각 리스트(61, 62)를 참조하면서 각 애플리케이션의 경합 관리를 행한다.
(애플리케이션의 상태 천이)
즉, 보다 상세히 설명하기 위해, 도 5에 각 애플리케이션의 각 상태를 모식적으로 도시한다. 이 도 5로부터 알 수 있듯이, 각 애플리케이션의 상태로서는, 예를 들면 해당 휴대 전화기 내에 기억되어 있지 않은 상태(혹은, 애플리케이션이 기억된 메모리가 해당 휴대 전화기에 설치되어 있지 않은 상태)인 「비존재 상태(Non-Existent)」와, 애플리케이션 자체는 기억되어 있지만, 실행이 지정되어 있지 않은 상태인 「불활성 상태(Dormant)」가 있다.
또한, 각 애플리케이션의 상태로서는, 그 애플리케이션이 현재 실행되고 있는 상태인 「실행 상태」, 및 그 애플리케이션이 실행 대기로 되어 있는 상태인 「 실행 대기 상태」가 있다.
해당 휴대 전화기에 설치되어 있지 않은 애플리케이션은, 예를 들면 해당 휴대 전화기에 인스톨되고, 혹은 그 애플리케이션이 기억된 메모리가 해당 휴대 전화기에 설치됨으로써, 도 5 중 「생성」이라고 하여 나타낸 바와 같이, 「불활성 상태(해당 휴대 전화기 내에 존재하고 있지만, 실행 혹은 실행의 지시가 없어 휴면하고 있는 상태)」로 된다.
이 「불활성 상태」의 애플리케이션은, 예를 들면 유저나 다른 애플리케이션으로부터의 실행 지시가 있었던 경우, 도 5 중 「기동」 혹은 「대기 기동」이라고 하여 나타낸 바와 같이, 상기 「실행 상태」 및 「실행 대기 상태」 중 어느 하나의 상태로 천이된다.
애플리케이션 매니저(25)는, 이 「불활성 상태」의 애플리케이션을 「실행 상태」로 천이시킨 경우에는, 상기 실행 리스트(61)에, 그 실행 상태로 한 애플리케이션을 등록한다.
또한, 애플리케이션 매니저(25)는, 이 「불활성 상태」의 애플리케이션을 「실행 대기 상태」로 천이시킨 경우에는, 상기 실행 대기 리스트(62)에, 그 실행 대기 상태로 한 애플리케이션을 등록한다.
다음으로, 실행 상태로 된 애플리케이션은 그 동작 상황 등에 따라 그 상태가 천이한다.
일례이기는 하지만, 상기 애플리케이션이 전화 애플리케이션인 경우,
통화처와의 커넥션을 확립하기 위한 처리를 행하는 접속 상태,
커넥션이 확립된 후에, 통화 중 음성 처리 등을 행하는 통화 상태,
통화 중에 해당 통화의 보류가 지정된 경우에, 통화 보류 처리를 행하는 보류 상태,
통화 종료가 지정된 경우에, 확립되어 있는 커넥션을 절단 처리하는 절단 상태
등과 같이, 통화의 개시부터 종료까지의 동안, 애플리케이션의 상태가 변화한다.
도 5 중의 실행 상태에서의 제1∼제4 상태 및 상호 화살표는, 이와 같이 실행 중인 애플리케이션의 상태 천이를 나타내고 있다.
상기 애플리케이션 매니저(25)는, 「애플리케이션의 기동 요구를 접수하였을 때」, 「실행 중인 애플리케이션의 종료를 검출하였을 때」, 「실행 중인 애플리케이션의 상태 천이를 검출하였을 때」에, 상기 실행 리스트(61) 및 상기 실행 대기 리스트(62)에 등록되어 있는 애플리케이션을 참조한다. 그리고, 각 애플리케이션의 「우선도」 및 「상태」에 따라서, 예를 들면, 실행 중인 애플리케이션을 대기 상태로 한다. 또한, 대신에, 실행 대기 상태의 애플리케이션이나 새롭게 기동 요구가 이루어진 애플리케이션을 실행 상태로 하고, 혹은, 새롭게 기동 요구가 이루어진 애플리케이션은 기동하지 않고서 기동 대기 상태로 하는 등과 같이 경합 관리를 행한다.
또한, 실행이 종료된 애플리케이션은, 도 5에 「종료」라고 하여 나타낸 바와 같이, 상술한 「불활성 상태」로 천이된다. 또한, 「불활성 상태」의 애플리케이션은, 삭제되면, 상술한 바와 같이 휴대 전화기 내에 존재하지 않는 상태인 「비 존재 상태」로 된다.
[애플리케이션 매니저의 경합 관리 동작]
다음으로, 이러한 애플리케이션 매니저(25)의 경합 관리 동작을, 도 6의 플로우차트를 이용하여 설명한다.
이 도 6의 플로우차트는 애플리케이션 매니저(25)가, 「애플리케이션의 기동 요구를 접수하였을 때」, 「실행 중인 애플리케이션의 종료를 검출하였을 때」, 「실행 중인 애플리케이션의 상태 천이를 검출하였을 때」에 스타트(조건 판정 개시)로 되고, 단계 S1으로부터 각 단계를 실행한다.
우선, 단계 S1에서는, 애플리케이션 매니저(25)가, 「애플리케이션의 기동 요구」, 「실행 중인 애플리케이션의 종료」, 「실행 중인 애플리케이션의 상태 천이」 중 어느 하나를 검출하였기 때문에, 도 4에 도시하는 애플리케이션 매니저(25)의 애플리케이션 관리 블록(64)이 애플리케이션 리스트(63)를 참조한다.
다음으로, 단계 S2에서는, 애플리케이션 관리 블록(64)이, 상기 애플리케이션 리스트(63)의 실행 리스트(61)에 등록되어 있는 애플리케이션의 유무를 검출함으로써, 현재 실행 중인 애플리케이션이 존재하는지의 여부를 판별한다.
애플리케이션 관리 블록(64)은, 상기 실행 리스트(61)를 참조하여, 현재 실행 중인 애플리케이션이 존재하지 않았던 경우(=실행 리스트(61)에 애플리케이션이 등록되어 있지 않았던 경우), 단계 S3에서, 기동 요구가 이루어진 애플리케이션을 실행 리스트(61)에 등록한다. 혹은, 실행 대기 리스트(62)에 등록되어 있는 실행 대기 상태의 애플리케이션 중에서 실행 상태로 천이시킬 애플리케이션을 선택하고, 이 애플리케이션을 실행 리스트(61)에 등록한다.
이와 같이 애플리케이션 관리 블록(64)에 의해, 실행 리스트(61)에 대하여 상기 애플리케이션의 등록이 행하여지면, 애플리케이션 제어 블록(65)은, 단계 S10에서, 상기 실행 리스트(61)에 등록된 애플리케이션을 실행 상태로 천이시킨다.
이에 의해, 기동 요구가 이루어진 애플리케이션 혹은 실행 대기로 되어 있었던 애플리케이션이 실행되게 된다.
다음으로, 상기 단계 S2에서, 실행 리스트(61)에 하나 이상의 애플리케이션의 등록이 되어 있었던 경우, 단계 S4에서, 애플리케이션 관리 블록(64)은, 도 2에 도시하는 경합 조건 테이블(26)을 참조하는 「경합 체크」를 행한다.
(경합 조건 테이블)
이 「경합 체크」에 이용되는 경합 조건 테이블(26)은, 실행 중인 애플리케이션의 하나 하나의 상태를, 경합하는 다른 애플리케이션의 하나 하나의 상태에 각각 대응시킨 테이블로 되어 있다. 또한, 경합 조건 테이블(26)은, 이 실행 중인 애플리케이션의 상태와 경합하는 다른 애플리케이션의 상태의 경합 관계에서, 실행 중인 애플리케이션 및 경합하는 다른 애플리케이션이 천이될 상태를 나타낸 테이블로 되어 있다.
따라서, 본 실시예의 휴대 전화기에 설치되어 있는 애플리케이션의 총 수를 「N」, 각 애플리케이션이 갖는 상태 수를 「M」이라고 한 경우, 본 실시예의 휴대 전화기에 설치되는 경합 조건 테이블의 총 수는 「경합 조건 테이블의 총 수=N×M」으로 된다.
구체적으로는, 예를 들면, 도 7은 현재 실행 중인 애플리케이션이 전화 애플리케이션인 경우에 참조되는 경합 조건 테이블(26)의 일례를 도시하고 있다.
이 도 7 중, 제1∼제N 상태(N은 자연수)는 상술한 접속 상태, 통화 상태, 보류 상태, …의 각 상태를 나타내고 있다. 또한, 도 7 중, 「전화」, 「대기」, …, 「메모장」은, 상태가 참조되는 각 경합 애플리케이션을 나타내고 있다.
또한, 이 도 7에 도시하는 「기동 불가」, 「인터럽트측 대기」, 「동작측 대기」, 「동작측 종료」의 각 상태는, 이하의 것을 의미하고 있다.
「기동 불가」→기동 요구가 이루어진 애플리케이션은 기동할 수 없기 때문에, 그 기동 요구를 캔슬한다.
「인터럽트측 대기」→기동 요구가 이루어진 애플리케이션을 실행 대기 상태로 하고, 현재 실행하고 있는 애플리케이션을 계속해서 실행한다.
「동작측 대기」→현재 실행 중인 애플리케이션을 종료하지 않고 실행 대기 상태로 함과 함께, 기동 요구가 이루어진 애플리케이션의 실행을 개시한다.
「동작측 종료」→현재 실행 중인 애플리케이션을 종료하고, 기동 요구가 이루어진 애플리케이션의 실행을 개시한다.
이들 각 상태는, 「기동 불가」>「인터럽트측 대기」>「동작측 대기」>「동작측 종료」의 순서로 우선도가 할당되어 있다.
애플리케이션 관리 블록(64)은, 실행 중인 애플리케이션의 현재 상태 및 경합한 애플리케이션의 현재 상태에 기초하여, 상기 경합 조건 테이블을 참조해서, 실행 중인 애플리케이션 및 경합한 애플리케이션이 천이될 상태(상기 기동 불가, 인터럽트측 대기, 동작측 대기, 동작측 종료 등)를 각각 검출한다.
그리고, 애플리케이션 제어 블록(65)이, 이 애플리케이션 관리 블록(64)에 의해 검출된 상기 실행 중인 애플리케이션이 천이될 상태 및 경합한 애플리케이션이 천이될 상태의 상기 우선도에 기초하여, 그 실행 중인 애플리케이션의 상태를 상기 검출된 천이될 상태로 천이시킨다. 또한, 그 경합한 애플리케이션의 상태를 상기 검출된 천이될 상태로 천이시킨다.
이러한 흐름을, 도 6의 플로우차트를 이용하여 설명하면, 애플리케이션 관리 블록(64)은, 단계 S5에서, 기동 요구가 이루어진 애플리케이션(인터럽트측 애플리케이션)의 기동은 불가한지의 여부를 상기 경합 체크에 의해 판별한다.
상기 경합 체크에 의해 인터럽트측 애플리케이션의 기동은 불가하다고 판별된 경우, 인터럽트측 애플리케이션을 기동할 수 없기 때문에, 애플리케이션 관리 블록(64)은, 단계 S10에서, 상기 기동 요구가 이루어진 애플리케이션의 해당 기동 요구를 캔슬한다.
이에 대하여, 상기 경합 체크에 의해, 인터럽트측 애플리케이션의 기동은 가능하다고 판별된 경우, 애플리케이션 관리 블록(64)은, 이 인터럽트측 애플리케이션의 판별 결과(애플리케이션 ID, 애플리케이션명, 태스크 ID, 상태 등)를 일단 「가(假)리스트」에 등록한다.
또한, 이 「가리스트」에 등록된 상기 판별 결과는, 애플리케이션 리스트(63)에 등록되어 있는 모든 애플리케이션에 대하여 상기 경합 체크가 종료될 때까지의 동안, 유지된다. 또한, 이 가리스트는 상기 메모리(13)의 소정 영역 혹은 CPU(12) 내의 일시 기억 영역 등에 형성된다.
애플리케이션 관리 블록(64)은, 애플리케이션 리스트(63)에 등록되어 있는 모든 애플리케이션에 대하여 상기 경합 체크가 종료되면, 상기 가리스트에 등록되어 있는 각 애플리케이션이 천이될 상태를 각각 검출한다. 그리고, 상술한 바와 같이 「기동 불가」>「인터럽트측 대기」>「동작측 대기」>「동작측 종료」로 되어 있는 「상태 우선도」에 기초하여, 경합하는 각 애플리케이션이 천이될 상태를 결정하고, 그 결과를 상기 애플리케이션 리스트(63)에 반영한다.
그 결과, 도 8에 도시하는 바와 같이, 실행 중인 각 애플리케이션의 「애플리케이션 식별 번호(애플리케이션 ID)」, 「애플리케이션명」, 「태스크 식별 번호(태스크 ID)」, 「상태」 등으로 이루어지는 실행 리스트(61), 및 도 9에 도시하는 바와 같이, 실행 대기의 각 애플리케이션의 「애플리케이션 식별 번호(애플리케이션 ID)」, 「애플리케이션명」, 「태스크 식별 번호(태스크 ID)」, 「상태」 등으로 이루어지는 실행 대기 리스트(62)가 애플리케이션 리스트(63) 내에 형성되게 된다.
또한, 이 도 8 및 도 9에 도시하는 「상태」로서는, 상기 결정된 그 애플리케이션이 「천이될 상태」를 나타내는 정보가 등록된다. 예를 들면, 전화 애플리케이션의 경우에는, 상기 접속 상태, 통화 상태, 보류 상태, … 등에 대응하는 정보가 등록된다.
또한, 실행 리스트(61) 및 실행 대기 리스트(62)에 등록되는 애플리케이션의 수는 1개로는 한정되지 않고, 복수의 애플리케이션이 병행하여 실행되거나 실행 대 기로 되어 있는 경우에는, 이 복수의 애플리케이션에 대응하는 상기 「애플리케이션 ID」나 「애플리케이션명」 등이 등록된다.
도 6의 플로우차트의 단계 S1, 단계 S2 및 단계 S4∼단계 S9의 흐름은, 애플리케이션 리스트(63)에 등록되어 있는 모든 애플리케이션에 대한 경합 체크가 종료될 때까지의 동안, 경합 체크의 결과를 가리스트에 등록하는 동작을 반복하여 실행함과 함께, 애플리케이션 리스트(63)에 등록되어 있는 모든 애플리케이션에 대한 경합 체크가 종료되었을 때에, 이 가리스트의 등록 내용을 애플리케이션 리스트(63)에 반영하는 동작의 흐름을 나타내고 있다.
다음으로, 이와 같이 하여 애플리케이션 리스트(63)에 상기 가리스트의 결과가 반영되면, 애플리케이션 제어 블록(65)은, 단계 S10에서, 애플리케이션 리스트(63)의 실행 리스트(61)에 등록된 애플리케이션을 실행 상태로 천이시킴과 함께, 실행 대기 리스트(62)에 등록된 애플리케이션을 실행 대기 상태로 천이시킨다.
이 후, 애플리케이션 매니저(25)는, 「애플리케이션의 기동 요구」, 「실행 중인 애플리케이션의 종료」, 「실행 중인 애플리케이션의 상태 천이」의 검출 대기 상태로 된다. 그리고, 이들 중 어느 하나가 검출된 타이밍에서, 재차, 이 도 6에 도시하는 플로우차트를 실행하게 된다.
(전화 애플리케이션이 실행 중인 경우의 경합 관리)
이러한 동작을, 도 7의 예를 이용하여 더 구체적으로 설명한다. 상술한 바와 같이, 이 도 7은 현재 실행 중인 애플리케이션으로서 전화 애플리케이션이 실행되고 있는 경우에 참조되는 경합 조건 테이블의 일례이다.
예를 들면, 현재 실행 중인 전화 애플리케이션의 상태가 접속 중(제1 상태)임에도 불구하고, 또, 전화 애플리케이션의 기동 요구가 이루어진 경우, 경합 조건 테이블(26)을 참조하면, 전화 애플리케이션을 거듭 기동하지 않는 것이 바람직하므로, 도 7에 도시하는 바와 같이, 「기동 불가」로 되어 있다.
이 때문에, 애플리케이션 제어 블록(65)은, 이 경우, 기동 요구가 있었던 전화 애플리케이션의 해당 요구를 캔슬하고, 현재 실행 중인 전화 애플리케이션을 계속해서 실행 제어한다.
이에 대하여, 현재 실행 중인 전화 애플리케이션이 접속 중인 상태(제1 상태)에서 전자 메일(E 메일)의 작성 요구(혹은 송신 요구)가 이루어진 경우, 경합 조건 테이블(26)을 참조하면, 「인터럽트측 대기」로 되어 있다. 이 때문에, 애플리케이션 관리 블록(64)은, 기동 요구가 이루어진 E 메일 애플리케이션(이 경우, E 메일 애플리케이션은 인터럽트측 애플리케이션으로 됨)을 상기 실행 대기 리스트(62)에 등록하여 실행 대기 상태로 한다.
마찬가지로, 현재 실행 중인 전화 애플리케이션이 통화 중인 상태(제2 상태)에서 동화상 플레이어의 기동 요구가 이루어진 경우, 경합 조건 테이블(26)을 참조하면, 「기동 가능」으로 되어 있다. 이 때문에, 애플리케이션 관리 블록(64)은 동화상 플레이어 애플리케이션을 상기 실행 리스트(61)에 등록한다. 이에 의해, 애플리케이션 제어 블록(65)은 상기 현재 실행 중인 전화 애플리케이션 및 상기 동화상 플레이어 애플리케이션을 병행하여 실행 제어하게 된다.
마찬가지로, 현재 실행 중인 전화 애플리케이션이 접속 중인 상태(제1 상태) 에서 주소록의 기동 요구가 이루어진 경우, 경합 조건 테이블(26)을 참조하면, 「동작측 대기」로 되어 있다. 이 때문에, 애플리케이션 관리 블록(64)은, 실행 리스트(61)에 등록되어 있는 현재 실행 중인 전화 애플리케이션을 실행 대기 리스트(62)에 다시 등록함과 함께, 대신, 실행 리스트(61)에 주소록 애플리케이션을 새롭게 등록한다.
이에 의해, 애플리케이션 제어 블록(65)은 지금까지 실행하고 있었던 전화 애플리케이션을 실행 대기 상태로 천이시키고, 기동 요구가 이루어진 주소록을 기동하여 실행 제어하게 된다.
또한, 본 구체예의 설명에서는, 애플리케이션 관리 블록(64)은, 경합 조건 테이블(26)을 이용한 검출 결과에 기초하여, 애플리케이션 리스트(63)의 등록 내용을 직접적으로 재기입하는 것과 같이 설명을 행하였다. 물론, 직접적으로 재기입을 행하는 것도 가능하지만, 본 실시예의 경우는 상기 「가리스트」에 판정 결과를 일단 기억시키고, 모든 애플리케이션의 판정이 종료된 타이밍에서, 이 가리스트의 내용을 애플리케이션 리스트(63)에 반영시키고 있다.
(주소록 및 전화가 경합한 경우의 경합 관리)
다음으로, 도 10 및 도 11의 시퀀스도(타임차트)를 이용하여, 이러한 경합 관리 처리를 더 구체적으로 설명한다.
우선, 도 10은, 앞서 주소록 애플리케이션이 기동되어 있고, 나중에 전화 애플리케이션의 기동 요구가 있었던 경우에서의 경합 관리 처리의 흐름을 도시하고 있다.
또한, 이 주소록 애플리케이션은, 메모리(13)의 소정 영역에 마련된 주소록의 기억 영역에 대하여, 통화처의 휴대 전화 번호나 휴대 메일 어드레스 등의 등록이나 삭제 등의 편집을 행하는 애플리케이션이다.
이 도 10에서, 단계 S11에서 애플리케이션 런처로부터 애플리케이션 매니저(25)에 대하여 전화 애플리케이션의 기동 요구가 있었던 경우, 애플리케이션 매니저(25)의 애플리케이션 관리 블록(64)은, 단계 S12에서, 도 7의 예를 이용하여 설명한 경합 조건 테이블(26)을 참조하여, 상술한 「경합 체크」를 행한다.
이 경합 체크에 의해, 주소록 애플리케이션을 실행 대기 상태로 하고, 전화 애플리케이션을 기동시키는 결과(=동작측 대기)가 얻어진 경우, 애플리케이션 관리 블록(64)은, 애플리케이션 제어 블록(65)에 대하여, 현재 실행 중인 주소록 애플리케이션의 「대기 요구」를 송신한다.
이 「대기 요구」를 수신하면, 애플리케이션 제어 블록(65)은, 단계 S13에 도시하는 바와 같이, 현재 실행 제어하고 있는 주소록 애플리케이션에 대기 요구를 송신함으로써, 이 주소록 애플리케이션을 대기 상태로 제어한다.
주소록 애플리케이션은 대기 상태로 되면, 단계 S14에 도시하는 바와 같이, 「대기 완료」의 데이터를, 애플리케이션 제어 블록(65)을 통하여 애플리케이션 관리 블록(64)에 송신한다.
다음으로, 애플리케이션 관리 블록(64)은 이 「대기 완료」의 데이터를 수신하면, 애플리케이션 제어 블록(65)에 대하여 전화 애플리케이션의 기동 요구를 송신한다. 이 기동 요구를 수신하면, 애플리케이션 제어 블록(65)은, 단계 S15에 도 시하는 바와 같이, 전화 애플리케이션에 대하여 기동 요구를 송신하여, 그 전화 애플리케이션을 기동 제어한다.
또한, 기동이 완료되면, 단계 S16에 도시하는 바와 같이, 전화 애플리케이션측으로부터 애플리케이션 관리 블록(64)에 대하여 「기동 완료 통지」가 이루어진다.
다음으로, 전화 애플리케이션의 실행이 진행되고, 통화 종료 등에 의해 전화 애플리케이션의 실행이 종료되면, 단계 S17에 도시하는 바와 같이, 전화 애플리케이션측으로부터 애플리케이션 관리 블록(64)에 대하여 「종료 통지」가 이루어진다.
다음으로, 이 종료 통지를 수신하면, 애플리케이션 관리 블록(64)은, 단계 S18에서, 애플리케이션 리스트(63)에 등록되어 있는 실행 중인 애플리케이션 및 실행 대기의 애플리케이션을 참조하여, 상술한 경합 체크를 행한다. 그리고, 이 경합 체크에 의해, 방금 전, 대기 상태로 한 주소록 애플리케이션을 기동시켜도 되는 경우에, 애플리케이션 제어 블록(65)에 대하여 주소록 애플리케이션의 기동 요구를 송신한다.
애플리케이션 제어 블록(65)은 이 기동 요구를 수신하면, 단계 S19에 도시하는 바와 같이, 방금 전, 대기 상태로 한 주소록 애플리케이션을 재실행 제어한다. 이 재실행 제어에 의해 주소록 애플리케이션이 다시 실행 상태로 천이되면, 단계 S20에 도시하는 바와 같이, 이 주소록 애플리케이션으로부터 애플리케이션 관리 블록(64)에 대하여 「기동 완료 통지」가 이루어진다.
이에 의해, 주소록 편집 작업 등에 인터럽트 형식으로 전화 애플리케이션이 실행된다. 또한, 통화 종료 후에, 재차, 주소록 애플리케이션이 실행되고, 주소록 편집 작업 등이 행해진다.
(E 메일 및 전화가 경합한 경우의 경합 관리)
다음으로, 도 11은, 앞서 전화 애플리케이션이 기동되어 있고, 나중에 E 메일 애플리케이션의 기동 요구가 있었던 경우에서의 경합 관리 처리의 흐름을 도시하고 있다.
또한, 이 E 메일 애플리케이션은, 휴대 메일의 송수신, 송수신한 휴대 메일의 삭제 등의 편집이나 휴대 메일의 작성 등을 행하는 애플리케이션이다.
이 도 11에서, 단계 S21에서 애플리케이션 런처로부터 애플리케이션 매니저(25)에 대하여 E 메일 애플리케이션의 기동 요구가 있었던 경우, 애플리케이션 매니저(25)의 애플리케이션 관리 블록(64)은, 단계 S22에서, 상기 경합 조건 테이블(26)을 참조하여, 상술한 「경합 체크」를 행한다.
이 경합 체크에 의해, 기동 요구가 이루어진 E 메일 애플리케이션을 실행 대기 상태로 하고, 전화 애플리케이션을 계속해서 실행하는 결과(=인터럽트측 대기)가 얻어진 경우, 애플리케이션 관리 블록(64)은, 애플리케이션 제어 블록(65)에 대하여, 기동 요구가 이루어진 E 메일 애플리케이션의 「대기 요구」를 송신한다.
애플리케이션 제어 블록(65)은 이 「대기 요구」를 수신하면, 단계 S23에서, 기동 요구가 이루어진 E 메일 애플리케이션을 대기 상태로 제어함과 함께, 현재 실행 제어하고 있는 전화 애플리케이션을 계속해서 실행 제어한다.
다음으로, 전화 애플리케이션의 실행이 진행되고, 통화 종료 등에 의해 전화 애플리케이션의 실행이 종료되면, 단계 S24에 도시하는 바와 같이, 전화 애플리케이션측으로부터 애플리케이션 관리 블록(64)에 대하여 「종료 통지」가 이루어진다.
이 종료 통지를 수신하면, 애플리케이션 관리 블록(64)은, 단계 S25에서, 애플리케이션 리스트(63)에 등록되어 있는 실행 중인 애플리케이션 및 실행 대기의 애플리케이션을 참조하여, 상술한 경합 체크를 행한다. 그리고, 이 경합 체크에 의해, 방금 전, 대기 상태로 한 E 메일 애플리케이션을 기동시켜도 되는 경우에, 애플리케이션 제어 블록(65)에 대하여 E 메일 애플리케이션의 기동 요구를 송신한다.
애플리케이션 제어 블록(65)은 이 기동 요구를 수신하면, 단계 S26에 도시하는 바와 같이, 방금 전, 대기 상태로 한 E 메일 애플리케이션을 기동 제어한다. 이에 의해, 통화 종료 후에, E 메일의 송수신이나 작성 등이 행해지게 된다.
또한, 단계 S27에 도시하는 바와 같이, E 메일 애플리케이션의 기동이 완료되면, 이 E 메일 애플리케이션으로부터 애플리케이션 관리 블록(64)에 대하여 「기동 완료 통지」가 이루어진다.
이상의 설명으로부터 분명한 바와 같이, 본 실시예의 휴대 전화기는, 애플리케이션 매니저(25)가, 현재 실행 중인 애플리케이션을, 애플리케이션 리스트(63)의 실행 리스트(61)에 등록하고, 실행 대기로 되어 있는 애플리케이션을 실행 대기 리스트(62)에 등록한다.
그리고, 「애플리케이션의 기동 요구를 접수하였을 때」, 「실행 중인 애플리케이션의 종료를 검출하였을 때」, 「실행 중인 애플리케이션의 상태 천이를 검출하였을 때」 등에, 실행 리스트(61) 및 실행 대기 리스트(62)를 참조하여, 실행할 애플리케이션 및 실행 대기시킬 애플리케이션을 결정하고, 멀티태스크 처리에서의 각 애플리케이션의 경합 관리를 행한다. 이에 의해, 이하의 효과를 얻을 수 있다.
실행 중인 애플리케이션의 현재 상태 외에, 실행 대기로 되어 있는 애플리케이션의 상태를 참조하여, 실행 중인 애플리케이션 및 실행 대기의 애플리케이션을 종합적으로 판단해서, 실행할 애플리케이션 및 실행 대기로 할 애플리케이션을 결정하도록 되어 있다.
이 때문에, 실행 대기로 되어 있는 애플리케이션의 실행 재개를 보증할 수 있다.
또한, 종래의 애플리케이션 경합 관리는, 예를 들면, 표 계산 소프트웨어의 실행 중에 유저로부터 문서 작성 소프트웨어의 실행 지시가 있었던 경우, 이 실행 지시를 우선하여 문서 작성 소프트웨어의 기동을 행하도록 되어 있다.
그러나, 본 실시예의 휴대 전화기의 경우, 실행 중인 애플리케이션 및 실행 대기의 애플리케이션을 종합적으로 판단하여, 실행할 애플리케이션 및 실행 대기로 할 애플리케이션을 결정하도록 되어 있기 때문에, 유저로부터 실행 지시가 이루어진 경우에도, 표 계산 소프트웨어가 소정의 실행 상태인 경우에는 문서 작성 소프트웨어가 기동하지 않도록 할 수 있다. 따라서, 보다 정밀한 애플리케이션 경합 관리를 가능하게 할 수 있다.
또한, 실행할 애플리케이션 및 실행 대기로 할 애플리케이션은 애플리케이션 매니저(25)가 애플리케이션 리스트(63) 및 경합 조건 테이블(26)을 참조하여 결정하도록 되어 있다. 즉, 그 애플리케이션의 실행 여부는 애플리케이션 매니저(25)가 판단하도록 되어 있다.
이 때문에, 애플리케이션을 프로그래밍할 때에, 다른 애플리케이션과의 경합 관계를 고려하지 않고 프로그래밍을 행하는 것을 가능하게 할 수 있다.
또한, 이와 같이, 다른 애플리케이션과의 경합 관계를 고려하지 않고 프로그래밍을 행하는 것을 가능하게 할 수 있기 때문에, 임의의 애플리케이션에 사양 변경이 생긴 경우에는, 그 애플리케이션에 대해서만 사양 변경을 가하면 되게 된다.
이 때문에, 임의의 애플리케이션에 사양 변경이 생긴 경우에, 다른 모든 애플리케이션에 대하여도 이 사양 변경에 대응한 사양 변경을 가하여, 다수의 애플리케이션 재프로그래밍 작업이나 재인스톨 작업(애플리케이션의 설계 및 실장의 변경 작업) 등의 대단히 번거로운 작업이 필요로 되는 문제를 방지할 수 있다.
그리고, 본 실시예의 휴대 전화기는, 이와 같이 애플리케이션 프로그래밍을 행할 때에, 다른 애플리케이션과의 경합 관계를 고려하지 않아도 되기 때문에, 소프트웨어 개발을 대폭 간단하게 할 수 있다.
[다른 적용 분야]
상술한 실시예의 설명에서는 본 발명을 휴대 전화기에 적용하는 것으로 하였지만, 본 발명은, 그 외에, PHS 전화기(PHS : Personal Handyphone System)나 PDA 장치(PDA : Personal Digital(Data) Assistant) 등의 이동체 통신 단말 장치 외에, 퍼스널 컴퓨터 장치 등의 단말 장치에 적용하여도 된다.
또한, 상술한 실시예의 설명에서는 애플리케이션 경합 관리를 행하도록 하였지만, 이는, 태스크마다의 경합 관리를 행하도록 하여도 된다.
마지막으로, 상술한 실시예는 본 발명의 일례이다. 이 때문에, 본 발명은 상술한 실시예에 한정되지 않으며, 본 실시예 이외이어도, 본 발명에 따른 기술적 사상을 일탈하지 않는 범위이면, 설계 등에 따라 다양한 변경이 가능한 것은 물론임을 덧붙여 놓는다.

Claims (20)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 휴대용 단말 장치의 컴퓨터에 실행시키기 위한 경합 관리 프로그램이 기억된 기억 매체로서,
    (a) 기동 태스크의 실행 요구와, (b) 현재 실행되는 태스크의 종료 통지와, (c) 현재 실행되는 태스크의 상태 천이 통지 중의 하나를 접수하는 접수 단계와,
    기동 중인 태스크를 메모리 내의 기동 중 태스크 리스트에 등록하는 기동 중 태스크 등록 단계와,
    상기 접수 단계에서 상기 기동 태스크의 실행 요구를 접수하였을 때에, 상기 기동 태스크 실행 요구가 발행된 태스크가 기동 가능한 것인지와, 실행 대기 중인 태스크가 기동 가능한 것인지가 결정되도록 상기 기동 중 태스크 리스크를 참조하여 태스크 경합을 검출하는 경합 검출 단계와,
    상기 경합 검출 단계에서 태스크 경합을 검출하였을 때에, 각각의 태스크에 대한 경합 조건 테이블에 설정된 미리 정해진 조건에 따라, 상기 기동 태스크의 실행 요구에 의해 지정된 태스크 및 상기 기동 중 태스크 리스트에 등록되어 있는 현재 실행되는 태스크가 천이될 상태를 결정하는 상태 결정 단계로서, 상기 천이될 상태는 기동 불가 상태, 기동 가능 상태, 동작측 대기 상태, 동작측 종료 상태 및 인터럽트측 대기 상태를 포함하는 상태 결정 단계와,
    상기 기동 태스크의 실행 요구에 의해 지정된 태스크 및 상기 기동 중 태스크 리스트에 등록되어 있는 현재 실행되는 태스크를 상기 상태 결정 단계에서 결정된 상태로 각각 놓이게 하는 상태 천이 단계
    를 상기 컴퓨터에 실행시키기 위한, 컴퓨터 판독 가능한 경합 관리 프로그램이 기억된 기억 매체.
  7. 제6항에 있어서,
    상기 상태 결정 단계는, 상기 경합 검출 단계에서 태스크 경합을 검출하였을 때에, 그 경합하는 태스크들이 천이될 상태가 기억된 경합 조건 테이블을 참조하여, 상기 기동 태스크의 실행 요구에 의해 지정된 태스크 및 상기 기동 중 태스크 리스트에 등록되어 있는 현재 실행되는 태스크가 천이될 상태를 각각 결정하는, 컴퓨터 판독 가능한 경합 관리 프로그램이 기억된 기억 매체.
  8. 제7항에 있어서,
    상기 기동 중 태스크 등록 단계는, 실행할 태스크를 상기 기동 중 태스크 리스트 내의 실행 리스트에 등록하고, 실행 대기로 할 태스크를 상기 기동 중 태스크 리스트 내의 실행 대기 리스트에 등록하는, 컴퓨터 판독 가능한 경합 관리 프로그램이 기억된 기억 매체.
  9. 제8항에 있어서,
    상기 기동 중 태스크 등록 단계는, 상기 상태 결정 단계에서 결정된 상태의 우선도에 따라, 실행할 태스크와 실행 대기로 할 태스크의 선별을 행해서, 그 실행할 태스크를 상기 실행 리스트에 등록하고, 그 실행 대기로 할 태스크를 상기 실행 대기 리스트에 등록하는, 컴퓨터 판독 가능한 경합 관리 프로그램이 기억된 기억 매체.
  10. 제7항에 있어서,
    상기 상태 결정 단계는, 상기 기동 태스크의 실행 요구에 의해 지정된 태스크의 실행이 불가하다고 결정된 경우에, 그 기동 태스크의 실행 요구를 캔슬하는, 컴퓨터 판독 가능한 경합 관리 프로그램이 기억된 기억 매체.
  11. 휴대용 단말 장치의 컴퓨터에 의해 실행되는 경합 관리 방법으로서,
    (a) 기동 태스크의 실행 요구와, (b) 현재 실행되는 태스크의 종료 통지와, (c) 현재 실행되는 태스크의 상태 천이 통지 중의 하나를 접수하는 접수 단계와,
    기동 중인 태스크를 메모리 내의 기동 중 태스크 리스트에 등록하는 기동 중 태스크 등록 단계와,
    상기 접수 단계에서 상기 기동 태스크의 실행 요구를 접수하였을 때에, 상기 기동 태스크 실행 요구가 발행된 태스크가 기동 가능한 것인지와, 실행 대기 중인 태스크가 기동 가능한 것인지가 결정되도록 상기 기동 중 태스크 리스크를 참조하여 태스크 경합을 검출하는 경합 검출 단계와,
    상기 경합 검출 단계에서 태스크 경합을 검출하였을 때에, 각각의 태스크에 대한 경합 조건 테이블에 설정된 미리 정해진 조건에 따라, 상기 기동 태스크의 실행 요구에 의해 지정된 태스크 및 상기 기동 중 태스크 리스트에 등록되어 있는 현재 실행되는 태스크가 천이될 상태를 결정하는 상태 결정 단계로서, 상기 천이될 상태는 기동 불가 상태, 기동 가능 상태, 동작측 대기 상태, 동작측 종료 상태 및 인터럽트측 대기 상태를 포함하는 상태 결정 단계와,
    상기 기동 태스크의 실행 요구에 의해 지정된 태스크 및 상기 기동 중 태스크 리스트에 등록되어 있는 현재 실행되는 태스크를 상기 상태 결정 단계에서 결정된 상태로 각각 놓이게 하는 상태 천이 단계
    를 포함하는, 경합 관리 방법.
  12. 제11항에 있어서,
    상기 상태 결정 단계는, 상기 경합 검출 단계에서 태스크 경합을 검출하였을 때에, 그 경합하는 태스크들이 천이될 상태가 기억된 경합 조건 테이블을 참조하여, 상기 기동 태스크의 실행 요구에 의해 지정된 태스크 및 상기 기동 중 태스크 리스트에 등록되어 있는 현재 실행되는 태스크가 천이될 상태를 각각 결정하는, 경합 관리 방법.
  13. 제12항에 있어서,
    상기 기동 중 태스크 등록 단계는, 실행할 태스크를 상기 기동 중 태스크 리스트 내의 실행 리스트에 등록하고, 실행 대기로 할 태스크를 상기 기동 중 태스크 리스트 내의 실행 대기 리스트에 등록하는, 경합 관리 방법.
  14. 제13항에 있어서,
    상기 기동 중 태스크 등록 단계는, 상기 상태 결정 단계에서 결정된 상태의 우선도에 따라, 실행할 태스크와 실행 대기로 할 태스크의 선별을 행해서, 그 실행할 태스크를 상기 실행 리스트에 등록하고, 그 실행 대기로 할 태스크를 상기 실행 대기 리스트에 등록하는, 경합 관리 방법.
  15. 제12항에 있어서,
    상기 상태 결정 단계는, 상기 기동 태스크의 실행 요구에 의해 지정된 태스크의 실행이 불가하다고 결정된 경우에, 그 기동 태스크의 실행 요구를 캔슬하는, 경합 관리 방법.
  16. 전자 기기로서,
    (a) 기동 태스크의 실행 요구와, (b) 현재 실행되는 태스크의 종료 통지와, (c) 현재 실행되는 태스크의 상태 천이 통지 중의 하나를 접수하는 실행 요구 접수 수단과,
    기동 중인 태스크를 메모리 내의 기동 중 태스크 리스트에 등록하는 기동 중 태스크 등록 수단과,
    상기 실행 요구 접수 수단에 의해 상기 기동 태스크의 실행 요구를 접수하였을 때에, 태스크 경합이 검출되도록 상기 기동 중 태스크 리스크를 참조하여 상기 기동 태스크 실행 요구가 발행된 태스크가 기동 가능한 것인지와, 실행 대기 중인 태스크가 기동 가능한 것인지를 결정하는 경합 검출 수단과,
    상기 경합 검출 수단에 의해 상기 태스크 경합이 검출되었을 때에, 각각의 태스크에 대한 경합 조건 테이블에 설정된 미리 정해진 조건에 따라, 상기 기동 태스크의 실행 요구에 의해 지정된 태스크 및 상기 기동 중 태스크 리스트에 등록되어 있는 현재 실행되는 태스크가 천이될 상태를 결정하는 천이 상태 결정 수단으로서, 상기 천이될 상태는 기동 불가 상태, 기동 가능 상태, 동작측 대기 상태, 동작측 종료 상태 및 인터럽트측 대기 상태를 포함하는 천이 상태 결정 수단과,
    상기 기동 태스크의 실행 요구에 의해 지정된 태스크 및 상기 기동 중 태스크 리스트에 등록되어 있는 현재 실행되는 태스크를 상기 천이 상태 결정 수단에 의해 결정된 상태로 각각 놓이게 하는 상태 천이 수단
    을 포함하는, 전자 기기.
  17. 제16항에 있어서,
    경합하는 태스크들이 천이될 상태가 기억된 경합 조건 테이블을 더 포함하고,
    상기 천이 상태 결정 수단은, 상기 경합 검출 수단에 의해 태스크 경합이 검출될 때에, 상기 경합 조건 테이블을 참조하여, 상기 기동 태스크 실행 요구에 의해 지정된 태스크 및 상기 기동 중 태스크 리스트에 등록되어 있는 현재 실행되는 태스크가 천이될 상태를 결정하는, 전자 기기.
  18. 제17항에 있어서,
    상기 기동 중 태스크 등록 수단은, 실행할 태스크를 상기 기동 중 태스크 리스트 내의 실행 리스트에 등록하고, 실행 대기로 할 태스크를 상기 기동 중 태스크 리스트 내의 실행 대기 리스트에 등록하는, 전자 기기.
  19. 제18항에 있어서,
    상기 기동 중 태스크 등록 수단은, 상기 천이 상태 결정 수단에 의해 결정된 상태의 우선도에 따라, 실행할 태스크와 실행 대기로 할 태스크의 선별을 행해서, 그 실행할 태스크를 상기 실행 리스트에 등록하고, 그 실행 대기로 할 태스크를 상기 실행 대기 리스트에 등록하는, 전자 기기.
  20. 제17항에 있어서,
    상기 천이 상태 결정 수단은, 상기 기동 태스크의 실행 요구에 의해 지정된 태스크의 실행이 불가하다고 결정된 경우에, 상기 기동 태스크의 실행 요구를 캔슬하는, 전자 기기.
KR1020057023708A 2003-06-10 2004-06-09 경합 관리 프로그램이 기억된 기억 매체, 경합 관리 방법 및 전자 기기 KR101019298B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2003-00165742 2003-06-10
JP2003165742A JP2005005909A (ja) 2003-06-10 2003-06-10 競合管理プログラム,競合管理プログラムが記憶された記憶媒体,競合管理方法及び電子機器

Publications (2)

Publication Number Publication Date
KR20060023987A KR20060023987A (ko) 2006-03-15
KR101019298B1 true KR101019298B1 (ko) 2011-03-07

Family

ID=33549227

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057023708A KR101019298B1 (ko) 2003-06-10 2004-06-09 경합 관리 프로그램이 기억된 기억 매체, 경합 관리 방법 및 전자 기기

Country Status (6)

Country Link
US (1) US7836446B2 (ko)
EP (1) EP1640862B1 (ko)
JP (1) JP2005005909A (ko)
KR (1) KR101019298B1 (ko)
CN (1) CN1806229B (ko)
WO (1) WO2004111848A1 (ko)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4731822B2 (ja) * 2004-03-30 2011-07-27 京セラ株式会社 携帯電話端末装置及びプログラム管理方法並びにそのコンピュータプログラム
EP1783607A4 (en) * 2004-07-28 2009-04-01 Panasonic Corp DEVICE FOR RESOLVING COMPETITION
US7711721B2 (en) * 2004-09-01 2010-05-04 International Business Machines Corporation Apparatus, system, and method for suspending a request during file server serialization reinitialization
US7490088B2 (en) * 2004-09-01 2009-02-10 International Business Machines Corporation Apparatus, system, and method for preserving connection/position data integrity during file server serialization reinitialization
US7627578B2 (en) * 2004-09-01 2009-12-01 International Business Machines Corporation Apparatus, system, and method for file system serialization reinitialization
JP4821132B2 (ja) * 2005-02-23 2011-11-24 日本電気株式会社 ソフトウェア競合管理システム、ソフトウェア課金システムおよびソフトウェア課金方法
WO2006117950A1 (ja) * 2005-04-27 2006-11-09 Matsushita Electric Industrial Co., Ltd. 情報処理装置における電力制御装置
CN100442709C (zh) * 2005-06-17 2008-12-10 华为技术有限公司 一种网络管理系统中的设备操作方法
JP4847168B2 (ja) 2005-06-28 2011-12-28 キヤノン株式会社 アプリケーション管理システム、アプリケーション管理方法およびプログラム
US7454607B2 (en) * 2005-09-15 2008-11-18 Qualcomm Incorporated Techniques for managing applications in a portable communication device
KR100785104B1 (ko) * 2005-10-19 2007-12-12 엘지전자 주식회사 이동통신 단말기의 자원 관리 장치 및 방법
ATE391378T1 (de) * 2005-11-04 2008-04-15 Research In Motion Ltd Konfliktauflösung unter anwendungen, die datenverbindungen zwischen einem mobilen kommunikationsgerät und einem drahtlosen paketdatennetzwerk benötigen
JP4675762B2 (ja) * 2005-11-25 2011-04-27 京セラ株式会社 携帯端末装置、メッセージ情報受信方法、コンピュータプログラム
JP4971360B2 (ja) * 2005-12-29 2012-07-11 エルジー・ケム・リミテッド エンジンブローバイガスの可変型油分離装置
JPWO2007119550A1 (ja) * 2006-04-05 2009-08-27 パナソニック株式会社 システム管理装置
KR20100014823A (ko) * 2007-01-23 2010-02-11 에이저 시스템즈 인크 디바이스들을 위한 단일 스레드 아키텍쳐에서 애플리케이션 스위칭
US8825189B2 (en) * 2007-11-13 2014-09-02 Fisher Rosemount Systems, Inc. Methods and apparatus to execute an auxiliary recipe and a batch recipe associated with a process control system
US8744478B2 (en) * 2008-02-20 2014-06-03 Qualcomm Incorporated Method and apparatus for executing location dependent application in a mobile handset
KR101443291B1 (ko) * 2008-09-02 2014-09-25 삼성전자주식회사 네트워크로 연결된 화상형성장치 및 그 네트워크 관련 정보설정방법
CN101378426B (zh) * 2008-09-02 2011-05-11 华为终端有限公司 一种防打扰方法及终端
JP5184268B2 (ja) * 2008-09-08 2013-04-17 株式会社エヌ・ティ・ティ・ドコモ 情報処理装置及びプログラム
US8886252B2 (en) * 2008-12-22 2014-11-11 Htc Corporation Method and apparatus for automatically changing operating modes in a mobile device
JP5393199B2 (ja) * 2009-03-02 2014-01-22 キヤノン株式会社 起動制御方法及び装置
CN101887363A (zh) * 2010-03-22 2010-11-17 宇龙计算机通信科技(深圳)有限公司 一种应用程序存在互斥的提示方法、系统及移动终端
US9182875B2 (en) 2010-04-07 2015-11-10 Nec Corporation Information processing terminal and control method therefor
FR2965077B1 (fr) * 2010-09-21 2016-12-09 Continental Automotive France Procede de gestion de taches dans un microprocesseur ou un ensemble de microprocesseurs
CN103403644B (zh) 2010-11-18 2016-10-05 谷歌公司 计算机的延迟关停
CN102122249B (zh) * 2011-02-22 2013-11-06 中兴通讯股份有限公司 启动java应用的方法及装置
JP5648544B2 (ja) * 2011-03-15 2015-01-07 富士通株式会社 スケジューリングプログラム、および情報処理装置
JP5244934B2 (ja) * 2011-03-16 2013-07-24 株式会社東芝 機能競合制御装置およびその方法
CN102811277A (zh) * 2011-05-31 2012-12-05 比亚迪股份有限公司 一种移动终端及其管理共享资源的方法
KR101209951B1 (ko) * 2011-06-10 2012-12-07 주식회사 캐스트이즈 안드로이드 어플리케이션 실행 요청에 따른 어플리케이션별 연계 작업 사전 수행 장치 및 방법
JP2013157715A (ja) * 2012-01-27 2013-08-15 Nippon Telegr & Teleph Corp <Ntt> 電話装置とその動作制御方法及びプログラム
JP5904018B2 (ja) * 2012-06-01 2016-04-13 ソニー株式会社 情報処理装置、情報処理方法、並びにプログラム
CN103227851B (zh) * 2013-03-05 2014-10-15 广东欧珀移动通信有限公司 通讯终端录音的方法及装置
KR101507353B1 (ko) * 2013-04-08 2015-04-07 주식회사 오비고 모바일 디바이스의 메모리를 관리하는 방법, 서버 및 컴퓨터 판독 가능한 기록 매체
US10187520B2 (en) * 2013-04-24 2019-01-22 Samsung Electronics Co., Ltd. Terminal device and content displaying method thereof, server and controlling method thereof
US20150081400A1 (en) * 2013-09-19 2015-03-19 Infosys Limited Watching ARM
US20150220872A1 (en) * 2014-02-03 2015-08-06 Cavium, Inc. Method and an apparatus for work packet queuing, scheduling, and ordering with conflict queuing
CN104298528A (zh) * 2014-09-30 2015-01-21 小米科技有限责任公司 应用程序安装控制方法及装置
CN105389149A (zh) * 2015-11-03 2016-03-09 惠州Tcl移动通信有限公司 一种智能设备多屏幕运行实现方法及其系统
US10685009B1 (en) * 2016-10-20 2020-06-16 Massachusetts Mutual Life Insurance Company Systems and methods for trigger based synchronized updates in a distributed records environment
KR102557267B1 (ko) * 2018-10-12 2023-07-20 삼성전자주식회사 메모리의 저장 용량을 확보하기 위한 디스플레이 장치
US11036608B2 (en) 2019-09-27 2021-06-15 Appnomic Systems Private Limited Identifying differences in resource usage across different versions of a software application
CN111152215B (zh) * 2019-12-17 2021-08-27 深圳市优必选科技股份有限公司 一种应用的控制方法及机器人
CN115567630B (zh) * 2022-01-06 2023-06-16 荣耀终端有限公司 一种电子设备的管理方法、电子设备及可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020037753A1 (en) * 2000-09-27 2002-03-28 Nec Corporation Portable telephone set and window switching control method
US20030110202A1 (en) 2001-12-11 2003-06-12 Nec Corporation Portable data-processing terminal

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19500957A1 (de) * 1994-07-19 1996-01-25 Bosch Gmbh Robert Verfahren zur Steuerung von technischen Vorgängen oder Prozessen
JPH0954699A (ja) * 1995-08-11 1997-02-25 Fujitsu Ltd 計算機のプロセススケジューラ
US5838968A (en) * 1996-03-01 1998-11-17 Chromatic Research, Inc. System and method for dynamic resource management across tasks in real-time operating systems
JPH10289114A (ja) 1997-04-14 1998-10-27 Sony Corp マルチタスク制御方法、マルチタスク制御プログラムを記録した記録媒体、およびマルチタスク制御プログラムを組み込んだ電子機器
JPH10333926A (ja) 1997-06-03 1998-12-18 N T T Data:Kk プログラム実行管理方法、装置、及び記録媒体
DE69831857T2 (de) 1998-06-10 2006-06-14 Sun Microsystems Inc Verfahren und Vorrichtung zum Zeitplanen von Prozessen für Betriebsmittelzuteilung
JP2000222224A (ja) 1999-01-29 2000-08-11 Nec Mobile Commun Ltd 移動体通信システムにおけるシーケンス制御方法
CN1227588C (zh) 1999-07-13 2005-11-16 太阳微系统有限公司 用于根据应用生存周期管理该应用的方法和设备
GB2364143A (en) * 2000-06-30 2002-01-16 Nokia Corp Resource allocation
JP3866032B2 (ja) * 2000-12-05 2007-01-10 株式会社ケンウッド 電子機器
JP3610930B2 (ja) * 2001-07-12 2005-01-19 株式会社デンソー オペレーティングシステム、プログラム、車両用電子制御装置
TWI257544B (en) * 2003-12-05 2006-07-01 Acer Inc Windows-based power management method and portable device using the same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020037753A1 (en) * 2000-09-27 2002-03-28 Nec Corporation Portable telephone set and window switching control method
US20030110202A1 (en) 2001-12-11 2003-06-12 Nec Corporation Portable data-processing terminal

Also Published As

Publication number Publication date
KR20060023987A (ko) 2006-03-15
EP1640862B1 (en) 2017-05-03
CN1806229A (zh) 2006-07-19
WO2004111848A1 (ja) 2004-12-23
EP1640862A4 (en) 2007-12-05
EP1640862A1 (en) 2006-03-29
CN1806229B (zh) 2010-05-26
JP2005005909A (ja) 2005-01-06
US7836446B2 (en) 2010-11-16
US20060129600A1 (en) 2006-06-15

Similar Documents

Publication Publication Date Title
KR101019298B1 (ko) 경합 관리 프로그램이 기억된 기억 매체, 경합 관리 방법 및 전자 기기
RU2269208C2 (ru) Способ и устройство для сохранения мощности в интегрированном электронном устройстве, содержащем персональный цифровой ассистент и беспроводный телефон
EP1453286B1 (en) Mobile communication terminal, method for controlling execution state of application program, application program, and recording medium wherein application program has been recorded
KR101017380B1 (ko) 통신단말 및 컴퓨터 판독 가능한 기록매체
EP1463279B1 (en) Terminal device with suspend/resume function and related computer program product
JP5741095B2 (ja) 無線通信装置および省電力制御方法
US20080310370A1 (en) Communication terminal and recording medium
US8868065B2 (en) System and method for reducing power consumption for push messaging
US20050026654A1 (en) Dynamic application resource management
US9084196B2 (en) Apparatus and method for reducing power consumption in portable terminal
US20110119736A1 (en) Apparatus and method for preventing charge caused by utilizing application in portable terminal
CN108958807B (zh) 一种终端系统启动方法及终端
JP2008085907A (ja) 無線通信端末および無線通信端末における通信制御方法
US20050021693A1 (en) Communication terminal device and program
JP2003008738A (ja) 移動体端末
CN104718738A (zh) 通信终端、通信系统、用于控制通信终端的方法以及程序
JP2007336229A (ja) 電子機器、および、プログラム
WO2008054134A1 (en) Terminal having boot lazy loading function for wireless internet platform module and method of controlling the same
CN113805705B (zh) 终端快捷键操作方法及设备
US6931260B2 (en) Mobile communication terminal apparatus
KR20020092513A (ko) 무선 단말기에서의 base 구조 및 그 방법
KR20080056838A (ko) 이동통신 시스템의 자원 관리 장치 및 방법
JP2005284905A (ja) 携帯電話端末装置及びプログラム管理方法並びにそのコンピュータプログラム
KR20030031241A (ko) 휴대 단말기의 시작 프로그램 실행방법
JP2005192111A (ja) 通信端末装置、及びプログラム

Legal Events

Date Code Title Description
A201 Request for examination
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: 20140214

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee