JP2002297402A - Digital device, task management method and program therefor - Google Patents

Digital device, task management method and program therefor

Info

Publication number
JP2002297402A
JP2002297402A JP2002011585A JP2002011585A JP2002297402A JP 2002297402 A JP2002297402 A JP 2002297402A JP 2002011585 A JP2002011585 A JP 2002011585A JP 2002011585 A JP2002011585 A JP 2002011585A JP 2002297402 A JP2002297402 A JP 2002297402A
Authority
JP
Japan
Prior art keywords
task
function
attribute
execution
executed
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2002011585A
Other languages
Japanese (ja)
Other versions
JP3961301B2 (en
Inventor
Yuuko Kubooka
祐子 久保岡
Shigenori Doi
繁則 土井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2002011585A priority Critical patent/JP3961301B2/en
Publication of JP2002297402A publication Critical patent/JP2002297402A/en
Application granted granted Critical
Publication of JP3961301B2 publication Critical patent/JP3961301B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a task management method that prevents the forced termination of a task during the task operation that may cause a system failure. SOLUTION: A program execution means transmits the information on the attribute of a function being executed and concurrently makes an inquiry about the execution of the forced termination of the task belonging to the function. A task execution determination means determines, depending on the attribute of the function being executed, the execution of the forced termination. Moreover, a task attribute recognition means stores, in a task attribute information storing means, the attribute of the function being executed, and sends back, for the inquiry made from the task execution determination means about the attribute of the function, the stored attribute of the function.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、デジタル機器、タ
スク管理方法及びそのプログラムに関し、詳しくは、マ
ルチタスクオペレーションシステムにてタスクの強制終
了を管理するデジタル機器、タスク管理方法及びそのプ
ログラムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a digital device, a task management method and a program therefor, and more particularly, to a digital device for managing forced termination of a task in a multitask operation system, a task management method and a program therefor.

【0002】[0002]

【従来の技術】従来では、例えばSTB(set-top bo
x:ケーブルTVのコントロールボックス等、家庭用テレ
ビに接続して追加機能を提供するデバイスの一般名称)
や携帯電話等、主にソフトウェアを用いて様々な機能を
実現する製品の場合、当該ソフトウェアは上記製品に、
OS(オペレーションシステム)及び各機能を実現する
プログラムを予め格納した、いわゆる組込OSという形
で提供される。上記組込OSを備えた製品を提供するメ
ーカーは、当該組込OSの各機能の動作を十分に検証
し、様々な動作状態におけるデバッグを行うことができ
るため、安定動作する信頼性の高い製品を提供すること
が可能である。
2. Description of the Related Art Conventionally, for example, STB (set-top bo
x: General name of a device that provides additional functions by connecting to a home TV, such as a cable TV control box)
In the case of products that realize various functions mainly using software, such as mobile phones and mobile phones, the software is
It is provided in the form of a so-called embedded OS in which an OS (operation system) and a program for realizing each function are stored in advance. Manufacturers that provide products with the embedded OS can sufficiently verify the operation of each function of the embedded OS and debug in various operating states, so that a reliable product that operates stably It is possible to provide.

【0003】又、近年では、製品によってはライフタイ
ムが短く、又新機能の追加・変更サイクルも短くなって
いる。このため、当該機能追加・変更に柔軟に対応する
べく、上記組込OSに替えて汎用OSを用いるケースが
増えている。さらにネットワークの発達(多様化)やJ
ava(R)に代表されるネットワークに適した多機能
なインタプリタ言語の普及により、機能追加・変更に伴
うプログラムのダウンロードが容易になってきている点
も、上記組込OSの汎用OS化を促進する要因となって
いる。
In recent years, the life time of some products has been short, and the cycle of adding / changing new functions has also become short. For this reason, in order to flexibly respond to the addition or change of the function, the use of a general-purpose OS in place of the embedded OS is increasing. Further network development (diversification) and J
The spread of multifunctional interpreter languages suitable for networks represented by ava (R) has made it easier to download programs as functions are added or changed. This is a factor.

【0004】以下に上記汎用OSを用いた際の一般的な
タスクの実行形態を説明する。尚、上述したような汎用
OSは通常マルチタスクとして動作するため、該マルチ
タスクを含めた説明を行う。
An execution form of a general task when the general-purpose OS is used will be described below. Since the general-purpose OS as described above normally operates as a multitask, the description including the multitask will be described.

【0005】マルチタスクOSでは、図5(a)に示す
ように、OS501上で例えば複数のプロセス1、2
(502、503)が実行される。又、上記プロセス1
(502)の管理下にて、さらに例えばスレッド1(5
04)、スレッド2(505)、上記プロセス2(50
3)の管理下では例えばスレッド4(506)という様
に、複数のスレッドが実行される。尚、例えば上記プロ
セス1(502)は、実行時に上記OS501よりメモ
リ空間やI/O(Input/Output)空間等のリソース
(資源)が割り当てられ、当該リソースは上記スレッド
1(504)及びスレッド2(505)にて共有され
る。
[0005] In the multitask OS, as shown in FIG.
(502, 503) are executed. The above process 1
Under the management of (502), for example, thread 1 (5
04), thread 2 (505), and process 2 (50
Under the management of 3), a plurality of threads are executed, for example, a thread 4 (506). For example, when the process 1 (502) is executed, resources such as a memory space and an I / O (Input / Output) space are allocated by the OS 501 at the time of execution, and the resources are allocated to the thread 1 (504) and the thread 2 (thread 2). Shared at (505).

【0006】ここで、上記プロセスとは、プログラムの
一実行単位を指す。即ち、上記リソース等を独立して所
有すると共に、切り替え時(マルチタスクOSによるプ
ロセスの切り替え時)においてCPUレジスタの内容を
すべて保存し、次に制御を切り替えるプロセスのための
レジスタ値をロードすることにより各実行単位の独立を
保障している単位である。又、上記スレッドもプログラ
ムの一実行単位であり、同一プロセス内でのマルチタス
ク処理を可能にしたものである。尚、上記プロセスやス
レッドという単位は、OSにより扱いが異なるが本質は
プログラムの一実行単位であり、関数の集合ということ
ができる。このため以降、適宜プロセスとスレッドを使
い分けて説明するが、双方ともタスクであり、プログラ
ムの一実行単位である。さらに、アプリケーションも広
義のタスクである。
Here, the above process refers to one execution unit of a program. That is, while independently possessing the resources and the like, at the time of switching (when switching the process by the multitask OS), all the contents of the CPU registers are saved, and then the register values for the process of switching the control are loaded. Is a unit that guarantees the independence of each execution unit. The thread is also one execution unit of the program, and enables multitask processing in the same process. The unit of the process or the thread is handled differently depending on the OS, but is essentially an execution unit of the program, and can be called a set of functions. For this reason, the process and the thread will be described separately as appropriate, but both are tasks and one execution unit of the program. In addition, applications are a broad task.

【0007】次に、上述したタスク(プロセス及びスレ
ッド)の構造について簡単に説明する。上記タスクは一
般的に、関数の集合により構成されており、例えば所定
の関数が別の関数に引数を渡し、該別の関数が当該引数
を用いて計算した戻り値を再度上記所定の関数に渡し、
上記所定の関数は該戻り値を用いて続く処理を実行す
る、といった手順で実行される。例えば図6を用いて説
明すると、タスク(スレッド1)601は、ユーザーが
開発したアプリケーション関数a(602)をメインル
ーチン(メイン関数)とし、当該メインルーチンの処理
の過程で、アプリケーション関数b(603)を呼び出
している。当該アプリケーション関数b(603)は、
さらに必要に応じてシステムライブラリ関数として提供
されるシステムライブラリ関数a(604)を読み出
し、さらに当該システムライブラリ関数a(604)は
アプリケーション関数c(605)を呼び出している。
上記処理の過程で呼び出された関数は、それぞれ呼び出
し時に与えられた引数を用いて算出した戻り値を返し、
それに応じて呼び出した関数は続く処理を実行する。
Next, the structure of the above-described task (process and thread) will be briefly described. The task is generally constituted by a set of functions.For example, a predetermined function passes an argument to another function, and the another function returns a return value calculated using the argument to the predetermined function again. Hand over,
The predetermined function is executed in such a procedure that the subsequent processing is executed using the return value. For example, referring to FIG. 6, a task (thread 1) 601 sets an application function a (602) developed by a user as a main routine (main function), and executes an application function b (603) in the course of processing of the main routine. ) Is calling. The application function b (603) is
Further, a system library function a (604) provided as a system library function is read as needed, and the system library function a (604) calls an application function c (605).
Each of the functions called in the above process returns a return value calculated using the argument given at the time of the call,
The called function executes the following processing accordingly.

【0008】以上のように、タスクを構成する複数の関
数がそれぞれ処理されることにより、所定のタスク(メ
インルーチン)の処理が完了する。ここに、上記アプリ
ケーション関数とは、例えば当該タスクをプログラミン
グした者が必要に応じて作成した関数であり、システム
ライブラリ関数とは、予め提供されている基本的な関数
等である。尚、上記アプリケーション関数及びシステム
ライブラリ関数共、例えば数十から数千のステップ(命
令)にて構成されている。
As described above, the processing of a predetermined task (main routine) is completed by processing a plurality of functions constituting the task. Here, the application function is, for example, a function created by a person who has programmed the task as needed, and the system library function is a basic function or the like provided in advance. Note that both the application function and the system library function are composed of, for example, tens to thousands of steps (instructions).

【0009】さて、上述した各スレッド1(504)及
びスレッド2(505)は、図5(b)に示すように、
上記OS501にて順次割り当てられた処理時間におい
て実行される。即ち、OS501は、タイマー処理にて
スレッド1とスレッド2(ここではスレッド3の処理は
考慮しないものとする)それぞれに処理時間507〜5
10を与える。ここでは、例えば、まず処理時間507
がOS501により割り当てられた時にスレッド1が実
行され、続いて割り当てられる処理時間508には、ス
レッド2が実行される。このように、OSが処理時間を
複数のスレッド(タスク)に順次与えることにより、複
数の処理を並列に実行することが可能となり、即ちマル
チタスクOSを実現可能となる。尚、上記スレッド(タ
スク)の切り替えをディスパッチという。
Now, each of the above-mentioned threads 1 (504) and 2 (505) is, as shown in FIG.
The processing is executed in the processing time sequentially allocated by the OS 501. That is, the OS 501 assigns the processing times 507 to 5 to the thread 1 and the thread 2 (here, the processing of the thread 3 is not considered) in the timer processing.
Give 10 Here, for example, first, the processing time 507
Is allocated by the OS 501, the thread 1 is executed, and during the processing time 508 which is subsequently allocated, the thread 2 is executed. In this way, the OS sequentially gives processing time to a plurality of threads (tasks), so that a plurality of processes can be executed in parallel, that is, a multitask OS can be realized. The switching of the thread (task) is called dispatch.

