WO2010027089A1 - 情報処理装置及びプログラム - Google Patents

情報処理装置及びプログラム Download PDF

Info

Publication number
WO2010027089A1
WO2010027089A1 PCT/JP2009/065680 JP2009065680W WO2010027089A1 WO 2010027089 A1 WO2010027089 A1 WO 2010027089A1 JP 2009065680 W JP2009065680 W JP 2009065680W WO 2010027089 A1 WO2010027089 A1 WO 2010027089A1
Authority
WO
WIPO (PCT)
Prior art keywords
identification information
execution
application program
application
executed
Prior art date
Application number
PCT/JP2009/065680
Other languages
English (en)
French (fr)
Inventor
村上 圭一
神谷 大
靖 恩田
出亜 加納
山田 和宏
直樹 橋田
Original Assignee
株式会社エヌ・ティ・ティ・ドコモ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社エヌ・ティ・ティ・ドコモ filed Critical 株式会社エヌ・ティ・ティ・ドコモ
Priority to US13/061,738 priority Critical patent/US8661445B2/en
Priority to CN200980134773.6A priority patent/CN102144219B/zh
Priority to EP20090811612 priority patent/EP2328087A4/en
Publication of WO2010027089A1 publication Critical patent/WO2010027089A1/ja

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
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources

