0

私は大学のコースワーク用に分散型の組み込みマルチマスター/スレーブアプリケーションを作成しています。その一環として、各システムの CPU 速度、CPU 使用率、および使用可能なメモリを、それぞれ大量のメモリなしでリアルタイムで決定する方法が必要です。ネットワークとデバイスの構成を自動的に調整するための CPU 消費。

システム コールを定期的にトリガーしたり、ファイルを読み込んだり (open-read-close ....) しても、実際にはリソースに優しいオプションとは言えません。これにはPOSIX準拠のソリューションが必要だと思いますか?

システムはすべてLinuxを OS として使用し、リリースにはLGPL または BSDライブラリのみを使用することになっています。

これまでのところ、基準に適合するソリューションは見つかりませんでした。

何か案は?

4

5 に答える 5

3

使用できますlibprocps。多くの Web ページで GPL と書かれていますが、LGPL です。コミットログを見る

于 2012-08-17T10:13:25.617 に答える
1

解決策につながるいくつかのヒントを次に示します。

1-カーネル情報

2- でその情報を取得できます/proc/cpuinfo。「Proc Filesystems」の Google。

3-システム情報を抽出する

4-ここで役立つかもしれない別の StackOverflow テーマ

そこから、自分自身を解決に導くことができると思います。

于 2012-08-17T09:42:45.567 に答える
0

hwlocはあなたが探しているものかもしれません。これはオープンソースであり、いくつかのプラットフォームもサポートしているようです。

于 2012-08-17T11:22:54.427 に答える
0

次の 3 つの手順を実行する必要があります。

1) system() または popen() を使用して、プログラムからシェル コマンドまたはユーティリティを呼び出します。(参考:こちら

2)このリストからユーティリティを決定し、使用率データを生成します。

3) プログラムからこのデータを取得し、解析して関連情報を収集します。

于 2012-08-17T11:00:33.667 に答える
0

私は以前にこのようなことをしなければなりませんでした.私の解決策は、システムファイル/proc/cpuinfoと/proc/meminfoのファイルパーサーを書くことでしたが、これがどれほど移植性があるかわかりません.自分)。

于 2012-08-17T09:47:22.753 に答える