2009-08-12 6 views
23

「Tickless OS」という言葉が聞こえました。tickless OSとは何ですか?

  • この意味は?
  • どのOSがticklessですか?
  • ノンティックでないOSとどう違うのですか?
+0

2006年以来tickless - > windows 8とlinuxを参照してください。これは、CPUを長時間C7ディープスリープ状態にすることでバッテリーを節約するのに役立ちます。 –

+1

驚くべき答えはQuoraでも見られます。http://www.quora.com/Operating-Systems/What-is-a-tickless-kernel – zavg

+1

これはくすぐりの影響を受けないOSです。 – nick

答えて

22

OS用語の「tick」は、OSがウェイクアップして保留中のイベントを処理する間隔です。

100Hzのチックがある場合、1秒間に100回、OSが起動し、タイマーの期限が切れていないかどうかを確認し、もしあればアクションを実行してから再びスリープ状態になります。ティックレスシステムでは、処理する準備ができているかどうかを毎秒100回目覚めさせるのではなく、OSは次のタイマーが期限切れになる時期を見てから、その時間までスリープします。

CPUがアクティブな場合は、明らかにどのような種類のスリープモードにもなりません。カーネルはスケジューリングの目的で割り込みを設定します。 1つのプロセスだけが実行されているときに、CPUや(最近のLinuxカーネルでは)何も実行されていないときには、(コメントが指摘するように)ちょっとしたことがありません。

Linuxは、コンパイル時のスイッチを使用して、目盛りの有無にかかわらず実行できます。他のシステムについてはわかりません。

+1

これは実際にはfalseです。私は、最初はあまり意味がないと思った。しかし、今日は、ティックレスカーネルは存在しません。それらは "フルダイナミックティック"で、0または1のタスクが実行されているときに定期タイマーが非アクティブになることを意味しますが、残りの時間は非常に多く存在します。 (カーネル2.16.18と3.0.xの間で、NO_HZオプションは、0タスクが実行されているときにのみ目盛りを無効にしました。3.1は完全なdynです) –

+0

@ v.oddou、明確なテキストを追加しました。私はプロセスが実行されていないケースについて話そうとしていましたが、あまり明確ではありませんでした。 –

+0

良い良い説明。他のシステムについて:私はWindows 8が "tickless"であると聞きました。私は内部についての本を読まなかったので、MSの "tickless"の実装がlinuxと同じであるかどうかわかりません。 –

9

このリンクは、いくつかの洞察を提供します:Avoiding Processor Wake-Ups Saves Power

フラグメント上のリンク、

から最新の プロセッサによって提供される 低電力状態の最高の利点を活用するためには、オペレーティングシステムを可能であれば、プロセッサが の状態にとどまるように、 があります。 A Linux * オペレーティングシステムの長年にわたる機能は、 のようなサービスをサポートしている オペレーティングシステムが内部の 時間を維持し、さまざまなアプリケーションとプロセスによってCPU使用率を監視するようなタイマーダンプです。

そのタイマーティックは有用であるが、それ はまた、などの多くの 1,000倍の毎秒 に低電力状態である場合、プロセッサを覚醒の不幸な副作用 を有しています。事実、いくつかの 状況の下では、ティックは プロセッサが深い 省電力状態にまったく入るのを防ぐことができます。明らかに、 この効果は、 システムでは、電力使用に悪影響を与える可能性があります( システム)。

+0

リンクは有効期限が切れています – Alchemist