変に賢いぞ、Excel

Excelのセルに数式

=-3^2

と打ち込んだ場合の答えは-9ではなく9。-(32)じゃなく(-3)2と解釈される。符号を反転させる単項演算子として-を使用したときはべき乗よりも優先度が高く(上から2番目。参照演算子を除けば最強)なる仕様らしい。よって

=1+(-3^2) → 1+((-3)^2) → 10
=A1+(-A2^2) → A1+((-A2)^2) → A1+A2*A2

二項演算子として-を使用した場合はべき乗や乗除よりも優先度が低くなるので、

=1-3^2 → -8
=A1-A2^2 → A1-A2*A2

以下の二式が異なる結果となるのに気づかず10分悩みました…

=A1^2-A2^2 → A1*A1-A2*A2
=-A2^2+A1^2 → A1*A1+A2*A2

これに限らず、Microsoft Officeはおせっかいな機能に時々悩まされる orz

[ 参考 ]

— posted by mu at 04:19 pm   commentComment [0]  pingTrackBack [0]

PCサーバのヒートシンクが外れていた

blog20101205-PCServer_HeatSinkBroken1

先日PCサーバーがIOエラーを出してなんとなく嫌な予感。とりあえず再起動をかけたところ、普段なら10秒程度で静かになる排気ファンが何時まで経ってもフル回転で、さらに嫌な予感。

もう一度再起動してBIOSに入ってみるとファンの回転数が1100RPMにぴったりと張り付いているけど、音からして絶対そんな低速じゃない。どうもマシンが実際には上がっているファンの回転数を正しく把握しておらず、最高回転数まで行ってしまっているみたい。

またケミコンとんじゃった(今までPCサーバでは経験なし)のだろうかと思いつつサーバの中を覗いてみたところ…おい…ノースブリッジのヒートシンクが外れてる。シンクを抑えるバネを引っ掛けるパーツが基板から外れてしまった模様。

パーツはケースの底の方から発見。付けていたハンダが割れちゃったようだ。もう一度ハンダ付けするしかないなと、基板をケースから外しにかかる。CPUのヒートシンクを留めるネジがマザーボードを貫通して本体ケースのネジ穴で固定されているのはさすがにPCサーバ(CPUヒートシンクは重いのでマザーボードに留めるとボードが反ったりハンダが割れたりする)。ノースブリッジがお粗末なのは残念。

blog20101205-PCServer_HeatSinkBroken2
熱伝導樹脂がチップの右側にしか付着していない
最後にノースブリッジのヒートシンクを取り外したところ…
をい
冷却すべきチップの1/3くらいしかヒートシンクと接触してないぞ。こんなのでも何年も動くものなのね。昔CPUのヒートスプレッダを外した人が中の伝熱性樹脂が泡だらけでちゃんと接触していたか疑問と書いていたけど、そのCPUは動いていたわけで、世の中に出回っている半導体製品はいろんなところで余裕を持った設計になってそうだ。

取れたパーツをしっかりハンダ付け。ノースブリッジのシリコングリスも塗りなおして修理完了。再起動したらファンの回転数も正しく把握するようになっていた。壊れたと思っていたので今後は常時フル回転を覚悟していた私には良いお話。Memtest86+Link も20時間エラー無しだったので、運用再開っと。

でも、今となってはNECの16800円サーバにも圧倒的に負けちゃうCPUパワーなんだよなぁ。直さず壊れましたって報告して買い直せばよかったか? いや、セットアップするの面倒だからこれでいいやw


— posted by mu at 10:51 pm   commentComment [2]  pingTrackBack [0]

Grubからmemtest86を起動するとエラー

備忘録。Memtest86+Link をHDDに入れてGrubから実行すると、

Error 28: Selected item cannot fit into memory

というエラーが出て、メニューに戻されてしまう場合の対処。

  1. 開発環境のインストールされたLinuxを用意
  2. Memtest86+Link のソースコードを入手、任意のディレクトリに展開
  3. ソースコードディレクトリ内memtest.ldsファイルをエディタで開き、.=の左辺を0x100000に変更
  4. OUTPUT_FORMAT("elf32-i386");
    OUTPUT_ARCH(i386);
    
    ENTRY(_start); 
    SECTIONS {
            . = 0x100000;  // Change to 0x100000
            _start = . ;
            .data : {
                    *(.data)
            }
    }
    
  5. make (configure不要)
  6. 出来上がったmemtest (拡張子無し)を目的のPCの/bootにコピー
  7. /boot/grub/menu.lst (もしくは/boot/grub/grub.conf)に以下のエントリを追加もしくは変更。rootの行は自分の環境に合わせて変更。要点はkernel行に--type=netbsdオプションをつけること。
  8. title Memtest86+
           root (hd0,0)
           kernel --type=netbsd /boot/memtest
    

