"複数のタスクに対して順次実行権を付与することで、これらのタスクを並行して動作させる車載装置であって、自車両の状態を判別する判別手段と、前記判別手段により判別された前記自車両の状態に応じて、それぞれの前記タスクを動作させる頻度を変更する変更手段と、を備えることを特徴とする車載装置。請求項1に記載の車載装置において、前記自車両の状態とは、自車両の運転を開始させるためのスイッチの操作に基づく状態であること、を特徴とする車載装置。請求項1に記載の車載装置において、自車両は、駆動力を得るためのエンジンとモータとが搭載されたハイブリッド車として構成されており、前記自車両の状態とは、前記エンジン及び前記モータの稼動状態に基づく状態であること、を特徴とする車載装置。請求項1から請求項3のうちのいずれか1項に記載の車載装置において、前記車載装置は、周期的に到来するタイミングを生成して基準サイクルとし、該基準サイクルの1周期であるタイムスライスにおいて、前記タスクに順次前記実行権を付与し、前記タスクには、それぞれ、前記タイムスライスにおいて前記実行権が付与される時間である1周期内動作時間と、前記タイムスライスにおいて前記実行権が付与される順番である優先順位とが設定されており、前記変更手段は、前記1周期内動作時間と前記優先順位とのうちの少なくとも一つを変更することで、それぞれの前記タスクを動作させる頻度を変更すること、を特徴とする車載装置。請求項1から請求項3のうちのいずれか1項に記載の車載装置において、それぞれの前記タスクには、単位時間あたりに前記実行権が付与される時間である動作時間が設定されており、前記変更手段は、前記タスクに設定されている前記動作時間を変更することで、それぞれの前記タスクを動作させる頻度を変更すること、を特徴とする車載装置。請求項1から請求項5のうちのいずれか1項に記載の車載装置において、前記タスクは、ある装置において実現される機能を再現するためのプログラムである仮想マシンとして構成されていること、を特徴とする車載装置。複数のタスクに対して順次実行権を付与することで、これらのタスクを並行して動作させる車載装置用のスケジューリングプログラムであって、自車両の状態を判別する判別手順と、前記判別手順により判別された前記自車両の状態に応じて、それぞれの前記タスクを動作させる頻度を変更する変更手順と、をコンピュータに実行させることを特徴とするスケジューリングプログラム。複数のタスクに対して順次実行権を付与することで、これらのタスクを並行して動作させる車載装置におけるスケジューリング方法であって、自車両の状態を判別する判別手順と、前記判別手段により判別された前記自車両の状態に応じて、それぞれの前記タスクを動作させる頻度を変更する変更手順と、を有することを特徴とするスケジューリング方法。ところで、制御系の機能は、エンジンの稼動状況等に応じて処理負荷が大きく変動すると考えられ、該機能のリアルタイム性を保証するためには、処理負荷が最大となる場合を想定して対応するタスクに動作時間を割り当てる必要がある。これにより、エンジンを安全に制御することが可能となるが、その反面、処理負荷が低い場合には該タスクに過剰に動作時間が割り当てられてしまい、CPUの使用効率が悪化してしまう。本願発明は上記課題に鑑みてなされたものであり、CPUを効率良く使用しつつ、タスクのスケジューリングを行うことができる車載装置を提供することを目的とする。上記課題に鑑みてなされた請求項1に記載の車載装置は、複数のタスクに対して順次実行権を付与することで、これらのタスクを並行して動作させるよう構成されており、自車両の状態を判別する判別手段と、判別手段により判別された自車両の状態に応じて、それぞれのタスクを動作させる頻度を変更する変更手段と、を備えることを特徴とする。このような車載装置によれば、自車両の状態毎に各タスクの処理負荷を予め測定し、各状態において、処理負荷が高くなるタスクが動作する頻度を上げると共に、処理負荷が低くなるタスクが動作する頻度を下げることができる。このため、CPUを効率良く使用しつつ、タスクのスケジューリングを行うことが可能となる。そして、これにより、CPUの性能を下げても十分なパフォーマンスを得ることができ、車載装置のコストを低減させることが可能となる。なお、自車両のエンジンの稼動状態に応じて、エンジンやブレーキ等を制御するタスクの処理負荷が大きく変動することが考えられる。そこで、請求項2に記載の車載装置では、車両の状態を、イグニッションスイッチやスタータスイッチ等といった、自車両の運転を開始させるためのスイッチの操作に基づく状態としている。また、エンジンとモータとから駆動力を得るハイブリット車においては、該エンジンやモータの稼動状態に応じて、これらに関連するタスクの処理負荷が大きく変動することが考えられる。そこで、請求項3に記載の車載装置では、自車両が、駆動力を得るためのエンジンとモータとが搭載されたハイブリッド車として構成されている場合において、自車両の状態を、エンジン及びモータの稼動状態に基づく状態としている。このような状態に応じて各タスクが動作する頻度を変更することで、CPUを効率良く使用することが可能となる。また、車載装置は、次のようにして各タスクが動作する頻度を変更しても良い。すなわち、請求項4に記載されているように、車載装置は、周期的に到来するタイミングを生成して基準サイクルとし、該基準サイクルの1周期であるタイムスライスにおいてタスクに順次実行権を付与すると共に、タスクに対し、それぞれ、各タイムスライスにおいて実行権が付与される時間である1周期内動作時間と、各タイムスライスにおいて実行権が付与される順番である優先順位を設定しても良い。そして、変更手段は、1周期内動作時間と優先順位とのうちの少なくとも一つを変更することで、それぞれのタスクを動作させる頻度を変更しても良い。また、請求項5に記載されているように、それぞれのタスクには、単位時間あたりに実行権が付与される時間である動作時間が設定されている場合であれば、変更手段は、タスクに設定されている動作時間を変更することで、それぞれのタスクを動作させる頻度を変更しても良い。このような構成によれば、車両の状態に応じて各タスクが動作する頻度を柔軟に変更することができる。また、仮想化技術により既存の車載装置のコンピュータを仮想化すると共に、仮想化されたコンピュータ上で該車載装置に搭載されているOSやアプリケーションを動作させることで、該車載装置を容易に再現できることが知られている。そして、仮想化技術により、既存の車載装置を再現するプログラムである仮想マシンを複数作成すると共に、これらの仮想マシンを1台の車載装置で稼動させることで、複数の車載装置を1台に統合することが提案されている。また、このようにして1台の車載装置で複数の仮想マシンを稼動させる場合には、各仮想マシンをタスクとしてスケジューリングを行うことが考えられる。そこで、請求項6に記載の車載装置は、タスクは、ある装置において実現される機能を再現するためのプログラムである仮想マシンとして構成されている。こうすることにより、例えば、1台の車載装置で複数の仮想マシンを並行して稼動させる場合において、CPUを効率良く使用することが可能となる。なお、請求項7には、請求項1に記載の車載装置におけるタスクのスケジューリングを行うスケジューリングプログラムが記載されている。このようなスケジューリングプログラムによれば、CPUを効率良く使用することが可能となる。また、請求項8には、請求項1に記載の車載装置におけるタスクのスケジューリング方法が記載されている。このような方法によれば、CPUを効率良く使用することが可能となる。以下、本発明の実施形態について図面を用いて説明する。なお、本発明の実施の形態は、下記の実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態を採りうる。[第一実施形態][構成の説明]まず、第一実施形態について説明する。第一実施形態のECU100は、エンジンにより駆動される車両に搭載されており、エンジン,ABS機能を有するブレーキ,エアバック等を制御する制御系の機能と、メータ,エアコン,キーレスエントリーシステム等を制御するボデー系の機能を有している。また、ECU100は、これらの機能以外にも、オーディオとしての機能やナビゲーション機能等といった情報系の機能を有していても良い。なお、これらの機能はいずれもリアルタイム性が要求されるが、制御系の機能に関しては、リアルタイム性が損なわれることで安全上の問題が生じるおそれがあるため、これらの機能の中で最もハードなリアルタイム性が要求される換言すれば、制御系の機能には、最も厳しい時間的制約が課される。また、ボデー系の機能に関しては、リアルタイム性が損なわれることで利便性や快適性等が悪化し、自車両の運転が困難となるおそれがあるが、情報系の機能に関しては、リアルタイム性が損なわれても利便性や娯楽性等が低下するといった程度であり、ボデー系の機能は、情報系の機能に比べより高いリアルタイム性が要求される。図1には、上記ECU100の概略構成と、ECU100を制御する制御プログラム1の構成を示すブロック図が記載されている。ECU100は、IG端子,ACC端子,B端子の三つの電源端子を有しており、電源管理ECU200は、自車両のイグニッションスイッチIGスイッチの操作状態に応じて異なる電源端子からECU100に電力を供給する。また、ECU100は、制御プログラム1を実行するCPU110と、各種機能を実現するための物理デバイス120とを有しており、制御プログラム1は、物理デバイス120における、フラッシュメモリ等の記憶保持動作が不要なデバイスから構成された記憶部図示なしに記憶されている。そして、制御プログラム1は、制御系の機能を実現するための制御系アプリ20と、ボデー系の機能を実現するためのボデー系アプリ30と、これらのアプリケーションを動作させるOS10とを有している。このOS10は、リアルタイムOSとして構成されており、制御系アプリ20を構成するAタスク21,Bタスク22や、ボデー系アプリ30を構成するCタスク31のスケジューリングを行うスケジューリング部11と、物理デバイス120からの信号を各アプリケーションに通知すると共に、各アプリケーションからの指示に応じて物理デバイス120を制御するデバイス制御部12とを有している。また、スケジューリング部11は、各タスクに実行権が付与される時間動作時間や、各タスクの優先順位を設定するスケジューラ設定部11aと、設定された動作時間や優先順位に従い各タスクに実行権を付与することで、これらのタスクを並行して動作させるスケジューラ実行部11bとを有している。[動作の説明]次に、第一実施形態の制御プログラム1の動作について説明する。1IGスイッチの操作状態について既に述べたように、電源管理ECU200は、IGスイッチの操作状態に応じて異なる電源端子からECU100に電力を供給するが、ECU100は、IGスイッチの操作に基づく換言すれば、電力供給に用いられる電源端子に基づく以下の運転状態を有する。すなわち、図2aに記載されているように、運転状態として、IGスイッチがOFFに設定されたACCOFF状態B端子のみから電力が供給されると、IGスイッチがACCに設定されたACCON状態,IGOFF直後状態B端子とACC端子とから電力が供給されると、IGスイッチがON或いはSTARTに設定されたIGON直後状態,IGON定常状態B端子、ACC端子、及びIG端子から電力が供給されるとが設けられている。そして、運転状態がACCOFF状態である場合にIGスイッチがACCに設定されるとACCON、運転状態はACCON状態となる。また、運転状態がACCON状態である場合においては、IGスイッチがON或いはSTARTに設定されるとIGON、運転状態はIGON直後状態となり、IGスイッチがOFFに設定されるとACCOFF、運転状態はACCOFF状態となる。また、運転状態がIGON直後状態である場合においては、当該状態となった後、予め定められた初期時間例えば100msが経過すると、運転状態はIGON定常状態となると共に、IGスイッチがACCに設定されるとIGOFF、運転状態はIGOFF直後状態となる。また、運転状態がIGON定常状態である場合においては、IGスイッチがACCに設定されるとIGOFF、運転状態はIGOFF直後状態となる。また、運転状態がIGOFF直後状態である場合においては、当該状態となった後、予め定められた終了時間例えば100msが経過すると、運転状態はACCON状態となると共に、IGスイッチがON或いはSTARTに設定されるとIGON、運転状態はIGON直後状態となる。2スケジューリングについて次に、ECU100に搭載されている制御プログラム1のスケジューリング部11にて行われる、各アプリケーションを構成するタスクのスケジューリングについて説明する。既に述べたように、制御系アプリ20,ボデー系アプリ30にはリアルタイム性が要求されており、これらのタスクには所定周期毎に割り当てられる動作時間を保証する必要がある。このため、スケジューリング部11は、周期的に到来するタイミングを生成して基準サイクルとすると共に、該基準サイクルの1周期をタイムスライスTSTimeSliceの略とも記載とし、さらに、各タスクについて、TSにおける動作時間である1周期内動作時間と、実行権が付与される順番である優先順位とを設定する。そして、各TSにおいて、優先順位に沿った順番で各タスクに実行権を付与すると共に、各タスクの動作時間実行権が付与される時間を、各自に設定された1周期内動作時間とすることで、リアルタイム性を保証した状態で各アプリケーションを動作させる。なお、このようなスケジューリング方法を、DefiniteSchedulingDSとも記載と記載する。また、IGスイッチがOFF或いはACCに設定されるACCOFF状態,ACCON状態,IGOFF直後状態においては、エンジンが停止するため、制御系アプリの処理負荷が低下する。このため、スケジューリング部11は、運転状態に応じて各アプリケーションを構成するタスクの動作時間を変更するよう構成されている。すなわち、図2bに記載されているように、スケジューリング部11では、運転状態に応じて異なる長さのTSが設定されていると共に、A~Cタスクの1TS内動作時間,優先順位が設定されたスケジューリングテーブルが、運転状態毎に個別に設けられている。各スケジュールテーブルでは、対応する運転状態において予測される処理負荷に基づき各タスクの優先順位,1TS内動作時間が設定されている。具体的には、エンジンが稼動しているIGON直後状態,IGON定常状態や、IGOFFがなされた直後の状態であり、エンジンを停止させるための各種処理が行われるIGOFF直後状態では、制御系アプリ20を構成するA,Bタスクは、ボデー系アプリ30を構成するCタスクよりも、1TS内動作時間が長く設定されると共に、優先順位が高く設定される。一方、エンジンが停止した後、終了時間が経過したACCON状態,ACCOFF状態では、A,Bタスクは、Cタスクよりも1TS内動作時間が短く設定されると共に、優先順位が低く設定される。そして、スケジューリング部11は、運転状態に応じてTSを切り替えると共に、運転状態に対応するスケジューリングテーブルを選択し、選択したスケジューリングテーブルに従いA~Cタスクに実行権を付与する。また、図3には、運転状態の変化により各タスクの動作時間が変化する様子を示すタイミングチャートが記載されている。該タイミングチャートが示すように、運転状態がACCON状態である場合には、スケジューリング部11のスケジューラ設定部11aは、TSを5msとすると共に、ACCON状態に対応するスケジューリングテーブル図2b-2を選択する。そして、スケジューラ実行部11bは、選択されたスケジューリングテーブルに従い、各TSにおいて、Cタスク31,Aタスク21,Bタスク22の順に、それぞれ、3ms,0.5ms,0.5msの動作時間を割り当てる。そして、IGスイッチの操作により運転状態がIGON直後状態となると、スケジューラ設定部11aは、TSを1msとすると共に、IGON直後状態に対応するスケジューリングテーブル図2b-4を選択する。そして、スケジューラ実行部11bは、選択されたスケジューリングテーブルに従い、各TSにおいて、Aタスク21,Bタスク22,Cタスク31の順に、それぞれ、0.4ms,0.4ms,0.1msの動作時間を割り当てる。その後、初期時間が経過し、運転状態がIGON定常状態となると、スケジューラ設定部11aは、TSを1msのまま維持し、IGON定常状態に対応するスケジューリングテーブル図2b-5を選択する。そして、スケジューラ実行部11bは、選択されたスケジューリングテーブルに従い、各TSにおいて、Aタスク21,Bタスク22,Cタスク31の順に、それぞれ、0.4ms,0.2ms,0.1msの動作時間を割り当てる。3各タスクの動作時間の変更について次に、運転状態に応じて各タスクに割り当てられる動作時間を変更する処理について、詳細に説明する。なお、以下の説明では、制御プログラム1を構成する部位が処理を行うといった記載がなされているが、これは、該部位に従い動作するCPU110により処理が行われるということを意味する。3-1状態変化検知処理についてまず、運転状態の変化を検知する状態変化検知処理について、図4aに記載のフローチャートを用いて説明する。なお、本処理は、制御プログラム1のスケジューリング部11のスケジューラ設定部11aにて定期的に実行される処理である。S305では、スケジューラ設定部11aは、デバイス制御部12を介して検出した各電源端子の電圧値に基づき現在の運転状態を判別すると共に、運転状態の変化を検知する。そして、運転状態が変化した場合にはS305:Yes、S310に処理を移行し、運転状態が変化していない場合にはS305:No、本処理を終了する。S310では、スケジューラ設定部11aは、スケジュールテーブル変更フラグをONし、S315に処理を移行する。S315では、スケジューラ設定部11aは、現在の運転状態を記憶し、本処理を終了する。3-2テーブル切替処理について次に、運転状態の変化に応じてTSやスケジュールテーブルを切り替えるテーブル切替処理について、図4bに記載のフローチャートを用いて説明する。なお、本処理は、スケジューラ設定部11aにて定期的に実行される処理である。S405では、スケジューラ設定部11aは、スケジュールテーブル変更フラグがONか否かを判定し、肯定判定が得られた場合にはS405:Yes、S410に処理を移行すると共に、否定判定が得られた場合にはS405:No、本処理を終了する。S410では、スケジューラ設定部11aは、現在の運転状態に応じてTSとスケジュールテーブルとを設定し、S415に処理を移行する。S415では、スケジューラ設定部11aは、スケジュールテーブル変更フラグをクリアし、本処理を終了する。[第二実施形態][構成の説明]第二実施形態においても、ECUは、第一実施形態と同様の制御系の機能とボデー系の機能を有するが、制御プログラムの構成が異なっており、第二実施形態では、各機能が仮想マシンVMVirtualMachineの略とも記載により実現される。ここで、VMについて説明する。VMとは、所定の装置において実現される機能の全部または一部を再現するためのプログラムであり、該装置に搭載されているプログラムの全部または一部をバイナリコードの状態で移植したプログラムや、後述する仮想CPU等から構成される。第二実施形態の制御プログラムは、制御系のECUを仮想化した第一VMと、ボデー系のECUを仮想化した第二VMとを有しており、これらのVMを並行して動作させることにより、制御系のECUとボデー系のECUにおいて実現されていた機能を、一つのECUにおいて同時に実現させる。図5には、第二実施形態におけるECU100の概略構成と、ECU100を制御する制御プログラム500の構成を示すブロック図が記載されている。ECU100は、第一実施形態と同様に構成されている。また、第二実施形態の制御プログラム500は、上述の第一VM520,第二VM530と、これらのVMを動作させるVM制御管理部510とを有している。まず、第一,第二VMについて説明する。第一VM520は、制御系のECUで稼動していたプログラムをバイナリコードの状態で移植したものであるエンジン制御系アプリ521,OS522と、これらをエミュレートするプログラムであり、いわゆる仮想化されたハードウェアに相当する仮想デバイス523,仮想CPU524を有している。また、エンジン制御系アプリ521は、Aタスク521aやBタスク521b等から構成されている。OS522は、Aタスク521a,Bタスク521b等のスケジューリングを行う周知のOSであり、リアルタイムOSとして構成されている。また、仮想CPU524は、エンジン制御系アプリ521やOS522のバイナリコードを解析して実行するプログラムとして構成されている。また、仮想デバイス523は、エンジン制御系アプリ521,OS522と、ECU100の物理デバイス120との間のI/Fとなるプログラムであり、エンジン制御系アプリ521,OS522は、仮想デバイス523にアクセスすることで物理デバイス120を制御する。また、第二VM530についても、ボデー系のECUで稼動していたプログラムをバイナリコードの状態で移植したものであるボデー系アプリ531,OS532と、第一VM520と同様の仮想デバイス523,仮想CPU524を有している。また、ボデー系アプリ531は、Cタスク531a等から構成されている。次に、VM制御管理部510について説明する。VM制御管理部510は、VMのスケジューリングを行うスケジューリング部511と、物理デバイス120からの信号を各VMの仮想デバイスに通知すると共に、該仮想デバイスからの指示に応じて物理デバイス120を制御するデバイス制御部512とを有している。また、スケジューリング部511は、各VMに実行権が付与される時間動作時間や、各VMの優先順位を設定するスケジューラ設定部511aと、設定された動作時間や優先順位に従い各VMに実行権を付与することで、これらのVMを並行して動作させるスケジューラ実行部511bとを有している。[動作の説明]次に、第二実施形態の制御プログラム500の動作について説明する。第二実施形態のECU100も、第一実施形態と同様、エンジンにより駆動される車両に搭載されると共に、電源管理ECU200から電力供給が行われ、運転状態として、ACCOFF状態,ACCON状態,IGOFF直後状態,IGON直後状態,IGON定常状態が設けられており、該運転状態は、IGスイッチの操作等に応じて変化する。また、第一,第二VM520,530にはリアルタイム性が要求されているため、第一実施形態と同様にDSにより各VMが動作される。すなわち、スケジューリング部511は、各VMについて、TSにおける動作時間である1周期内動作時間と、実行権が付与される順番である優先順位とを設定し、各TSにおいて、優先順位に応じた順番で各VMに実行権を付与すると共に、各VMの動作時間を各自に設定された1周期内動作時間とする。また、IGスイッチがOFF或いはACCに設定されるACCOFF状態,ACCON状態においては、エンジンが停止するため、エンジン制御系アプリ521が搭載されている第一VM520の処理負荷が低下する。このため、スケジューリング部511は、第一実施形態と同様にして、運転状態に応じて各VMの動作時間を変更するよう構成されている。すなわち、図6に記載されているように、スケジューリング部511では、運転状態に応じて異なる長さのTSが設定されていると共に、第一,第二VMの1TS内動作時間,優先順位が設定されたスケジューリングテーブルが、運転状態毎に個別に設けられている。第一実施形態と同様、各スケジュールテーブルでは、対応する運転状態において予測される処理負荷に基づき、各VMの優先順位,1TS内動作時間の長さが設定されている。そして、運転状態に応じてTSを切り替えると共に、運転状態に対応するスケジューリングテーブルを選択し、選択したスケジューリングテーブルに従い第一,第二VMに実行権を付与する。また、図7には、運転状態の変化により各VMの動作時間が変化する様子を示すタイミングチャートが記載されている。該タイミングチャートが示すように、運転状態がACCON状態である場合には、スケジューリング部511のスケジューラ設定部511aは、TSを5msとすると共に、ACCON状態に対応するスケジューリングテーブル図6bを選択する。そして、スケジューラ実行部511bは、選択されたスケジューリングテーブルに従い、各TSにおいて、第二VM530,第一VM520の順に、それぞれ、3ms,1msの動作時間を割り当てる。そして、IGスイッチの操作により運転状態がIGON直後状態となると、スケジューラ設定部511aは、TSを1msとすると共に、IGON直後状態に対応するスケジューリングテーブル図6dを選択する。そして、スケジューラ実行部511bは、選択されたスケジューリングテーブルに従い、各TSにおいて、第一VM520,第二VM530の順に、それぞれ、0.8ms,0.1msの動作時間を割り当てる。その後、初期時間が経過し、運転状態がIGON定常状態となると、スケジューラ設定部511aは、TSを1msのまま維持し、IGON定常状態に対応するスケジューリングテーブル図6eを選択する。そして、スケジューラ実行部511bは、選択されたスケジューリングテーブルに従い、各TSにおいて、第一VM520,第二VM530の順に、それぞれ、0.6ms,0.1msの動作時間を割り当てる。また、第二実施形態の制御プログラム500のスケジューラ設定部511aでは、それぞれ、第一実施形態と同様の状態変化検知処理,テーブル切替処理が実行される。これらの処理により、運転状態に応じてTSやスケジュールテーブルの変更が行われる。[第三実施形態]第一,第二実施形態では、エンジンにより駆動される車両に搭載されたECUでのタスクやVMのスケジューリングにおいて、運転状態に応じて、TS,優先順位,1TS内動作時間を変更することで、各タスク或いはVMが動作する頻度を変更するという構成について説明した。しかしながら、運転状態に限らず、他の車両の状態に応じて各タスク等が動作する頻度を変更しても良い。具体例を挙げると、エンジン及びモータにより駆動力を得るハイブリッド車に搭載され、運転手の操作に応じて該エンジン及びモータを制御することで車速を制御する1台の車速制御ECUにおいて、エンジン,モータのいずれから駆動力を得ているか駆動状態とも記載に応じて各タスク或いはVMが動作する頻度を変更しても良い。すなわち、車速制御ECUでは、エンジンを制御する1または複数のタスクエンジン制御タスクと、モータを制御する1または複数のタスクモータ制御タスクが設けられていると共に、第一実施形態の制御プログラム1と同様のOSが設けられており、該OSは、DSによりこれらのタスクを動作させる。また、図8に記載されているように、ハイブリッド車では、駆動状態として、エンジン,モータの双方から駆動力を得ていない停止状態と、エンジンのみから駆動力を得ているエンジン駆動状態と、モータのみから駆動力を得ているモータ駆動状態と、エンジン,モータの双方から駆動力を得ているエンジン/モータ駆動状態の4つの状態が存在し、各状態につき個別にスケジュールテーブルが設けられている。そして、第一,第二実施形態と同様、各スケジュールテーブルでは、各駆動状態において予測される処理負荷に基づき、各タスクの優先順位,1TS内動作時間が設定されている。そして、エンジン/モータ駆動状態,停止状態に対応するスケジュールテーブルでは、エンジン制御タスクの1TS内動作時間とモータ制御タスクの1TS内動作時間が同程度に設定される。一方、エンジン駆動状態に対応するスケジュールテーブルでは、エンジン制御タスクの優先順位をモータ制御タスクよりも高く設定すると共に、エンジン制御タスクの1TS内動作時間を、モータ制御タスクの1TS内動作時間よりも長く設定する。また、モータ駆動状態に対応するスケジュールテーブルでは、モータ制御タスクの優先順位をエンジン制御タスクよりも高く設定すると共に、エンジン制御タスクの1TS内動作時間を、モータ制御タスクの1TS内動作時間よりも短く設定する。そして、運転状態を駆動状態に置き換えて、第一実施形態と同様の状態変化検知処理,テーブル切替処理が実行され、駆動状態に応じたスケジュールテーブルにより各タスクのスケジューリングが行われる。こうすることにより、ハイブリット車に搭載される車速制御ECUにおいて、駆動状態に応じて各タスクが動作する頻度を変更することができる。[効果]第一~第三実施形態のECUによれば、IGスイッチの操作に基づく運転状態やエンジンやモータの駆動状態といった、自車両の状態に応じたスケジュールテーブルが個別に設けられている。そして、各スケジュールテーブルでは、予測される処理負荷に基づき各タスク或いはVMの優先順位,1TS内動作時間が設定されており、現在の自車両の状態に応じたスケジュールテーブルを用いてスケジューリングが行われる。このため、現在の自車両の状態に応じた最適な頻度で各タスク或いはVMを動作させることができ、CPUを効率良く使用することが可能となる。そして、これにより、CPUの性能を下げても十分なパフォーマンスを得ることができ、ECUのコストを低減させることが可能となる。[他の実施形態]1第一,第二実施形態のECUは、エンジンで駆動される車両に搭載されているが、これに限定されることは無く、該ECUは、例えば、ハイブリット車や電気自動車に搭載されていても良い。また、このような場合であれば、IGスイッチの操作に基づく運転状態に替えて、自車両を駆動するモータやエンジンを起動するスタータスイッチの操作に基づく運転状態に応じて、タスクやVMが動作する頻度を変更しても良い。このような場合であっても、同様の効果を得ることができる。2また、第一,第二実施形態では、リアルタイム性が要求されるタスク或いはVMを対象としてスケジューリングが行われている。しかしながら、本発明は、リアルタイム性が要求されないタスクを対象とする場合や、リアルタイム性が要求されるタスクとされないタスクが混在している場合に適用しても、同様の効果を得ることができる。また、スケジューリングの対象として、タスクとVMとが混在している場合であっても、本発明を適用することで同様の効果を得ることができる。3また、第一~第三実施形態では、TSと、各タスク或いはVMの1TS内動作時間と優先順位とを変更することで、車両の状態に応じて各タスク等が動作する頻度を変更している。しかしながら、各タスク等の優先順位のみを変更しても良いし、1TS内動作時間のみを変更しても良い。また、TSを変更せず、各タスク等の優先順位及び1TS内動作時間を変更しても良い。このような場合であっても、同様の効果を得ることができる。4第一~第三実施形態では、DSによりタスク或いはVMのスケジューリングが行われるが、スケジューリング方法はこれに限定されることは無い。具体的には、例えば、付与された実行権を自発的に放棄するようにタスク等を構成すると共に、各タスク等の1TS内動作時間を、その総和がTSよりも長くなるように設定し、ハードなリアルタイム性が要求されるタスクに対してのみ、各TSにて1TS内動作時間が割り当てられることを保証するように構成しても良い。そして、運転状態等の車両の状態に応じて各タスク等の優先順位,1TS内動作時間のうちの少なくとも一方を変更し、各TSでは、優先順位に沿った順番で、各タスクに対し、各自の1TS内動作時間にわたり実行権を付与しても良い。このような場合であっても、車両の状態に応じて各タスクが動作する頻度を変更することができ、同様の効果を得ることができる。[特許請求の範囲との対応]上記実施形態の説明で用いた用語と、特許請求の範囲の記載に用いた用語との対応を示す。第一,第三実施形態におけるOSと、第二実施形態におけるVM制御管理部が、スケジューリングプログラムに相当し、第一~第三実施形態におけるECUが、車載装置に相当する。また、第一,第二実施形態における運転状態と、第三実施形態のエンジン及びモータの稼動状態が、自車両の状態に相当する。また、第一,第三実施形態におけるタスクと、第二実施形態におけるVMが、タスクに相当する。また、状態変化検知処理のS305が判別手段,判別手順に、テーブル切替処理のS410が変更手段,変更手順に相当する。"