2009/04/28

ATAデバイスの電源

HDD の電源を制御できるのが ports/sysutils/ataidle

# ataidle -s /dev/デバイス          # HDD をスタンバイモードに移行する
drive set to standby immediately
# ataidle -i /dev/デバイス          # HDD をアイドルモードに移行する
drive set to idle immediately

バックアップ用のディスクなど普段使用していない HDD の制御に向いているかも。

2009/04/27

SSD のベンチマーク

今更ながらなのだが、 ふと思い立って EWF 化した type P の SDD ベンチマークを取得してみた。

Image: CristalDiskMark-SSD.JPG


Read/Write とも驚きの速度。 まぁ、Write はキャッシュへの書込みだから早いのは当然だけど。

参考までに 7,200rpm の Serial ATA HDD ドライブのベンチマークはこちら

Image: CristalDiskMark-HDD.JPG


早いと思っていた 7,200rpm の HDD がこんなに遅いとは…

2009/04/25

食事

ふと気がつくと、左手で茶碗をおさえ、右手で持ったスプーンで食べ物をすくって 上手に一人で食べている。
成長の早さには目を見張るものがある。 どんどん育っていく姿は非常に嬉しいのだが一抹の寂しさも残ってしまうのは、 エゴなのだろうか?

2009/04/24

Intel® Core™2 Duo E8500

職場でメイン環境として使っている PC の CPU を変更した。
Intel® Core™2 Duo の E8500 という CPU で、 動作クロックは 3.16GHz、L2 キャッシュ 6MB という代物だ。

丁度セキュリティアップデートが出た所だったので、 性能測定がてら make world してみた。

#  cd /usr/src
#  time make -j6 buildworld
 :
 :
real    10m23.912s
user    15m4.948s
sys     2m38.777s
#  time make kernel
 :
 :
real    5m18.705s
user    4m27.818s
sys     0m30.555s

ちょ、早っ

2009/04/22

またまた架空請求

先ほど携帯電話のメイルアドレスに届いたメイル
以前届いた架空請求 と殆んど文面が変わっていないのが笑える。

From: chuodataline.XXXXXX@docomo.ne.jp
Subject: 【重要なお知らせ】

(株)中央データラインの並木と申します。
この度、お客様がご使用のPC、携帯端末より以前ご登録頂いた【総合情報サイト】から無料期間中に退会処理がされてない為に、登録料金が発生し現状未払いとなった状態のまま長期放置が続いております。
本通達から翌日の正午までにご連絡を頂けない場合、認可ネットワーク認証事業者センターを介入し、発信者端末電子名義認証を行い利用規約に伴い、お客様の身辺調査に入らせていただきます。

退会処理、料金の詳細につきましては下記までお問い合わせ下さい。


TEL03-6457-45XX
担当 並木
営業時間9:30〜19:00迄
尚、ご連絡なき場合明日の正午より手続き開始となりますのでご了承下さい。

相変わらずまともな日本語が書けないらしい…
というか、変な日本語のテンプレートを部分的に修正して送信しているんだろうけど、 まずは日本語の文章を修正しなさいと言いたい。
何度も言うけど「てにをは」位はちゃんとしてくれないと信憑性ゼロですよ。

ちゃんと社会参加しました。

2009/04/21

FreeBSD on type P

以前書いた通り、FreeBSD を type P にインストールしようとしても インストーラが途中で止ってしまうのでインストールできなかったが、 Software Design の 5月号の記事を参考にしたらとりあえずインストールできた。

インストールしたのは FreeBSD 8-current の 4/21 版。
VMware に 4GB の USB メモリを認識させた状態で 8-current の CD から起動し、 インストール先として da0 を選択して 普通にインストールしただけの状態。
USB メモリを type P に装着して電源を入れ、 loader プロンプトで acpi 関係を disable 設定すると 途中までは起動するのだがカーネルが USB メモリを認識できない。
以前はそこで中断していたのだが snd_hda をロードさせるのがポイントだった様だ。

OK set hint.acpi.0.disabled=1
OK set hint.apic.0.disabled=1
OK load snd_hda
OK boot
なぜサウンドが…

とりあえず起動できるところまでしか確認していないが、 今後時間をみて色々と試したいと思っている。
ちなみにコンソールに