Definitions

  • the present invention relates to control when executing an application program.
  • a multi-window system that is, a window system capable of displaying a plurality of windows.
  • a multi-window system when each window corresponds to each application program, a plurality of application programs are executed in parallel in a state where the plurality of windows are displayed.
  • Patent Documents 1 and 2 As a technique for determining the arrangement of windows in a multi-window system, there are techniques described in Patent Documents 1 and 2. These windows are arranged in accordance with a predetermined algorithm according to the area and number of windows to be displayed to improve visibility and improve operability. JP-A-6-266524 JP 2000-39948 A
  • the present invention achieves both an environment in which a plurality of application programs are executed to meet various requests from users and an environment in which the application programs are executed to provide users with high-value services. With the goal.
  • the present invention relates to a memory, execution means for allocating a part or all of the storage area of the memory to each application program and executing the application program, and the application being executed for each application.
  • a part of the storage area is assigned to each of the second application program and the one or more first application programs, and the two application programs and the one application program are executed in parallel.
  • the second application program is executed.
  • the execution of the one or more first application programs is interrupted, and the identification information of the one or more first application programs stored in the storage means is used as the second identification information.
  • Rewriting allocating and executing the entire storage area of the memory to the second application program, and receiving an instruction to execute the one or more first application programs during execution of the second application, A second application program is terminated, a part of the storage area of the memory is allocated to each of the one or more application programs and executed in parallel, and the one or more first application programs Write identification information in the first identification information Provided is an information processing apparatus characterized by switching.
  • the execution means when the execution means is instructed to execute the one or more application programs whose execution is suspended in the case of (b), the execution means ends the execution of the second application program. Instead, among the application programs in which the second identification information is written, a third application program having a low priority is specified, the third application program is terminated, and the second application program being executed is terminated. For each of the application program and one or a plurality of first application programs in which the second identification information is written, application programs other than the third application program are part of the storage area. Allocate and run in parallel Update the identification information of the application program portion of the storage area allocated to the first identification information.
  • the execution means determines the priority of the application program based on a period in which the first identification information or the second identification information related to the application program is stored. In another preferred aspect, the execution means determines the priority of the one application program based on a period of time when the one application program is executed along with the execution interruption of the other application.
  • the execution means determines the priority of the application program according to the number of times the first identification information or the second identification information related to the application program is stored. In another preferred aspect, the execution means determines the priority of the one application program based on the number of times that the one application program is executed when the execution of the other application is interrupted.
  • the present invention relates to a memory, execution means for allocating a storage area of the memory to each application program and executing the application program, and identification information of the application program being executed or an application program interrupting execution Storage means for storing the identification information, and (a) when the number of identification information of the application program being executed stored in the storage means is less than the upper limit value, When a new application program other than the application program is executed, the execution of the application program being executed is interrupted, and the identification information of the application program is used as the identification information of the application program that has been interrupted.
  • a storage area of the memory is assigned to each of the new application program and an application program whose identification information is stored in the storage means as an application program whose execution has been interrupted, and the identification information of these application programs To the storage means and execute these application programs in parallel, and (b) the running application stored in the storage means.
  • the number of identification information of the application program is the upper limit value
  • the execution of the application program being executed is interrupted and the identification information of the application program is obtained.
  • the application program that has been suspended in execution is written into the storage means as the identification information
  • the storage area of the memory is allocated to the new application program
  • the application program is executed, and the application program that has been suspended in execution is When it is instructed to execute again, the execution of the new application program being executed is terminated, and the identification information is stored in the storage means as an application program that has been interrupted.
  • the storage areas of the memory are allocated to the respective application programs, and the identification information of these application programs is written in the storage means as the identification information of the application program being executed.
  • an information processing apparatus characterized by being executed in parallel.
  • FIG. 1 is a block diagram showing a physical configuration of a communication terminal apparatus according to an embodiment of the present invention.
  • the communication terminal device 10 includes a control unit 11, a wireless communication unit 12, a display unit 13, and an operation unit 14.
  • the communication terminal device 10 of the present embodiment is assumed to be a mobile phone provided with means for inputting and outputting voices such as a microphone and a speaker (not shown).
  • the control unit 11 includes a CPU (Central Processing Unit) 11a, a ROM (Read Only Memory) 11b, a RAM (Random Access Memory) 11c, and an EEPROM (Electronically Erasable and Programmable ROM) 11d.
  • the CPU 11a is an execution unit that executes a program stored in the ROM 11b or the EEPROM 11d using the RAM 11c as a work area, and controls the operation of each unit of the communication terminal device 10 by executing this program. That is, the RAM 11c functions as a memory allocated to the application program when the CPU 11a executes the application program.
  • the wireless communication unit 12 includes an antenna 12a and performs data communication with a predetermined mobile communication network wirelessly.
  • the display unit 13 includes a liquid crystal display and a liquid crystal driving circuit, and displays an image corresponding to display data supplied from the control unit 11 in a display area.
  • the operation unit 14 includes a plurality of keys (operators), receives a user's pressing operation, and supplies operation information corresponding to the operation to the control unit 11.
  • the operator here may be a so-called hard button, or when the communication terminal device 10 includes a touch panel, the touch panel may accept this operation.
  • the ROM 11b stores several programs in advance.
  • the pre-installed program includes a multitask operating system (hereinafter referred to as “multitask OS”), a Java (registered trademark) platform, and a native application program.
  • the multitasking OS is an operating system that supports various functions such as allocation of a virtual memory space necessary for realizing pseudo parallel execution of a plurality of tasks.
  • the Java platform is a program group described in accordance with CDC (Connected Device Configuration) that is a configuration for realizing a Java execution environment 140 described later in the communication terminal device 10 equipped with a multitask OS.
  • the native application program is a program that realizes basic functions in the communication terminal device 10 such as a telephone call.
  • the EEPROM 11d has a Java application program storage area in which Java application programs are stored.
  • a Java application program is a JAR (Java Archive) file that combines an entity program that describes the processing procedure itself under the Java execution environment and an image file and an audio file that are used when the entity program is executed, and the JAR.
  • ADF Application Descriptor File
  • the Java application program is created by a content provider or a communication carrier, stored in an external server device, and the like, and is appropriately downloaded from these server devices in response to a request from the communication terminal device 10.
  • FIG. 2 is a diagram illustrating a logical configuration of each unit realized by the control unit 11 of the communication terminal device 10 by executing various programs stored in the ROM 11b and the EEPROM 11d.
  • a native application program 120 and a Java execution environment 130 are realized on the OS 110 in the communication terminal device 10 that executes various programs, and the first storage 140 and the second storage 150 are stored in the EEPROM 11d. Is secured.
  • the Java execution environment 130 is realized by the Java platform in the ROM 11b.
  • the Java execution environment 130 includes a class library 160, a JVM (Java Virtual Machine) 170, and a JAM (Java Application Manager) 180.
  • the class library 160 is a combination of program modules (classes) having specific functions in one file.
  • the JVM 170 is a Java execution environment optimized for the above-described CDC, and has a function of interpreting and executing bytecode provided as a Java application program.
  • the JAM 180 has a function of managing download, installation, activation, termination, and the like of Java application programs.
  • the first storage 140 is an area for storing Java application programs (Jar files and ADFs) downloaded under the management of the JAM 180.
  • the second storage 150 is an area for storing data generated when the Java application program is executed after the end thereof, and an individual storage area is assigned to each installed Java application program. ing. The data in the storage area allocated to a certain Java application program can be rewritten only while the Java application program is being executed, and another Java application program cannot be rewritten. . *
  • the Java application program of this embodiment includes an application program for displaying a plurality of windows.
  • Java application programs for displaying a plurality of windows include a “list display application program” and a “widget”.
  • the list display application program refers to an application program for displaying one or more windows in the display area of the display unit 13 and executing control related to the display.
  • the “widget” refers to an application program that realizes a predetermined function by displaying a window by a list display application program.
  • a screen on which windows corresponding to one or more widgets are displayed in a list is referred to as a “list display screen”.
  • “window” refers to a part of the display area of the display unit 13 assigned to a certain widget, and is displayed by an image that can be distinguished from other parts. The shape and size of the window is determined for each widget.
  • the widget displays a date and time by displaying an image simulating a clock in the window (hereinafter referred to as a “clock widget”), or displays characters entered by the user as a memo in the window (hereinafter referred to as a “clock widget”).
  • the widget may acquire information such as news and weather forecast via the wireless communication unit 12 at an appropriate timing, and display according to the acquired information.
  • the configuration of the communication terminal device 10 of the present embodiment is as described above.
  • the communication terminal device 10 having such a configuration executes a plurality of application programs in response to a user request.
  • the communication terminal device 10 realizes a multi-window system by displaying a plurality of widget windows. That is, the communication terminal device 10 is in a state of executing a list display application program when displaying a list display screen in which a plurality of windows are arranged.
  • the user can select any of a plurality of windows on the list display screen by operating the direction keys of the operation unit 14.
  • the control unit 11 selects at least one of the plurality of windows displayed on the display unit 13 in accordance with a signal output from the operation unit 14.
  • “selecting” a window refers to designating the window by giving input focus to the window.
  • the communication terminal device 10 puts the widget corresponding to the window selected by the user among the windows displayed on the list display screen into a state in which processing different from that when the window is not selected is executed. That is, each widget can execute different processing depending on whether or not the corresponding window is being selected. Specifically, when a window is being selected, the communication terminal apparatus 10 performs processing while executing all the functions of the corresponding widget (hereinafter referred to as “execute all”), and the window is selected. If not, processing is performed in a state where only a part of the function of the widget is executed (hereinafter referred to as “partial execution”). When all the widgets are executed, the control unit 11 executes the processing according to the procedure with all the procedures described in the widget as a reference range. On the other hand, when a part of the widget is executed, the control unit 11 executes a process according to the predetermined range of the steps described in the widget as a reference range.
  • the clock widget can execute the process of displaying the date and time when executing partly, but the process of changing the appearance (shape, color, etc.) of the display in addition to displaying the date and time when fully executing. Make it executable.
  • the memo widget executes a process of displaying characters and the like when partially executed, but executes a process of changing characters and the like when partially executed.
  • the playback widget executes a process of playing back video or music when partially executed, but executes a process of adjusting the volume, pausing, fast-forwarding, etc. when fully playing.
  • the game widget When the game widget is partially executed, the game is set to a stationary state and a process of displaying an image in that state is executed.
  • a process for advancing the game is executed.
  • the communication terminal device 10 executes processing according to each execution state of the widget according to the user's operation, for example, the time is changed when the user performs an operation for adjusting the time on the clock widget.
  • the communication terminal device 10 executes the list display application program, displays a window of partially executed widgets on the list display screen, and when all of the widgets are executed, a screen (only the window is arranged ( Hereinafter, the “all execution screen” is displayed on the display unit 13.
  • the size of the window displayed on the entire execution screen is, for example, the magnification “100%”
  • the size of the window displayed on the list display screen by partial execution is, for example, the magnification “60%”.
  • the display mode of the window differs depending on the execution state.
  • the widget corresponding to the window other than the selected window is switched from a partially executed state to a temporarily interrupted execution state.
  • the communication terminal apparatus 10 switches the “list display screen” displayed on the display unit 13 to the “all execution screen”.
  • the communication terminal device 10 switches all the widgets that have been executed to partial execution, and interrupted the execution that was partially executed before that. Execute some of the widgets that were being used. Thereby, a list display screen in which windows corresponding to partial execution are arranged is displayed.
  • Widget display includes “list display screen” and “all execution screen” as described above, as well as “list screen”.
  • This “list screen” is a list of all widgets that can be executed by the communication terminal device 10.
  • the communication terminal apparatus 10 displays this “list screen” on the display unit 13 and allows the user to select a widget to be activated.
  • FIG. 3 is a diagram schematically showing a list screen.
  • icons ICO1 to ICO8 corresponding to a part of widgets that can be executed by the communication terminal device 10 are arranged.
  • an icon corresponding to another widget is displayed.
  • the communication terminal apparatus 10 executes all the widgets corresponding to the icon.
  • the list display application program may interrupt the list display of a plurality of windows. Specifically, while the communication terminal device 10 displays the list display screen by the list display application program, the communication terminal device 10 displays all execution screens and list screens, returns to the list display screen again, and displays the original display contents. Is the case. In addition to this, when the user starts a call while the list display screen is displayed, the communication terminal apparatus 10 executes an interrupt process for changing the image displayed on the display unit 13 to a call image. When the call is over, the list display screen is displayed again.
  • the control unit 11 of the communication terminal device 10 displays the identification information (widget ID, which will be described later) of a widget that is being executed or whose execution has been suspended in a table format called a widget management table. It is stored in the EEPROM 11d.
  • the control unit 11 executes the widget in the same manner as before the interruption based on the contents of the widget management table, and displays the corresponding window.
  • FIG. 4 is a diagram showing the configuration of the widget management table.
  • “widget ID” and “execution state” are associated with each other.
  • identification information for identifying a widget executed by the communication terminal device 10 such as a clock widget or a memo widget is written.
  • the widget is either “partially run”, “all run” or “run off” which means that the widget run is temporarily suspended.
  • the execution status is written.
  • the communication terminal apparatus 10 partially executes widgets corresponding to the widget IDs “001” to “005”. At this time, the communication terminal device 10 causes the display unit 13 to display a list display screen in which windows corresponding to the respective widgets are arranged.
  • the communication terminal device 10 updates this widget management table every time the execution state of the widget is changed.
  • FIG. 5 is a flowchart when the control unit 11 executes the list display application program and the widget. In the following, the operation when the communication terminal apparatus 10 executes a widget will be described. It is assumed that no widget has been executed yet before this operation.
  • the control unit 11 waits until the user operates the operation unit 14 and receives an instruction to display a list screen or a list display screen.
  • step S1; list screen a list screen displaying a list of widgets that can be executed by the own device as illustrated in FIG. It is displayed on the display unit 13 (step S2).
  • step S3; NO the control part 11 waits until execution of a widget is instruct
  • step S3 it is assumed that the icon ICO1 (widget ID: 001) of FIG. 3 is selected by the user, and the control unit 11 determines that execution of the clock widget is instructed.
  • the control unit 11 updates the widget management table (step S4).
  • the control unit 11 rewrites the widget management table so that the contents shown in FIG. Specifically, the control unit 11 writes the widget ID “001” corresponding to the clock widget, and writes “execute all” in the “execution state” field in association therewith.
  • the control part 11 performs all the widgets according to the update content in step S4, and displays the window corresponding to it on the display part 13 (step S5).
  • the control unit 11 executes all the clock widgets and causes the display unit 13 to display an all execution screen in which the window W1 corresponding to the clock widget is arranged as shown in FIG.
  • control unit 11 since the control unit 11 is executing all the clock widgets, it uses many storage areas of the storage area of the RAM 11c. Therefore, widgets other than this clock widget cannot be executed. And the control part 11 performs the process according to the clock widget which performed all according to operation of the operation part 14 of a user (step S6).
  • the processing according to the clock widget here includes processing such as changing the appearance as described above, and is processing that is different from when the processing is partially executed.
  • control unit 11 determines whether or not the end of the processing of all executed widgets has been instructed (step S7).
  • the control unit 11 performs processing of the widgets that are all being executed. It is determined that termination is instructed.
  • control unit 11 determines whether or not the number of simultaneously executed widgets is less than the allowable number (step S8).
  • the allowable number here is “8”, and the value is stored in the ROM 11b.
  • This allowable number is an upper limit value determined in advance at the design stage based on the relationship between the storage capacity of the RAM 11c used by the communication terminal device 10 to execute widgets and the storage capacity required for partial execution of each widget. . That is, the storage capacity required for the partially executed widget is determined to a value that does not exceed the storage capacity for executing the widget in the RAM 11c.
  • the control unit 11 determines “YES”, proceeds to step S9, and updates the widget management table. To do.
  • the control unit 11 rewrites the widget management table so as to have the contents shown in FIG. Specifically, the control unit 11 rewrites the “execution state” field corresponding to the widget ID “001” of the clock widget from “all execution” to “partial execution”. With this update, the control unit 11 changes the execution state of all widgets to be executed simultaneously to “partially executed”, and displays a list display screen in which windows of these widgets that are partially executed are arranged. It is displayed on the unit 13 (step S10).
  • the control unit 11 assigns a storage area smaller than the storage area assigned when all the widgets are executed to the widgets and partially executes them. Since the widget management table is updated so that the clock widget is partially executed in step S9, in step S10, the control unit 11 corresponds to the clock widget that is partially executed as shown in FIG. A list display screen in which the window Ws1 is arranged at the center of the display unit 13 is displayed. Then, the control unit 11 returns to Step S1 and waits until receiving an instruction to display a list screen or a list display screen.
  • step S3 when the control unit 11 is instructed to newly execute another widget (step S3; YES) while the list screen is displayed on the display unit 13 (step S2), the execution is instructed. Run the widget.
  • the control unit 11 if it is instructed to execute the memo widget, the control unit 11 updates the widget management table so as to have the contents shown in FIG. 6C (step S4). That is, the control unit 11 writes the widget ID “002” corresponding to the memo widget in the widget management table, and writes “execute all” as the execution state corresponding to the widget ID.
  • the control unit 11 rewrites all execution states of the executed widgets from “partial execution” to “execution off”.
  • control unit 11 rewrites the execution state corresponding to the widget ID “001” to “execution off”. This makes it possible to run all other widgets even when the widget is already running.
  • execution off the storage area of the RAM 11c assigned to the previously executed widget (here, the clock widget with the widget ID “001”) is released, and the RAM 11c is newly added to the memo widget to be executed entirely. This is because the storage area is allocated.
  • the control unit 11 executes all the memo widgets and causes the display unit 13 to display an all execution screen in which the corresponding window W2 is arranged as shown in FIG. 7C (step S5).
  • control unit 11 executes steps S6 to S8, and in order to display the list display screen on the display unit 13, the widget management table is updated so as to have the contents shown in FIG. 6D (step S9). ). That is, the control unit 11 rewrites the execution state corresponding to the widget ID “002” from “all execution” to “partial execution” in order to execute the memo widget partially. At the same time, the control unit 11 rewrites the execution state corresponding to the widget ID “001” from “execution off” to “partial execution” based on the widget management table, and widgets with widget IDs “001” and “002”. A storage area of the RAM 11c is allocated to the.
  • control unit 11 sets the execution state of all widgets being executed simultaneously to “partial execution”. Then, as shown in FIG. 7D, the control unit 11 causes the display unit 13 to display a list display screen in which a window Ws1 corresponding to the clock widget and a window Ws2 corresponding to the memo widget are arranged (Step S11). S10).
  • control unit 11 performs the same processing steps as described above until the number of widgets to be executed simultaneously reaches the allowable number “8”. That is, when the number of widgets being executed (partially executed) written in the widget management table is less than the upper limit value, the control unit 11 executes a new widget other than the currently executed widget. The execution of the widget being executed is interrupted, and the widget ID of the widget is written in the widget management table as the widget ID of the widget whose execution is interrupted. Then, the control unit 11 allocates the storage area of the RAM 11c to the new widget and executes the widget.
  • control unit 11 when the control unit 11 is instructed to execute the widget whose execution has been interrupted again, the control unit 11 sets the storage area of the RAM 11c for each of the widget being executed and the widget whose execution has been interrupted.
  • the widget IDs of these widgets are assigned and written in the widget management table as the widget IDs of the widgets being executed, and these widgets are executed in parallel.
  • the widget management table has the contents as shown in FIG. That is, “partially executed” is written as the execution state in the widget IDs “001” to “008” corresponding to the “8” widgets being executed simultaneously.
  • the list display screen has a display mode as shown in FIG. 8A, and windows Ws1 to Ws8 corresponding to each of the eight widgets being partially executed are displayed. As shown in FIG. 8A, the window area protruding from the display area of the display unit 13 is not displayed, but the user can view the area by operating the operation unit 14.
  • Step S3 If it is instructed to execute the “game widget” as the “9th” widget (step S3; YES), the control unit 11 updates the widget ID management table to have the contents shown in FIG. (Step S4). That is, the control unit 11 rewrites the execution state of the widget IDs “001” to “008” corresponding to the eight executed widgets from “partial execution” to “execution off”, and newly executed game widgets Is written in association with the widget ID “009”.
  • control unit 11 releases all the storage areas of the RAM 11c assigned to the widget IDs “001” to “008” and allocates the storage area of the RAM 11c to the widget with the widget ID “009”. Then, as shown in FIG. 8B, the control unit 11 causes the display unit 13 to display an all execution screen in which the window W9 corresponding to the all execution game widget is arranged (step S5).
  • the allowable number is “8”.
  • the unit 11 determines “NO” in Step S8, and proceeds to Step S11. Then, after the executed widget reaches the allowable number “8”, the control unit 11 ends the game widget executed in step S3 (step S11). And the control part 11 updates a widget management table so that it may become the content shown in FIG.6 (g) (step S12).
  • the control unit 11 rewrites the execution state corresponding to the widget IDs “001” to “008” from “execution off” to “partial execution”, and changes the widget ID “009” corresponding to the completed game widget to the widget Erase from the management table. Then, the control unit 11 releases the storage area of the RAM 11c allocated to the game widget, and allocates the storage area of the RAM 11c to each of the widgets with the widget IDs “001” to “008”.
  • the list display screen displayed by the control unit 11 in step S10 is as shown in FIG. That is, it is the same as the initial list display screen (FIG. 8A) in which “8” widgets are executed. Thereafter, as long as an allowable number of widgets are executed, when returning to the list display screen, the control unit 11 ends the last executed widget.
  • the control unit 11 executes a new widget other than the running widget. Execution is interrupted and the widget ID of the widget is written in the widget management table as the widget ID of the widget whose execution is interrupted. Then, the control unit 11 allocates the storage area of the RAM 11c to the new widget and executes the widget. In addition, when the control unit 11 is instructed to execute the widget whose execution has been interrupted again, the control unit 11 ends the execution of the new widget being executed, and each of the widgets whose execution is interrupted. The storage areas of the RAM 11c are allocated, the widget IDs of these widgets are written in the widget management table as the widget IDs of the widgets being executed, and these widgets are executed in parallel.
  • the control unit 11 newly sets the “9” th item.
  • the execution of the widget is instructed, the execution of the already executed widget is temporarily interrupted, and all new widgets are executed using the free storage area. Further, when the display is returned to the list display screen, the control unit 11 terminates the “9th” widget, and uses the storage area thus freed, so that the execution is recorded in the widget management table.
  • the “8” widgets are partially executed. As a result, even if a plurality of application programs are simultaneously executed and the number reaches the allowable number, the communication terminal apparatus 10 can newly execute the application program. It can be returned to the state.
  • step S1 when the control unit 11 displays a list display screen (step S1; list display screen), a window of partially executed widgets is arranged based on the contents of the widget management table at that time.
  • the displayed list display screen is displayed on the display unit 13 (step S13).
  • step S4 When a certain window is selected by the user (step S3; YES), the control unit 11 updates the widget management table to that effect (step S4), and sets the widget corresponding to the selected window to “partial”.
  • the execution is switched from “execute” to “execute all”, and other widgets that have been “partially executed” are temporarily interrupted (step S5). And the control part 11 performs the process step similar to the above.
  • the control unit 11 of the communication terminal device 10 when the control unit 11 of the communication terminal device 10 tries to execute a plurality of widgets in parallel, the control unit 11 executes the partial execution by reducing the storage area of the RAM 11c allocated to each widget. Only a part of the functions realized by the execution of the widget is realized.
  • the control unit 11 when providing high-value services to the user, the control unit 11 increases the storage area of the RAM 11c allocated to one of the widgets, executes all the widgets, and performs all the functions realized thereby. Make it possible. By controlling the execution state of a plurality of widgets, it is possible to achieve both an environment that responds to various requests from users and an environment that provides widgets with high-value services. .
  • the present invention can be implemented in a form different from the above-described embodiment.
  • the present invention can also be implemented in the following forms, for example. Further, the following modifications may be combined as appropriate.
  • control unit 11 terminates the widget executed in step S3 (that is, the last executed widget) and deletes it from the widget management table after the number of executed widgets reaches the allowable number. .
  • control unit 11 may end widgets other than the last executed widget. The following configuration can be considered as to which widget is terminated.
  • control unit 11 determines “NO” in step S8, the control unit 11 causes the display unit 13 to display a screen for asking the user which widget to end. For example, the control unit 11 causes the display unit 13 to display a screen on which a plurality of soft buttons indicating the names of the widgets being executed are arranged, and causes the user to select a widget to be ended. Then, the control unit 11 terminates the widget corresponding to the soft button selected by the user, switches the last executed widget from execution to partial execution, and also executes the widget that has been interrupted (by user selection). Switch to partial execution (excluding finished widgets). In this configuration, for example, when the user instructs to end the widget corresponding to the window Ws3 shown in FIG. 8A, the control unit 11 replaces the window Ws3 as shown in FIG. The window Ws9 corresponding to the game widget is displayed on the list display screen.
  • step S11 of FIG. 5 the control unit 11 specifies a widget ID of a widget having a low execution priority among the widget IDs described in association with the execution state “execution off” in the widget management table. And finish running that widget. Then, the control unit 11 stores the RAM 11c for each of the widgets that are all executed and widgets other than those that have been executed because the priority is low among the widgets that are in the execution state “execution off”. Allocate each area. The control unit 11 executes some of these widgets and executes them in parallel.
  • the control unit 11 obtains a priority based on a period during which each widget is executed.
  • the communication terminal device 10 is provided with timing means such as a timer, and the control unit 11 describes each widget ID in the widget management table in association with the execution state “partial execution” or “execution off”.
  • the period (time) is obtained by the time measuring means and described in the widget management table.
  • the period described in association with each widget ID is a period in which the identification information of the application program being executed or the identification information of the application program whose execution is suspended is described in the widget management table.
  • the control unit 11 obtains the priority based on the period described in the widget management table.
  • the control unit 11 terminates the widget with the lower priority in the widget management table in step S11 of FIG.
  • the control unit 11 may obtain a period in which each widget ID in the widget management table is described in association with the execution state “all execution” and describe it in the widget management table.
  • the period in which the widget ID is described in association with the execution state “all execution” is the execution period of the application program newly executed by interrupting the execution of the application program being executed.
  • a short period means that the period used by the user is short. Therefore, from the viewpoint that it is not very important for the user, the priority may be lowered. It can be considered, and it can be considered that it is important for the user because it has recently been used by the user.
  • the control unit 11 terminates the widget with the lower priority in the widget management table in step S11 of FIG. Further, the control unit 11 may specify the priority based on the time when the application is executed (started) instead of the period. In this case, the control unit 11 increases the priority of the application that is executed in the near time. In this way, it is possible to display on the list display screen a window of an application that is frequently used recently by the user and has a high degree of importance.
  • control unit 11 obtains the number of times each widget ID in the widget management table is described in association with the execution state “partial execution” or “execution off”, and describes this in the widget management table. May be.
  • the number of times described in association with the execution state “partial execution” or “execution off” indicates that the identification information of the application program being executed or the identification information of the application program whose execution has been suspended is the widget management table. This is the number of times stored in.
  • step S11 of FIG. 5 the control unit 11 obtains the priority based on the number of times described in the widget management table.
  • the fact that the number of times is small means that the number of times used by the user is small, so that it is possible to lower the priority from the viewpoint that it is not very important for the user.
  • the fact that the number of times is small is important for the user because the time when the user started to use it may be recently. Therefore, in this case, the higher the number of times, the lower the priority. Therefore, the control unit 11 terminates the widget with the lower priority in the widget management table in step S11 of FIG.
  • control unit 11 may obtain the number of times each widget ID in the widget management table is described in association with the execution state “all execution” and describe it in the widget management table.
  • the number of times described in association with the execution state “all execution” is the number of times of execution of the application program newly executed by interrupting execution of the application program being executed.
  • the same idea as described above can be adopted, but the number of times the widget ID is described in association with the execution state “all execution” is associated with the execution state “partial execution” or “execution off”. It can be said that this is a period in which a more useful service is provided to the user than the number of times described, and is therefore suitable for use as a priority according to the usage of the user.
  • the control unit 11 terminates the widget with the lower priority in the widget management table in step S11 of FIG.
  • the widget can execute a plurality of different processes at the time of partial execution.
  • “selection” refers to giving an input focus to a window and designating the window. However, giving the input focus may be “selection”.
  • the communication terminal apparatus 10 executes different processes depending on whether the selected “when selected” or “no selected” window is selected. For example, the communication terminal device 10 displays the date and time in a predetermined display mode when the clock widget is not selected, and displays the date and time in a display mode different from that when the clock widget is not selected. Here, for example, the communication terminal apparatus 10 displays only the time when not selected, and displays the date and day of week in addition to the time when selected.
  • the widget is in a partially executed state, and only the range of procedures described in the widget referred to by the communication terminal device 10 is different.
  • the communication terminal device 10 switches the widget from partial execution to full execution.
  • the window in the present invention is not limited to the display area assigned to the “widget” in the above-described embodiment, but may be a display area assigned to another application program (for example, a native application program).
  • the widget is not limited to the Java application program, and may be realized as another application program.
  • a plurality of windows are displayed by executing a list display application program that is a Java application program. It may be realized by an application program.
  • the widget can also acquire information via means other than the wireless communication unit 12.
  • the information processing apparatus according to the present invention includes a so-called IC tag
  • information stored in the IC tag may be acquired.
  • Modification 5 various instructions are input by the user operating the keys of the operation unit 14, but the present invention is not limited to this.
  • soft buttons corresponding to the keys of the operation unit 14 may be displayed on the display unit 13 and various instructions may be input by operating the soft buttons.
  • the communication terminal device 10 includes a touch panel, the touch panel may accept the operation of the soft button.
  • the information processing apparatus can be regarded as the control unit 11 or the communication terminal apparatus 10. Further, what corresponds to the operation in the present invention may be a result of recognizing a voice instruction, for example, without pressing a key.
  • the present invention may change the arrangement of images such as icons instead of windows.
  • the “window” in the present invention is a concept that can include an image such as an icon.
  • the allowable number of widgets that can be executed simultaneously is set to “8”, but it may be more or less than this. As described in the embodiment, the allowable number is determined based on the relationship between the storage capacity of the work area of the RAM 11c and the capacity required for executing the widget. For example, if the storage capacity of the RAM 11c is increased, the control unit 11 can execute (partially execute) more widgets at the same time, so the allowable number may be further increased.
  • the present invention is applied to a mobile phone, but the present invention can also be applied to other electronic devices.
  • the present invention can be applied to various information processing apparatuses such as a communication terminal apparatus such as a PDA (Personal Digital Assistance), a camera, a portable music player, and a portable game machine.
  • a communication terminal apparatus such as a PDA (Personal Digital Assistance)
  • a camera such as a cellular phone
  • portable music player such as a portable music player
  • portable game machine such as a portable game machine.
  • each function realized by the control unit 11 of the communication terminal device 10 described above can be realized by a combination of a plurality of programs, or can be realized by cooperation of a plurality of hardware resources.