【0010】以上に説明した汎用OSを用い、さらにネ
ットワークの発達(多様化)や多機能なインタプリタ言
語の普及等により、様々な製品への新たな機能追加等を
柔軟に行うことが可能になっている。
The use of the general-purpose OS described above, and the development (diversification) of networks and the spread of multifunctional interpreter languages, make it possible to flexibly add new functions to various products. ing.

【0011】尚、新たな機能追加等によるシステムの変
更後には、当該新機能を組み合わせた様々な使用形態が
考えられる。このような状態では、通常、リソースが大
量に消費されてしまい、後に実行されるプログラムにリ
ソースを割り当てることができず、このため新たなプロ
グラムを起動できなくなる。このような状態を回避する
ために、従来では、上記タスク(プロセスやスレッド)
は、例えば他のタスクの処理を終了させる命令、即ち強
制終了命令を発行することが可能である。当該強制終了
命令により、異なるタスクのリソースを開放し、新たな
プログラムを起動することが可能となる。上記リソース
の不足は、ある程度機能が限定されている製品(例えば
上記STB、携帯電話等)においては、リソースを十分
に備えていないことが多く、汎用のパーソナルコンピュ
ータとは異なり起こりやすいといえる。
After the system is changed by adding a new function or the like, various usage forms combining the new function are conceivable. In such a state, resources are generally consumed in large amounts, and resources cannot be allocated to a program to be executed later, so that a new program cannot be started. Conventionally, in order to avoid such a state, the above tasks (processes and threads)
Can issue, for example, an instruction to end the processing of another task, that is, a forced termination instruction. With the forced termination instruction, it is possible to release resources of a different task and start a new program. Insufficient resources often occur in products with limited functions (for example, STBs and mobile phones) that do not have sufficient resources, unlike general-purpose personal computers.

【0012】但し、むやみに他のタスクの処理を強制終
了可能とすると、当該他のタスクがデータの書き込み等
の重要な処理を行いっている最中に終了してしまうとい
ったことが考えられる。このため、特開平10−693
92号公報に記載の技術では、所定の処理区間に対して
「強制終了禁止区間(アボート禁止区間)」を設定可能
とすることにより当該処理区間における強制終了の禁止
を可能としている。
However, if the processing of another task can be forcibly terminated unnecessarily, it is conceivable that the task is terminated while important processing such as data writing is being performed. For this reason, Japanese Unexamined Patent Application Publication No. 10-693
In the technique described in Japanese Patent Application Publication No. 92-92, a forced termination prohibition section (abort prohibition section) can be set for a predetermined processing section to prohibit forced termination in the processing section.

【0013】以下図7を用いて、タスクの処理を終了さ
せる命令の発行の仕組み及び、強制終了禁止区間の設定
について説明する。
Referring to FIG. 7, a description will be given of a mechanism for issuing an instruction for terminating the processing of a task and setting of a forced termination prohibition section.

【0014】図7において、スレッド1(601)、及
びスレッド2(701)がOS上にて独立したタスクと
して起動しているものとする。尚、上記スレッド1(6
01)及びスレッド2(701)は、上述したマルチタ
スク処理にて、随時切り替えられながら処理を実行して
おり、例えばスレッド1(601)に割り当てられた処
理時間が終了すると、次にスレッド2(701)が動作
する。
In FIG. 7, it is assumed that a thread 1 (601) and a thread 2 (701) are activated as independent tasks on the OS. The thread 1 (6
01) and the thread 2 (701) are executing the processing while being switched at any time in the above-described multitask processing. For example, when the processing time assigned to the thread 1 (601) ends, the thread 2 (701) 701) operates.

【0015】ここで、スレッド1(601)におけるシ
ステムライブラリ関数a(604)の実行時702に処
理が上記スレッド2(701)に切り替えられた場合、
スレッド2(701)は例えばアプリケーション関数d
(703)から処理を実行する。
Here, when the processing is switched to the thread 2 (701) at the time of execution 702 of the system library function a (604) in the thread 1 (601),
The thread 2 (701) is, for example, an application function d
The processing is executed from (703).

【0016】続いてスレッド2(701)におけるアプ
リケーション関数e(704)の処理の所定のポイント
705にて、スレッド2(701)が、スレッド1(6
01)に強制終了命令を発行し、アプリケーション関数
d(703)の所定のポイント706にてスレッド1
(601)に処理が切り替わったと仮定する。この場合
には、例えばスレッド1(601)におけるシステムラ
イブラリ関数a(604)実行時に強制終了命令を受け
付けることになり、当該システムライブラリ関数a(6
04)実行中(上記実行時702直後)にスレッド1
(601)が例えばOSにより強制終了されることにな
る。尚、上記各関数(602〜605)による処理が強
制終了されると、全体の処理に大きな影響を与える場合
等には以下のような強制終了禁止区間が設けられる。
Subsequently, at a predetermined point 705 of the processing of the application function e (704) in the thread 2 (701), the thread 2 (701)
01), a thread 1 is issued at a predetermined point 706 of the application function d (703).
It is assumed that the processing has been switched to (601). In this case, for example, when executing the system library function a (604) in the thread 1 (601), a forced termination instruction is received, and the system library function a (6) is received.
04) Thread 1 during execution (immediately after execution 702)
(601) is forcibly terminated by the OS, for example. Note that if the processing by each of the functions (602 to 605) is forcibly terminated, the entire processing is significantly affected, and the following forced termination prohibition sections are provided.

【0017】即ち、スレッド1(601)におけるアプ
リケーション関数a(602)の所定のポイント707
にて、当該アプリケーション関数a(602)は強制終
了禁止命令708を発行する。当該強制終了禁止命令
は、例えばOSにおける所定の処理にて認識され、記憶
される。次に、上記同様、所定のポイント705にてス
レッド2(701)より強制終了命令が発行され、処理
がスレッド1(601)に切り替えられると、例えばO
Sが、上記強制終了禁止命令が発行されているか否かを
判定し、ここでは強制終了禁止命令が発行されているた
め強制終了せずに通常の処理を継続する。
That is, a predetermined point 707 of the application function a (602) in the thread 1 (601)
, The application function a (602) issues a forced termination prohibition instruction 708. The forced termination prohibition command is recognized and stored in a predetermined process in the OS, for example. Next, as described above, when a forced termination instruction is issued from the thread 2 (701) at a predetermined point 705 and the process is switched to the thread 1 (601), for example,
S determines whether or not the above-mentioned forced termination prohibition command has been issued. Here, since the forced termination prohibition command has been issued, normal processing is continued without forcibly terminating.

【0018】続いてアプリケーション関数a(602)
が所定のポイント709にて、強制終了許可命令710
を発行すると、当該強制終了許可命令は例えばOSにお
ける所定の処理にて認識され、強制終了禁止命令708
発行時から強制終了許可命令710の発行時までの区
間、即ち、強制終了禁止区間が終了する。
Subsequently, an application function a (602)
At a predetermined point 709, a forced termination permission instruction 710
Is issued, the forced termination permission instruction is recognized by, for example, predetermined processing in the OS, and the forced termination prohibition instruction 708 is issued.
The section from the time of issuance to the time of issuance of the forced termination permission instruction 710, that is, the forced termination prohibition section ends.

【0019】上記強制終了禁止区間が終了すると、例え
ばOSは、上記所定のポイント705にてスレッド2
(701)により発行された強制終了命令を反映し、ア
プリケーション関数a(602)における所定のポイン
ト709にてスレッド1(601)の強制終了を行う。
When the forced termination prohibition section ends, for example, the OS starts the thread 2 at the predetermined point 705.
The thread 1 (601) is forcibly terminated at a predetermined point 709 in the application function a (602), reflecting the forced termination instruction issued by (701).

【0020】以上により、タスク間(スレッド間)にて
強制終了命令を発行することで、例えば他のタスクが使
用しているリソースを解放させることが可能となる。
又、システムに影響を与えるような重要な処理(例えば
共有リソースに対する操作)を行っている場合には、他
のタスクによる強制終了を禁止することで、当該重要な
処理の正常終了を可能としている。
As described above, by issuing a forced termination instruction between tasks (between threads), for example, it is possible to release resources used by other tasks.
In addition, when an important process that affects the system (for example, an operation on a shared resource) is being performed, forced termination by another task is prohibited, so that the important process can be normally terminated. .

【0021】[0021]

【発明が解決しようとする課題】しかしながら、上記従
来技術を用いた場合には以下のような問題が生じる。即
ち、上述したように、ネットワークを用いて例えば新機
能を備えたプログラム(ソフトウェア)を汎用OSにダ
ウンロードして実行した場合には、組込OSと異なり、
各機器により異なる複数のプログラムが実行されている
等、ユーザー環境が多岐に渡るため正常動作しないこと
が考えられる。このような場合には、上記プログラムを
強制終了させる必要があるが、上述した強制終了禁止区
間が設定されてしまうと、強制終了することができない
といった問題が起こる。
However, when the above-mentioned prior art is used, the following problems occur. That is, as described above, when a program (software) having a new function is downloaded to a general-purpose OS using a network and executed, for example, unlike the embedded OS,
It is conceivable that the user environment does not operate properly due to a wide variety of user environments, such as execution of a plurality of different programs by each device. In such a case, it is necessary to forcibly terminate the program. However, if the forcible termination prohibition section is set, a problem occurs that the program cannot be forcibly terminated.

【0022】又、特にインターネットを介して第三者が
作成したプログラムをダウンロードする場合には、当該
プログラムは必ずしも善意の基に作成されたものとは限
らないため、当該プログラムを実行するには危険が伴
う。
In particular, when a program created by a third party is downloaded via the Internet, the program is not always created based on good intentions. Is accompanied.

【0023】即ち、例えば図7に示したスレッド1(6
01)が悪意を持ったプログラムであった場合、具体的
には、例えばアプリケーション関数b(603)内にて
無限ループし、かつ同様のアプリケーション関数b(6
03)を持ったスレッドを生成するプログラムであった
場合が考えられる。このような場合には、上記悪意を持
ったプログラムを実行してしまうと、スレッドが増殖
し、さらに当該スレッドに対する強制終了命令も、上述
した強制終了禁止区間の設定により無効になってしま
う。こうなると、上記プログラムを実行した端末(製
品)は、OSの制御が効かなくなり、最終的には電源の
オフ等が必要になってしまう。
That is, for example, the thread 1 (6) shown in FIG.
01) is a malicious program. Specifically, for example, an infinite loop is performed within the application function b (603), and a similar application function b (6) is executed.
03) can be considered as a program that generates a thread. In such a case, if the malicious program is executed, the threads multiply, and the forced termination instruction for the thread is invalidated by the setting of the forced termination prohibited section described above. In this case, the terminal (product) that has executed the above-mentioned program loses control of the OS, and eventually needs to turn off the power.

