JP6316522B1 - 計算機装置、タスク起動方法およびタスク起動プログラム - Google Patents

計算機装置、タスク起動方法およびタスク起動プログラム Download PDF

Info

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
Application number
JP2017563144A
Other languages
English (en)
Other versions
JPWO2018138798A1 (ja
Inventor
千紗都 佐藤
千紗都 佐藤
吉章 片山
吉章 片山
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6316522B1 publication Critical patent/JP6316522B1/ja
Publication of JPWO2018138798A1 publication Critical patent/JPWO2018138798A1/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4825Interrupt from clock, e.g. time of day
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4831Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority
    • G06F9/4837Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority time dependent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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

計算機装置(100)は、OS実行部(120)と、OS依存割込み処理部(110)と、OS独立割込み処理部(130)とを備える。OS独立割込み処理部(130)は、デバイス(200)の状態に起因するOS独立割込み(201)が発生すると、タスク(145)を起動するか否かを判定する。OS独立割込み処理部(130)は、タスク(145)を起動する場合に、フラグ(141)をオンにすると共にOS実行部(120)にOS依存割込み(202)を起こさせる。OS依存割込み処理部(110)は、OS依存割込み(202)が起こされると、フラグ(141)がオンであるか否かを判定し、フラグ(141)がオンである場合に、タスク(145)を起動すると共にフラグ(141)をオフにする。

Description

本発明は、計算機装置、タスク起動プログラムおよびタスク起動方法に関する。
非特許文献1には、組込み機器向けリアルタイムOS(Operating System)を利用した計算機システムが開示されている。非特許文献1の計算機システムは、OSに依存するカーネル管理割込みハンドラと、OSから独立したカーネル管理外割込みハンドラとの2種類の割込みハンドラを持つ。カーネル管理割込みハンドラは、OS依存割込みハンドラともいう。また、カーネル管理外割込みハンドラは、OS独立割込みハンドラともいう。
OS依存割込みハンドラは、OS依存割込みハンドラ内でOSのサービスコールを発行することができる。しかし、サービスコール処理中に発生したOS依存割込みは、OS依存割込みを受け付け可能となるまで遅延する。
OS独立割込みハンドラは、OS独立割込みハンドラ内でOSのサービスコールを発行することができない。しかし、サービスコール処理中に発生したOS独立割込みは、OS依存割込みを受け付けられない区間であっても受け付けられる。
特開2001−092676号公報
M3T−MR30/4 V.4.01ユーザーズマニュアル(3.6 割り込み) 三菱電機技報 2003年2月号「第3世代携帯電話技術」(特集論文:W−CDMA携帯機の基本ソフトウェア)
家電製品およびモータ制御といった小規模な組込み機器では、OS依存割込みを用いることによる割込みの遅延が許容できない場合、OS独立割込みを用いる必要がある。
そこで、OS独立割込みハンドラが、OS依存割込みハンドラを介して、OSが管理しているタスクの処理を起動する技術がある。具体的には、特許文献1のように、OS独立割込みによってタスクを起動したい場合に更新されるフラグの状態監視を、周期的なタイマ割込みによって発生するOS依存割込みで実施し、必要に応じてタスクを起動する技術がある。
しかしながら、特許文献1の技術は、フラグが立っていない、すなわちタスクを起動する必要がない時でも定期的にOS依存割込みを起動させなければならない。よって、CPU(Central Processing Unit)使用率に無駄が生じる。
また、常にOS依存割込みを周期的に発生させなければならないことから、非特許文献2に開示されたティックレスタイマ方式を採用することができず、計算機装置の消費電力に無駄がある。ティックレスタイマ方式とは、必要な時にのみシステムクロック割込みを発生させることができる方式である。
本発明は、OSの時間管理方式としてティックレスタイマ方式を採用し、OS独立割込みハンドラから周期的でないOS依存割込みハンドラを介してOSが管理しているタスクを起動することを目的とする。
本発明に係る計算機装置は、デバイスに接続され、OSを実行するOS実行部であってOS依存割込みを起こすOS実行部を備えた計算機装置において、
フラグを記憶する記憶部と、
前記デバイスの状態に起因するOS独立割込みが発生すると、タスクを起動するか否かを判定し、前記タスクを起動する場合に、前記フラグをオンにすると共に前記OS実行部に前記OS依存割込みを起こさせるOS独立割込み処理部と、
前記OS実行部により前記OS依存割込みが起こされると、前記フラグがオンであるか否かを判定し、前記フラグがオンである場合に、前記タスクを起動すると共に前記フラグをオフにするOS依存割込み処理部とを備えた。
本発明に係る計算機装置では、OS独立割込み処理部が、OS独立割込みが発生すると、タスクを起動するか否かを判定し、タスクを起動する場合に、フラグをオンにすると共にOS実行部にOS依存割込みを起こさせる。また、OS依存割込み処理部は、OS依存割込みが起こされると、フラグがオンであるか否かを判定し、フラグがオンである場合に、タスクを起動すると共にフラグをオフにする。よって、本発明に係る計算機装置によれば、OS独立割込みが発生した場合に不定期にOS依存割込みを起こさせて、OS依存割込み処理部によりタスクを起動することができるので、CPUの使用効率を向上させること共に消費電力も削減することができる。
実施の形態1に係る計算機装置100の構成図。 実施の形態1に係るフラグ141の配列の構成例。 実施の形態1に係るフラグ141の要素番号とフラグ値との対応図。 実施の形態1に係る計算機装置100のタスク起動方法510およびタスク起動プログラム520のタスク起動処理S100を示すフローチャート。 実施の形態1に係るOS依存割込み処理S10を示すフローチャート。 実施の形態1に係るOS独立割込み処理S20を示すフローチャート。 実施の形態1に係るOS依存割込み処理S10の具体例で仮定する割込みの発生タイミングを示す図。 図7に対応するタイムアウトキューとタスク管理情報とを示す図。 OS依存割込みのみが発生した場合のOS依存割込み処理の具体例を示す図。 図9の処理の後、周期の開始時点から3msのT1時点においてOS独立割込みが発生した場合のOS依存割込み処理の具体例を示す図。 実施の形態1の変形例に係る計算機装置100の構成図。
以下、本発明の実施の形態について、図を用いて説明する。なお、各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。
実施の形態1.
***構成の説明***
図1を用いて、本実施の形態に係る計算機装置100の構成について説明する。
計算機装置100は、デバイス200に接続される。デバイス200は、デバイス200の状態に起因するOS独立割込み201を発生させる。デバイス200は、具体的には、モータ210あるいはセンサ220である。モータ210あるいはセンサ220といったデバイス200は、動作完了あるいはエラーを含む状態変更による割込みをOS独立割込み201として発生させる。また、計算機装置100は、デバイス200にOS独立割込み201を発生させる代わりに、タイマを用いて周期的にOS独立の割込みを発生させ、デバイス200の状態変更を監視してもよい。
図1に示すように、計算機装置100は、コンピュータである。
計算機装置100は、プロセッサ910、記憶装置920、入出力インタフェース930、割込みタイマ160、および計時タイマ170といったハードウェアを備える。記憶装置920は、メモリ921と補助記憶装置922とを含む。
計算機装置100は、機能構成として、OS依存割込み処理部110と、OS独立割込み処理部130と、OS実行部120と、記憶部140とを備える。OS依存割込み処理部110は、タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114とを備える。OS独立割込み処理部130は、タスク起動要求部131と、タイマ設定部132とを備える。
OS依存割込み処理部110は、OS依存割込みハンドラである。OS独立割込み処理部130は、OS独立割込みハンドラである。
タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114とは、OS依存割込みハンドラであるOS依存割込み処理部110により呼び出される。タスク起動要求部131と、タイマ設定部132とは、OS独立割込みハンドラであるOS独立割込み処理部130により呼び出される。
タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との機能は、ソフトウェアで実現される。
記憶部140は、メモリ921および補助記憶装置922により実現される。また、記憶部140は、メモリ921のみ、あるいは、補助記憶装置922のみで実現されてもよい。記憶部140の実現方法は任意である。フラグ141と前回実行時刻Tpとタイムアウトキュー143とはメモリ921に記憶される。タイムアウトキュー143には残り時間144が設定される。タスク145は補助記憶装置922に記憶される。
プロセッサ910は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。プロセッサ910は、演算処理を行うIC(Integrated Circuit)である。プロセッサ910は、CPU(Central Processing Unit)あるいはMPU(Micro−Processing Unit)である。
補助記憶装置922は、具体的には、ROM(Read Only Memory)、フラッシュメモリ、または、HDD(Hard Disk Drive)である。メモリ921は、具体的には、RAM(Random Access Memory)である。
入出力インタフェース930は、入力インタフェースとして機能するとともに出力インタフェースとして機能する。
入力インタフェースとして機能する場合、入出力インタフェース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)である。
補助記憶装置922には、タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との機能を実現するプログラムが記憶されている。タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との機能を実現するプログラムをタスク起動プログラム520ともいう。このプログラムは、メモリ921にロードされ、プロセッサ910に読み込まれ、プロセッサ910によって実行される。また、補助記憶装置922には、OSが記憶されている。OSの少なくとも一部がメモリ921にロードされる。そして、プロセッサ910はOSを実行しながら、タスク起動プログラム520を実行する。タスク145は、OSが割込みタイマ160を用いて提供するサービスコールにより起動される。
計算機装置100は、1つのプロセッサ910のみを備えていてもよいし、複数のプロセッサ910を備えていてもよい。複数のプロセッサ910がタスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との機能を実現するプログラムを連携して実行してもよい。
タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との処理の結果を示す情報、データ、信号値、および、変数値は、計算機装置100の補助記憶装置922、メモリ921、または、プロセッサ910内のレジスタまたはキャッシュメモリに記憶される。
タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD(Digital Versatile Disc)といった可搬記録媒体に記憶されてもよい。
なお、タスク起動プログラムプロダクトとは、タスク起動プログラム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は、具体的には、フリーランニングタイマ機能を用いたタイマである。
タスク起動要求部131は、デバイス200の状態に起因するOS独立割込み201が発生すると、タスク145を起動するか否かを判定する。タスク起動要求部131は、タスク145を起動する場合に、フラグ141をオンにすると共にOS実行部120にOS依存割込み202を起こさせる。タスク145は、OSが管理する任意のタスクである。フラグ141をオンにするとは、フラグを立てることであり、具体的には、値を「1」に設定する。
フラグ141は、それがタスク起動要求部131によって立てられた場合に、どのデバイス200に対応するものか判定可能なデータ構造で構成される。また、フラグ141のデータ構造は、タスク145が複数存在する場合にどのタスク145を起動すべきかについても判定可能にする。また、フラグ141は、複数存在してもよい。フラグ141は、通知要求フラグともいう。
図2を用いて、本実施の形態に係るフラグ141の配列の構成例について説明する。図2に示すように、フラグ141には、要素番号とフラグ値とが対応付けられている。ここで、要素番号は、予め各デバイスに紐付けられている。各デバイスについてタスク起動が必要な場合に、各デバイスに対応する要素番号のフラグ値を「1」にする。
図3は、本実施の形態に係るフラグ141による要素番号とフラグ値との対応について示す図である。図3に示すように、要素番号に対応するフラグ値が「0」の場合は、要素番号に紐付けられたデバイスの通知要求が無いことを意味する。また、要素番号に対応するフラグ値が「1」の場合は、要素番号に紐付けられたデバイスの通知要求が有ることを意味する。
フラグ141を上述したような構成にすることで、タスク起動判定部111が通知要求がどのデバイスに関するものかを特定でき、そして適切なタスクを起動させることが可能となる。
タイマ設定部132は、割込みタイマ160にカウンタ値を設定することによりOS実行部120にOS依存割込み202を起こさせる。具体的には、タイマ設定部132は、割込みタイマ160にカウンタ値として、0ms、1msあるいは0.5msのように直ちにカウンタ値が0になるような値を設定する。
OS実行部120は、割込みタイマ160を用いてOS依存割込み202を起こす。具体的には、OS実行部120は、割込みタイマ160のカウンタ値が0になった場合にOS依存割込み202を起こす。
タスク起動判定部111は、OS実行部120によりOS依存割込み202が起こされると、フラグ141がオンであるか否かを判定する。タスク起動判定部111は、フラグ141がオンである場合に、タスク145を起動すると共にフラグ141をオフにする。フラグ141をオフにするとは、フラグを落とすことであり、具体的には、値を「0」に設定する。すなわち、タスク起動判定部111は、フラグ141の状態によってタスク145を起動させるとともにフラグ141をオフにする。具体的には、フラグ141に「0」を設定する。
システム時刻管理部112は、計時タイマ170から取得した現在のシステム時刻である現在時刻と、前回取得したシステム時刻である前回実行時刻Tpとから、経過時間を算出する。
タイムアウト処理部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を繰り返す。
<OS依存割込み処理S10>
図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をオフにする。
ステップS11において、タスク起動判定部111は、フラグ141が立っているか否かを判定する。フラグ141が立っている場合、処理はステップS12に進む。フラグ141がオフの場合、処理はステップS13に進む。
ステップS12において、タスク起動判定部111は、実行すべきタスク145をOSが提供するサービスコールを用いて起動させ、フラグ141をオフにする。処理はシステム時刻管理部112により実行されるステップS13に移る。
次に、ステップS13において、システム時刻管理部112は、システム時刻の計時タイマ170から、現在のシステム時刻を実行時刻Tnとして取得する。
ステップS14において、システム時刻管理部112は、前回の割込み発生時に予め記憶部140に記憶しておいた前回実行時刻Tpを取得する。システム時刻管理部112は、前回実行時刻Tpと実行時刻Tnとを比較し、前回実行時刻Tpから実行時刻Tnまでの経過時間Tkを算出する。前回実行時刻Tpの初期値は0である。処理はタイムアウト処理部113により実行されるステップS15に移る。
ステップS15において、タイムアウト処理部113は、システム時刻管理部112により算出された経過時間Tkに基づいて、タスクあるいはアラームハンドラのタイムアウト処理を行う。タイムアウト処理の具体例については後で説明する。処理はタイムアウト設定部114により実行されるステップS16に移る。
ステップS16において、タイムアウト設定部114は、システム時刻管理部112において取得した実行時刻Tnを、前回実行時刻Tpとして記憶部140に記憶する。
そして、ステップS17において、タイムアウト設定部114は、タイムアウトキュー143の先頭要素に設定された残り時間144を調べ、最も残り時間144の小さいものから次回割込み時刻Tfを割り出す。
最後に、ステップS18において、タイムアウト設定部114は、次回割込み時刻Tfにシステムクロックの割込みタイマ160の割込みが発生するように、割込みタイマ160のカウンタ値を設定する。
以上で、OS依存割込み処理S10を終了する。
<OS独立割込み処理S20>
図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を起こさせる。
ステップS21において、タスク起動要求部131は、タスク145の起動の要否を判定する。タスク起動要求部131は、任意の条件に基づいて、タスク145の起動の要否を判定する。タスク145の起動が必要な場合、処理はステップS22に進む。タスク145の起動が不要な場合、処理は終了する。
ステップS22において、タスク起動要求部131は、フラグ141を立てる。処理はタイマ設定部132により実行されるステップS23に移る。
ステップS23において、タイマ設定部132は、直ちにOS依存割込み202が発生するように割込みタイマ160のカウンタ値を上書き設定する。具体的には、タイマ設定部132は、直ちにOS依存割込み202が発生するように、割込みタイマ160を0ms、1msあるいは2msといったカウンタ値に設定する。
以上でOS独立割込みハンドラ処理S20を終了する。
なお、タイマ設定部132により設定される割込みタイマ160のカウンタ値は、任意の条件に応じて動的に決定してもよい。具体的には、前回、カウンタ値を書き換えた時点から経過時間が短い場合は、タイマ設定部132は、意図的に大きいカウンタ値を設定してもよい。あるいは、タイマ設定部132は、カウンタ値の上書き処理を実施しないとしてもよい。このようなカウンタ値の設定処理は、タイマ設定部132の機能の一部として提供してもよい。あるいは、カウンタ値の決定を実施するか否かを判定するための処理部が、カウンタ値の設定処理を実行してもよい。また、カウンタ値の書き換えを実施するか否かを判定するための処理部が、カウンタ値の設定処理を実行してもよい。
また、本実施の形態では、タスク起動判定部111がタスクの起動の要否を判定する処理を、タイマ割込みに伴って発生するOS依存割込みの処理内で実施していた。しかし、タスク起動判定部111は、タスクの起動の要否を判定する処理を、他の要因で発生する割込みの処理内で実施してもよい。
ここで、図7から図10を用いて、本実施の形態に係る計算機装置100によるOS依存割込み処理S10の具体例について説明する。
図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の内容を参照し、タスクの処理を実行する。
図9は、OS依存割込みのみが発生した場合のOS依存割込み処理の具体例を示す図である。図9を用いて、OS依存割込みのみが発生した場合の図5のステップS15からステップS18の処理の具体例について説明する。また、以下の(11)から(13)は、図9に示した(11)から(13)に対応する。
ステップ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は、図9の処理の後、周期の開始時点から3msのT1時点においてOS独立割込みが発生した場合のOS依存割込み処理の具体例を示す図である。
図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)である。通信装置はデータを通信する通信部として機能する。レシーバはデータを受信する受信部として機能し、トランスミッタはデータを送信する送信部として機能する。
また、本実施の形態では、タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との機能がソフトウェアで実現される。しかし、変形例として、タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との機能がハードウェアで実現されてもよい。
図11を用いて、本実施の形態の変形例に係る計算機装置100の構成について説明する。
図11に示すように、計算機装置100は、処理回路909、入出力インタフェース930、割込みタイマ160および計時タイマ170といったハードウェアを備える。
処理回路909は、上述したタスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との機能および記憶部140を実現する専用の電子回路である。処理回路909は、具体的には、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA、ASIC、または、FPGAである。GAは、Gate Arrayの略語である。ASICは、Application Specific Integrated Circuitの略語である。FPGAは、Field−Programmable Gate Arrayの略語である。
タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との機能は、1つの処理回路909で実現されてもよいし、複数の処理回路909に分散して実現されてもよい。
別の変形例として、計算機装置100の機能がソフトウェアとハードウェアとの組合せで実現されてもよい。すなわち、計算機装置100の一部の機能が専用のハードウェアで実現され、残りの機能がソフトウェアで実現されてもよい。
計算機装置100のプロセッサ910、記憶装置920、および、処理回路909を、総称して「プロセッシングサーキットリ」という。つまり、計算機装置100の構成が図1および図11のいずれに示した構成であっても、タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との機能および記憶部140は、プロセッシングサーキットリにより実現される。
「部」を「工程」または「手順」または「処理」に読み替えてもよい。また、「部」の機能をファームウェアで実現してもよい。
***本実施の形態の効果の説明***
本実施の形態に係る計算機装置100によれば、フラグを立てるとともにOS依存割込みを発生させる。そのため、周期的なOS依存割込みでフラグを監視しなくても、任意の時にタスクを起動させることができる。よって、本実施の形態に係る計算機装置100によれば、OSの時間管理方式としてティックレスタイマ方式の採用できるとともに、CPU使用率および消費電力を抑えることができる。さらに、本実施の形態に係る計算機装置100によれば、フラグを周期的にチェックする必要がないため、割込みタイマで設定可能な最短時間で通知要求に応答することが可能となる。
本実施の形態に係る計算機装置100によれば、タイムアウト設定部により設定された時刻よりも早く、OS依存割込みを発生させることができ、タスクを起動することが可能となる。
本実施の形態に係る計算機装置100によれば、システム時刻を管理するシステム時刻管理部を備える。よって、本実施の形態に係る計算機装置100によれば、タイマ設定部により割込みタイマのカウンタ値が上書きされた場合でも、タスクおよびアラームハンドラを正しい時に動作させることができる。さらに、本実施の形態に係る計算機装置100は、タスクのタイムアウトキューおよびイベントハンドラキューを管理すると共に割込みタイマのカウンタ値を設定するタイムアウト設定部を備える。よって、本実施の形態に係る計算機装置100によれば、タイマ設定部により割込みタイマのカウンタ値が上書きされた場合でも、OS依存割込みを正しい時に動作させることができる。
本実施の形態では、タスク起動判定部111と、システム時刻管理部112と、タイムアウト処理部113と、タイムアウト設定部114と、タスク起動要求部131と、タイマ設定部132と、OS実行部120との各々が独立した機能ブロックとして計算機装置100を構成している。しかし、上述した実施の形態のような構成でなくてもよく、計算機装置100の構成は任意である。また、計算機装置100の機能ブロックは、上述した実施の形態で説明した機能を実現することができれば、任意である。これらの機能ブロックの他のどのような組み合わせにより計算機装置を構成しても構わない。また、これらの機能ブロックを、任意のブロック構成により、計算機装置を構成しても構わない。
また、計算機装置は、1つの装置でもよいし、複数の装置から構成された計算機システムでもよい。
実施の形態1について説明したが、この実施の形態のうち、複数の部分を組み合わせて実施しても構わない。あるいは、この実施の形態のうち、1つの部分を実施しても構わない。その他、この実施の形態の複数の部分を、全体としてあるいは部分的に、どのように組み合わせて実施しても構わない。
なお、上述した実施の形態は、本質的に好ましい例示であって、本発明、その適用物および用途の範囲を制限することを意図するものではなく、必要に応じて種々の変更が可能である。
100 計算機装置、110 OS依存割込み処理部、130 OS独立割込み処理部、120 OS実行部、140 記憶部、111 タスク起動判定部、112 システム時刻管理部、113 タイムアウト処理部、114 タイムアウト設定部、131 タスク起動要求部、132 タイマ設定部、141 フラグ、143 タイムアウトキュー、144 残り時間、145 タスク、160 割込みタイマ、170 計時タイマ、200 デバイス、210 モータ、220 センサ、201 OS独立割込み、202 OS依存割込み、510 タスク起動方法、520 タスク起動プログラム、S10 OS依存割込み処理、S20 OS独立割込み処理、S100 タスク起動処理、Tp 前回実行時刻、Tn 実行時刻、Tf 次回割込み時刻、Tk 経過時間、909 処理回路、910 プロセッサ、920 記憶装置、921 メモリ、922 補助記憶装置、930 入出力インタフェース。