Abstract

 制御部は、複数のアプリケーションプログラムを並列して実行しようとするときには、それぞれに割り当てるRAMの記憶領域を小さくして、それらのアプリケーションプログラムの実行により実現される機能の一部のみを実現するようにし、ユーザに価値の高いサービスを提供しようとするときには、そのうちの1つのアプリケーションプログラムに割り当てる記憶領域を大きくし、アプリケーションプログラムの実行により実現される機能の全部を実現できるようにする。

Description

情報処理装置及びプログラム
 本発明は、アプリケーションプログラムを実行するときの制御に関する。
 マルチウィンドウシステム、すなわち複数のウィンドウを表示可能なウィンドウシステムがある。マルチウィンドウシステムにおいて、ウィンドウのそれぞれが各アプリケーションプログラムに対応していると、複数のウィンドウが表示された状態では、複数のアプリケーションプログラムが並列して実行されていることになる。なお、マルチウィンドウシステムにおけるウィンドウの配置を決める技術として、特許文献1、2に記載された技術がある。これらは、表示されるウィンドウの面積や数に応じて所定のアルゴリズム従ってウィンドウを配置し、視認性を良くしたり、操作性を向上させたりするものである。   
特開平6-266524号公報 特開2000-39948号公報
 携帯電話機などの小型の情報処理装置においては、メモリの容量が限られているため、マルチウィンドウシステムをこの種の情報処理装置に実装した場合には、並行して実行可能なアプリケーションプログラムの数に限度がある。最近では、この種の情報処理装置の高機能化が進むにつれて、ユーザが望むサービスのレベルや価値も高くなっているが、そのようなサービスを提供するアプリケーションプログラムによって必要とされるメモリの記憶領域は大きくならざるを得ないから、例えば1つのアプリケーションプログラムしか実行することができないという場合も多い。しかしながら、ユーザからは、複数のアプリケーションプログラムの並列実行を可能にして欲しいという要請は根強いものがある。
 そこで、本発明は、複数のアプリケーションプログラムを実行して、ユーザからの多様な用途の要請に応える環境と、アプリケーションプログラムを実行して、価値の高いサービスをユーザに提供する環境とを両立することを目的とする。
 一の態様において、本発明は、メモリと、各アプリケーションプログラムに前記メモリの記憶領域の一部または全部を割り当てて当該アプリケーションプログラムを実行する実行手段と、各アプリケーションについて、アプリケーションが実行中であることを示す第1識別情報または実行が中断されていることを示す第2識別情報を記録する記憶手段とを備え、前記実行手段は、(a)前記記憶手段に記憶されている前記第1識別情報の数が上限値未満であって、一または複数の第1アプリケーションプログラムが実行中である場合において、第2アプリケーションプログラムを実行するときには、前記第1アプリケーションプログラムの実行を中断し、前記記憶手段に記憶されている、前記一または複数の第1アプリケーションプログラムの識別情報を第2の識別情報に書き替え、前記第2アプリケーションプログラムに前記記憶領域の全部を割り当てて実行し、前記第2アプリケーションの実行中に前記第1のアプリケーションプログラムの実行指示をうけた場合には、前記第2アプリケーションプログラムと、前記一または複数の第1アプリケーションプログラムとの各々に対して、前記記憶領域の一部をそれぞれ割り当てて並列して実行し、前記2アプリケーションプログラムおよび前記一または複数の第1アプリケーションプログラムの識別情報を前記第1識別情報に書き替える一方、(b)前記記憶手段に記憶されている前記第1識別情報の数が前記上限値に一致し、前記一または複数の第1アプリケーションプログラムが実行中である場合において、前記第2のアプリケーションプログラムを実行するときには、前記一または複数の第1アプリケーションプログラムの実行を中断し、前記記憶手段に記憶されている、前記一または複数の第1アプリケーションプログラムの識別情報を前記第2識別情報に書き替え、前記第2アプリケーションプログラムに前記メモリの記憶領域の全部を割り当てて実行し、前記第2アプリケーションの実行中に前記一または複数の第1アプリケーションプログラムの実行指示を受けた場合には、前記第2のアプリケーションプログラムを終了させ、前記一または複数のアプリケーションプログラムの各々に対して、前記メモリの記憶領域の一部をそれぞれ割り当てて並列して実行し、前記一または複数の第1アプリケーションプログラムの識別情報を前記第1識別情報に書き換えることを特徴とする情報処理装置を提供する。
 好ましい態様において、前記実行手段は、前記(b)の場合において、実行が中断されている前記一または複数のアプリケーションプログラムを実行するよう指示されると、前記第2のアプリケーションプログラムの実行を終了することに代えて、前記第2識別情報が書き込まれているアプリケーションプログラムのうち、優先度が低い第3のアプリケーションプログラムを特定し、前記第3のアプリケーションプログラムを終了させ、実行中の前記第2のアプリケーションプログラムと、前記第2識別情報が書き込まれている一または複数の第1アプリケーションプログラムのうち、前記第3のアプリケーションプログラム以外のアプリケーションプログラムとの各々に対して、前記記憶領域の一部をそれぞれ割り当てて並列して実行し、前記記憶領域の一部が割り当てられたアプリケーションプログラムの識別情報を前記第1識別情報に更新する。
 他の好ましい態様において、前記実行手段は、アプリケーションプログラムに関する前記第1識別情報または前記第2識別情報が記憶されている期間に基づいて、当該アプリケーションプログラムの優先度を決定する。

 他の好ましい態様において、前記実行手段は、一のアプリケーションプログラムが他のアプリケーションの実行中断に伴って実行された期間に基づいて、当該一のアプリケーションプログラムの優先度を決定する。
 他の好ましい態様において、前記実行手段は、アプリケーションプログラムに関する前記第1識別情報又は前記第2識別情報が記憶された回数に応じて、当該アプリケーションプログラムの優先度を決定する。他の好ましい態様において、前記実行手段は、一のアプリケーションプログラムが他のアプリケーションの実行中断に伴って実行された回数に基づいて、当該一のアプリケーションプログラムの優先度を決定する
 他の態様において、本発明はメモリと、各アプリケーションプログラムに前記メモリの記憶領域を割り当てて当該アプリケーションプログラムを実行する実行手段と、実行中のアプリケーションプログラムの識別情報又は実行を中断しているアプリケーションプログラムの識別情報を記憶する記憶手段とを備え、前記実行手段は、(a)前記記憶手段により記憶されている実行中のアプリケーションプログラムの識別情報の数が上限値未満の場合に、当該実行中のアプリケーションプログラム以外の新たなアプリケーションプログラムを実行するときには、前記実行中のアプリケーションプログラムの実行を中断して当該アプリケーションプログラムの識別情報を、実行を中断しているアプリケーションプログラムの識別情報として前記記憶手段に書き込み、前記新たなアプリケーションプログラムに前記メモリの記憶領域を割り当てて当該アプリケーションプログラムを実行し、実行が中断されている前記アプリケーションプログラムを再び実行するよう指示された場合には、実行中の前記新たなアプリケーションプログラム及び実行を中断しているアプリケーションプログラムとして前記記憶手段に識別情報が記憶されているアプリケーションプログラムの各々に対して、前記メモリの記憶領域をそれぞれ割り当てて、これらのアプリケーションプログラムの識別情報を、実行中のアプリケーションプログラムの識別情報として前記記憶手段に書き込んで、これらのアプリケーションプログラムを並列して実行し、(b)前記記憶手段により記憶されている実行中のアプリケーションプログラムの識別情報の数が上限値の場合に、当該実行中のアプリケーションプログラム以外の新たなアプリケーションプログラムを実行するときには、前記実行中のアプリケーションプログラムの実行を中断して当該アプリケーションプログラムの識別情報を、実行を中断しているアプリケーションプログラムの識別情報として前記記憶手段に書き込み、前記新たなアプリケーションプログラムに前記メモリの記憶領域を割り当てて当該アプリケーションプログラムを実行し、実行が中断されている前記アプリケーションプログラムを再び実行するよう指示された場合には、実行中の前記新たなアプリケーションプログラムの実行を終了し、実行を中断しているアプリケーションプログラムとして前記記憶手段に識別情報が記憶されているアプリケーションプログラムの各々に対して、前記メモリの記憶領域をそれぞれ割り当てて、これらのアプリケーションプログラムの識別情報を、実行中のアプリケーションプログラムの識別情報として前記記憶手段に書き込んで、これらのアプリケーションプログラムを並列して実行することを特徴とする情報処理装置を提供する。
