$ time (echo "scale=5000"; 4*a(1)" | bc -l)これで、C言語で、5000桁の円周率を計算しつつ、その処理時間を測ることができる。
2010年10月5日火曜日
負荷テスト目的で円周率の計算
※bc が入っていることが前提
2010年9月28日火曜日
2010年9月17日金曜日
ネットワークパケットの再生及び加工
PXEサーバの不具合の検証のため使用。
パケットの再生
# tcpreplay -i eth0 -v -p 1 【キャプチャファイル】でOK。 ただし、これは、宛先MACアドレスなどもそのまま再現するので、検証環境など、別端末で使用する際には、加工が必要。
パケットの加工
# tcprewrite --enet-dmac=【検証環境用のMACアドレス】 --infile=【キャプチャファイル】 --outfile=【加工後キャプチャファイル】これだと、送信先MACアドレスを書き換えて再生が可能
2010年1月8日金曜日
Stale NFS file handleとは
fj.os.linux/japan.comp.linuxを参照。
ファイルハンドルとは、オープンしているサーバ上のファイルを指し示すためにクライアント側が持っている識別子のことです。 その識別子が指し示しているファイルがサーバ上で無くなってしまったり、アクセスできなかったりした時(例えば、exportしていたファイルシステムが、サーバ側でローカルにumountされてしまった時とか)にこのエラーが起きます。
じゃあ、/proc/[pid]/fd は?
プロセスがオープンしたファイル各々に対するエントリを含むサブディレクトリ。 ファイルディスクリプタがファイル名で、 実際のファイルへのシンボリックリンクになっている。 したがって 0 は標準入力、1 は標準出力、2 は標準エラー出力、などとなる。マルチスレッドプロセスでは、メインスレッドがすでに終了している場合、 このディレクトリの内容は参照できない (スレッドの終了は通常 pthread_exit(3) を呼び出しにより行われる)。 コマンドライン引き数としてファイル名を受け取るが、引き数が 渡されなかった場合に標準入力から入力を受け取らないようなプログラムや、 コマンドライン引き数として書き込みファイルを受け取るが、引き数が 渡されなかった場合に標準出力に出力を行わないようなプログラムであっても、 /proc/[pid]/fd を使うことで標準入力や標準出力を使用できるようになる。 例えば、 -i を入力ファイルを指定するフラグ、 -o を出力ファイルを指定するフラグと仮定すると、以下のコマンドを 実行することにより、フィルタとして動作させることができる。サーバの返答が遅くなって、クライアントが「ファイルが無くなった」と錯覚してしまうようなことがあるのかな???? だとすると、同じFAQにある、 /proc/sys/net/ipv4/ipfrag_high_thresh /proc/sys/net/ipv4/ipfrag_low_thresh に、それぞれデフォルト値の倍の値を書き込む、という手段で改善されるのかも知れません。
2009年11月1日日曜日
ハードディスクのキャッシュ機能について
sd 0:2:0:0: [sda] Write cache: disabled, read cache: enabled, supports DPO and FUAハードディスクの書き込みキャッシュ機能のモードを表示
# hdparm -W1 /dev/sdaとしてWriteCache enabled になる
2009年6月8日月曜日
unix時間について
unix時間とは
UNIX時間またはUNIX時刻(UNIX time or POSIX time)とはコンピューターシステム上で日時を表す単位。UTCでの1970年1月1日真夜中(0時0分0秒)からの経過秒数(閏秒を加味しない)で表される。 UNIX系オペレーティングシステムだけでなく、他の多くのオペレーティングシステムにおいてもこの単位が用いられている。システム内部では32ビットまたは64ビットの符号付整数(signed int)で扱われていることが普通であり、特に32ビットで扱われている場合においては符号付整数が取れる最大値 2147483647 を超える時点で時刻を扱えなくなるという問題がある。これを2038年問題という。UNIX時刻の表示例
特異なUNIX時間の例
| UNIX時間 | UTC | JST |
| 0 | 1970-01-01T00:00:00 | 1970-01-01T09:00:00 |
| 100000000 | 1973-03-03T09:46:40 | 1973-03-03T18:46:40 |
| 1000000000 | 2001-09-09T01:46:40 | 2001-09-09T10:46:40 |
| 1234567890 | 2009-02-13T23:31:30 | 2009-02-14T08:31:30 |
| 2147483647 | 2038-01-19T03:14:07 | 2038-01-19T12:14:07 |
UNIX/Linuxのシェル上で、UNIX時間をUTCに変換する例
$ date -u -d '@1234567890'
UNIX/Linuxのシェル上で、UNIX時間をローカル時刻に変換する例
$ date -d '@1234567890'
unix時間を人間にわかりやすい形に成形する
$ echo unix時間 | awk '{ print strftime("%c",$1) }'
で、年月日時分秒が出せる
登録:
投稿 (Atom)
DNS named.root 更新確認スクリプト
#!/bin/bash # DNSのnamed.rootファイルの更新確認スクリプト # 最新版のnamed.rootファイルを取得し、差分を確認する。 # 更新履歴 # 2014.02.07 watari # お約束 export LANG=C ## 実行ディレクトリ #PR...
-
前回のスクリプトから、さらに機能追加して、壁紙ディレクトリを選択できるように改良した。 (しかもGUIで可能!) $ vi /usr/local/bin/wpchange #!/bin/bash # wallpaper changer # 2014.01.25 ver 1.0 w...
-
#!/bin/bash # DNSのnamed.rootファイルの更新確認スクリプト # 最新版のnamed.rootファイルを取得し、差分を確認する。 # 更新履歴 # 2014.02.07 watari # お約束 export LANG=C ## 実行ディレクトリ #PR...
-
$ vi /usr/local/bin/wpchange.sh --- ココカラ --- #!/bin/bash # wallpaper changer # 2014.01.25 watari # ver 1.0 # # お約束 ## 更新対象(壁紙ディレクトリ) WPDIR...