【0024】このような現象は、汎用OSを用いて特定
の機能を提供する製品に限らず、一般的な汎用OSであ
るWindows(R)やUNIX(R)でも考えられ
ることである。
Such a phenomenon is conceivable not only in a product that provides a specific function using a general-purpose OS but also in a general-purpose OS such as Windows (R) or UNIX (R).

【0025】そこで本発明は、上記従来の事情に基づい
て提案されたものであって、システムに障害をもたらす
可能性のあるタスク、例えば共有リソースの操作中に
は、当該タスクを強制終了させないタスク管理方法を提
供することを目的とする。
Therefore, the present invention has been proposed based on the above-mentioned conventional circumstances, and is a task that may cause a failure in the system, for example, a task that does not forcibly terminate the task while operating a shared resource. The purpose is to provide a management method.

【0026】[0026]

【課題を解決するための手段】本発明は、上記目的を達
成するために以下の手段を採用している。すなわち、本
発明は、一実行単位として管理されるタスクを、プログ
ラム実行手段にて複数並列に実行するオペレーティング
システムを備えたデジタル機器を前提としている。ここ
で、プログラム実行手段は、実行されている関数の属性
に関する情報をタスク属性認識手段に送信すると共に、
当該関数の属するタスクに対する強制終了の実行をタス
ク実行判断手段に問い合わせる。又、タスク実行判断手
段は、上記強制終了の実行の問い合わせに対し、少なく
とも実行されている関数の属性に基づいて上記強制終了
の実行を判定する。さらに、タスク属性認識手段は、プ
ログラム実行手段から送信された上記関数の属性に関す
る情報に基づいて、実行されている関数の属性をタスク
属性情報記憶手段に格納すると共に、上記タスク実行判
断手段からの実行されている関数の属性の問い合わせに
対して、上記タスク属性情報記憶手段に格納した上記関
数の属性を返信する。
The present invention employs the following means to achieve the above object. That is, the present invention is premised on a digital device having an operating system that executes a plurality of tasks managed as one execution unit in parallel by program execution means. Here, the program execution means transmits information on the attribute of the function being executed to the task attribute recognition means,
The task execution determination means is inquired about the forced termination of the task to which the function belongs. Further, the task execution determining means determines the execution of the forced termination based on at least the attribute of the function being executed in response to the inquiry about the execution of the forced termination. Further, the task attribute recognizing means stores the attribute of the function being executed in the task attribute information storing means based on the information on the attribute of the function transmitted from the program executing means, and outputs the information from the task execution determining means. In response to the inquiry about the attribute of the function being executed, the attribute of the function stored in the task attribute information storage unit is returned.

【0027】以上の構成では、関数の呼び出し時、及び
処理が戻った時に、タスクがタスク属性認識手段に以後
実行される関数の種類を通知することで、タスク属性情
報記憶手段には、現在実行されているタスクの種類が常
時格納され、このため、タスク属性情報記憶手段に格納
されている、現在のタスクにて実行されている関数の属
性情報を参照・判定可能となる。従って、強制終了禁止
区間であっても、所定の関数を実行している場合には、
強制終了可能とし、一方でシステムに障害をもたらす可
能性のある別の関数の実行時には、当該タスクを強制終
了させないといった強制終了についての柔軟な制御が可
能である。
In the above configuration, the task notifies the task attribute recognizing unit of the type of the function to be executed subsequently when the function is called and when the process returns, so that the task attribute information storing unit stores the currently executed function. The type of the task being performed is always stored, so that the attribute information of the function executed in the current task stored in the task attribute information storage unit can be referred to and determined. Therefore, even in the forced termination prohibition section, when the predetermined function is executed,
It is possible to flexibly control the forced termination such that the task can be forcibly terminated, while the task is not forcibly terminated when another function that may cause a failure in the system is executed.

【0028】又、上記関数の属性に関する情報を実行さ
れている関数の名称とし、タスク属性認識手段が、上記
名称に基づいて上記実行されている関数の属性を判定す
る構成もある。
There is also a configuration in which the information on the attribute of the function is set as the name of the executed function, and the task attribute recognizing means determines the attribute of the executed function based on the name.

【0029】この構成では、言語によっては、当該言語
の仕様により関数の属性を判断し、直接上記タスク属性
認識手段に通知することが困難な場合があるが、このよ
うな場合でも実行している関数の属性を確認することが
できる。
In this configuration, depending on the language, it may be difficult to determine the attribute of the function based on the specification of the language and to directly notify the task attribute recognizing means. You can check the attributes of the function.

【0030】尚、上記一実行単位であるタスクは、プロ
セスである場合や、スレッドである場合がある。
The task, which is one execution unit, may be a process or a thread.

【0031】さらに、タスク属性情報記憶手段が、タス
クを構成する関数の属性に代えてタスク自体の属性を格
納することにより、タスクの属性に基づいた強制終了の
制御を可能とすることができる。
Further, the task attribute information storage means stores the attribute of the task itself in place of the attribute of the function constituting the task, thereby enabling control of forced termination based on the attribute of the task.

【0032】尚、プログラム及びプログラム記録媒体
は、コンピュータにて上記各手段の機能を実現する構成
である。
Incidentally, the program and the program recording medium are configured to realize the functions of the above-mentioned respective means on a computer.

【0033】[0033]

【発明の実施の形態】以下、添付図面を参照して、本発
明の実施の形態につき説明し、本発明の理解に供する。
尚、以下の実施の形態は、本発明を具体化した一例であ
って、本発明の技術的範囲を限定する性格のものではな
い。
Embodiments of the present invention will be described below with reference to the accompanying drawings to provide an understanding of the present invention.
It should be noted that the following embodiments are examples embodying the present invention, and do not limit the technical scope of the present invention.

【0034】〔実施の形態1〕本発明の実施の形態1に
おけるデジタル機器100について図1、図2、図4を
参照し説明する。ここに、上記デジタル機器100と
は、例えばSTB、携帯電話、家電、パーソナルコンピ
ュータ等であって、外部からのアプリケーション(プロ
グラム)を付加(追加)等することにより、所定機能の
追加・変更・修正が可能である機器を示す。
[Embodiment 1] A digital apparatus 100 according to Embodiment 1 of the present invention will be described with reference to FIGS. Here, the digital device 100 is, for example, an STB, a mobile phone, a home appliance, a personal computer, or the like, and adds (changes) or modifies a predetermined function by adding (adding) an external application (program). Indicates a device that is capable of

【0035】まず、上記デジタル機器100は、例えば
インターネット等のネットワーク101を介して所定の
アプリケーション(プログラム:102)を取得し、記
憶手段103に記憶する。ここに、当該アプリケーショ
ン102は、例えば上記デジタル機器100に新たな機
能を追加するためのインタプリタ言語にて記述されたプ
ログラムであり、実行時には、図2に示すタスク201
を生成して処理を実行するものとする。尚、上記アプリ
ケーション102の取得は、必ずしもネットワーク10
1を介する必要は無く、メモリーカード等の記憶媒体を
介して得るものであってもよい。
First, the digital device 100 acquires a predetermined application (program: 102) via a network 101 such as the Internet, for example, and stores it in the storage unit 103. Here, the application 102 is, for example, a program described in an interpreter language for adding a new function to the digital device 100. When the application 102 is executed, the task 201 shown in FIG.
Is generated and the process is executed. Note that the acquisition of the application 102 is not necessarily performed by the network 10.
1, and may be obtained via a storage medium such as a memory card.

【0036】次に、上記アプリケーション102は、実
行時には例えばローダー等により、RAM(Random Acc
ess Memory)等の一時記憶手段105に読み出される
(図4:S401)。尚、上記アプリケーション102
は、図2のタスク201に示すように、アプリケーショ
ン関数a(203)、アプリケーション関数b(20
4)、アプリケーション関数c(206)より構成され
る。さらに、上記アプリケーション102は、実行時に
システムライブラリ関数である、システムライブラリ関
数a(205)を呼び出すため、例えば上記ローダーに
て読み出される際に、同時に上記記憶手段103に格納
されているシステムライブラリ104から、システムラ
イブラリ関数107が上記一時記憶手段105に読み出
される。
Next, when the application 102 is executed, a RAM (Random Acc.
(Sess Memory) or the like (FIG. 4: S401). The application 102
As shown in task 201 in FIG. 2, application function a (203) and application function b (20)
4), composed of an application function c (206). Further, since the application 102 calls the system library function a (205), which is a system library function at the time of execution, for example, when read by the loader, the application 102 simultaneously reads from the system library 104 stored in the storage unit 103. , The system library function 107 is read out to the temporary storage means 105.

【0037】続いて、上記アプリケーション102のメ
イン関数であるアプリケーション関数a(203)がプ
ログラム実行手段108に読み出されると、OS130
は、アプリケーション関数a(203)に対応するタス
ク201を生成すると共に、当該タスクにリソースを割
り当てる(図4:S402)。以後上記アプリケーショ
ン102は、タスク201として管理される。
Subsequently, when the application function a (203), which is the main function of the application 102, is read by the program execution means 108, the OS 130
Generates the task 201 corresponding to the application function a (203) and allocates resources to the task (FIG. 4: S402). Thereafter, the application 102 is managed as a task 201.

【0038】さらに、上記タスクの生成時に上記OS1
30は、後述するタスク状態記憶手段110、強制終了
情報記憶手段114、及びタスク属性情報記憶手段11
7に当該タスク201に対応するタスクフラグ118を
作成し、作成したフラグエリアに例えば“0”を格納す
る(図4:S403)。又、例えばプログラム実行手段
は、タスク属性認識手段116に対して、現在タスク2
01にて実行されている関数がアプリケーション関数で
ある旨を通知する(図4:S404)。当該タスク20
1にて実行されている関数がアプリケーション関数であ
る旨の通知を受信すると、上記タスク属性認識手段11
6は、タスク属性情報記憶手段117のタスク201に
対応するタスクフラグ118に、例えばアプリケーショ
ン関数が実行されていることを示す“1”を格納する。
ここで、例えばOSより提供されるアプリケーションに
よりタスクが作成された場合、通常、メイン関数はシス
テムライブラリ関数であるため、上記タスク属性情報記
憶手段117のタスク201に対応するタスクフラグ1
18には“0”が格納される。
Further, when the task is generated, the OS 1
Reference numeral 30 denotes a task state storage unit 110, a forced termination information storage unit 114, and a task attribute information storage unit 11, which will be described later.
7, a task flag 118 corresponding to the task 201 is created, and for example, “0” is stored in the created flag area (FIG. 4: S403). Further, for example, the program executing means sends the current task 2 to the task attribute recognizing means 116.
01 is notified that the function being executed is an application function (FIG. 4: S404). Task 20
1 receives the notification that the function being executed is an application function,
6 stores, for example, “1” indicating that the application function is being executed in the task flag 118 corresponding to the task 201 in the task attribute information storage unit 117.
Here, for example, when a task is created by an application provided by the OS, since the main function is usually a system library function, the task flag 1 corresponding to the task 201 of the task attribute information storage unit 117
"0" is stored in "18".