通信端末装置の物理的構成を示すブロック図である。 通信端末装置の論理的構成を示す図である。 リスト画面の構成を模式的に表した図である。 ウィジェット管理テーブルの構成を示した図である。 通信端末装置の制御部が実行する表示制御を示すフローチャートである。 ウィジェット管理テーブルの構成を示した図である。 表示部に表示されるウィンドウの表示態様を示した図である。 表示部に表示されるウィンドウの表示態様を示した図である。 表示部に表示されるウィンドウの表示態様を示した図である。
10…通信端末装置、11…制御部、11a…CPU、11b…ROM、11c…RAM、11d…EEPROM、12…無線通信部、13…表示部、14…操作部。
[実施形態]
 図1は、本発明の一実施形態である通信端末装置の物理的構成を示すブロック図である。同図に示すように、通信端末装置10は、制御部11と、無線通信部12と、表示部13と、操作部14とを備える。なお、本実施形態の通信端末装置10は、図示せぬマイクやスピーカ等の音声を入出力する手段を備えた、携帯電話機であるとする。
 制御部11は、CPU(Central Processing Unit)11a、ROM(Read Only Memory)11b、RAM(Random Access Memory)11c及びEEPROM(Electronically Erasable and Programmable ROM)11dを備えている。CPU11aは、RAM11cをワークエリアとして用いてROM11bやEEPROM11dに記憶されたプログラムを実行する実行手段であり、このプログラムを実行することにより通信端末装置10の各部の動作を制御する。すなわち、RAM11cは、CPU11aがアプリケーションプログラムを実行するときにそのアプリケーションプログラムに割り当てられるメモリとして機能する。無線通信部12は、アンテナ12aを備え、所定の移動通信網とのデータ通信を無線で行う。表示部13は、液晶ディスプレイや液晶駆動回路を備え、制御部11から供給される表示データに応じた画像を表示領域に表示する。操作部14は、複数のキー(操作子)を備え、ユーザの押下操作を受け付けて、その操作に応じた操作情報を制御部11に供給する。ここでの操作子は、いわゆるハードボタンであってもよいし、通信端末装置10がタッチパネルを備えている場合には、タッチパネルがこの操作を受け付けてもよい。
 ROM11bは、あらかじめいくつかのプログラムを記憶している。以下ではこれを「プリインストールプログラム」という。プリインストールプログラムは、マルチタスクオペレーティングシステム(以下「マルチタスクOS」という。)、Java(登録商標)プラットフォーム及びネイティブアプリケーションプログラムを含む。マルチタスクOSは、複数のタスクの擬似的な並列実行を実現するために必要な仮想メモリ空間の割り当てなどの各種機能をサポートしたオペレーティングシステムである。Javaプラットフォームは、マルチタスクOSを搭載した通信端末装置10において後述するJava実行環境140を実現するためのコンフィギュレーションであるCDC(Connected Device Configuration)に従って記述されたプログラム群である。ネイティブアプリケーションプログラムは、通話等の通信端末装置10における基本的な機能を実現するプログラムである。
 EEPROM11dは、Javaアプリケーションプログラムが記憶されるJavaアプリケーションプログラム格納領域を有する。Javaアプリケーションプログラムは、Java実行環境下における処理の手順自体を記述した実体プログラムとその実体プログラムの実行に伴って利用される画像ファイルや音声ファイルとを結合したJAR(Java Archive)ファイルと、そのJARファイルのインストールや起動などに関する各種の属性を記述したADF(Application Descriptor File)とを有している。このJavaアプリケーションプログラムは、コンテンツプロバイダ又は通信事業者により作成されて外部のサーバ装置などに格納され、通信端末装置10からの要求に応じてそれらのサーバ装置から適宜ダウンロードされるようになっている。
 図2は、ROM11b及びEEPROM11dに記憶された各種プログラムの実行により、通信端末装置10の制御部11によって実現される各部の論理的構成を示す図である。同図に示すように、各種プログラムを実行する通信端末装置10には、ネイティブアプリケーションプログラム120及びJava実行環境130がOS110上に実現され、また、EEPROM11dには第1ストレージ140と第2ストレージ150とが確保される。
 Java実行環境130は、ROM11bのJavaプラットフォームにより実現される。Java実行環境130は、クラスライブラリ160、JVM(Java Virtual Machine)170及びJAM(Java Application Manager)180からなる。クラスライブラリ160は、特定の機能を有するプログラムモジュール(クラス)群を1つのファイルに結合したものである。JVM170は、上述のCDCのために最適化されたJava実行環境であり、Javaアプリケーションプログラムとして提供されるバイトコードを解釈して実行する機能を有する。JAM180は、Javaアプリケーションプログラムのダウンロード、インストール、起動、終了等を管理する機能を有する。
 第1ストレージ140は、JAM180の管理の下にダウンロードされるJavaアプリケーションプログラム(JarファイルとADF)を格納する領域である。第2ストレージ150は、Javaアプリケーションプログラムの実行の際に生成されたデータをその終了後に格納しておくための領域であり、インストールされたJavaアプリケーションプログラム毎に個別の格納領域が割り当てられるようになっている。そして、あるJavaアプリケーションプログラムに割り当てられた格納領域のデータは、そのJavaアプリケーションプログラムが実行されている間のみ書き換え可能となっており、別のJavaアプリケーションプログラムが書き換えを行い得ないようになっている。 
 本実施形態のJavaアプリケーションプログラムには、複数のウィンドウを表示するためのアプリケーションプログラムが含まれる。複数のウィンドウを表示するためのJavaアプリケーションプログラムには、「一覧表示アプリケーションプログラム」と「ウィジェット」とがある。ここにおいて、一覧表示アプリケーションプログラムとは、表示部13の表示領域に1又は複数のウィンドウを表示し、その表示に係る制御を実行するためのアプリケーションプログラムをいう。また、「ウィジェット」とは、一覧表示アプリケーションプログラムによってウィンドウが表示されることによって、所定の機能を実現するアプリケーションプログラムをいう。
 なお、以下では、1又は複数のウィジェットにそれぞれ対応するウィンドウが一覧表示されている画面のことを「一覧表示画面」という。また、本実施形態において「ウィンドウ」とは、あるウィジェットに対して割り当てられる表示部13の一部の表示領域をいうものであり、他の部分と区別可能な画像によって表示される。ウィンドウの形状やサイズはウィジェット毎に決められている。
 本実施形態においては、ウィジェットが複数あり、それぞれのウィジェットが異なる機能を実現する。ウィジェットには、例えば、時計を模した画像をウィンドウに表示することによって日時を表示するもの(以下「時計ウィジェット」という。)や、ユーザが入力した文字等をメモとしてウィンドウに表示するもの(以下「メモウィジェット」という。)や、映像又は音楽を再生するもの(以下「再生ウィジェット」という。)、コンピュータゲームを実行するもの(以下、「ゲームウィジェット」という)等がある。また、ウィジェットは、適当なタイミングで無線通信部12を介してニュースや天気予報などの情報を取得し、取得した情報に応じた表示を行うものであってもよい。
 本実施形態の通信端末装置10の構成は、以上のとおりである。このような構成を有する通信端末装置10は、ユーザの要求に応じて複数のアプリケーションプログラムを実行する。この通信端末装置10は、ウィジェットのウィンドウを複数表示することによってマルチウィンドウシステムを実現している。つまり、通信端末装置10は、複数のウィンドウを配置した一覧表示画面を表示する場合には、一覧表示アプリケーションプログラムを実行している状態にある。ユーザは、操作部14の方向キーを操作することにより、一覧表示画面における複数のウィンドウのいずれかを選択することができる。制御部11は、操作部14から出力される信号に応じて、表示部13に表示された複数のウィンドウのうちの少なくともいずれかひとつを選択する。本実施形態において、ウィンドウについて「選択」とは、ウィンドウに入力フォーカスを与えて、そのウィンドウを指定することをいう。
 通信端末装置10は、一覧表示画面において表示したウィンドウのうち、ユーザにより選択されたウィンドウに対応するウィジェットを、そのウィンドウが選択されていないときと異なる処理を実行する状態にする。つまり、各ウィジェットは、対応するウィンドウが選択中であるか否かによって異なる処理を実行可能である。具体的には、通信端末装置10は、ウィンドウが選択中のときには、それに対応するウィジェットの全部の機能を実行した状態(以下、「全部実行」という)にして処理を行うし、ウィンドウが選択されていないときには、そのウィジェットの一部の機能のみを実行した状態(以下、「一部実行」という。)にして処理を行う。制御部11は、ウィジェットを全部実行したときには、そのウィジェットに記述された手順の全てを参照範囲として、その手順に従い処理を実行する。一方、制御部11は、ウィジェットを一部実行したときには、そのウィジェットに記述されている手順のうち、予め決められた一部の手順を参照範囲として、その手順に従い処理を実行する。
 例えば、時計ウィジェットは、一部実行のときには日時を表示する処理を実行可能にするが、全部実行のときには、日時の表示に加えて、その表示の外観(形状や色など)を変更する処理を実行可能にする。また、メモウィジェットは、一部実行のときには文字等を表示する処理を実行するが、一部実行のときには文字等を変更する処理を実行する。再生ウィジェットは、一部実行のときには映像又は音楽を再生する処理を実行するが、全部実行のときには音量の調整、一時停止、早送りなどをも行う処理を実行する。ゲームウィジェットは、一部実行のときにはゲームを静止状態にし、その状態の画像を表示する処理を実行するが、全部実行のときにはゲームを進行するための処理を実行する。通信端末装置10は、例えば時計ウィジェットに対してユーザが時刻を合わせる操作をすれば時刻を変更する、といった具合に、ユーザの操作に応じてウィジェットのそれぞれの実行状態に応じて処理を実行する。
 このように、1つのウィジェットが提供する多様なサービスのうち、一部実行のときには、簡易な処理によって実現可能なサービスが提供され、全部実行のときには、複雑な処理によって実現可能なサービスが提供される。処理の簡易さ・複雑さは、そのときに使用されるRAM11cの記憶領域の大きさに依存するから、通信端末装置10において、ウィジェットを全部実行するときには、RAM11cにおいて割り当てられる記憶領域は大きくなるし、そのウィジェットを一部実行するときには、RAM11cにおいて割り当てられる記憶領域はそれよりも小さくなる。よって、通信端末装置10は、多くのウィジェットを同時に一部実行することができる。一方、或るウィジェットを全部実行したときには、そのウィジェットに対してRAM11cにおいて比較的大きな記憶領域を割り当てるから、他のウィジェットの機能を使用することはできないが、その全部実行したウィジェットの機能の全てを実現し得る状態になる。よって、ユーザに対して、より高いレベルのサービスを提供することができる。 
 さて、通信端末装置10は、一覧表示アプリケーションプログラムを実行して、一部実行したウィジェットのウィンドウを一覧表示画面で表示し、いずれかのウィジェットを全部実行したときには、そのウィンドウのみを配置した画面(以下、「全部実行画面」という。)を表示部13に表示させる。このとき、全部実行画面において表示されるウィンドウのサイズが、例えば倍率「100%」であるとすると、一部実行により一覧表示画面に表示されるウィンドウのサイズは、例えば倍率「60%」であるという具合に、実行状態に応じてウィンドウの表示態様は異なる。通信端末装置10が一覧表示画面を表示しているときに、ユーザにより操作部14が操作されて或るウィンドウが選択されると、選択されたウィンドウに対応するウィジェットを、一部実行から全部実行に切り替えるとともに、選択されたウィンドウ以外のウィンドウに対応するウィジェットを、一部実行した状態から、実行を一時的に中断した状態に切り替える。これに応じて、通信端末装置10は、表示部13に表示していた「一覧表示画面」を、「全部実行画面」に切り替える。また、通信端末装置10は、「全部実行画面」から「一覧表示画面」に切り替えるときには、全部実行していたウィジェットを一部実行に切り替え、それ以前に一部実行していたが実行を中断していたウィジェットを一部実行する。これにより、一部実行に応じたウィンドウを配置した一覧表示画面が表示される。
 ウィジェットの表示に関しては、上記のような「一覧表示画面」及び「全部実行画面」のほか、「リスト画面」と呼ばれるものがある。この「リスト画面」は、通信端末装置10が実行可能な全てのウィジェットを一覧表示したものである。通信端末装置10は、新たにウィジェットを実行するときには、この「リスト画面」を表示部13に表示させ、起動するウィジェットをユーザに選択させる。図3は、リスト画面を模式的に表した図である。同図に示すリスト画面には、通信端末装置10が実行可能なウィジェットの一部に対応するアイコンICO1~ICO8が配置されている。なお、図示しないが、ユーザが操作部14の下向きの操作キーを操作すると、別のウィジェットに対応するアイコンが表示される。ユーザにより、操作部14を介していずれかのアイコンが選択されると、通信端末装置10は、そのアイコンに対応するウィジェットを全部実行する。
 ところで、一覧表示アプリケーションプログラムは、複数のウィンドウの一覧表示を中断する場合がある。具体的には、通信端末装置10が一覧表示アプリケーションプログラムによる一覧表示画面の表示中に、全部実行画面やリスト画面を表示し、再び一覧表示画面に戻って、元の表示内容で表示するような場合である。これ以外にも、通信端末装置10は、一覧表示画面を表示中に、ユーザが通話を開始した場合には、表示部13が表示する画像を通話用の画像に変更する割込処理を実行し、通話が終われば再び一覧表示画面を表示する。このような場合のために、通信端末装置10の制御部11は、実行しているウィジェット又は実行を中断しているウィジェットの識別情報(後述するウィジェットID)を、ウィジェット管理テーブルと呼ばれるテーブル型式でEEPROM11dに記憶させる。制御部11は、一覧表示画面の表示を再開するときには、ウィジェット管理テーブルの内容に基づいて、中断前と同じようにしてウィジェットを実行し、それに対応するウィンドウを表示する。
 図4は、ウィジェット管理テーブルの構成を示した図である。図4に示すように、ウィジェット管理テーブルにおいては、「ウィジェットID」と「実行状態」とが対応付けられている。「ウィジェットID」のフィールドには、時計ウィジェットやメモウィジェット等の、通信端末装置10が実行済みのウィジェットを識別する識別情報が書き込まれる。「実行状態」のフィールドには、ウィジェットが「一部実行」であるか、「全部実行」であるか、又はウィジェットの実行が一時的に中断されていることを意味する「実行オフ」のいずれかの実行状態が書き込まれる。図4に示すウィジェット管理テーブルの内容の場合には、通信端末装置10は、ウィジェットID「001」~「005」のそれぞれに対応するウィジェットを一部実行している。このとき、通信端末装置10は、各ウィジェットに対応するウィンドウを配置した一覧表示画面を、表示部13に表示させている。通信端末装置10は、ウィジェットの実行状態を変更するたびに、このウィジェット管理テーブルを更新する。
 図5は、制御部11が一覧表示アプリケーションプログラム及びウィジェットを実行するときのフローチャートである。以下では、通信端末装置10がウィジェットを実行するときの動作について説明するものとし、この動作の前は、ウィジェットはまだ1つも実行されていないものとする。
 まず、制御部11は、ユーザにより操作部14が操作されて、リスト画面を表示するか、又は一覧表示画面を表示するかの指示を受け付けるまで待機する。ここで、制御部11は、リスト画面を表示する指示を受け付けたと判断すると(ステップS1;リスト画面)、図3に示したような、自装置が実行可能なウィジェットを一覧表示したリスト画面を、表示部13に表示させる(ステップS2)。そして、制御部11は、ユーザにより操作部14が操作され、いずれかのアイコンが選択されることにより、ウィジェットの実行が指示されるまで待機する(ステップS3;NO)。制御部11は、アイコンが選択されて、それに対応するウィジェットの実行が指示されたと判断すると(ステップS3;YES)、ステップS4に進む。ここでは、ステップS3において、ユーザにより図3のアイコンICO1(ウィジェットID:001)が選択され、制御部11は、時計ウィジェットの実行が指示されたと判断したものとする。
 続いて、制御部11は、ウィジェット管理テーブルを更新する(ステップS4)。ここでは、図6(a)に示す内容となるように、制御部11はウィジェット管理テーブルを書き換える。具体的には、制御部11は、時計ウィジェットに対応するウィジェットID「001」を書き込み、それに対応付けて「実行状態」のフィールドに「全部実行」と書き込む。そして、制御部11は、ステップS4での更新内容に応じてウィジェットを全部実行し、それに対応するウィンドウを表示部13に表示させる(ステップS5)。ここでは、制御部11は、時計ウィジェットを全部実行し、図7(a)に示すように、時計ウィジェットに対応するウィンドウW1を配置した全部実行画面を、表示部13に表示させる。このとき、制御部11は、時計ウィジェットを全部実行しているから、RAM11cの記憶領域のうちの多くの記憶領域を利用していることになる。よって、この時計ウィジェット以外のウィジェットを実行することはできないようになっている。
 そして、制御部11は、ユーザの操作部14の操作に従って、全部実行した時計ウィジェットに応じた処理を実行する(ステップS6)。ここでの時計ウィジェットに応じた処理とは、上述したように、外観を変更する等の処理があり、一部実行したときとは異なる処理である。
 そして、制御部11は、全部実行したウィジェットの処理の終了が指示されたか否かを判断する(ステップS7)。ここでは、制御部11は、ユーザにより操作部14が操作されて、表示中の全部実行画面から一覧表示画面に切り替えて表示することを指示されたときに、全部実行しているウィジェットの処理の終了が指示されたと判断する。
 制御部11は、ステップS7で「YES」と判定すると、同時に実行しているウィジェットの数が許容数未満であるか否かを判断する(ステップS8)。ここでの許容数を“8”とし、その値がROM11bに記憶されている。この許容数は、通信端末装置10がウィジェットの実行に用いるRAM11cの記憶容量と、それぞれのウィジェットの一部実行に必要な記憶容量との関係に基づき、設計段階で予め決められた上限値である。つまり、一部実行のウィジェットに要する記憶容量が、RAM11cのウィジェット実行用の記憶容量を超えない程度の値に決められる。
 ここでは、時計ウィジェットしか実行しておらず、同時に実行しているウィジェットの数は「1」であるから、制御部11は「YES」と判定し、ステップS9に進んで、ウィジェット管理テーブルを更新する。ここでは、制御部11はウィジェット管理テーブルを図6(b)に示す内容となるように書き換える。具体的には、制御部11は、時計ウィジェットのウィジェットID「001」に対応する「実行状態」のフィールドを、「全部実行」から「一部実行」に書き換える。この更新により、制御部11は、同時に実行する全てのウィジェットの実行状態を「一部実行」にしたことになり、一部実行しているこれらのウィジェットのウィンドウを配置した一覧表示画面を、表示部13に表示させる(ステップS10)。このとき、制御部11は、各ウィジェットに対して、全部実行するときに割り当てる記憶領域よりも小さい記憶領域を割り当てて、一部実行している。ステップS9で時計ウィジェットを一部実行にするようウィジェット管理テーブルを更新したから、ステップS10では、制御部11は、図7(b)に示すように、一部実行している時計ウィジェットに対応するウィンドウWs1を、表示部13の中央に配置した一覧表示画面を表示させる。そして、制御部11は、ステップS1に戻り、リスト画面を表示するか、又は一覧表示画面を表示するかの指示を受け付けるまで待機する。
 続いて、制御部11は、リスト画面を表示部13に表示した状態で(ステップS2)、新たに別のウィジェットを実行することが指示されると(ステップS3;YES)、実行が指示されたウィジェットを実行する。ここで、メモウィジェットを実行することが指示されたとすると、制御部11は、図6(c)に示す内容となるように、ウィジェット管理テーブルを更新する(ステップS4)。つまり、制御部11は、メモウィジェットに対応するウィジェットID「002」をウィジェット管理テーブルに書き込み、それに対応する実行状態として「全部実行」と書き込む。ただし、すでに他のウィジェットを実行済みであるので、このような場合には、制御部11は、実行済みのウィジェットの実行状態をすべて「一部実行」から「実行オフ」に書き換える。ここでは、制御部11は、ウィジェットID「001」に対応する実行状態を「実行オフ」に書き換える。これにより、ウィジェットをすでに実行しているときであっても、別のウィジェットを全部実行することを可能にしている。「実行オフ」に書き換えることにより、先に実行していたウィジェット(ここではウィジェットID「001」の時計ウィジェット)に割り当てていたRAM11cの記憶領域を解放し、新たに全部実行するメモウィジェットに、RAM11cの記憶領域を割り当てるからである。
 そして、制御部11はメモウィジェットを全部実行し、図7(c)に示すように、それに対応するウィンドウW2を配置した全部実行画面を、表示部13に表示させる(ステップS5)。
 続いて、制御部11はステップS6~S8を実行し、表示部13に一覧表示画面を表示させるには、ウィジェット管理テーブルを、図6(d)に示す内容となるように更新する(ステップS9)。つまり、制御部11は、メモウィジェットを一部実行にするべく、ウィジェットID「002」に対応する実行状態を「全部実行」から「一部実行」に書き換える。これとともに、制御部11は、ウィジェット管理テーブルに基づいて、ウィジェットID「001」に対応する実行状態を「実行オフ」から「一部実行」に書き換え、ウィジェットID「001」、「002」のウィジェットに対してRAM11cの記憶領域を割り当てる。これにより、制御部11は、同時に実行しているすべてのウィジェットの実行状態を「一部実行」にしたことになる。そして、制御部11は、図7(d)に示すように、時計ウィジェットに対応するウィンドウWs1と、メモウィジェットに対応するウィンドウWs2とを配置した一覧表示画面を、表示部13に表示させる(ステップS10)。
 以降においても、同時に実行するウィジェットの数が許容数“8”に達するまでは、制御部11は、上記同様の処理ステップを実行する。すなわち、制御部11は、ウィジェット管理テーブルに書き込まれている実行中(一部実行)のウィジェットのウィジェット数が上限値未満の場合に、その実行中のウィジェット以外の新たなウィジェットを実行するときには、実行中のウィジェットの実行を中断して当該ウィジェットのウィジェットIDを、実行を中断しているウィジェットのウィジェットIDとしてウィジェット管理テーブルに書き込む。そして、制御部11は、新たなウィジェットにRAM11cの記憶領域を割り当てて当該ウィジェットを実行する。また、制御部11は、実行が中断されているウィジェットを再び実行するよう指示された場合には、実行中のウィジェット及び実行を中断しているウィジェットの各々に対して、RAM11cの記憶領域をそれぞれ割り当てて、これらのウィジェットのウィジェットIDを、実行中のウィジェットのウィジェットIDとしてウィジェット管理テーブルに書き込んで、これらのウィジェットを並列して実行する。
 “8”個のウィジェットを制御部11が同時に実行して一覧表示画面を表示するときには、ウィジェット管理テーブルは、図6(e)に示すような内容になっている。つまり、同時に実行している“8”個のウィジェットのそれぞれに対応するウィジェットID「001」~「008」に、実行状態として「一部実行」と書き込まれている。このとき、一覧表示画面は、図8(a)に示すような表示態様となっており、一部実行中の8個のウィジェットのそれぞれに対応する、ウィンドウWs1~Ws8が表示される。なお、図8(a)のように、表示部13の表示領域からはみだしているウィンドウの領域については表示されないが、ユーザは、操作部14を操作することによりその領域を見ることができる。
 続いて、許容数を超える“9”個目のウィジェットを実行することが指示された場合の制御部11の動作について説明する。
 制御部11は、“9”個目のウィジェットとして「ゲームウィジェット」の実行が指示されたとすると(ステップS3;YES)、ウィジェットID管理テーブルを、図6(f)に示す内容となるよう更新する(ステップS4)。つまり、制御部11は、実行済みの8個のウィジェットに対応するウィジェットID「001」~「008」の実行状態を、「一部実行」から「実行オフ」に書き換え、新たに実行したゲームウィジェットのウィジェットID「009」に対応付けて「全部実行」と書き込む。これにより、制御部11は、ウィジェットID「001」~「008」にそれぞれ割り当てていたRAM11cの記憶領域を全て解放し、ウィジェットID「009」のウィジェットに対してRAM11cの記憶領域を割り当てる。そして、制御部11は、図8(b)に示すようにして、全部実行のゲームウィジェットに対応するウィンドウW9を配置した全部実行画面を、表示部13に表示させる(ステップS5)。
 一覧表示画面を表示するときには、同時実行の対象となるウィジェットの数(ウィジェット管理テーブルにおいて実行オフとなっているウィジェットの数)が“8”に対して許容数が“8”であるから、制御部11は、ステップS8で「NO」と判定し、ステップS11に進む。そして、制御部11は、実行済みのウィジェットが許容数“8”に達した後に、ステップS3で実行したゲームウィジェットを終了する(ステップS11)。そして、制御部11は、ウィジェット管理テーブルを、図6(g)に示す内容となるように更新する(ステップS12)。つまり、制御部11は、ウィジェットID「001」~「008」に対応する実行状態を「実行オフ」から「一部実行」に書き換え、終了したゲームウィジェットに対応するウィジェットID「009」を、ウィジェット管理テーブルから消去する。そして、制御部11は、ゲームウィジェットに割り当てていたRAM11cの記憶領域を解放し、ウィジェットID「001」~「008」のウィジェットのそれぞれに対してRAM11cの記憶領域を割り当てる。これにより、制御部11がステップS10で表示する一覧表示画面は、図8(c)に示すようになる。つまり、“8”個のウィジェットを実行した当初の一覧表示画面(図8(a))と同じになる。以降、許容数のウィジェットを実行している限りは、一覧表示画面に戻るときに、制御部11は最後に実行したウィジェットを終了する。
 即ち、制御部11は、ウィジェット管理テーブルにより記憶されている実行中のウィジェットのウィジェットIDの数が上限値の場合に、実行中のウィジェット以外の新たなウィジェットを実行するときには、実行中のウィジェットの実行を中断してウィジェットのウィジェットIDを、実行を中断しているウィジェットのウィジェットIDとしてウィジェット管理テーブルに書き込む。そして、制御部11は、新たなウィジェットにRAM11cの記憶領域を割り当ててウィジェットを実行する。また、制御部11は、実行が中断されているウィジェットを再び実行するよう指示された場合には、実行中の新たなウィジェットの実行を終了し、実行を中断しているウィジェットの各々に対して、RAM11cの記憶領域をそれぞれ割り当てて、これらのウィジェットのウィジェットIDを、実行中のウィジェットのウィジェットIDとしてウィジェット管理テーブルに書き込んで、これらのウィジェットを並列して実行する。
 このように、RAM11cの記憶容量の制限に関係して、同時実行のウィジェットの許容数が“8”と決められている場合であっても、制御部11は、新たに“9”個目のウィジェットの実行が指示されると、実行済みのウィジェットの実行を一旦中断し、これにより空いた記憶領域を用いて、新たなウィジェットを全部実行する。また、一覧表示画面に戻って表示するときには、制御部11は、その“9”個目のウィジェットを終了させて、これにより空いた記憶領域を用いて、ウィジェット管理テーブルに記されている実行済みの“8”個のウィジェットを一部実行する。これにより、複数のアプリケーションプログラムを同時実行し、その数が許容数に達しても、通信端末装置10は新たにアプリケーションプログラムを実行することができるし、それを終了したときには、元の同時実行の状態に戻すことができる。
 なお、ステップS1において、制御部11が一覧表示画面を表示するときには(ステップS1;一覧表示画面)、その時点でのウィジェット管理テーブルの内容に基づいて、一部実行しているウィジェットのウィンドウを配置した一覧表示画面を、表示部13に表示させる(ステップS13)。そして、制御部11は、ユーザにより或るウィンドウが選択されると(ステップS3;YES)、ウィジェット管理テーブルをその旨に更新し(ステップS4)、選択されたウィンドウに対応するウィジェットを「一部実行」から「全部実行」に切り替え、「一部実行」していたその他のウィジェットを一旦中断する(ステップS5)。そして、制御部11は、上記同様の処理ステップを実行する。
 以上説明した実施形態によれば、通信端末装置10の制御部11は、複数のウィジェットを並列して実行しようとするときには、それぞれに割り当てるRAM11cの記憶領域を小さくした一部実行により実行し、それらのウィジェットの実行により実現される機能の一部のみが実現されるようにする。一方、ユーザに価値の高いサービスを提供しようとするときには、制御部11は、そのうちの1つのウィジェットに割り当てるRAM11cの記憶領域を大きくしてウィジェットを全部実行し、それによって実現される機能の全部を実現できるようにする。このような、複数のウィジェットの実行状態の制御により、ユーザからの多様な用途の要請に応える環境と、ウィジェットを実行して、価値の高いサービスをユーザに提供する環境とを両立することができる。