interrupt storm detected on "irq5"; throttling interrupt source
と延々と表示されるので、試しに
# sysctl hw.intr_storm_threshold=0
とか実行してみたらいきなりハングしてしまった。
良くわかってないのに sysctl (8) を使うのは危険です(笑

2009/04/20

KY

今更 `KY' とか言われちゃいそうですが… 本日は KY 記念日です

1989年4月20日、沖縄の珊瑚礁に彫られた`KY' の文字を 朝日新聞が夕刊の第一面で大々的に報じたのですが、 なんとこれが朝日新聞の記者による自作自演だったという事件。

しかも最初は『もともとあった傷をなぞっただけ』などと嘘の釈明をし、 地元ダイバーの綿密な調査などでやっと記者みずからストロボの柄で 傷をつけた事が判明したというお粗末この上ない事件です。

2009/04/18

眠り猫

暖かい日差しの中、満足しきった顔で寝ている猫を見かける。

Image: R0010244.JPG


いにしえより寝ている猫は平和の象徴だった事を考えると、 幸せなんだなと改めて実感する。

2009/04/14

Windows Xp のメインストリーム・サポートが終了

Windows Xp のメインストリームサポートが本日(4/14)で終了し、 以後は延長サポートになるとの事です。
使用している Windows 環境が数台の Windows 2000 を除いて 殆どが Windows Xp なので若干気になっていたのですが、 延長サポート扱いでもセキュリティパッチは提供されるとの事なので、 当面安心していても大丈夫なんでしょうかね。

Windows Xp が発表された 2001 年当時といえば、 FreeBSD では 4.4-RELEASE、RedHat Linux では 7.3 の頃なので、 非常に長生きしている OS ですね。

2009/04/09

POSIX.2 標準仕様のシェルによる変数展開

シェルスクリプトを作成する際に シェル変数に値を代入したり参照したりする事は頻繁に発生するが、 シェル変数の展開にも便利な使い方がある。
basename (1) や dirname (1) と同様な動作が シェルの組込みとして利用できるので資源の節約にもつながり、 上手に利用すると可読性の高いスクリプトが作成できる。

機能一覧

${parameter:-word} デフォルト値への置換
${parameter:=word} デフォルト値の代入
${parameter:?[word]} 値の検査とエラー
${parameter:+word} 代替値の使用
${#parameter} 文字列長の取得
${parameter%word} 最短後置パターンの削除
${parameter%%word} 最長後置パターンの削除
${parameter#word} 最短前置パターンの削除
${parameter##word} 最長前置パターンの削除

デフォルト値への置換

  • ${parameter:-word}
  • ${parameter} が NULL の場合 word に置換される。

    $ echo ${foo}
    
    $ echo ${foo:-FOO}
    FOO
    $ echo ${foo}
    
    $ foo=BAR
    $ echo ${foo:-FOO}
    BAR
    

デフォルト値の代入

  • ${parameter:=word}
  • ${parameter} が NULL の場合 word に置換され、 かつ parameter に代入される。

    $ echo ${foo}
    
    $ echo ${foo:=FOO}
    FOO
    $ echo ${foo}
    FOO
    $ echo ${foo:=BAR}
    FOO
    

値の検査とエラー

  • ${parameter:?[word]}
  • ${parameter} が NULL の場合 word が指定されていればその値を、 指定されていない場合はデフォルトの値を表示し、 非対話実行されているシェルをエラー終了させる。

    $ echo ${foo}
    
    $ echo ${foo:?value not set}
    value not set
    

代替値の使用

  • ${parameter:+word}
  • ${parameter} が NULL 以外の場合 word に置換される

    $ echo ${foo:+FOO}
    
    $ echo ${foo}
    
    $ foo=BAR
    $ echo ${foo}
    BAR
    $ echo ${foo:+FOO}
    FOO
    

文字列長の取得

  • ${#parameter}
  • ${parameter} の文字列としての長さに置換される

    $ echo ${foo}
    
    $ echo ${#foo}
    0
    $ foo=FOO
    $ echo ${foo}
    FOO
    $ echo ${#foo}
    3
    

最短後置パターンの削除

  • ${parameter%word}
  • ${parameter} の右から word で示されるパターンの最短部分を削除する

    $ foo=/foo/bar/baz
    $ echo ${foo%/*}
    /foo/bar
    $ foo=foo.c
    $ echo ${foo%.*}
    foo
    $ foo=foo
    $ echo ${foo%.*}
    foo
    

最長後置パターンの削除

  • ${parameter%%word}
  • ${parameter} の右から word で示されるパターンの最長部分を削除する

    $ foo=foo.example.com
    $ echo ${foo%%.*}
    foo
    $ foo=http://www.example.com:8888/
    $ echo ${foo%%:*}
    http
    $ foo=foo
    $ echo ${foo%%.*}
    foo
    

最短前置パターンの削除

  • ${parameter#word}
  • ${parameter} の左から word で示されるパターンの最短部分を削除する

    $ foo=foo.c
    $ echo ${foo#*.}
    c
    $ foo=foo.example.com
    $ echo ${foo#*.}
    example.com
    $ foo=foo
    $ echo ${foo#*.}
    foo
    

最長前置パターンの削除

  • ${parameter##word}
  • ${parameter} の左から word で示されるパターンの最長部分を削除する

    $ foo=foo.example.com
    $ echo ${foo##*.}
    com
    $ foo=/foo/bar/baz
    $ echo ${foo##*/}
    baz
    $ foo=foo
    $ echo ${foo##*.}
    foo
    


Copyright © 2008-2020 Mitzyuki IMAIZUMI. All rights reserved.