【0039】以後、上記タスク201のアプリケーショ
ン関数a(203)の先頭のコマンド(命令)より順次
実行される。又、必要に応じてアプリケーション関数b
(204)等の他の関数がプログラム実行手段108に
読み出される。尚、上記コマンドが例えば1つ実行され
るに際して、当該タスク(ここではタスク201)に強
制終了命令が送信されているか否かをタスク実行判断手
段111に問い合わせるが詳細は後述する。
Thereafter, the task 201 is sequentially executed from the first command (instruction) of the application function a (203). Also, if necessary, the application function b
Other functions such as (204) are read by the program execution means 108. When one of the above commands is executed, for example, an inquiry is made to the task execution determining unit 111 as to whether or not a forced termination instruction has been transmitted to the task (in this case, the task 201), which will be described in detail later.

【0040】以上が、新規アプリケーションが実行され
た際に行われる処理(図4における初期処理400)で
ある。尚、理解に供するために、プログラム実行手段1
08では、アプリケーション関数d(208)及びアプ
リケーション関数e(209)により構成されるタスク
202も実行されるものとする。
The processing performed when the new application is executed (initial processing 400 in FIG. 4) has been described above. Note that, for the sake of understanding, the program execution means 1
At 08, the task 202 including the application function d (208) and the application function e (209) is also executed.

【0041】次に、タスク内において実行されている関
数が、強制終了禁止命令を発行した際の、タスク状態設
定手段109の処理の詳細について説明する。
Next, the details of the processing of the task state setting means 109 when the function being executed in the task issues the forced termination prohibition instruction will be described.

【0042】例えば、アプリケーション関数a(20
3)の処理中の所定のポイント213にて、タスク20
1からOS130に対して強制終了禁止命令214が送
信されると、当該強制終了禁止命令214はタスク状態
設定手段109にて受信される。上記強制終了禁止命令
214を受信したタスク状態設定手段109は、タスク
状態記憶手段110内の、タスク201に対応するフラ
グエリア121に例えば“1”を格納する。当該フラグ
エリア121に格納される“1”は、タスク201が現
在強制終了禁止区間にある(強制終了禁止である)とい
うことを意味するものである。
For example, the application function a (20
At a predetermined point 213 during the processing of 3), the task 20
When the forced termination prohibition command 214 is transmitted from 1 to the OS 130, the task status setting unit 109 receives the forced termination prohibition command 214. The task status setting unit 109 that has received the forced termination prohibition command 214 stores, for example, “1” in the flag area 121 corresponding to the task 201 in the task status storage unit 110. “1” stored in the flag area 121 means that the task 201 is currently in the forced termination prohibited section (forced termination is prohibited).

【0043】又、例えばアプリケーション関数a(20
3)の処理中の所定のポイント215にて、タスク20
1からOS130に対して強制終了許可命令216が送
信されると、当該強制終了許可命令216は上記タスク
状態設定手段109にて受信される。上記強制終了許可
命令216を受信したタスク状態設定手段109は、タ
スク状態記憶手段110内の、タスク201に対応する
フラグエリア121に例えば“0”を格納する。当該フ
ラグエリア121に格納される“0”は、現在実行され
ているタスク201が、現在強制終了禁止区間に無い
(強制終了禁止ではない)ということを意味するもので
ある。
Also, for example, the application function a (20
At a predetermined point 215 during the processing of 3), the task 20
When the forced termination permission command 216 is transmitted from 1 to the OS 130, the task status setting unit 109 receives the forced termination permission command 216. The task state setting unit 109 that has received the forced termination permission instruction 216 stores, for example, “0” in the flag area 121 corresponding to the task 201 in the task state storage unit 110. “0” stored in the flag area 121 means that the currently executed task 201 is not currently in the forced termination prohibition section (not forced termination prohibition).

【0044】以上のように、タスク状態記憶手段110
には、各タスクの状態が強制終了禁止(フラグ“1”)
であるか、強制終了可能(フラグ“0”)であるかの情
報が常時格納される。以後、例えばタスク実行判断手段
111よりタスク状態記憶手段110内の各タスクフラ
グの内容について問い合わせがあると、タスク状態設定
手段109は当該タスクフラグに格納されている値を読
み出し、上記タスク実行判断手段111に返信する。
As described above, the task state storage means 110
Indicates that the status of each task is forcibly terminated (flag "1")
Or whether the forced termination is possible (flag “0”) is always stored. Thereafter, for example, when the task execution determining unit 111 inquires about the contents of each task flag in the task state storage unit 110, the task state setting unit 109 reads out the value stored in the task flag and executes the task execution determining unit. Reply to 111.

【0045】次に、タスク内において実行されている関
数が変わる際の、タスク属性認識手段116の処理の詳
細について説明する。
Next, the details of the processing of the task attribute recognizing means 116 when the function being executed in the task changes will be described.

【0046】アプリケーション関数a(203)が例え
ばアプリケーション関数b(204)を呼び出し、当該
タスク201における処理がアプリケーション関数b
(204)に切り替わった場合、上記タスク201はタ
スク属性認識手段116に対して、現在タスク201に
て実行されている関数が、アプリケーション関数である
旨を通知する。ここで、上記タスク属性認識手段116
は、タスク201に対応するフラグエリア119に
“1”を格納する。
The application function a (203) calls, for example, the application function b (204), and the processing in the task 201 is the application function b (204).
When the mode is switched to (204), the task 201 notifies the task attribute recognizing means 116 that the function currently executed in the task 201 is an application function. Here, the task attribute recognition means 116
Stores “1” in the flag area 119 corresponding to the task 201.

【0047】又、アプリケーション関数b(204)が
システムライブラリ関数a(205)を呼び出した際に
も、タスク201は上記タスク属性認識手段116に通
知を行うが、この場合、タスク201にて実行される関
数はシステムライブラリ関数であるため、上記フラグエ
リア119には“0”を格納する。尚、上記同様、シス
テムライブラリ関数a(205)がアプリケーション関
数c(206)を呼び出した際には、上記フラグエリア
119には“1”が格納される。
When the application function b (204) calls the system library function a (205), the task 201 notifies the task attribute recognizing means 116. In this case, the task 201 executes the task. Since this function is a system library function, "0" is stored in the flag area 119. As described above, when the system library function a (205) calls the application function c (206), "1" is stored in the flag area 119.

【0048】尚、アプリケーション関数c(206)の
処理が終了し、システムライブラリ関数a(205)に
処理が戻った場合にも、上記呼び出した際と同様に、以
後実行される関数(処理が戻った後の関数:ここでは
“0”)に対応するフラグ“0”又は“1”がフラグエ
リア119に格納される。
When the processing of the application function c (206) is completed and the processing returns to the system library function a (205), similarly to the above-mentioned call, the function to be executed thereafter (processing returns). After this function: the flag “0” or “1” corresponding to “0”) is stored in the flag area 119.

【0049】以上のように、関数の呼び出し時、及び処
理が戻った時に、タスクがタスク属性認識手段に以後実
行される関数の種類を通知することで、タスク属性情報
記憶手段には、現在実行されているタスクの種類が常時
格納されることになる。以後、例えばタスク実行判断手
段111よりタスク属性情報記憶手段117内の各タス
クフラグの内容について問い合わせがあると、タスク属
性認識手段116は当該タスクフラグに格納されている
値を読み出し、上記タスク実行判断手段111に返信す
る。
As described above, when the function is called and when the process returns, the task notifies the task attribute recognizing means of the type of the function to be executed thereafter, so that the task attribute information storage means stores the currently executed function in the task attribute information storing means. The type of task being performed is always stored. Thereafter, for example, when the task execution determining unit 111 inquires about the contents of each task flag in the task attribute information storage unit 117, the task attribute recognizing unit 116 reads out the value stored in the task flag and performs the task execution determination. Reply to the means 111.

【0050】さて、現在上記プログラム実行手段108
においては、タスク201及びタスク202が実行され
ていることは上述したとおりである。ここで、タスク2
02は、上記タスク201に対して強制終了命令211
を発行するタスクであるものとする。上記強制終了命令
211が発行されるタイミング(ポイント)は、OS1
30によるタスクの切り替えのタイミングによって異な
るため、各タイミングでの詳細な処理は後述するものと
し、ここでは、上記強制終了命令211が発行された際
の、強制終了設定手段113の処理の詳細について説明
する。
Now, the program execution means 108
, The tasks 201 and 202 are being executed as described above. Here, task 2
02 is a forced termination instruction 211 for the task 201.
Is a task that issues The timing (point) at which the above-mentioned forced termination instruction 211 is issued depends on OS1
Since the processing differs depending on the task switching timing by the task 30, the detailed processing at each timing will be described later. Here, the details of the processing of the forced termination setting unit 113 when the forced termination instruction 211 is issued will be described. I do.

【0051】まず、所定のポイント(例えば図2に示し
たポイント207)にて、タスク201からタスク20
2に処理が切り替わったものと仮定する。当該タスクの
切り替えは、従来技術にて説明したものである。
First, at predetermined points (for example, point 207 shown in FIG. 2),
Assume that the processing has been switched to 2. The task switching is as described in the related art.