[変形例]
 本発明は、上述した実施形態と異なる形態で実施することが可能である。本発明は、例えば、以下のような形態で実施することも可能である。また、以下に示す変形例は、各々を適宜に組み合わせてもよい。
(1)変形例1
 上述した実施形態では、制御部11は、実行済みのウィジェットが許容数に到達した後に、ステップS3で実行したウィジェット(つまり、最後に実行したウィジェット)を終了させ、ウィジェット管理テーブルから消去していた。これに対し、制御部11は、最後に実行したウィジェット以外のウィジェットを終了させるようにしてもよい。どのウィジェットを終了させるかについては、以下のような構成が考えられる。
(1-1)ユーザによる指定
 制御部11は、ステップS8で「NO」と判定すると、どのウィジェットを終了させるかをユーザに質問する画面を、表示部13に表示させる。例えば、制御部11は、実行中の各々のウィジェットの名称を記したソフトボタンを複数配置した画面を表示部13に表示させ、終了するウィジェットをユーザに選択させる。そして、制御部11は、ユーザにより選択されたソフトボタンに対応するウィジェットを終了させ、最後に実行したウィジェットを全部実行から一部実行に切り替えるとともに、実行を中断していたウィジェット(ユーザの選択により終了したウィジェットを除く)を一部実行に切り替える。この構成において、例えば、図8(a)に示すウィンドウWs3に対応するウィジェット終了することがユーザにより指示された場合には、制御部11は、図9に示すように、ウィンドウWs3に代えて、ゲームウィジェットに対応するウィンドウWs9を一覧表示画面に表示させることになる。
