2012年8月10日金曜日

Windows Server 2008 R2トラブルシューティング(基礎編)

新コース「Windows Server 2008 R2トラブルシューティング(基礎編)」コースが8月15日(水)から始まります。

演習では、STOPエラーの簡単な解析や(本当に初歩の初歩ですが)、アプリケーションエラーの挙動を体験します。

STOPエラーを起こすのは難しいため、Sysinternalsのツール「NotMyFault」を使います。NotMyFaultについては拙ブログ「死の青い画面」で紹介しているので、こちらをどうぞ。

ユーザーモードのエラーは自分で作ろうと思い、Visual C++ Expressをダウンロードしてきました。他にもパフォーマンスモニターの演習用プログラムも必要だったので、以下の4本を作成しました。

  • ゼロ除算と記憶保護例外を起こすWindows Formアプリケーション
  • メモリを食いつぶすコマンドラインアプリケーション
  • CPU時間を食いつぶすコマンドラインアプリケーション
  • 何もしないダミーのアプリケーション

最近のコンパイラは、無意味な演算や変数を自動的に削除するので、最適化を抑制する必要があります。今回は変数に対してvolatile宣言を使いました。コンパイルオプションだと、あとで他の人が悩んでしまうかもしれませんので。

エラーを起こすアプリケーションは、1つで複数のエラーを起こすため、Windows Formを使ってボタンを並べました。

UserError

その他のアプリケーションは、ビルド後の実行ファイルにダミーデータを追加し、ファイルサイズを合わせ、ファイル名を変更しました。どういう風に使うのかは受講者だけの秘密です。

どれも数行から十数行のプログラムなのですぐにできましたが、受講者PC環境に持っていくとうまく動きません。

Windows Formアプリケーションは、NET Framework 4.0がないので動作しない、コマンドラインアプリケーションはVIsaul C++のランタイムライブラリがないので動作しない、ということです。

仕方がないので、受講者PCに両者をインストールしました。

ランタイムはともかく、.NETのバージョンはビルド時に変更できるはずなんですが、やり方が分かりません。Twitterでつぶやいたところ、マイクロソフトMVPの小野さんはじめ、何人かの方からアドバイスをいただきました。

この時、間違えて「C#」と書いてしまっために、特に小野さんにはかなりのご迷惑をおかけしました。改めてお詫びします。

結局、C#やVBはVisual Studioから変更できるが、C++は構成ファイルをエディタで編集しなければならない、ということでした。

実際に構成してみると、確かに「対象フレームワーク」が変更されます。

そこでビルドしてみたら以下のエラー

.NET Framework 2.0/3.0/3.5 は、v90 のプラットフォーム ツールセットを対象としています

VIsual Studio 2008を使え、ということのようです。

そういうわけで、演習環境には.NET 4.0とVIsual Studio 2010のランタイムがインストールされています。

2012年8月9日木曜日

ゲーデル、エッシャー、バッハ――あるいは不思議の環

Webサイト「Computer World」で連載中の「本の特盛り――横山哲也の読書のススメ」、第16回で紹介したのは『ゲーデル、エッシャー、バッハ――あるいは不思議の環

内容は、Computer Worldを読んでもらうとして、気になったのはサブタイトル。

原題は『Gödel, Escher, Bach: An Eternal Golden Braid』、頭文字を取って「GEB」と呼ぶことがよくあります。英語版も日本語版もWikipediaには注釈も付いています(「ゲーデル、エッシャー、バッハ」GEBと呼ばれる」。本文中にも、GEB、EBG、などと並び替えたフレーズも多用されており、一度でも読んだ人なら印象に残っているはず。

そして、サブタイトルの「Eternal Golden Braid」の頭文字を取るとEGBとなり、GEBを並べ替えたものになっています。

そこで気になるのが、サブタイトルの日本語訳。「あるいは不思議の環」です。

英語版ペーパーバックの表紙は「ペンローズの三角形」ですし、エッシャーの作品には「滝」のように、ペンローズの三角形をモチーフにしたものが多くあります。三角形は、ある種の環ですから、直訳ではないにしても、それほど変な訳ではありません。

が、せっかくの言葉遊びが活かされていません。タイトルは編集者に命名権があるのが一般的ですが、他の人は黙っていても柳瀬尚紀が黙ってはいなかったはずです。

この本にはいろんな疑問が提示されていますが、私にとってはこれが一番の謎です。

Penrose_triangle
ペンローズの三角形

SONY DSC
英語版ペーパーバック、黄色いのがペンローズの三角形。
ライトノベル「涼宮ハルヒ」シリーズの登場人物「長門有希」も読んでいた。
(掲載許可撮ったので顔出し。モデルは「しの」さん)