【0052】ここで、タスク202がタスク201に対
して強制終了命令211を発行した場合、具体的には、
例えばアプリケーション関数d(208)にて呼び出さ
れたアプリケーション関数e(209)が、所定のポイ
ント210にて発行した強制終了命令211は、強制終
了設定手段113にて受信される。当該強制終了設定手
段113は、上記強制終了命令211を受信すると、強
制終了情報記憶手段114の、タスク201に対応する
フラグエリア120に“1”を格納する。該フラグエリ
ア120に格納される“1”は、フラグエリア120に
対応するタスク201が強制終了命令を受けた状態であ
ることを意味する。以後、例えばタスク実行判断手段1
11より強制終了情報記憶手段114内の各タスクフラ
グの内容について問い合わせがあると、強制終了設定手
段113は当該タスクフラグに格納されている値を読み
出し、上記タスク実行判断手段111に返信する。
Here, when the task 202 issues the forced termination instruction 211 to the task 201, specifically,
For example, a forced termination command 211 issued at a predetermined point 210 by an application function e (209) called by an application function d (208) is received by a forced termination setting unit 113. Upon receiving the forced termination command 211, the forced termination setting unit 113 stores “1” in the flag area 120 of the forced termination information storage unit 114 corresponding to the task 201. “1” stored in the flag area 120 means that the task 201 corresponding to the flag area 120 has received a forced termination instruction. Hereinafter, for example, the task execution determining means 1
When there is an inquiry from 11 about the contents of each task flag in the forced termination information storage means 114, the forced termination setting means 113 reads the value stored in the task flag and returns it to the task execution determination means 111.

【0053】以上のように、例えば他のタスクからの強
制終了命令は、強制終了設定手段113を介して強制終
了情報記憶手段114内の、該当するタスク(終了命令
を受けるタスク)のフラグにて示される。
As described above, for example, a forced termination command from another task is sent to the forced termination information storage unit 114 via the forced termination setting unit 113 by the flag of the corresponding task (the task receiving the termination command). Is shown.

【0054】以上がタスク状態設定手段109、タスク
属性認識手段116、及び強制終了設定手段113にお
ける各処理である。
The above is the processing in the task state setting means 109, the task attribute recognition means 116, and the forced termination setting means 113.

【0055】次に、上述したタスク状態設定手段10
9、タスク属性認識手段116、及び強制終了設定手段
113の各処理を踏まえた上で、新規アプリケーション
が実行された後に行われる処理の詳細について説明す
る。
Next, the task state setting means 10 described above
9. Details of the processing performed after the execution of the new application based on the processing of the task attribute recognition means 116 and the forced termination setting means 113 will be described.

【0056】図4に示した初期処理400を完了した
後、プログラム実行手段108は、上記タスク201の
アプリケーション関数a(203)の先頭のコマンド
(命令)を順次実行する(図4:S405)。ここで、
上記プログラム実行手段108は、コマンドが例えば1
つ実行されるに際して、当該タスク(ここではタスク2
01)に強制終了命令が送信されているか否かを、例え
ばOS130の機能として提供されているタスク実行判
断手段111に問い合わせる。上記タスク実行判断手段
111は、上記問い合わせを受け取ると、上記強制終了
設定手段113に対して強制終了情報記憶手段114の
タスク201フラグ(120)の内容を問い合わせる。
尚、当該タスクフラグの内容は上述したとおりである。
After completing the initial processing 400 shown in FIG. 4, the program execution means 108 sequentially executes the first command (instruction) of the application function a (203) of the task 201 (FIG. 4: S405). here,
The program execution means 108 determines that the command is, for example, 1
When the task is executed, the task (here, task 2
In step 01), an inquiry is made to the task execution determination unit 111 provided as a function of the OS 130, for example, as to whether a forced termination instruction has been transmitted. Upon receiving the inquiry, the task execution determination unit 111 inquires the forced termination setting unit 113 about the contents of the task 201 flag (120) of the forced termination information storage unit 114.
The contents of the task flag are as described above.

【0057】ここで、タスク201フラグ(120)が
“1”ではないと上記強制終了設定手段113より返信
があった場合、上記タスク201は強制終了命令を発行
されていないことを示し、上記タスク実行判定手段11
1はプログラム実行手段108に対しその旨を通知する
ことで、当該プログラム実行手段108は次のコマンド
を実行する(図4:S406No→S405)。尚、次
のコマンドが例えばアプリケーション関数b(203)
を呼び出すコマンドである場合等には、タスク属性情報
記憶手段117のタスク201フラグ(119)の書き
換えを随時行うのは上述したとおりである。
Here, when the task 201 flag (120) is not "1", if the forcible termination setting means 113 returns, it indicates that the task 201 has not issued the forcible termination command. Execution determination means 11
1 notifies the program execution means 108 of the fact, and the program execution means 108 executes the next command (FIG. 4: S406 No → S405). The next command is, for example, an application function b (203).
In the case where the command is a command for calling, for example, the task 201 flag (119) in the task attribute information storage means 117 is rewritten as needed, as described above.

【0058】又、タスク201フラグ(120)が
“1”であると上記強制終了設定手段113より返信が
あった場合、上記タスク201は強制終了命令を発行さ
れていることを示し、さらに上記タスク実行判断手段1
11は、タスク状態設定手段109に対してタスク状態
記憶手段110のタスク201フラグ(121)の内容
を問い合わせる(図4:S406Yes→S407)。
If the task 201 flag (120) is set to "1" and the forcible termination setting means 113 returns, it indicates that the task 201 has been issued a forced termination command. Execution determination means 1
11 inquires of the task status setting means 109 about the contents of the task 201 flag (121) of the task status storage means 110 (FIG. 4: S406 Yes → S407).

【0059】ここで、タスク201フラグ(121)が
“1”ではないと上記タスク状態設定手段109より返
信があった場合、上記タスク201は強制終了禁止区間
でない、即ち、当該タスク201を終了してもシステム
全体に影響を及ぼさない(共有リソースに対して操作を
行っていない)ことを表している。従って、上記タスク
実行判定手段111はプログラム実行手段108に対し
その旨を通知することで、当該プログラム実行手段10
8は、実行している関数(例えばアプリケーション関数
c(206))及び当該関数を呼び出した関数(例えば
アプリケーション関数a(203)、アプリケーション
関数b(204)、システムライブラリ関数a(20
5))をすべて終了し、タスク201を終了する(図
4:S407No→S408→End)。
Here, if the task state setting means 109 sends a reply that the task 201 flag (121) is not "1", the task 201 is not in the forced termination prohibition section, that is, the task 201 is terminated. Does not affect the whole system (no operation is performed on the shared resources). Therefore, the task execution determination unit 111 notifies the program execution unit 108 of the fact, so that the program execution unit 10
Reference numeral 8 denotes a function being executed (for example, an application function c (206)) and a function that calls the function (for example, an application function a (203), an application function b (204), and a system library function a (20).
5)) are all ended, and the task 201 is ended (FIG. 4: S407 No → S408 → End).

【0060】又、タスク201フラグ(121)が
“1”であると上記タスク状態設定手段109より返信
があった場合、上記タスク201は強制終了禁止区間で
あり、即ち、当該タスク201を終了するとシステム全
体に影響を及ぼす可能性がある(共有リソースに対して
操作を行っている等)ことを表している。この場合には
さらに、上記タスク実行判断手段111を構成するカレ
ント関数実行判定手段112が、タスク属性認識手段1
16に対して、タスク属性情報記憶手段117のタスク
201フラグ(119)の内容を問い合わせる(図4:
S407Yes→S409)。
If the task state setting means 109 returns that the task 201 flag (121) is "1", the task 201 is in a forced termination prohibition section, that is, when the task 201 is terminated. This indicates that there is a possibility of affecting the entire system (for example, an operation is being performed on a shared resource). In this case, the current function execution determining means 112 constituting the task execution determining means 111 further includes
16 is inquired about the contents of the task 201 flag (119) of the task attribute information storage means 117 (FIG. 4:
S407 Yes → S409).

【0061】ここで、タスク201フラグ(119)が
“1”ではない(“0”である)と上記タスク属性認識
手段116より返信があった場合、上記タスク201は
現在システムライブラリ関数を実行していることを意味
し、即ち、当該システムライブラリ関数を終了するとシ
ステム全体に影響を及ぼす可能性がある(共有リソース
に対して操作を行っている等)ため、当該システムライ
ブラリ関数の実行を強制終了させること無く、次のコマ
ンドの処理に移る(図4:S409No→S405)。
Here, if the task attribute flag (119) is not "1" (it is "0") and the task attribute recognizing means 116 returns, the task 201 executes the current system library function. In other words, the termination of the system library function may affect the entire system (for example, an operation is performed on a shared resource), so the execution of the system library function is forcibly terminated. The process proceeds to the processing of the next command without causing the processing to be performed (FIG. 4: S409 No → S405).

【0062】又、タスク201フラグ(119)が
“1”であると上記タスク属性認識手段116より返信
があった場合、上記タスク201は現在アプリケーショ
ン関数を実行していることを意味し、当該アプリケーシ
ョン関数を終了してもシステム全体に影響を及ぼす可能
性が無い(低い)ため、当該実行している関数を終了す
る(図4:S409Yes→S410)。尚、当該実行
している関数がメイン関数であった場合には、強制終了
するとシステム全体に影響を及ぼす可能性があるためタ
スク201を終了する(図4:S410→S405→E
nd)。
When the task attribute flag (119) is "1", if the task attribute recognizing means 116 returns a response, it means that the task 201 is currently executing an application function. Since there is no possibility (low) of affecting the entire system even if the function is terminated, the function being executed is terminated (FIG. 4: S409 Yes → S410). If the function being executed is the main function, the task 201 is terminated because forcible termination may affect the entire system (FIG. 4: S410 → S405 → E).
nd).

【0063】以上のように、本実施の形態においては、
強制終了情報記憶手段に格納されている強制終了情報
(強制終了命令受信の有無)と、タスク状態記憶手段に
格納されているタスク状態(強制終了禁止区間であるか
否か)に加えて、タスク属性情報記憶手段に格納されて
いる、現在のタスクにて実行されている関数の属性情報
(アプリケーション関数か、システムライブラリ関数
か)を参照・判定している。従って、強制終了禁止区間
であっても、アプリケーション関数を実行している場合
には、強制終了(当該アプリケーション関数の中断)を
可能とし、一方でシステムに障害をもたらす可能性のあ
るシステムライブラリ関数の実行時には、当該タスクを
強制終了させないといった強制終了についての柔軟な制
御が可能である。
As described above, in the present embodiment,
In addition to the forced termination information stored in the forced termination information storage means (whether or not a forced termination command has been received) and the task status stored in the task status storage means (whether or not the section is a forced termination prohibited section), the task The attribute information (application function or system library function) of the function being executed in the current task stored in the attribute information storage means is referred to and determined. Therefore, even in the forced termination prohibition section, if the application function is being executed, the forced termination (interruption of the application function) can be performed, while the system library function that may cause a failure in the system can be executed. At the time of execution, it is possible to flexibly control forcible termination such as not forcibly terminating the task.