自分用に作ったMemtest86+ 4.10のファイルを添付しておきます(ファイル名をmemtestに変更してください)。

[ エラーの原因 ]
  1. Memtest86は古いタイプの起動方法を採っており、通常BIOSが使わない090000-09A000hの領域は空いているものとし、そこに実行プログラムを読み込む。
  2. しかし比較的新しい(今回Pentium 4のPCサーバでエラーとなったので、今のマシンは全部新しい)BIOSはこの領域を予約域として確保している。
  3. Grubはこの領域が予約されているのが分かるので、そこにMemtest86を読み込むことはエラーとして実行しない。
[ エラーの回避方法 ]
  • ELF形式のバイナリファイルを使う(拡張子無しのmemtestを使う)
  • GrubにELFファイルでブートする設定をする (--type=netbsdの指定)
  • GrubはELFファイルを1MB以下のアドレスにはロードしないので、1MB以上の場所を開始アドレスとする(memtest.ldsの編集)

この問題をバグだという人もいる(多い)しバグではないという人もいるみたいで判断が難しいですが、私的にはバグと言い切るのは安直かなぁと。

[参考(というかそのまんま)]
添付ファイル: memtest.memtest 

— posted by mu at 06:47 pm   commentComment [5]  pingTrackBack [0]

紅葉撮影 - 丹沢湖

blog20101120-Ginko_Tanzawa

昨日は神奈川県丹沢湖に紅葉撮影。道中渋滞で遅れた&山間部で日暮れが早いため時間がなく、ダム横(丹沢湖はダム湖)にある公園一箇所に的を絞って撮影。銀杏は半分以上散っており辺り一帯黄色でしたが、紅葉の方は真っ赤なものから緑→紅のグラデーションを出しているものまで様々。

この場所のいい所は写真のような上から見下ろす構図が撮りやすいこと。駐車場がダムの上、公園が下にあるので公園に向かう途中で見下ろす場所に出会えます。普段紅葉や桜を撮るのは見上げる構図が多いですからね。他の場所だとまず山に登らないといけないので便利。まぁ帰りは登りになるんですけどねw

さて前回Link からですが、物欲に負けて新カメラとしてPENTAX K-xを購入・使用しています。今まで使っていたPowerShot Pro1からはEVF→光学ファインダとなり、当然ですが使い勝手の違いに苦戦中。今までCMOS撮像素子は発色が今ひとつという思いがあったのですが、十分使えそうですね(ただ1/2インチ以下のいわゆるコンデジ機は未だCCDの方が良いと思ってたり)

— posted by mu at 06:19 pm   commentComment [0]  pingTrackBack [0]

紅葉撮影 - 箱根大涌谷

blog20101113-AutumnLeafHakone

私がカメラを振り回すのは桜と紅葉くらいなのですが、今回はその一方。紅葉情報によると今日は箱根が見頃ということで出かけてきました。

いやまぁ、予想はしてましたけどスゴイ人ですね。大山Link ではケーブルカーに1.5時間待ちなんて感じでしたが、こちらも箱根湯本駅から出る高山鉄道の行列が駅の外にまで伸びる始末。並ぶの大嫌いな私は今回も歩いて行こうとしたのですが、これはさすがに時間的に無謀、途中からバスに乗り込み大涌谷へ(^^;)

目的の写真ですが、木々は綺麗に色づいているものの天気があいにくの薄曇り。時折日差しがあるとはいえど、基本的に空ばっかり明るくて葉は暗く撮影にはあまりよくない。こういう天気を晴れと予報するのやめてくれないかなぁ… もしくは快晴って予報をつけてくれ~

— posted by mu at 09:48 pm   commentComment [0]  pingTrackBack [0]

T: Y: ALL: Online:
ThemeSwitch
  • Basic
Created in 0.1424 sec.
prev
2025.7
next
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31