(1-2)優先度による指定
 各ウィジェットに対して“実行の優先度”を定義し、その優先度の低いウィジェットを終了させてもよい。ここでの優先度は、各ウィジェットの使用状況やユーザの指定によって決められるものであり、EEPROM11dに記憶されるようになっている。
 この場合、制御部11は、図5のステップS11において、ウィジェット管理テーブルにおいて実行状態「実行オフ」に対応付けて記述されているウィジェットIDのうち、実行の優先度が低いウィジェットのウィジェットIDを特定し、そのウィジェットを実行を終了する。そして、制御部11は、全部実行しているウィジェットと、実行状態「実行オフ」のウィジェットのうち、優先度が低いために実行を終了したウィジェット以外のウィジェットとの各々に対して、RAM11cの記憶領域をそれぞれ割り当てる。そして、制御部11は、これらのウィジェットを一部実行して、これらを並列して実行する。
 例えば、制御部11は、各ウィジェットが実行された期間に基づいて優先度を求める。この場合、通信端末装置10がタイマ等の計時手段を備え、制御部11は、ウィジェット管理テーブルにおける各ウィジェットIDが実行状態「一部実行」又は「実行オフ」に対応付けられて記述されている期間(時間)を計時手段によって求め、それをウィジェット管理テーブルに記述しておく。各ウィジェットIDに対応付けられて記述されている期間は、実行中のアプリケーションプログラムの識別情報又は実行を中断しているアプリケーションプログラムの識別情報がウィジェット管理テーブルに記述されている期間ということになる。そして、図5のステップS11において、制御部11は、ウィジェット管理テーブルに記述された期間に基づいて、優先度を求める。例えばその期間が短いということは、ユーザによって利用されている期間が短いことを意味するので、そのユーザにとってあまり重要ではないという観点から、優先度を低くするということが考えられる。また、そうではなくて、その期間が短いということは、ユーザによって利用され始めた時期が最近である可能性があるから、そのユーザにとって今は重要であるという考え方もできる。よって、この場合には、期間が長いほど優先度が低いということになる。そこで、制御部11は、図5のステップS11にて、ウィジェット管理テーブルにおいて優先度の低いウィジェットを終了させる。
 この場合において、制御部11は、ウィジェット管理テーブルにおける各ウィジェットIDが、実行状態「全部実行」に対応付けられて記述されている期間を求め、それをウィジェット管理テーブルに記述してもよい。ウィジェットIDが実行状態「全部実行」に対応付けられて記述されている期間は、実行中のアプリケーションプログラムの実行を中断して新たに実行されたアプリケーションプログラムの実行期間ということになる。この場合も上記と同様に、その期間が短いということは、ユーザによって利用されている期間が短いことを意味するから、そのユーザにとってあまり重要ではないという観点から、優先度を低くするということも考えられるし、また、ユーザによって利用され始めた時期が最近であることから、そのユーザにとって今は重要であるという考え方もできる。ただし、ウィジェットIDが実行状態「全部実行」に対応付けられて記述されている期間は、実行状態「一部実行」又は「実行オフ」に対応付けられて記述されている期間よりも、ユーザに対してより有用なサービスを提供した期間といえるから、ユーザの利用度に応じた優先度として用いるのに適している。そして、この場合も、制御部11は、図5のステップS11にて、ウィジェット管理テーブルにおいて優先度の低いウィジェットを終了させる。
 また、制御部11は、上記期間に代えて、アプリケーションを実行した(起動した)時期に基づいて優先度を特定するようにしてもよい。この場合、制御部11は、近い時期に実行したアプリケーションほど優先度を高くする。このようにすれば、ユーザにより最近よく使用されている、重要度が高いアプリケーションのウィンドウを一覧表示画面に表示させることができる。
 また、制御部11は、ウィジェット管理テーブルにおける各ウィジェットIDが実行状態「一部実行」又は「実行オフ」に対応付けられて記述された回数を求めて、それをウィジェット管理テーブルに記述しておいてもよい。ここで、実行状態「一部実行」又は「実行オフ」に対応付けられて記述された回数は、実行中のアプリケーションプログラムの識別情報又は実行を中断しているアプリケーションプログラムの識別情報がウィジェット管理テーブルに記憶された回数ということになる。そして、図5のステップS11において、制御部11は、ウィジェット管理テーブルに記述された回数に基づいて、優先度を求める。例えばその回数が少ないということは、ユーザによって利用された回数が少ないことを意味するので、そのユーザにとってあまり重要ではないという観点から、優先度を低くするということが考えられる。また、そうではなくて、その回数が少ないということは、ユーザによって利用され始めた時期が最近である可能性があるから、そのユーザにとって今は重要であるという考え方もできる。よって、この場合には、回数が多いほど優先度が低いということになる。そこで、制御部11は、図5のステップS11にて、ウィジェット管理テーブルにおいて優先度の低いウィジェットを終了させる。
 また、制御部11は、ウィジェット管理テーブルにおける各ウィジェットIDが実行状態「全部実行」に対応付けられて記述された回数を求めて、それをウィジェット管理テーブルに記述しておいてもよい。ここで、実行状態「全部実行」に対応付けられて記述された回数は、実行中のアプリケーションプログラムの実行を中断して新たに実行されたアプリケーションプログラムの実行回数ということになる。この場合も上記と同様の考え方を採ることができるが、ウィジェットIDが実行状態「全部実行」に対応付けられて記述された回数は、実行状態「一部実行」又は「実行オフ」に対応付けられて記述された回数よりも、ユーザに対してより有用なサービスを提供した期間といえるから、ユーザの利用度に応じた優先度として用いるのに適している。そして、この場合も、制御部11は、図5のステップS11にて、ウィジェット管理テーブルにおいて優先度の低いウィジェットを終了させる。