Claims (4)

  1. デバイスに接続され、OS(オペレーティングシステム)を実行するOS実行部であって、次回起動される時刻である次回割込み時刻までの残り時間であって割込みタイマのカウンタ値に設定される残り時間が、タイムアウトキューに設定されているOS依存タスクを起動するOS依存割込みを起こすOS実行部を備えた計算機装置において、
    フラグを記憶する記憶部と、
    前記デバイスの状態に起因するOS独立割込みが発生すると、前記デバイスに対応するOS独立タスクを起動するか否かを判定し、前記OS独立タスクを起動する場合に、前記フラグをオンにすると共に、前記割込みタイマカウンタ値を上書きすることにより前記OS実行部に前記OS依存割込みを起こさせるOS独立割込み処理部と、
    前記OS実行部により前記OS依存割込みが起こされると、前記フラグがオンであるか否かを判定し、前記フラグがオンである場合に、前記OS独立タスクを起動すると共に前記フラグをオフにするOS依存割込み処理部と
    を備え、
    前記OS依存割込み処理部は、
    前記OS独立タスクを起動すると、前回、前記OS依存タスクが起動された時刻である前回実行時刻と現在時刻とを取得し、前回実行時刻から現在時間までの経過時間を算出し、前記経過時間と前記OS依存タスクのうち最初に実行される先頭タスクの前記残り時間とに基づいて、前記先頭タスクが前記次回割込み時刻に実行されるように前記割込みタイマのカウンタ値を再設定するタイムアウト設定部を備えた計算機装置。
  2. 前記タイムアウト設定部は、
    前記残り時間から前記経過時間を減じた値が0より大きい場合に、前記残り時間から前記経過時間を減じた値を前記カウンタ値に再設定し、前記残り時間から前記経過時間を減じた値が0以下の場合に、前記先頭タスクが直ちに実行されるように前記割込みタイマのカウンタ値を再設定する請求項1に記載の計算機装置。
  3. デバイスに接続され、OS(オペレーティングシステム)を実行するOS実行部であって、次回起動される時刻である次回割込み時刻までの残り時間であって割込みタイマのカウンタ値に設定される残り時間が、タイムアウトキューに設定されているOS依存タスクを起動するOS依存割込みを起こすOS実行部を備えた計算機装置のタスク起動方法において、
    OS独立割込み処理部が、前記デバイスの状態に起因するOS独立割込みが発生すると、前記デバイスに対応するOS独立タスクを起動するか否かを判定し、前記OS独立タスクを起動する場合に、フラグをオンにすると共に、前記割込みタイマカウンタ値を上書きすることにより前記OS実行部に前記OS依存割込みを起こさせ、
    OS依存割込み処理部が、前記OS実行部により前記OS依存割込みが起こされると、前記フラグがオンであるか否かを判定し、前記フラグがオンである場合に、前記OS独立タスクを起動すると共に前記フラグをオフにし
    前記OS依存割込み処理部が、前記OS独立タスクを起動すると、前回、前記OS依存タスクを起動した時刻である前回実行時刻と現在時刻とを取得し、前回実行時刻から現在時刻までの経過時間を算出し、前記経過時間と前記OS依存タスクのうち最初に実行される先頭タスクの前記残り時間とに基づいて、前記先頭タスクが前記次回割込み時刻に実行されるように前記割込みタイマのカウンタ値を再設定するタスク起動方法。
  4. デバイスに接続され、OS(オペレーティングシステム)を実行するOS実行部であって、次回起動される時刻である次回割込み時刻までの残り時間であって割込みタイマのカウンタ値に設定される残り時間が、タイムアウトキューに設定されているOS依存タスクを起動するOS依存割込みを起こすOS実行部を備えた計算機装置のタスク起動プログラムにおいて、
    前記デバイスの状態に起因するOS独立割込みが発生すると、前記デバイスに対応するOS独立タスクを起動するか否かを判定し、前記OS独立タスクを起動する場合に、フラグをオンにすると共に、前記割込みタイマカウンタ値を上書きすることにより前記OS実行部に前記OS依存割込みを起こさせるOS独立割込み処理と、
    前記OS実行部により前記OS依存割込みが起こされると、前記フラグがオンであるか否かを判定し、前記フラグがオンである場合に、前記OS独立タスクを起動すると共に前記フラグをオフにするOS依存割込み処理と、
    前記OS独立タスクを起動すると、前回、前記OS依存タスクを起動した時刻である前回実行時刻と現在時刻とを取得し、前回実行時刻から現在時刻までの経過時間を算出し、前記経過時間と前記OS依存タスクのうち最初に実行される先頭タスクの前記残り時間とに基づいて、前記先頭タスクが前記次回割込み時刻に実行されるように前記割込みタイマのカウンタ値を再設定する処理と
    をコンピュータである前記計算機装置に実行させるタスク起動プログラム。