【0064】続いて、図3、図4を用いて、強制終了命
令を受けた各ポイントによって異なる処理の詳細を説明
する。尚、当該各処理は、上記図4のフローチャートを
場合分けして表すものであって、上記フローチャートと
同一内容である。
Next, referring to FIG. 3 and FIG. 4, the details of the processing that differs depending on each point receiving the forced termination command will be described. It should be noted that each of the processes represents the flowchart of FIG. 4 in a case-by-case manner and has the same contents as the flowchart.

【0065】まず、強制終了命令をアプリケーション関
数aの強制終了禁止区間設定前後に受けた場合(強制終
了命令301、309)、アプリケーション関数aを終
了し、即ちタスク201を終了する(図4:S407N
o→S408)。
First, when a forced termination command is received before or after the setting of the forced termination prohibited section of the application function a (forced termination commands 301 and 309), the application function a is terminated, that is, the task 201 is terminated (FIG. 4: S407N).
o → S408).

【0066】強制終了命令をアプリケーション関数a実
行時の強制終了禁止区間設定後に受けた場合(強制終了
命令302、308)、アプリケーション関数aを終了
し、即ちタスク201を終了する(図4:S407Ye
s→S409→S410→S405→End)。
When a forced termination command is received after setting the forced termination prohibition section when executing the application function a (forced termination commands 302 and 308), the application function a is terminated, that is, the task 201 is terminated (FIG. 4: S407Ye).
s → S409 → S410 → S405 → End).

【0067】強制終了命令をアプリケーション関数b実
行時に受けた場合(強制終了命令303、307)、ア
プリケーション関数bを終了し、アプリケーション関数
aに処理が戻るが、アプリケーション関数aも直ちに終
了することになり、即ちタスク201を終了する(図
4:S407Yes→S409Yes→S410→S4
05を2回繰り返してEndへ)。
When a forced termination instruction is received during execution of application function b (forced termination instructions 303 and 307), application function b is terminated and processing returns to application function a, but application function a is also terminated immediately. That is, the task 201 is ended (FIG. 4: S407 Yes → S409 Yes → S410 → S4).
05 twice to End).

【0068】強制終了命令をシステムライブラリ関数a
実行時に受けた場合(強制終了命令304、(強制終了
命令306を含む))、当該システムライブラリ関数a
の実行を終了せずに、アプリケーション関数cを呼び出
す。ここで、当該アプリケーション関数cは直ちに終了
するため(後述する強制終了命令305のケース)再度
ポイント320よりポイント321までシステムライブ
ラリ関数aを実行し、アプリケーション関数bに処理を
戻す。続く当該アプリケーション関数b及びアプリケー
ション関数aは直ちに終了し、即ちタスク201が終了
する(図4:S407Yes→S409No→S405
→S406Yes→S407Yes→S409Yes→
S410(アプリケーション関数c終了)→S405→
・・・→409No→S405・・・(システムライブ
ラリ関数a終了後)→S409Yes→S410(アプ
リケーション関数b終了)→S405→・・・→S41
0(アプリケーション関数a終了)→Endへ)。
The forced termination instruction is sent to the system library function a.
If it is received at the time of execution (the forced termination instruction 304 and (including the forced termination instruction 306)), the system library function a
Without terminating the execution of the application function c. Here, since the application function c is immediately terminated (the case of a forced termination instruction 305 described later), the system library function a is executed again from the point 320 to the point 321 and the process returns to the application function b. The subsequent application function b and application function a immediately end, that is, the task 201 ends (FIG. 4: S407 Yes → S409 No → S405).
→ S406Yes → S407Yes → S409Yes →
S410 (end of application function c) → S405 →
... → 409No → S405 (after the end of system library function a) → S409Yes → S410 (end of application function b) → S405 →... → S41
0 (end of application function a) → to End).

【0069】強制終了命令をアプリケーション関数c実
行時に受けた場合(強制終了命令305)、アプリケー
ション関数cを終了し、システムライブラリ関数aのポ
イント320に処理が戻り、ポイント321まで処理が
実行された後、アプリケーション関数b、アプリケーシ
ョン関数aに処理が戻ると共に直ちに処理が終了し、即
ちタスク201が終了する(図4:S407Yes→S
409Yes→S410(アプリケーション関数c終
了)→S405→・・・→S409No→S405→・
・・→409No→S405・・・(システムライブラ
リ関数a終了後)→S409Yes→S410(アプリ
ケーション関数b終了)→S405→・・・→S410
(アプリケーション関数a終了)→Endへ)。
When a forced termination command is received at the time of executing the application function c (forced termination command 305), the application function c is terminated, the process returns to the point 320 of the system library function a, and the process is performed up to the point 321. , The processing returns to the application function b and the application function a, and the processing ends immediately, that is, the task 201 ends (FIG. 4: S407 Yes → S)
409 Yes → S410 (end of application function c) → S405 → ... → S409No → S405 →
... → 409No → S405 (after termination of system library function a) → S409Yes → S410 (termination of application function b) → S405 →... → S410
(End of application function a) → End).

【0070】以上が本実施の形態1における処理であ
る。但し、本実施の形態1において、強制終了禁止区間
を設定可能である場合の処理について説明したが、必ず
しも強制終了禁止区間の判定は必要ではない。即ち、強
制終了禁止区間であるか否かの判定をすることなく、現
在実行されている関数の属性情報のみに基づいて強制終
了の可否を判定してもよい。この場合には、図4に示し
たS407及びS408の処理を除くのみでよい。
The above is the processing in the first embodiment. However, in the first embodiment, the processing in the case where the forced termination prohibition section can be set has been described, but the determination of the forced termination prohibition section is not necessarily required. That is, it is possible to determine whether or not the forced termination is possible based on only the attribute information of the currently executed function without determining whether or not the section is the forced termination prohibition section. In this case, it is only necessary to exclude the processing of S407 and S408 shown in FIG.

【0071】又、上記関数の属性として、アプリケーシ
ョン関数とシステムライブラリ関数を例にあげたが、特
に上記2つに限定する必要は無く、使用する言語によっ
てさらに異なった関数の場合分けが可能である場合に
は、当該異なる関数の属性の情報を判断基準として加え
てもよい。
The application function and the system library function have been described as examples of the attributes of the function. However, the present invention is not limited to the above two functions, and further different functions can be classified depending on the language used. In this case, information on the attribute of the different function may be added as a criterion.

【0072】〔実施の形態2〕次に、実施の形態2で
は、図1を用いてタスク属性記憶手段のタスクフラグに
情報を格納する際の処理について説明する。
[Second Embodiment] Next, in a second embodiment, processing for storing information in a task flag of the task attribute storage means will be described with reference to FIG.

【0073】上記実施の形態1では、プログラム実行手
段108が現在実行している関数の属性(アプリケーシ
ョン関数、システムライブラリ関数)を、直接タスク属
性認識手段116に通知することにより、タスク属性情
報記憶手段117の各タスクフラグに当該属性を格納し
ていた。
In the first embodiment, the task attribute information storage means is directly notified to the task attribute recognition means 116 of the attribute (application function, system library function) of the function currently being executed by the program execution means 108. The attribute is stored in each task flag 117.

【0074】本実施の形態2では、プログラム実行手段
108は、現在実行している関数が変更になった場合、
当該変更になった関数名(これから実行する関数の名
称)を上記タスク属性認識手段116に送信する。当該
タスク属性認識手段116は、上記関数名を受信する
と、一時記憶手段105に格納されているアプリケーシ
ョン関数106やシステムライブラリ関数107を参照
することで、当該関数がアプリケーション関数かシステ
ムライブラリ関数かを判断する。上記関数の属性を判断
したタスク属性認識手段116は、当該関数の種類を該
当するタスクフラグに格納する。
In the second embodiment, when the function currently being executed is changed,
The changed function name (the name of the function to be executed) is transmitted to the task attribute recognizing means 116. Upon receiving the function name, the task attribute recognition unit 116 refers to the application function 106 or the system library function 107 stored in the temporary storage unit 105 to determine whether the function is an application function or a system library function. I do. The task attribute recognizing means 116 that has determined the attribute of the function stores the type of the function in the corresponding task flag.

【0075】以上により、直接プログラム実行手段より
関数属性をタスク属性認識手段116に送信できない場
合であっても、タスク属性情報記憶手段は、該当するタ
スクフラグに現在実行されている関数の属性を格納する
ことが可能になる。
As described above, even when the function attribute cannot be directly transmitted from the program execution means to the task attribute recognition means 116, the task attribute information storage means stores the attribute of the currently executed function in the corresponding task flag. It becomes possible to do.

【0076】ところで、上記実施の形態1、及び実施の
形態2においては、強制終了を実行する判断の基準に、
タスク内で現在実行されている関数の属性を用いてい
る。しかしながら、上記判断の基準を必ずしも関数の属
性のみに限定する必要は無い。即ち、マルチタスクOS
では、OSの機能の一部を独立したタスクとして実行す
ることが可能であり、これをシステムタスク(システム
プロセス、システムスレッド等)と呼ぶ。又、これに対
して、ユーザーが起動したタスクがアプリケーションタ
スク(ユーザープロセス、アプリケーションスレッド
等)である。
In the first and second embodiments, the criterion for executing the forced termination is as follows.
Uses the attributes of the currently executing function in the task. However, it is not always necessary to limit the determination criteria to only the attributes of the function. That is, multitask OS
In, some of the functions of the OS can be executed as independent tasks, which are called system tasks (system processes, system threads, etc.). On the other hand, the task started by the user is an application task (user process, application thread, etc.).

【0077】上記システムタスクとアプリケーションタ
スクは、タスク属性ということが可能であり、当該2つ
のタスク属性を比較した場合には以下のようなことが言
える。
The system task and the application task can be called task attributes. When the two task attributes are compared, the following can be said.

【0078】即ち、上記システムタスクは、OSの機能
として提供されているために信頼性(安全性)が高く、
一方上記アプリケーションタスクは悪意を持った処理を
行う可能性があり、上記システムタスクに比較して信頼
性が低い。さらに、上記システムタスクは強制終了され
るとシステムに障害をもたらす可能性が高いが、上記ア
プリケーションタスクは当該タスクがシステムライブラ
リ関数を利用しているものであったとしても、一般的に
強制終了された場合の影響は当該アプリケーションタス
ク内で完結するものである。
That is, since the system task is provided as a function of the OS, its reliability (security) is high.
On the other hand, the application task may perform malicious processing, and has lower reliability than the system task. Further, while the system task is likely to cause a system failure if terminated, the application task is generally terminated even if the task uses a system library function. In this case, the effect is completed within the application task.

