ucosiiiシステムの概念

タイムスライスの概念:

各プログラム時間に割り当てられ、すなわちCPUタイムスライスが、各スレッドがそのタイムスライス、プロセスの実行を許可されている時間と呼ばれる時間期間が割り当てられ、それぞれのプログラムの表面は、同時に行われます。プロセスがまだタイムスライスの終わりに実行されている場合は、CPUが奪われ、別のプロセスに割り当てられます。タイムスライスの終了前にプロセスがブロックされたり終了した場合、CPUはすぐに切り替わります。CPUリソースを引き起こすことなく。マクロ時:私たちは、実行中に手に、各プログラムの行く手を複数のアプリケーションを開くことができます。しかし、微視的:CPUは一つだけであるため、プログラムの一部のみが公正に対処する方法を、必要なプロセスすることができ、タイムスライスの方法、順番に実行される各プログラムを導入することです。
----------------
免責事項:この記事は元の記事CSDNブロガー「カトゥッロ」であり、BY-SAの著作権契約CC 4.0に従って、再現し、元のソースのリンクを添付してくださいそしてこの文。
オリジナルリンクします。https://blog.csdn.net/u014647208/java/article/details/80529187

 

アイドルタスクとブロッキング遅延:

タスクがCPUを使用する権利を再取得するタスクの遅延時間は、タスクの実行を継続している場合、CPUは買い物や他のものに行くことができ、CPUを使用する権利を放棄する時期の遅延を阻止するコールでRTOSの遅延は、そのタスクは、遅延を必要とし、CPUリソースの完全な使用は、乾燥するために待っているのではなく、そうすることを。

タスクがブロックされた状態に入るように、遅延を必要とする場合には、そのCPUは、物事を行うに行きましたか?他のタスクが存在しない場合に実行することができ、RTOSがアイドルCPUのためのタスクを作成し、この時CPUはアイドルタスクを実行しています。

アイドルタスクの優先順位は、主にいくつかのクリーンアップシステムメモリを行うには、最低です。システムが作成したときに、メイン関数の先頭、および機能が一緒にタスクを作成するのではなく、この点にもっと注意を払う必要があります[ブート]アイドルタスクスケジューラです。

 

タイムスタンプ:

時間計測機能、コードのセクションの実行中の時間を知っていれば、あなたは明らかに、コードの効率性を知っているが長すぎるコードまたはポリシーを最適化するために調整することができます。 あなたは、コードすることができ、セグメントAは、実行する前の時点を記録TimeStartをコードセグメントで、Aの時間で完了レコードに実行ポイントをTimeEnd 、その後、コードセグメント何A の時間で実行TimeUseが等しいTimeEnd マイナスTimeStartを2時間のポイントがあります

TimeEnd TimeStart タイムスタンプと呼ばれるには、タイムスタンプは、実際の時間のポイントです。


クリティカルセクション:

各プロセスへのアクセス重要なリソースは、呼び出されたプログラムの一部であり、重要な領域クリティカル・リソースは、プロセスは、共有リソースを使用して一度だけ許可されます)。たびにプロセスがのみ入ることを許されているクリティカルセクションを他のプロセスが入らないようにして入力した後、。

スケジューリングプロセスは、クリティカルセクションの原則があるに入る:
①無料のクリティカル領域に入るために必要ないくつかのプロセスがある場合は、一度だけのプロセスに入ることができます。②1つの重要な領域より多くのではないの過程でいつでも。プロセスがそのクリティカルセクションに入っているように、プロセスのクリティカルセクションを入力するための他のすべての試みは待たなければなりません。③プロセスクリティカルセクションに他のプロセスが速やかにクリティカルセクションに入ることができるように、限られた時間内に終了します。プロセスが自分のクリティカルセクションにアクセスすることができない場合は④、あなたはあきらめなければならないCPUを「ビジーウェイト」現象を回避するために、プロセスを。

 

おすすめ

転載: www.cnblogs.com/xwtstudio/p/12609892.html