(2)変形例2
 上述した実施形態では、制御部11は、ウィジェットを全部実行したときには、そのウィジェットに記述された手順の全てを参照範囲として、その手順に従い処理を実行する一方、ウィジェットを一部実行したときには、そのウィジェットに記述されている手順のうち、予め決められた一部の手順を参照範囲として、その手順に従い処理を実行していた。
 つまり、ウィジェットを全部実行したときと一部実行したときとで同一のウィジェットを利用していたが、これを、全部実行したときと一部実行したときとで、サービスの目的は同じだが、プログラムとしては異なるウィジェットを利用するようにしてもよい。つまり、全部実行するときのウィジェットと、一部実行するときのウィジェットとが対になって、同種のウィジェット群を構成するようにしてもよい。
(3)変形例3
 本発明において、ウィジェットは、一部実行時において複数の異なる処理を実行可能とする。
 上述した実施形態では、「選択」は、ウィンドウに入力フォーカスを与えて、そのウィンドウを指定することを指していたが、入力フォーカスを与えることを「選択」としてもよく、この場合に、ウィンドウが選択された「選択時」であるか、又はウィンドウが選択されていない「非選択時」であるかによって、通信端末装置10はそれぞれで異なる処理を実行する。例えば、通信端末装置10は、上述した時計ウィジェットについて、非選択時には日時を所定の表示態様で表示し、選択時には非選択時と異なる表示態様で日時を表示する。ここにおいて、例えば、通信端末装置10は、非選択時には時刻のみを表示し、選択時には時刻に加えて日付や曜日などを表示する。選択時及び非選択時のいずれの場合であっても、ウィジェットは一部実行された状態にあり、通信端末装置10が参照するウィジェットに記述された手順の範囲が異なるだけである。 なお、この場合においても、所定のキーがユーザにより押下される等して、選択されたウィンドウが指定されると、通信端末装置10は、そのウィジェットを一部実行から全部実行に切り替える。
(4)変形例4
 本発明におけるウィンドウは、上述した実施形態における「ウィジェット」に割り当てられた表示領域に限らず、他のアプリケーションプログラム(例えば、ネイティブアプリケーションプログラム)に割り当てられた表示領域であってもよい。同様に、ウィジェットも、Javaアプリケーションプログラムに限らず、他のアプリケーションプログラムとして実現されてもよい。さらに、上述した実施形態においては、Javaアプリケーションプログラムである一覧表示アプリケーションプログラムを実行することにより複数のウィンドウを表示させるようにしたが、複数のウィンドウを表示させることは、例えばOSによるなど、他のアプリケーションプログラムによって実現されてもよい。
 また、ウィジェットは、無線通信部12以外の手段を介して情報を取得することも可能である。例えば、本発明に係る情報処理装置がいわゆるICタグを備える場合には、ICタグに記憶された情報を取得してもよい。また、本発明に係る情報処理装置がGPS(Global Positioning System)等による測位機能を有する場合には、かかる測位機能を用いて位置情報(緯度及び経度や、所定の地点からの距離など)を取得してもよい。 
(5)変形例5
 上述した実施形態では、ユーザが操作部14のキーを操作することにより、各種の指示の入力が行われていたが、これに限らない。例えば、操作部14の各キーに対応するソフトボタンを表示部13に表示させて、このソフトボタンの操作により各種の指示の入力が行われてもよい。また、通信端末装置10がタッチパネルを備えている場合には、このソフトボタンの操作をタッチパネルが受け付けてもよい。
(6)変形例6
 上述した実施形態において、本発明に係る情報処理装置に相当するものは、制御部11であるとみなすこともできるし、通信端末装置10であるとみなすこともできる。
 また、本発明における操作に相当するものは、キーの押下によらず、例えば、音声による指示を認識した結果であってもよい。
 なお、本発明は、ウィンドウの代わりにアイコン等の画像の配置を変更するものであってもよい。換言すれば、本発明でいう「ウィンドウ」は、アイコン等の画像を含み得る概念である。
 また、上述した実施形態では、同時に実行可能なウィジェットの許容数を“8”としていたが、これよりも多くても少なくてもよい。実施形態で述べたように、許容数は、RAM11cのワークエリアの記憶容量とウィジェットの実行に要する容量との関係に基づいて決められている。例えば、RAM11cの記憶容量を大きくすれば、制御部11はさらに多くのウィジェットを同時に実行(一部実行)することも可能となるから、許容数をさらに大きくしてもよい。
 また、上述した実施形態は、本発明を携帯電話機に適用したものであるが、本発明は、その他の電子機器に適用することも可能である。本発明は、PDA(Personal Digital Assistance)等の通信端末装置や、カメラ、携帯音楽プレーヤ、携帯ゲーム機など、種々の情報処理装置に適用することができる。  
 さらに、上述した通信端末装置10の制御部11が実現する各機能は、複数のプログラムの組み合わせによって実現され、又は、複数のハードウェア資源の協働によって実現され得る。

Claims (8)

  1.  メモリと、
     各アプリケーションプログラムに前記メモリの記憶領域の一部または全部を割り当てて当該アプリケーションプログラムを実行する実行手段と、
     各アプリケーションについて、アプリケーションが実行中であることを示す第1識別情報または実行が中断されていることを示す第2識別情報を記録する記憶手段とを備え、
     前記実行手段は、
    (a)前記記憶手段に記憶されている前記第1識別情報の数が上限値未満であって、一または複数の第1アプリケーションプログラムが実行中である場合において、第2アプリケーションプログラムを実行するときには、
     前記第1アプリケーションプログラムの実行を中断し、前記記憶手段に記憶されている、前記一または複数の第1アプリケーションプログラムの識別情報を第2の識別情報に書き替え、
     前記第2アプリケーションプログラムに前記記憶領域の全部を割り当てて実行し、
     前記第2アプリケーションの実行中に前記第1のアプリケーションプログラムの実行指示をうけた場合には、前記第2アプリケーションプログラムと、前記一または複数の第1アプリケーションプログラムとの各々に対して、前記記憶領域の一部をそれぞれ割り当てて並列して実行し、前記2アプリケーションプログラムおよび前記一または複数の第1アプリケーションプログラムの識別情報を前記第1識別情報に書き替える一方、
    (b)前記記憶手段に記憶されている前記第1識別情報の数が前記上限値に一致し、前記一または複数の第1アプリケーションプログラムが実行中である場合において、前記第2のアプリケーションプログラムを実行するときには、
     前記一または複数の第1アプリケーションプログラムの実行を中断し、前記記憶手段に記憶されている、前記一または複数の第1アプリケーションプログラムの識別情報を前記第2識別情報に書き替え、
     前記第2アプリケーションプログラムに前記メモリの記憶領域の全部を割り当てて実行し、
     前記第2アプリケーションの実行中に前記一または複数の第1アプリケーションプログラムの実行指示を受けた場合には、前記第2のアプリケーションプログラムを終了させ、前記一または複数のアプリケーションプログラムの各々に対して、前記メモリの記憶領域の一部をそれぞれ割り当てて並列して実行し、前記一または複数の第1アプリケーションプログラムの識別情報を前記第1識別情報に書き換える
     ことを特徴とする情報処理装置。
  2.  前記実行手段は、前記(b)の場合において、実行が中断されている前記一または複数のアプリケーションプログラムを実行するよう指示されると、
     前記第2のアプリケーションプログラムの実行を終了することに代えて、  前記第2識別情報が書き込まれているアプリケーションプログラムのうち、優先度が低い第3のアプリケーションプログラムを特定し、前記第3のアプリケーションプログラムを終了させ、
     実行中の前記第2のアプリケーションプログラムと、前記第2識別情報が書き込まれている一または複数の第1アプリケーションプログラムのうち、前記第3のアプリケーションプログラム以外のアプリケーションプログラムとの各々に対して、前記記憶領域の一部をそれぞれ割り当てて並列して実行し、前記記憶領域の一部が割り当てられたアプリケーションプログラムの識別情報を前記第1識別情報に更新する
     ことを特徴とする請求項1に記載の情報処理装置。
  3.  前記実行手段は、
     アプリケーションプログラムに関する前記第1識別情報または前記第2識別情報が記憶されている期間に基づいて、当該アプリケーションプログラムの優先度を決定する
     ことを特徴とする請求項2に記載の情報処理装置。
  4.  前記実行手段は、
     一のアプリケーションプログラムが他のアプリケーションの実行中断に伴って実行された期間に基づいて、当該一のアプリケーションプログラムの優先度を求める
     ことを特徴とする請求項2に記載の情報処理装置。
  5.  前記実行手段は、
     アプリケーションプログラムに関する前記第1識別情報又は前記第2識別情報が記憶された回数に応じて、当該アプリケーションプログラムの優先度を決定する
     ことを特徴とする請求項2に記載の情報処理装置。
  6.  前記実行手段は、
     一のアプリケーションプログラムが他のアプリケーションの実行中断に伴って実行された回数に基づいて、当該一のアプリケーションプログラムの優先度を決定する
     ことを特徴とする請求項2に記載の情報処理装置。
  7.  コンピュータに、
     各アプリケーションプログラムにメモリの記憶領域の一部または全部を割り当てて当該アプリケーションプログラムを実行するステップと、
     各アプリケーションについて、アプリケーションが実行中であることを示す第1識別情報または実行が中断されていることを示す第2識別情報を記憶手段に記憶するステップと実行させるプログラムであって、
    (a)前記記憶手段に記憶されている前記第1識別情報の数が上限値未満であって、一または複数の第1アプリケーションプログラムが実行中である場合において、第2アプリケーションプログラムを実行するときには、
     前記第1アプリケーションプログラムの実行を中断し、前記記憶手段に記憶されている、前記一または複数の第1アプリケーションプログラムの識別情報を第2の識別情報に書き替え、
     前記第2アプリケーションプログラムに前記記憶領域の全部を割り当てて実行し、
     前記第2アプリケーションの実行中に前記第1のアプリケーションプログラムの実行指示をうけた場合には、前記第2アプリケーションプログラムと、前記一または複数の第1アプリケーションプログラムとの各々に対して、前記記憶領域の一部をそれぞれ割り当てて並列して実行し、前記2アプリケーションプログラムおよび前記一または複数の第1アプリケーションプログラムの識別情報を前記第1識別情報に書き替える一方、
    (b)前記記憶手段に記憶されている前記第1識別情報の数が前記上限値に一致し、前記一または複数の第1アプリケーションプログラムが実行中である場合において、前記第2のアプリケーションプログラムを実行するときには、
     前記一または複数の第1アプリケーションプログラムの実行を中断し、前記記憶手段に記憶されている、前記一または複数の第1アプリケーションプログラムの識別情報を前記第2識別情報に書き替え、
     前記第2アプリケーションプログラムに前記記憶領域の全部を割り当てて実行し、
     前記第2アプリケーションの実行中に前記一または複数の第1アプリケーションプログラムの実行指示をうけた場合には、前記第2のアプリケーションプログラムを終了させ、前記一または複数のアプリケーションプログラムの各々に対して、前記メモリの記憶領域の一部をそれぞれ割り当てて並列して実行し、前記一または複数の第1アプリケーションプログラムの識別情報を前記第1識別情報に書き換える
     ことを特徴とするプログラム。
  8.  メモリと、
     各アプリケーションプログラムに前記メモリの記憶領域の一部または全部を割り当てて当該アプリケーションプログラムを実行する実行手段と、
     各アプリケーションについて、アプリケーションがその全ての機能を実行できる完全実行状態であることを示す第1識別情報、アプリケーションがその一部の機能のみ実行できる部分実行状態にあることを示す第2識別情報、および実行が中断されていることを示す第3識別情報のいずれか一つを記録する記憶手段とを備え、
     前記実行手段は、
     (a)前記記憶手段に記憶されている前記第2識別情報の数が上限値未満であって、一または複数の第1アプリケーションプログラムが実行中である場合において、第2アプリケーションプログラムを実行するときには、
     前記第1アプリケーションプログラムの実行を中断し、前記記憶手段に記憶されている、前記一または複数の第1アプリケーションプログラムの識別情報を第3の識別情報に書き替え、前記第2アプリケーションプログラムに前記記憶領域の全部を割り当てて部分実行状態で実行し、前記第2アプリケーションプログラムの識別情報を第1識別情報に書き換え、
     前記第2アプリケーションの実行中に前記第1のアプリケーションプログラムの実行指示をうけた場合には、前記第2アプリケーションプログラムと、前記一または複数の第1アプリケーションプログラムとの各々に対して、前記記憶領域の一部をそれぞれ割り当て、部分実行状態で、並列して実行し、前記2アプリケーションプログラムおよび前記一または複数の第1アプリケーションプログラムの識別情報を前記第2識別情報に書き替える一方、
    (b)前記記憶手段に記憶されている前記第2識別情報の数が前記上限値に一致し、前記一または複数の第1アプリケーションプログラムが実行中である場合において、前記第2のアプリケーションプログラムを実行するときには、
     前記一または複数の第1アプリケーションプログラムの実行を中断し、前記記憶手段に記憶されている、前記一または複数の第1アプリケーションプログラムの識別情報を前記第2識別情報に書き替え、前記第2アプリケーションプログラムに前記メモリの記憶領域の全部を割り当てて全部実行状態で実行し、前記第2アプリケーションプログラムの識別情報を第1識別情報に書き換え、 前記第2アプリケーションの実行中に前記一または複数の第1アプリケーションプログラムの実行指示を受けた場合には、前記第2のアプリケーションプログラムを終了させ、前記一または複数のアプリケーションプログラムの各々に対して、前記メモリの記憶領域の一部をそれぞれ割り当て、部分実行状態で、並列して実行し、前記一または複数の第1アプリケーションプログラムの識別情報を前記第2識別情報に書き換える
     ことを特徴とする情報処理装置。