JP2017563144A 2017-01-25 2017-01-25 計算機装置、タスク起動方法およびタスク起動プログラム Expired - Fee Related JP6316522B1 (ja)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 富士通株式会社 情報処理装置及びタイマ設定方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
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
WO2018138798A1 (ja) 2018-08-02
DE112017006454B4 (de) 2020-06-10
TW201828046A (zh) 2018-08-01
CN110192183A (zh) 2019-08-30
DE112017006454T5 (de) 2019-10-02
CN110192183B (zh) 2023-07-07
US20200004581A1 (en) 2020-01-02
US10983823B2 (en) 2021-04-20
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
US9372717B2 (en) Interruption of chip component managing tasks
US20130031538A1 (en) Updating Secure Pre-boot Firmware In A Computing System In Real-time
KR101551321B1 (ko) 휴대용 컴퓨팅 디바이스에서 요청들을 스케쥴링하기 위한 방법 및 시스템
JP6060756B2 (ja) 周波数制御装置、周波数制御方法および周波数制御プログラム
US8453013B1 (en) System-hang recovery mechanisms for distributed systems
JPWO2016114077A1 (ja) データ判定装置、データ判定方法及びプログラム
CN116382462B (zh) 振动方法和振动装置
JP6316522B1 (ja) 計算機装置、タスク起動方法およびタスク起動プログラム
US9311137B2 (en) Delaying interrupts for a transactional-execution facility
JP2006079345A (ja) マイクロコンピュータ
EP3855285A1 (en) System, apparatus and method for latency monitoring and response
CN117319376A (zh) 文件下载控制方法、装置、电子设备及存储介质
TW201441932A (zh) 處理裝置與系統程式更新方法
JPWO2008117411A1 (ja) グリッド処理制御装置
US20150123875A1 (en) Power management device and method
WO2013179954A1 (ja) 電子装置
US20180011526A1 (en) Electronic device and method for operating the same
JP5039215B2 (ja) ノイズ低減回路、電子機器、ノイズ低減方法
JP2012156919A (ja) 画像形成装置
CN116028126A (zh) 电子设备、多操作系统的运行方法、装置和存储介质
CN113342427A (zh) 程序控制方法及装置
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