【0079】従って、以上のことを考慮すると、上記判
断の基準を関数の属性ではなく、タスクの属性で判断す
ることができるといえる。即ち、上記タスク属性情報記
憶手段が記憶するフラグエリア(タスクフラグ)に、関
数の属性ではなくタスクの属性を格納するのである。当
該格納する処理は、タスクが起動した時の上記初期処理
時に、プログラム実行手段がタスク属性認識手段に対し
一回だけ行うのみでよい。格納する値は、例えばシステ
ムタスクの場合には“0”であり、アプリケーションタ
スクの場合には“1”である。以後、タスク属性情報記
憶手段内の該当するタスクフラグのチェックは同様であ
る。
Therefore, in consideration of the above, it can be said that the criterion for the determination can be determined not by the attribute of the function but by the attribute of the task. That is, not the function attribute but the task attribute is stored in the flag area (task flag) stored by the task attribute information storage means. The processing to be stored need only be performed once by the program executing means to the task attribute recognizing means at the time of the initial processing when the task is activated. The stored value is, for example, “0” for a system task and “1” for an application task. Thereafter, the check of the corresponding task flag in the task attribute information storage means is the same.

【0080】以上のように、関数の属性に替えてタスク
の属性を管理し、当該タスクに対する強制終了の処理の
実行を判断することで、強制終了についての柔軟な制御
が可能である。
As described above, the attribute of the task is managed in place of the attribute of the function, and the execution of the forced termination processing for the task is determined, whereby the forced termination can be flexibly controlled.

【0081】[0081]

【発明の効果】以上のように、本発明によれば、関数の
呼び出し時、及び処理が戻った時に、タスクがタスク属
性認識手段に以後実行される関数の種類を通知すること
で、タスク属性情報記憶手段には、現在実行されている
タスクの種類が常時格納される構成としている。このた
め、タスク属性情報記憶手段に格納されている、現在の
タスクにて実行されている関数の属性情報を参照・判定
可能となり、従って、強制終了禁止区間であっても、所
定の関数を実行している場合には、強制終了可能とし、
一方でシステムに障害をもたらす可能性のある別の関数
の実行時には、当該タスクを強制終了させないといった
強制終了についての柔軟な制御が可能である。
As described above, according to the present invention, when a function is called and when processing returns, the task notifies the task attribute recognizing means of the type of the function to be executed thereafter, and the task attribute is recognized. The information storage means is configured to always store the type of the currently executed task. For this reason, it is possible to refer to and determine the attribute information of the function being executed in the current task stored in the task attribute information storage means, and to execute the predetermined function even in the forced termination prohibition section. If so, it can be forcibly terminated,
On the other hand, when another function that may cause a failure in the system is executed, flexible control of forced termination such as not forcibly terminating the task can be performed.

【0082】又、タスク属性情報記憶手段が、関数の属
性に代えてタスクの属性を格納することにより、タスク
の属性に基づいた強制終了の制御が可能である。
The task attribute information storage means stores task attributes in place of function attributes, thereby enabling forced termination control based on task attributes.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明に係るデジタル機器における概略機能ブ
ロック図。
FIG. 1 is a schematic functional block diagram of a digital device according to the present invention.

【図2】本発明に係るタスク間にわたる強制終了命令発
行時のイメージ図。
FIG. 2 is an image diagram when a forced termination instruction is issued between tasks according to the present invention.

【図3】各関数実行時における強制終了命令受信のポイ
ントを示す図。
FIG. 3 is a diagram showing points for receiving a forced termination instruction when each function is executed.

【図4】タスク実行時の強制終了命令処理に関するフロ
ーチャート。
FIG. 4 is a flowchart relating to a forced termination instruction process during task execution.

【図5】従来技術におけるプロセス、スレッド及びOS
のイメージを示す図。
FIG. 5 shows a process, a thread, and an OS according to the related art.
The figure which shows the image of.

【図6】タスク内の関数構造の一例を示す図。FIG. 6 is a diagram showing an example of a function structure in a task.

【図7】従来技術におけるタスク間にわたる強制終了命
令発行時のイメージ図。
FIG. 7 is an image diagram when a forced end instruction is issued between tasks in the related art.

【符号の説明】[Explanation of symbols]

100 デジタル機器 101 ネットワーク 102 アプリケーション 103 記憶手段 104 システムライブラリ 105 一時記憶手段 106 アプリケーション関数 107 システムライブラリ関数 108 プログラム実行手段 109 タスク状態設定手段 110 タスク状態記憶手段 111 タスク実行判断手段 112 カレント関数実行判定手段 113 強制終了設定手段 114 強制終了情報記憶手段 116 タスク属性認識手段 117 タスク属性情報記憶手段 118 タスクフラグ 119、120、121 フラグエリア 130 OS(OS機能) REFERENCE SIGNS LIST 100 digital device 101 network 102 application 103 storage means 104 system library 105 temporary storage means 106 application function 107 system library function 108 program execution means 109 task state setting means 110 task state storage means 111 task execution determination means 112 current function execution determination means 113 Forced termination setting means 114 Forced termination information storage means 116 Task attribute recognition means 117 Task attribute information storage means 118 Task flags 119, 120, 121 Flag area 130 OS (OS function)

フロントページの続き Fターム(参考) 5B098 GA04 GC01 GC14 Continued on the front page F term (reference) 5B098 GA04 GC01 GC14

Claims (14)