PCT/JP2009/065680 2008-09-08 2009-09-08 情報処理装置及びプログラム WO2010027089A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US13/061,738 US8661445B2 (en) 2008-09-08 2009-09-08 Information-processing device and program
CN200980134773.6A CN102144219B (zh) 2008-09-08 2009-09-08 信息处理设备和程序
EP20090811612 EP2328087A4 (en) 2008-09-08 2009-09-08 INFORMATION PROCESSING DEVICE AND PROGRAM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008-230239 2008-09-08
JP2008230239A JP5184268B2 (ja) 2008-09-08 2008-09-08 情報処理装置及びプログラム

Publications (1)

Publication Number Publication Date
WO2010027089A1 true WO2010027089A1 (ja) 2010-03-11

Family

ID=41797251

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/065680 WO2010027089A1 (ja) 2008-09-08 2009-09-08 情報処理装置及びプログラム

Country Status (5)

Country Link
US (1) US8661445B2 (ja)
EP (1) EP2328087A4 (ja)
JP (1) JP5184268B2 (ja)
CN (1) CN102144219B (ja)
WO (1) WO2010027089A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102646094A (zh) * 2011-02-16 2012-08-22 联想(北京)有限公司 电子设备及其对象管理方法
JP2014533013A (ja) * 2011-10-26 2014-12-08 ▲華▼▲為▼終端有限公司Huawei Device Co., Ltd. 携帯端末内のアプリケーションの画面のスクリーンショットをとるための方法及び装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130014119A1 (en) * 2011-07-07 2013-01-10 Iolo Technologies, Llc Resource Allocation Prioritization Based on Knowledge of User Intent and Process Independence
US9632988B2 (en) * 2012-07-12 2017-04-25 International Business Machines Corporation Autonomous gadget management system
KR20200027204A (ko) * 2018-09-04 2020-03-12 삼성전자주식회사 전자장치 및 그 제어방법
CN114860136A (zh) * 2021-01-18 2022-08-05 华为技术有限公司 一种微件的显示方法与电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06266524A (ja) 1993-03-15 1994-09-22 Nippon Telegr & Teleph Corp <Ntt> ウィンドウ数自動調整システム
JP2000039948A (ja) 1998-07-24 2000-02-08 Nec Corp オブジェクト配置制御装置、方法及び記録媒体
JP2000293386A (ja) * 1999-04-12 2000-10-20 Hitachi Ltd メモリ管理方式
JP2003015892A (ja) * 2001-06-29 2003-01-17 Casio Comput Co Ltd 情報端末装置及びアプリケーション管理プログラム
JP2006107197A (ja) * 2004-10-06 2006-04-20 Nec Corp メモリ制御方法およびプログラムならびに端末装置
JP2008097425A (ja) * 2006-10-13 2008-04-24 Mitsubishi Electric Corp 携帯情報端末および携帯情報端末の制御方法
JP2008186167A (ja) * 2007-01-29 2008-08-14 Kyocera Corp 電子機器及び電子機器における制御方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6430570B1 (en) * 1999-03-01 2002-08-06 Hewlett-Packard Company Java application manager for embedded device
US7739718B1 (en) * 2002-08-23 2010-06-15 Arris Group, Inc. System and method for automatically sensing the state of a video display device
US20040194153A1 (en) * 2003-03-24 2004-09-30 Sony Corporation And Sony Electronics Inc. Conservation of system resources by efficiently activating/de-activating applications
US7076616B2 (en) * 2003-03-24 2006-07-11 Sony Corporation Application pre-launch to reduce user interface latency
JP2005005909A (ja) * 2003-06-10 2005-01-06 Sony Ericsson Mobilecommunications Japan Inc 競合管理プログラム,競合管理プログラムが記憶された記憶媒体,競合管理方法及び電子機器
US7730479B2 (en) * 2004-03-30 2010-06-01 Kyocera Corporation Cell-phone terminal, program management method and computer program of same
CN1317640C (zh) * 2004-08-31 2007-05-23 华为技术有限公司 实时操作系统环境下多任务应用软件模块的管理方法
US8448187B2 (en) * 2005-08-18 2013-05-21 Panasonic Corporation Conflict resolution apparatus
US7757239B2 (en) * 2005-08-29 2010-07-13 Sap Ag Systems and methods for suspending and resuming of a stateful web application
CN100346307C (zh) * 2006-01-17 2007-10-31 浙江大学 Java操作系统中实时任务调度的实现方法
US8959515B2 (en) * 2006-01-18 2015-02-17 International Business Machines Corporation Task scheduling policy for limited memory systems
JP4293239B2 (ja) * 2006-12-28 2009-07-08 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体
US7827358B2 (en) 2007-01-07 2010-11-02 Apple Inc. Memory management methods and systems
US8631413B2 (en) * 2007-01-26 2014-01-14 Kyocera Corporation Determining the termination priority of applications based on capability of applications to retain operation state information
US20120166532A1 (en) * 2010-12-23 2012-06-28 Yun-Fang Juan Contextually Relevant Affinity Prediction in a Social Networking System

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06266524A (ja) 1993-03-15 1994-09-22 Nippon Telegr & Teleph Corp <Ntt> ウィンドウ数自動調整システム
JP2000039948A (ja) 1998-07-24 2000-02-08 Nec Corp オブジェクト配置制御装置、方法及び記録媒体
JP2000293386A (ja) * 1999-04-12 2000-10-20 Hitachi Ltd メモリ管理方式
JP2003015892A (ja) * 2001-06-29 2003-01-17 Casio Comput Co Ltd 情報端末装置及びアプリケーション管理プログラム
JP2006107197A (ja) * 2004-10-06 2006-04-20 Nec Corp メモリ制御方法およびプログラムならびに端末装置
JP2008097425A (ja) * 2006-10-13 2008-04-24 Mitsubishi Electric Corp 携帯情報端末および携帯情報端末の制御方法
JP2008186167A (ja) * 2007-01-29 2008-08-14 Kyocera Corp 電子機器及び電子機器における制御方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2328087A4

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102646094A (zh) * 2011-02-16 2012-08-22 联想(北京)有限公司 电子设备及其对象管理方法
JP2014533013A (ja) * 2011-10-26 2014-12-08 ▲華▼▲為▼終端有限公司Huawei Device Co., Ltd. 携帯端末内のアプリケーションの画面のスクリーンショットをとるための方法及び装置
US10078434B2 (en) 2011-10-26 2018-09-18 Huawei Device (Shenzhen) Co., Ltd. Method and apparatus for taking screenshot of screen of application in mobile terminal
US11016641B2 (en) 2011-10-26 2021-05-25 Honor Device Co., Ltd. Method and apparatus for taking screenshot of screen of application in mobile terminal

Also Published As

Publication number Publication date
CN102144219A (zh) 2011-08-03
CN102144219B (zh) 2014-01-29
JP2010066835A (ja) 2010-03-25
EP2328087A1 (en) 2011-06-01
US8661445B2 (en) 2014-02-25
US20110173627A1 (en) 2011-07-14
JP5184268B2 (ja) 2013-04-17
EP2328087A4 (en) 2013-07-10

Similar Documents

Publication Publication Date Title
JP4958517B2 (ja) 携帯端末およびその表示制御方法
JP5249686B2 (ja) 情報処理装置及びプログラム
JP5185745B2 (ja) 情報処理装置及びプログラム
JP4971203B2 (ja) 情報処理装置及びプログラム
JP5253937B2 (ja) 情報処理装置及びプログラム
JP5184268B2 (ja) 情報処理装置及びプログラム
JP4976353B2 (ja) 情報処理装置及びプログラム
JP2010066830A (ja) 情報処理装置及びプログラム
US9292308B2 (en) Information-processing device and program
JP4902713B2 (ja) 情報処理方法、情報処理装置及びプログラム
JP5155786B2 (ja) 情報処理装置及びプログラム
JP4750806B2 (ja) 情報処理装置及びプログラム
JP2011242893A (ja) 競合管理装置及び競合管理方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200980134773.6

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09811612

Country of ref document: EP

Kind code of ref document: A1

REEP Request for entry into the european phase

Ref document number: 2009811612

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2009811612

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 13061738

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE