UNIX の C言語:getloadavg()でロードアベレージの取得
技術ドキュメント目次 -> UNIX の C言語 -> getloadavg()でロードアベレージの取得本技術ドキュメントは、2002~2004年頃に作成したものが多いです。
内容が古くなっていることもあるかと思いますが、ご了承ください。
【低価格SSL証明書】弊社運営の低価格SSL証明書販売サイト、翌月末払いなど請求書払いも可能。
◆ getloadavg()でロードアベレージの取得
getloadavg() 関数を用いるとことで、UNIXのC言語のプログラム内からロードアベレージ値の取得を行うことができます。
◆ getloadavg()サンプルプログラム
過去1分、5分、15分のロードアベレージ値を出力するようなサンプルプログラムを次に記載しますので、よろしければ参考にされてください。
※RedHat Linux 7.3 と FreeBSD 5.3 でコンパイルが通ることを確認しました。
/* * getloadavg.c * * Copyright (C) 2006 Slogical Corporation */ #include <stdio.h> #include <stdlib.h> int main (int argc, char **argv) { /* 変数定義 */ double val[3]; val[0] = val[1] = val[2] = -1; /* getloadavg実行 */ getloadavg(val, 3); /* 取得できた値の出力 */ printf("last 1 min average: %f\n", val[0]); printf("last 5 min average: %f\n", val[1]); printf("last 15 min average: %f\n", val[2]); return 0; } |
なお、実行すると次のような値が出力されます。
$ ./getloadavg last 1 min average: 0.000000 last 5 min average: 0.000000 last 15 min average: 0.000000 $ |
■ UNIX の C言語 についての他のドキュメント
- iconv()で文字コード変換
- getloadavg()でロードアベレージの取得
- getpass()でパスワード入力時の制御
- forkとexec
- gccのstaticオプション
■ 他のグループのドキュメント
Apache / Linux / FreeBSD / OpenSSL / Perl / HTTPプロトコル / Jakarta Tomcat / Java / NetBSD / Oracle / PostgreSQL / UNIX の C言語 / UNIX のコマンド / Windows / bind / システム運用TIPS