【特許請求の範囲】[Claims] 【請求項1】 一実行単位として管理されるタスクを、
プログラム実行手段にて複数並列に実行するオペレーテ
ィングシステムを備えたデジタル機器において、 上記タスクを構成する関数の属性を記憶するタスク属性
情報記憶手段と、 実行されている関数の属性に関する情報を送信すると共
に、当該関数の属するタスクに対する強制終了の実行を
問い合わせる上記プログラム実行手段と、 上記プログラム実行手段からの強制終了の実行の問い合
わせに対し、少なくとも実行されている関数の属性に基
づいて上記強制終了の実行を判定するタスク実行判断手
段と、 上記プログラム実行手段から送信された上記関数の属性
に関する情報に基づいて、実行されている関数の属性を
上記タスク属性情報記憶手段に格納すると共に、上記タ
スク実行判断手段からの実行されている関数の属性の問
い合わせに対して、上記タスク属性情報記憶手段に格納
した上記関数の属性を返信するタスク属性認識手段とを
具備することを特徴とするデジタル機器。
1. A task managed as one execution unit,
In a digital device including an operating system that executes a plurality of programs in parallel by a program execution unit, a task attribute information storage unit that stores an attribute of a function constituting the task, and information on an attribute of the function being executed is transmitted. The program execution means for inquiring about execution of a forced termination for the task to which the function belongs; and executing the forced termination based on at least an attribute of the function being executed in response to the inquiry about the execution of the forced termination from the program execution means. Storing the attribute of the function being executed in the task attribute information storage based on the information on the attribute of the function transmitted from the program executing means; To query the attributes of the function being executed from the means A digital device comprising: a task attribute recognizing unit that returns an attribute of the function stored in the task attribute information storing unit.
【請求項2】 上記関数の属性に関する情報が、実行さ
れている関数の名称であると共に、 上記タスク属性認識手段は、上記名称に基づいて上記実
行されている関数の属性を判定する請求項1に記載のデ
ジタル機器。
2. The information on the attribute of the function is the name of the function being executed, and the task attribute recognizing means determines the attribute of the function being executed based on the name. A digital device according to.
【請求項3】 上記一実行単位として管理されるタスク
は、プロセスである請求項1に記載のデジタル機器。
3. The digital device according to claim 1, wherein the task managed as one execution unit is a process.
【請求項4】 上記一実行単位として管理されるタスク
は、スレッドである請求項1に記載のデジタル機器。
4. The digital device according to claim 1, wherein the task managed as one execution unit is a thread.
【請求項5】 一実行単位として管理されるタスクを、
複数並列に実行するオペレーティングシステムにおける
タスク管理方法において、 上記タスクを構成する関数であって、現在実行されてい
る関数の属性を記憶し、 上記実行されている関数の属するタスクに対する強制終
了の実行時に、上記記憶した関数の属性に基づいて、上
記実行されている関数の強制終了の可否を判定すること
を特徴とするタスク管理方法。
5. A task managed as one execution unit,
In a task management method for an operating system that executes a plurality of tasks in parallel, a function that constitutes the task, stores an attribute of the currently executed function, and performs a forced termination of the task to which the executed function belongs. A task management method for determining whether or not the function being executed is forcibly terminated based on the stored attribute of the function.
【請求項6】 上記関数の属性が、実行されている関数
の名称を用いて決定される請求項5に記載のタスク管理
方法。
6. The task management method according to claim 5, wherein the attribute of the function is determined by using a name of the function being executed.
【請求項7】 上記一実行単位として管理されるタスク
は、プロセスである請求項5に記載のタスク管理方法。
7. The task management method according to claim 5, wherein the task managed as one execution unit is a process.
【請求項8】 上記一実行単位として管理されるタスク
は、スレッドである請求項5に記載のタスク管理方法。
8. The task management method according to claim 5, wherein the task managed as one execution unit is a thread.
【請求項9】 一実行単位として管理されるタスクを、
プログラム実行機能にて複数並列に実行するコンピュー
タに、 実行されている関数の属性に関する情報をタスク属性認
識機能に送信すると共に、当該関数の属するタスクに対
する強制終了の実行をタスク実行判断機能に問い合わせ
る上記プログラム実行機能と、 上記強制終了の実行の問い合わせに対し、少なくとも実
行されている関数の属性に基づいて上記強制終了の実行
を判定するタスク実行判断機能と、 上記プログラム実行機能から送信された上記関数の属性
に関する情報に基づいて、実行されている関数の属性を
記憶手段に格納すると共に、上記タスク実行判断機能か
らの実行されている関数の属性の問い合わせに対して、
上記記憶手段に格納した上記関数の属性を返信するタス
ク属性認識機能とを実現させるためのプログラム。
9. Tasks managed as one execution unit are:
The information on the attribute of the function being executed is transmitted to the task attribute recognizing function, and the task execution determining function is inquired about the execution of the forced termination for the task to which the function belongs, to the computer which executes a plurality of programs in parallel by the program executing function. A program execution function; a task execution determination function for determining execution of the forced termination based on at least an attribute of a function being executed in response to an inquiry about the execution of the forced termination; and the function transmitted from the program execution function Based on the information on the attribute of the stored function, the attribute of the function being executed is stored in the storage unit, and in response to the inquiry about the attribute of the function being executed from the task execution determination function,
A program for realizing a task attribute recognition function of returning an attribute of the function stored in the storage means.
【請求項10】 一実行単位として管理されるタスク
を、プログラム実行機能にて複数並列に実行するコンピ
ュータに、 実行されている関数の属性に関する情報をタスク属性認
識機能に送信すると共に、当該関数の属するタスクに対
する強制終了の実行をタスク実行判断機能に問い合わせ
る上記プログラム実行機能と、 上記強制終了の実行の問い合わせに対し、少なくとも実
行されている関数の属性に基づいて上記強制終了の実行
を判定するタスク実行判断機能と、 上記プログラム実行機能から送信された上記関数の属性
に関する情報に基づいて、実行されている関数の属性を
記憶手段に格納すると共に、上記タスク実行機能からの
実行されている関数の属性の問い合わせに対して、上記
記憶手段に格納した上記関数の属性を返信するタスク属
性認識機能とを実現させるためのプログラムを記録した
コンピュータ読み取り可能な記録媒体。
10. A computer that executes a plurality of tasks managed as one execution unit in parallel by a program execution function, by transmitting information on an attribute of a function being executed to a task attribute recognizing function. A program execution function for inquiring of a task execution determination function about execution of a forced termination for a task to which the task belongs, and a task of determining the execution of the forced termination based on at least an attribute of a function being executed in response to the inquiry about the execution of the forced termination. Based on the execution determination function and the information on the attribute of the function transmitted from the program execution function, the attribute of the function being executed is stored in the storage means, and the execution function from the task execution function is stored. Task for returning the attribute of the function stored in the storage means in response to the attribute inquiry A computer-readable recording medium on which a program for realizing the attribute recognition function is recorded.
【請求項11】 一実行単位として管理されるタスク
を、プログラム実行手段にて複数並列に実行するオペレ
ーティングシステムを備えたデジタル機器において、 上記タスクの属性を記憶するタスク属性情報記憶手段
と、 上記タスクの属性に関する情報をタスク属性認識手段に
送信すると共に、当該タスクに対する強制終了の実行を
タスク属性判断手段に問い合わせる上記プログラム実行
手段と、 上記強制終了の実行の問い合わせに対し、少なくともタ
スクの属性に基づいて上記強制終了の実行を判定するタ
スク実行判断手段と、 上記プログラム実行手段から送信された上記タスクの属
性に関する情報に基づいて、当該タスクの属性を上記タ
スク属性情報記憶手段に格納すると共に、上記タスク実
行判断手段からのタスクの属性の問い合わせに対して、
上記タスク属性情報記憶手段に格納した上記タスクの属
性を返信するタスク属性認識手段とを具備することを特
徴とするデジタル機器。
11. A digital device provided with an operating system for executing a plurality of tasks managed as one execution unit in parallel by a program execution means, wherein: task attribute information storage means for storing attribute of the task; The program execution means for sending information about the attribute of the task to the task attribute recognizing means, and inquiring the task attribute determining means of the execution of the forced termination for the task; and Task execution determining means for determining execution of the forced termination, and storing the attribute of the task in the task attribute information storage means based on the information on the attribute of the task transmitted from the program executing means. Inquiry of task attributes from task execution judgment means Against,
A digital device comprising: a task attribute recognizing unit that returns the attribute of the task stored in the task attribute information storage unit.
【請求項12】 一実行単位として管理されるタスク
を、複数並列に実行するオペレーティングシステムにお
けるタスク管理方法において、 実行されている上記タスクの属性を記憶し、 上記タスクに対する強制終了の実行時に、上記記憶した
タスクの属性に基づいて、上記実行されているタスクの
強制終了の可否を判定することを特徴とするタスク管理
方法。
12. A task management method in an operating system for executing a plurality of tasks managed as one execution unit in parallel in an operating system, wherein an attribute of the task being executed is stored. A task management method characterized by determining whether or not the task being executed is forcibly terminated based on the stored task attributes.
【請求項13】 一実行単位として管理されるタスク
を、プログラム実行機能にて複数並列に実行するコンピ
ュータに、 実行されているタスクの属性に関する情報を送信すると
共に、当該タスクに対する強制終了の実行を問い合わせ
る上記プログラム実行機能と、 上記プログラム実行機能からの強制終了の実行の問い合
わせに対し、少なくとも実行されているタスクの属性に
基づいて上記強制終了の実行を判定するタスク実行判断
機能と、 上記プログラム実行手段から送信された上記タスクの属
性に関する情報に基づいて、実行されているタスクの属
性を記憶手段に格納すると共に、上記タスク実行判断機
能からの実行されているタスクの属性の問い合わせに対
して、上記記憶手段に格納した上記タスクの属性を返信
するタスク属性認識機能とを実現させるためのプログラ
ム。
13. A computer that executes a plurality of tasks managed as one execution unit in parallel by a program execution function, by transmitting information on the attribute of the executed task and executing forced termination of the task. A program execution function to be inquired; a task execution determination function to determine execution of the forced termination based on at least an attribute of a task being executed in response to an inquiry about execution of a forced termination from the program execution function; Based on the information on the attribute of the task transmitted from the means, the attribute of the task being executed is stored in the storage means, and in response to an inquiry about the attribute of the task being executed from the task execution determination function, Task attribute recognition function for returning the attribute of the task stored in the storage means And a program to realize it.
【請求項14】 一実行単位として管理されるタスク
を、プログラム実行機能にて複数並列に実行するコンピ
ュータに、 実行されているタスクの属性に関する情報を送信すると
共に、当該タスクに対する強制終了の実行を問い合わせ
る上記プログラム実行機能と、 上記プログラム実行機能からの強制終了の実行の問い合
わせに対し、少なくとも実行されているタスクの属性に
基づいて上記強制終了の実行を判定するタスク実行判断
機能と、 上記プログラム実行機能から送信された上記タスクの属
性に関する情報に基づいて、実行されているタスクの属
性を記憶手段に格納すると共に、上記タスク実行判断機
能からの実行されているタスクの属性の問い合わせに対
して、上記記憶手段に格納した上記タスクの属性を返信
するタスク属性認識機能とを実現させるためのプログラ
ムを記録したコンピュータ読み取り可能な記録媒体。
14. A computer that executes a plurality of tasks managed as one execution unit in parallel by a program execution function, by transmitting information on the attribute of the task being executed and executing forced termination on the task. A program execution function to be inquired; a task execution determination function to determine execution of the forced termination based on at least an attribute of a task being executed in response to an inquiry about execution of a forced termination from the program execution function; Based on the information on the attribute of the task transmitted from the function, the attribute of the task being executed is stored in the storage unit, and in response to an inquiry about the attribute of the task being executed from the task execution determination function, Task attribute recognition function for returning the attribute of the task stored in the storage means And a computer-readable recording medium on which a program for realizing the above is recorded.
JP2002011585A 2001-01-25 2002-01-21 Digital device, task management method and program thereof Expired - Fee Related JP3961301B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002011585A JP3961301B2 (en) 2001-01-25 2002-01-21 Digital device, task management method and program thereof

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001-16601 2001-01-25
JP2001016601 2001-01-25
JP2002011585A JP3961301B2 (en) 2001-01-25 2002-01-21 Digital device, task management method and program thereof

Publications (2)

Publication Number Publication Date
JP2002297402A true JP2002297402A (en) 2002-10-11
JP3961301B2 JP3961301B2 (en) 2007-08-22

Family

ID=26608264

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002011585A Expired - Fee Related JP3961301B2 (en) 2001-01-25 2002-01-21 Digital device, task management method and program thereof

Country Status (1)

Country Link
JP (1) JP3961301B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146678A (en) * 2004-11-22 2006-06-08 Hitachi Ltd Method for controlling program in information processor, information processor and program
JP2007226799A (en) * 2006-02-22 2007-09-06 Samsung Electronics Co Ltd Apparatus for forcibly terminating thread blocked on input/output operation and method for the same
WO2009104771A1 (en) * 2008-02-19 2009-08-27 日本電気株式会社 Information processing device, control method and program therefor
JP2019191740A (en) * 2018-04-20 2019-10-31 コニカミノルタ株式会社 Service providing device and program

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146678A (en) * 2004-11-22 2006-06-08 Hitachi Ltd Method for controlling program in information processor, information processor and program
US7886297B2 (en) 2004-11-22 2011-02-08 Hitachi, Ltd. Program control process for an information processing apparatus
JP2007226799A (en) * 2006-02-22 2007-09-06 Samsung Electronics Co Ltd Apparatus for forcibly terminating thread blocked on input/output operation and method for the same
WO2009104771A1 (en) * 2008-02-19 2009-08-27 日本電気株式会社 Information processing device, control method and program therefor
JP2019191740A (en) * 2018-04-20 2019-10-31 コニカミノルタ株式会社 Service providing device and program
JP7067232B2 (en) 2018-04-20 2022-05-16 コニカミノルタ株式会社 Service providers and programs

Also Published As

Publication number Publication date
JP3961301B2 (en) 2007-08-22

Similar Documents

Publication Publication Date Title
US9501319B2 (en) Method and apparatus for scheduling blocking tasks
US9424085B2 (en) Recognizing a process group that is related to an application
US7386859B2 (en) Method and system for effective management of client and server processes
KR101618476B1 (en) Distributed resource management in a portable computing device
JP2010108295A (en) Mobile unit and switching method for application
WO2020206691A1 (en) Application processing method and apparatus, storage medium, and electronic device
CN111294377B (en) Dependency network request sending method, terminal device and storage medium
CN109697112B (en) Distributed intensive one-stop operating system and implementation method
CN111200651A (en) Method, system, device and medium for timed calling of microservice
CN111666167A (en) Input event reading processing optimization method, nonvolatile memory and terminal equipment
CN113342554B (en) IO multiplexing method, medium, device and operating system
CN114327087A (en) Input event processing method and device, electronic equipment and storage medium
CN110045997B (en) Object initialization method, device, equipment and storage medium of basic function module
JP2002297402A (en) Digital device, task management method and program therefor
CN107391274A (en) The processing method and processing device of deferred information
WO2021097683A1 (en) Android system starting method and apparatus, device, and storage medium
WO2015184902A1 (en) Concurrent processing method for intelligent split-screen and corresponding intelligent terminal
US7191443B2 (en) Digital device, task management method and program therefor
CN116048600A (en) Applet function development method, device, computer equipment and storage medium
WO2024037553A1 (en) Lifecycle scheduling method and apparatus, and electronic device
CN111400060A (en) Equipment linkage method, device, server and medium
CN116204336B (en) User state core state synchronization method and system based on registry callback mechanism
WO2023274376A1 (en) Device drive method and apparatus for micro-kernel architecture, and electronic device and storage medium
WO2022104883A1 (en) Adding method and apparatus for coexistence of multiple types of scenarios, terminal and storage medium
CN116166394A (en) Task execution method, device, system, storage medium and processor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070105

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070228

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070420

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070516

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3961301

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110525

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110525

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120525

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120525

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130525

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130525

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees