JP6316522B1 - 計算機装置、タスク起動方法およびタスク起動プログラム - Google Patents
計算機装置、タスク起動方法およびタスク起動プログラム Download PDFInfo
- Publication number
- JP6316522B1 JP6316522B1 JP2017563144A JP2017563144A JP6316522B1 JP 6316522 B1 JP6316522 B1 JP 6316522B1 JP 2017563144 A JP2017563144 A JP 2017563144A JP 2017563144 A JP2017563144 A JP 2017563144A JP 6316522 B1 JP6316522 B1 JP 6316522B1
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- task
- time
- dependent
- independent
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4825—Interrupt from clock, e.g. time of day
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4831—Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority
- G06F9/4837—Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority time dependent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
OS依存割込みハンドラは、OS依存割込みハンドラ内でOSのサービスコールを発行することができる。しかし、サービスコール処理中に発生したOS依存割込みは、OS依存割込みを受け付け可能となるまで遅延する。
OS独立割込みハンドラは、OS独立割込みハンドラ内でOSのサービスコールを発行することができない。しかし、サービスコール処理中に発生したOS独立割込みは、OS依存割込みを受け付けられない区間であっても受け付けられる。
そこで、OS独立割込みハンドラが、OS依存割込みハンドラを介して、OSが管理しているタスクの処理を起動する技術がある。具体的には、特許文献1のように、OS独立割込みによってタスクを起動したい場合に更新されるフラグの状態監視を、周期的なタイマ割込みによって発生するOS依存割込みで実施し、必要に応じてタスクを起動する技術がある。
また、常にOS依存割込みを周期的に発生させなければならないことから、非特許文献2に開示されたティックレスタイマ方式を採用することができず、計算機装置の消費電力に無駄がある。ティックレスタイマ方式とは、必要な時にのみシステムクロック割込みを発生させることができる方式である。
フラグを記憶する記憶部と、
前記デバイスの状態に起因するOS独立割込みが発生すると、タスクを起動するか否かを判定し、前記タスクを起動する場合に、前記フラグをオンにすると共に前記OS実行部に前記OS依存割込みを起こさせるOS独立割込み処理部と、
前記OS実行部により前記OS依存割込みが起こされると、前記フラグがオンであるか否かを判定し、前記フラグがオンである場合に、前記タスクを起動すると共に前記フラグをオフにするOS依存割込み処理部とを備えた。
***構成の説明***
図1を用いて、本実施の形態に係る計算機装置100の構成について説明する。
計算機装置100は、デバイス200に接続される。デバイス200は、デバイス200の状態に起因するOS独立割込み201を発生させる。デバイス200は、具体的には、モータ210あるいはセンサ220である。モータ210あるいはセンサ220といったデバイス200は、動作完了あるいはエラーを含む状態変更による割込みをOS独立割込み201として発生させる。また、計算機装置100は、デバイス200にOS独立割込み201を発生させる代わりに、タイマを用いて周期的にOS独立の割込みを発生させ、デバイス200の状態変更を監視してもよい。
計算機装置100は、プロセッサ910、記憶装置920、入出力インタフェース930、割込みタイマ160、および計時タイマ170といったハードウェアを備える。記憶装置920は、メモリ921と補助記憶装置922とを含む。
OS依存割込み処理部110は、OS依存割込みハンドラである。OS独立割込み処理部130は、OS独立割込みハンドラである。
記憶部140は、メモリ921および補助記憶装置922により実現される。また、記憶部140は、メモリ921のみ、あるいは、補助記憶装置922のみで実現されてもよい。記憶部140の実現方法は任意である。フラグ141と前回実行時刻Tpとタイムアウトキュー143とはメモリ921に記憶される。タイムアウトキュー143には残り時間144が設定される。タスク145は補助記憶装置922に記憶される。
入力インタフェースとして機能する場合、入出力インタフェース930は、マウス、キーボード、タッチパネルといった入力装置と接続されるポートである。入出力インタフェース930は、具体的には、USB(Universal Serial Bus)端子である。なお、入出力インタフェース930は、LAN(Local Area Network)と接続されるポートであってもよい。入出力インタフェース930は、デバイス200と接続され、デバイス200からOS独立割込み201を受け付ける。
入力インタフェースとして機能する場合、入出力インタフェース930は、ディスプレイといった表示機器のケーブルが接続されるポートである。出力インタフェースは、具体的には、USB端子またはHDMI(登録商標)(High Definition Multimedia Interface)端子である。ディスプレイは、具体的には、LCD(Liquid Crystal Display)である。
なお、タスク起動プログラムプロダクトとは、タスク起動プログラム520が記録された記憶媒体および記憶装置である。タスク起動プログラムプロダクトとは、外観に関わらず、コンピュータ読み取り可能なプログラムをロードしているものを指す。
次に、図1の各機能構成について説明する。
OS実行部120は、計算機装置100において、タスク145の実行管理を行う。また、OS実行部120は、計算機装置100において、タスク145を起動する機能を提供する。
デバイス200は、動作完了あるいはエラーを含む状態変更によって、OS独立割込み201を発生させる。
割込みタイマ160は、OS実行部120にOS依存割込み202を起こさせるために用いられる。つまり、OS依存割込み202は割込みタイマ160の機能によって発生する。割込みタイマ160は、システムクロック割込み用タイマともいう。
計時タイマ170は、システム時刻を計時するタイマである。計時タイマ170は、システム時刻計時用タイマともいう。計時タイマ170は、具体的には、フリーランニングタイマ機能を用いたタイマである。
フラグ141は、それがタスク起動要求部131によって立てられた場合に、どのデバイス200に対応するものか判定可能なデータ構造で構成される。また、フラグ141のデータ構造は、タスク145が複数存在する場合にどのタスク145を起動すべきかについても判定可能にする。また、フラグ141は、複数存在してもよい。フラグ141は、通知要求フラグともいう。
図3は、本実施の形態に係るフラグ141による要素番号とフラグ値との対応について示す図である。図3に示すように、要素番号に対応するフラグ値が「0」の場合は、要素番号に紐付けられたデバイスの通知要求が無いことを意味する。また、要素番号に対応するフラグ値が「1」の場合は、要素番号に紐付けられたデバイスの通知要求が有ることを意味する。
フラグ141を上述したような構成にすることで、タスク起動判定部111が通知要求がどのデバイスに関するものかを特定でき、そして適切なタスクを起動させることが可能となる。
タスク起動判定部111は、OS実行部120によりOS依存割込み202が起こされると、フラグ141がオンであるか否かを判定する。タスク起動判定部111は、フラグ141がオンである場合に、タスク145を起動すると共にフラグ141をオフにする。フラグ141をオフにするとは、フラグを落とすことであり、具体的には、値を「0」に設定する。すなわち、タスク起動判定部111は、フラグ141の状態によってタスク145を起動させるとともにフラグ141をオフにする。具体的には、フラグ141に「0」を設定する。
タイムアウト処理部113は、タスクあるいはタイマイベントハンドラのタイムアウト処理を行う。計算機装置100は、タスクあるいはタイマイベントハンドラの残り時間144を管理するタイムアウトキュー143を備える。タイムアウト処理部113は、タスクを前回起動した前回実行時刻Tpと現在時刻とに基づいて、タイムアウトキュー143の残り時間144を再設定する。タイマイベントハンドラは、具体的には、μITRON仕様リアルタイムOSにおける周期ハンドラあるいはアラームハンドラといったハンドラである。
タイムアウト設定部114は、タスクのタイムアウトキューあるいはタイマイベントハンドラキューを管理する。以下において、タイムアウトキュー143とは、タスクのタイムアウトキューあるいはタイマイベントハンドラキューを意味するものとする。タイムアウト設定部114は、OS依存割込み202を起こさせる次回割込み時刻を算出し、次回割込み時刻にOS依存割込み202を起こすように割込みタイマ160にカウンタ値を設定する。
図4は、本実施の形態に係る計算機装置100のタスク起動方法510およびタスク起動プログラム520のタスク起動処理S100を示すフローチャートである。タスク起動プログラム520は、以下に示す各処理をコンピュータである計算機装置100に実行させる。
タスク起動処理S100は、OS依存割込み処理S10と、OS独立割込み処理S20とを備える。
ステップS1において、計算機装置100は、OS依存割込み202が発生した場合にOS依存割込み処理S10に進む。また、計算機装置100は、OS独立割込み201が発生した場合にOS独立割込み処理S20に進む。また、計算機装置100は、いずれの割込みも発生していない場合はステップS1を繰り返す。
図5は、本実施の形態に係るOS依存割込み処理S10を示すフローチャートである。
OS依存割込み処理S10は、システムクロックの割込みタイマ160によるOS依存割込み202が発生すると開始される。割込みタイマ160によりOS依存割込み202が発生すると、プロセッサ910のOS実行部120が持つ割込み機能によりOS依存割込みハンドラが起動する。そして、OS依存割込みハンドラは、タスク起動判定部111を呼び出す。
OS依存割込み処理S10では、OS依存割込み処理部110が、OS実行部120によりOS依存割込み202が起こされると、フラグ141がオンであるか否かを判定する。OS依存割込み処理部110が、フラグ141がオンである場合に、タスク145を起動すると共にフラグ141をオフにする。
ステップS12において、タスク起動判定部111は、実行すべきタスク145をOSが提供するサービスコールを用いて起動させ、フラグ141をオフにする。処理はシステム時刻管理部112により実行されるステップS13に移る。
ステップS14において、システム時刻管理部112は、前回の割込み発生時に予め記憶部140に記憶しておいた前回実行時刻Tpを取得する。システム時刻管理部112は、前回実行時刻Tpと実行時刻Tnとを比較し、前回実行時刻Tpから実行時刻Tnまでの経過時間Tkを算出する。前回実行時刻Tpの初期値は0である。処理はタイムアウト処理部113により実行されるステップS15に移る。
そして、ステップS17において、タイムアウト設定部114は、タイムアウトキュー143の先頭要素に設定された残り時間144を調べ、最も残り時間144の小さいものから次回割込み時刻Tfを割り出す。
最後に、ステップS18において、タイムアウト設定部114は、次回割込み時刻Tfにシステムクロックの割込みタイマ160の割込みが発生するように、割込みタイマ160のカウンタ値を設定する。
以上で、OS依存割込み処理S10を終了する。
図6は、本実施の形態に係るOS独立割込み処理S20を示すフローチャートである。
タスク起動要求処理S21では、デバイス200からOS独立割込み201が発生すると、OS独立割込みハンドラが起動する。そして、OS独立割込みハンドラは、タスク起動要求部131を呼び出す。
OS独立割込み処理S20では、OS独立割込み処理部130が、デバイス200の状態に起因するOS独立割込み201が発生すると、タスク145を起動するか否かを判定する。OS独立割込み処理部130が、タスク145を起動する場合に、フラグ141をオンにすると共にOS実行部120にOS依存割込み202を起こさせる。
ステップS22において、タスク起動要求部131は、フラグ141を立てる。処理はタイマ設定部132により実行されるステップS23に移る。
ステップS23において、タイマ設定部132は、直ちにOS依存割込み202が発生するように割込みタイマ160のカウンタ値を上書き設定する。具体的には、タイマ設定部132は、直ちにOS依存割込み202が発生するように、割込みタイマ160を0ms、1msあるいは2msといったカウンタ値に設定する。
以上でOS独立割込みハンドラ処理S20を終了する。
また、本実施の形態では、タスク起動判定部111がタスクの起動の要否を判定する処理を、タイマ割込みに伴って発生するOS依存割込みの処理内で実施していた。しかし、タスク起動判定部111は、タスクの起動の要否を判定する処理を、他の要因で発生する割込みの処理内で実施してもよい。
図7では、本具体例で仮定する割込みの発生タイミングを示している。割込みタイマ160に周期10msが設定されており、周期の開始時点から3msの時点T1でOS独立割込み201が発生した様子を示している。なお、図7から図10において、OS依存割込み202をkernel_intと表記し、OS独立割込み201をnonkernel_intと表記する。
また、図8では、タイムアウトキューとタスク管理情報とを示している。タスク管理情報はTCB(Task Control Block)と表記する。タイムアウトキューは、タイムアウト順にTCBをつなげた情報である。OSは、タイムアウトキューの残り時間に基づいて、タスクの実行が必要と設定したタイミングにおいて対応するTCBの内容を参照し、タスクの処理を実行する。
ステップS15において、タイムアウト処理部113は、実行時間を過ぎているタスクの有無を確認し、実行時間を過ぎているタスクがある場合は、そのタスクの処理をOSに実行させる。タイムアウト処理部113は、残り時間−経過時間≦0に該当するタスクがあれば、そのタスクの処理をOSに実行させる。図9の(11)に示すように、タイムアウトキューの先頭の残り時間が10msであり、経過時間Tkが10msであり、10−10=0となるため、タイムアウト処理部113はタスク1の処理をOSに実行させる。そして、タイムアウト処理部113は、タイムアウトキューの先頭ポインタの指すアドレスを次の要素へ更新する。図9の(12)に示すように、タイムアウト処理部113は、タイムアウトキューの先頭ポインタの指すアドレスを要素0のアドレスから要素1のアドレスに変更する。
ステップS16において、タイムアウト処理部113は、実行時刻Tnを前回実行時刻Tpとして記憶部140に記憶する。
ステップS17において、タイムアウト処理部113は、次回割込み時刻Tfの割り出しを行う。タイムアウトキューにはタイマイベントハンドラ用およびアラームハンドラ用といった複数のタイムアウトキューが存在する場合がある。よって、タイムアウト処理部113は、全てのタイムアウトキューの先頭ブロックの残り時間を比較して次回割込み時刻Tfを割り出す。
ステップS18において、タイムアウト処理部113は、割込みタイマ160にカウンタ値を設定する。次回割込み時刻TfにOS依存割込みが発生するように割込みタイマ160のカウンタ値を設定する。図9の(13)に示すように、タイムアウト処理部113は、割込みタイマ160に7msを設定する。
図10を用いて、T1時点においてOS独立割込みが発生した場合の図5のステップS15からステップS18の処理の具体例について説明する。また、以下の(21)から(23)は、図10の(21)から(23)に対応する。なお、図10の場合、周期の開始時点からの経過時間Tkは、3msとなる。
ステップS15において、タイムアウト処理部113は、実行時間を過ぎているタスクの有無を確認し、実行時間を過ぎているタスクがある場合は、そのタスクの処理をOSに実行させる。タイムアウト処理部113は、(残り時間−経過時間)≦0に該当するものがあれば、そのタスクの処理をOSに実行させる。図10の(21)に示すように、タイムアウトキューの先頭の残り時間が7msであり、経過時間Tkが3msであり、7−3=4となるため、タイムアウト処理部113が実行すべきタスクはない。タイムアウト処理部113は、タイムアウトキューの残り時間を更新する。図10の(22)に示すように、前回実行時刻TpからTk=3ms経過しているため、残り時間を7msから(7−3)=4msに更新する。
ステップS16において、タイムアウト処理部113は、実行時刻Tnを前回実行時刻Tpとして記憶部140に記憶する。
ステップS17において、タイムアウト処理部113は、次回割込み時刻Tfの割り出しを行う。
ステップS18において、タイムアウト処理部113は、割込みタイマ160にカウンタ値を設定する。次回割込み時刻TfにOS依存割込みが発生するように割込みタイマ160にカウンタ値を設定する。図10の(23)に示すように、タイムアウト処理部113は、割込みタイマ160に、4msを設定する。
以上で、本実施の形態に係る計算機装置100によるOS依存割込み処理S10の具体例についての説明を終わる。
なお、計算機装置100は、通信装置を備えていてもよい。通信装置はレシーバとトランスミッタとを備える。具体的には、通信装置は通信チップまたはNIC(Network Interface Card)である。通信装置はデータを通信する通信部として機能する。レシーバはデータを受信する受信部として機能し、トランスミッタはデータを送信する送信部として機能する。
図11に示すように、計算機装置100は、処理回路909、入出力インタフェース930、割込みタイマ160および計時タイマ170といったハードウェアを備える。
本実施の形態に係る計算機装置100によれば、フラグを立てるとともにOS依存割込みを発生させる。そのため、周期的なOS依存割込みでフラグを監視しなくても、任意の時にタスクを起動させることができる。よって、本実施の形態に係る計算機装置100によれば、OSの時間管理方式としてティックレスタイマ方式の採用できるとともに、CPU使用率および消費電力を抑えることができる。さらに、本実施の形態に係る計算機装置100によれば、フラグを周期的にチェックする必要がないため、割込みタイマで設定可能な最短時間で通知要求に応答することが可能となる。
また、計算機装置は、1つの装置でもよいし、複数の装置から構成された計算機システムでもよい。
なお、上述した実施の形態は、本質的に好ましい例示であって、本発明、その適用物および用途の範囲を制限することを意図するものではなく、必要に応じて種々の変更が可能である。
Claims (4)
- デバイスに接続され、OS(オペレーティングシステム)を実行するOS実行部であって、次回起動される時刻である次回割込み時刻までの残り時間であって割込みタイマのカウンタ値に設定される残り時間が、タイムアウトキューに設定されているOS依存タスクを起動するOS依存割込みを起こすOS実行部を備えた計算機装置において、
フラグを記憶する記憶部と、
前記デバイスの状態に起因するOS独立割込みが発生すると、前記デバイスに対応するOS独立タスクを起動するか否かを判定し、前記OS独立タスクを起動する場合に、前記フラグをオンにすると共に、前記割込みタイマのカウンタ値を上書きすることにより前記OS実行部に前記OS依存割込みを起こさせるOS独立割込み処理部と、
前記OS実行部により前記OS依存割込みが起こされると、前記フラグがオンであるか否かを判定し、前記フラグがオンである場合に、前記OS独立タスクを起動すると共に前記フラグをオフにするOS依存割込み処理部と
を備え、
前記OS依存割込み処理部は、
前記OS独立タスクを起動すると、前回、前記OS依存タスクが起動された時刻である前回実行時刻と現在時刻とを取得し、前回実行時刻から現在時間までの経過時間を算出し、前記経過時間と前記OS依存タスクのうち最初に実行される先頭タスクの前記残り時間とに基づいて、前記先頭タスクが前記次回割込み時刻に実行されるように前記割込みタイマのカウンタ値を再設定するタイムアウト設定部を備えた計算機装置。 - 前記タイムアウト設定部は、
前記残り時間から前記経過時間を減じた値が0より大きい場合に、前記残り時間から前記経過時間を減じた値を前記カウンタ値に再設定し、前記残り時間から前記経過時間を減じた値が0以下の場合に、前記先頭タスクが直ちに実行されるように前記割込みタイマのカウンタ値を再設定する請求項1に記載の計算機装置。 - デバイスに接続され、OS(オペレーティングシステム)を実行するOS実行部であって、次回起動される時刻である次回割込み時刻までの残り時間であって割込みタイマのカウンタ値に設定される残り時間が、タイムアウトキューに設定されているOS依存タスクを起動するOS依存割込みを起こすOS実行部を備えた計算機装置のタスク起動方法において、
OS独立割込み処理部が、前記デバイスの状態に起因するOS独立割込みが発生すると、前記デバイスに対応するOS独立タスクを起動するか否かを判定し、前記OS独立タスクを起動する場合に、フラグをオンにすると共に、前記割込みタイマのカウンタ値を上書きすることにより前記OS実行部に前記OS依存割込みを起こさせ、
OS依存割込み処理部が、前記OS実行部により前記OS依存割込みが起こされると、前記フラグがオンであるか否かを判定し、前記フラグがオンである場合に、前記OS独立タスクを起動すると共に前記フラグをオフにし、
前記OS依存割込み処理部が、前記OS独立タスクを起動すると、前回、前記OS依存タスクを起動した時刻である前回実行時刻と現在時刻とを取得し、前回実行時刻から現在時刻までの経過時間を算出し、前記経過時間と前記OS依存タスクのうち最初に実行される先頭タスクの前記残り時間とに基づいて、前記先頭タスクが前記次回割込み時刻に実行されるように前記割込みタイマのカウンタ値を再設定するタスク起動方法。 - デバイスに接続され、OS(オペレーティングシステム)を実行するOS実行部であって、次回起動される時刻である次回割込み時刻までの残り時間であって割込みタイマのカウンタ値に設定される残り時間が、タイムアウトキューに設定されているOS依存タスクを起動するOS依存割込みを起こすOS実行部を備えた計算機装置のタスク起動プログラムにおいて、
前記デバイスの状態に起因するOS独立割込みが発生すると、前記デバイスに対応するOS独立タスクを起動するか否かを判定し、前記OS独立タスクを起動する場合に、フラグをオンにすると共に、前記割込みタイマのカウンタ値を上書きすることにより前記OS実行部に前記OS依存割込みを起こさせるOS独立割込み処理と、
前記OS実行部により前記OS依存割込みが起こされると、前記フラグがオンであるか否かを判定し、前記フラグがオンである場合に、前記OS独立タスクを起動すると共に前記フラグをオフにするOS依存割込み処理と、
前記OS独立タスクを起動すると、前回、前記OS依存タスクを起動した時刻である前回実行時刻と現在時刻とを取得し、前回実行時刻から現在時刻までの経過時間を算出し、前記経過時間と前記OS依存タスクのうち最初に実行される先頭タスクの前記残り時間とに基づいて、前記先頭タスクが前記次回割込み時刻に実行されるように前記割込みタイマのカウンタ値を再設定する処理と
をコンピュータである前記計算機装置に実行させるタスク起動プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/002498 WO2018138798A1 (ja) | 2017-01-25 | 2017-01-25 | 計算機装置、タスク起動方法およびタスク起動プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6316522B1 true JP6316522B1 (ja) | 2018-04-25 |
JPWO2018138798A1 JPWO2018138798A1 (ja) | 2019-02-07 |
Family
ID=62069404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017563144A Expired - Fee Related JP6316522B1 (ja) | 2017-01-25 | 2017-01-25 | 計算機装置、タスク起動方法およびタスク起動プログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US10983823B2 (ja) |
JP (1) | JP6316522B1 (ja) |
CN (1) | CN110192183B (ja) |
DE (1) | DE112017006454B4 (ja) |
TW (1) | TW201828046A (ja) |
WO (1) | WO2018138798A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113993752B (zh) * | 2019-06-27 | 2023-09-08 | 三菱电机株式会社 | 电子控制单元和计算机可读取的记录介质 |
CN113742059B (zh) * | 2021-07-15 | 2024-03-29 | 上海朋熙半导体有限公司 | 任务分配方法、装置、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04182834A (ja) * | 1990-11-19 | 1992-06-30 | Toshiba Corp | 情報処理装置 |
JPH1173330A (ja) * | 1997-08-29 | 1999-03-16 | Toshiba Corp | コンピュータシステム |
JPH11184712A (ja) * | 1997-12-24 | 1999-07-09 | Toshiba Corp | 情報処理装置 |
JP2001092676A (ja) * | 1999-09-22 | 2001-04-06 | Kenwood Corp | 組み込みプログラムにおけるタスク管理システム |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5845133A (en) * | 1995-07-06 | 1998-12-01 | Cyrix Corporation | Virtualized functions within a microprocessor |
JPH10143378A (ja) | 1996-11-15 | 1998-05-29 | Mitsubishi Electric Corp | コンピュータ装置、およびコンピュータ装置における緊急プロセスのプリエンプション方法 |
FR2760103B1 (fr) * | 1997-02-25 | 2000-02-04 | Sextant Avionique | Architecture modulaire de pilotage d'un aerodyne presentant un faible cout tout en etant apte a assurer un niveau eleve de securite de fonctionnement |
US6038632A (en) | 1997-05-07 | 2000-03-14 | Kabushiki Kaisha Toshiba | Interrupt control on SMM |
JP2000047880A (ja) | 1998-07-31 | 2000-02-18 | Canon Inc | オペレーティングシステム、その時間管理方法、情報処理装置および記憶媒体 |
US6466998B1 (en) * | 1999-08-25 | 2002-10-15 | Intel Corporation | Interrupt routing mechanism for routing interrupts from peripheral bus to interrupt controller |
JP4057769B2 (ja) * | 2000-08-31 | 2008-03-05 | 松下電器産業株式会社 | 割り込み管理装置及び割り込み管理方法 |
US6792492B1 (en) | 2001-04-11 | 2004-09-14 | Novell, Inc. | System and method of lowering overhead and latency needed to service operating system interrupts |
US6910381B2 (en) * | 2002-05-31 | 2005-06-28 | Mykrolis Corporation | System and method of operation of an embedded system for a digital capacitance diaphragm gauge |
US20040088704A1 (en) | 2002-10-30 | 2004-05-06 | Advanced Simulation Technology, Inc. | Method for running real-time tasks alongside a general purpose operating system |
JP2004199393A (ja) | 2002-12-18 | 2004-07-15 | Matsushita Electric Ind Co Ltd | タスク制御装置及びタスク制御方法 |
JP2005190207A (ja) * | 2003-12-25 | 2005-07-14 | Matsushita Electric Ind Co Ltd | 割り込み制御装置、制御方法 |
JP4072503B2 (ja) | 2004-02-04 | 2008-04-09 | シャープ株式会社 | 補助演算用コプロセッサ内蔵型icカード及びその制御方法 |
JP4829177B2 (ja) | 2007-06-11 | 2011-12-07 | ルネサスエレクトロニクス株式会社 | ディスパッチ装置 |
JP2009261865A (ja) | 2008-04-25 | 2009-11-12 | Haruo Kitamura | ぞうり編み機 |
CN101639791B (zh) * | 2009-08-31 | 2012-12-05 | 浙江大学 | 一种改善嵌入式实时操作系统中断延迟的方法 |
CN103176841A (zh) * | 2013-03-06 | 2013-06-26 | 深圳市文鼎创数据科技有限公司 | 实时操作系统Tick时钟的实现方法及装置 |
KR20150058618A (ko) * | 2013-11-18 | 2015-05-29 | 한국전자통신연구원 | 실시간 임베디드 시스템에서의 지연 보상 방법 및 그 장치 |
JP6354333B2 (ja) | 2014-05-27 | 2018-07-11 | 富士通株式会社 | 情報処理装置及びタイマ設定方法 |
-
2017
- 2017-01-25 US US16/466,180 patent/US10983823B2/en active Active
- 2017-01-25 JP JP2017563144A patent/JP6316522B1/ja not_active Expired - Fee Related
- 2017-01-25 DE DE112017006454.6T patent/DE112017006454B4/de not_active Expired - Fee Related
- 2017-01-25 CN CN201780083766.2A patent/CN110192183B/zh active Active
- 2017-01-25 WO PCT/JP2017/002498 patent/WO2018138798A1/ja active Application Filing
- 2017-04-11 TW TW106111995A patent/TW201828046A/zh unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04182834A (ja) * | 1990-11-19 | 1992-06-30 | Toshiba Corp | 情報処理装置 |
JPH1173330A (ja) * | 1997-08-29 | 1999-03-16 | Toshiba Corp | コンピュータシステム |
JPH11184712A (ja) * | 1997-12-24 | 1999-07-09 | Toshiba Corp | 情報処理装置 |
JP2001092676A (ja) * | 1999-09-22 | 2001-04-06 | Kenwood Corp | 組み込みプログラムにおけるタスク管理システム |
Also Published As
Publication number | Publication date |
---|---|
US10983823B2 (en) | 2021-04-20 |
DE112017006454T5 (de) | 2019-10-02 |
CN110192183A (zh) | 2019-08-30 |
DE112017006454B4 (de) | 2020-06-10 |
WO2018138798A1 (ja) | 2018-08-02 |
US20200004581A1 (en) | 2020-01-02 |
TW201828046A (zh) | 2018-08-01 |
CN110192183B (zh) | 2023-07-07 |
JPWO2018138798A1 (ja) | 2019-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10649935B2 (en) | Deferred inter-processor interrupts | |
US9256428B2 (en) | Load latency speculation in an out-of-order computer processor | |
US8863109B2 (en) | Updating secure pre-boot firmware in a computing system in real-time | |
US8793697B2 (en) | Method and system for scheduling requests in a portable computing device | |
US20140344823A1 (en) | Interruption of chip component managing tasks | |
JP6060756B2 (ja) | 周波数制御装置、周波数制御方法および周波数制御プログラム | |
CN116382462B (zh) | 振动方法和振动装置 | |
US8453013B1 (en) | System-hang recovery mechanisms for distributed systems | |
JPWO2016114077A1 (ja) | データ判定装置、データ判定方法及びプログラム | |
JP6316522B1 (ja) | 計算機装置、タスク起動方法およびタスク起動プログラム | |
JP2006079345A (ja) | マイクロコンピュータ | |
EP3855285A1 (en) | System, apparatus and method for latency monitoring and response | |
US10545562B2 (en) | Electronic device and method for operating the same | |
JPWO2008117411A1 (ja) | グリッド処理制御装置 | |
CN117319376A (zh) | 文件下载控制方法、装置、电子设备及存储介质 | |
TW201441932A (zh) | 處理裝置與系統程式更新方法 | |
US20150123875A1 (en) | Power management device and method | |
WO2013179954A1 (ja) | 電子装置 | |
TWI489260B (zh) | 待機管理方法及其相關待機管理模組及電腦系統 | |
CN113342427B (zh) | 程序控制方法及装置 | |
JP2016062172A (ja) | 情報処理装置 | |
CN116028126A (zh) | 电子设备、多操作系统的运行方法、装置和存储介质 | |
JP2005352669A (ja) | コンピュータシステム | |
JP2011238152A (ja) | プロセッサ装置及び計算機装置 | |
CN101689062A (zh) | 时钟中断源 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171204 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171204 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20171204 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20171220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180109 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180213 |
|
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: 20180227 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180327 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6316522 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |