2007年12月31日月曜日

クメール語のあいさつ

クメール語のあいさつは「チョムリアップ スオー」で、知っているもの同士だと「スオー スダイ」です。「おはようございます」や「こんばんは」にあたる言葉もありますが、不思議なことにほとんど使われなくなったようです。

クメール語は上下関係や男女間で使う言葉が異なります。日本では挨拶が上下関係を示して卑屈だとして戦後の一時期に使わない人が増えたことがありました。しかし、みんなが「おはようございます」に合わせることで問題を解決している人々もいます。クメール語にも似たようなことがあったのでしょうか?

日本語の「○○さん」にあたる言葉は「ルーク」(男性)「ルーク スライ」(女性)です。しかし、自分よりも若い人にこの言葉を使うと、居心地が悪いから呼び捨てにしてくれと言われます(苦笑)

2007年12月30日日曜日

ボン

クメール語で夫婦間の呼び方は、夫には少々屈辱的です(笑)

夫が妻を呼ぶときには「オン」もしくは「オン スロライン」で、妻以外には使えません。もし、妻以外の女性に「オン」と呼びかけると問題です。ましてや少し愛情を込めた呼び方の「オン スロライン」などと言おうものなら、一悶着は覚悟しなくてなりません(苦笑)

妻が夫を呼ぶときは「ボン」です。「ボン」は誰に対してでも使うことができます。クメール語は男女によって言葉遣いが異なることが多くて、基本的に「ボン」は男性に対して使うことが多いようです。しかし、最近は店員には男も女性も関係なく「ボン」と呼ぶようです。つまり、妻にとって夫は店の店員のように妻に「ご奉仕」する存在のようです(苦笑)

ジャンジュアリー

理由は良くわかりませんが、私が知っているカンボジア人は全員がJanuaryの発音がとても苦手で「ジャン ジュアリー」になります。

私のノートPCに入っている四つの電子辞書を使って、Januaryの録音を何度も聞いてもらって、練習してもらいました。しかし、どうしても「ジャン ジュアリー」になります。

Japanese EnglishやFrench Englishなどがあるのと同様にCambodian Englishがあり、独特の発音です。しかし、彼らは中高年の日本人が話す英語よりは良い発音をします。しかし、どういう訳かJanuaryだけは「ジャン ジュアリー」になります。

2007年12月7日金曜日

母系

クメール人に聞いた話によると、クメール人の多くは母系家族だそうです。娘の中から一人が親の面倒を見て、家を引き継ぐことが多いようです。他の娘と息子は外に出ることになります。家を出た娘は甲斐性のある男性を見つけて家を建て、息子は家を持っていそうな娘を捜す、という事のようです。

カンボジアでは夫婦別姓が基本です。夫婦の姓どころか、子どもの姓すら別です。両親は最初の子どもができると名だけでなく姓も考えないといけません。兄弟姉妹は全員が同じ姓になります。子供の姓は祖父や曾祖父の名前から取ることが良くあるそうです。この時に姓ではなく名から子どもの姓を取るそうで、クメール人の姓と名の区別が難しいのはこのためです。また、名から男か女かを見分けるのも難しく、習慣の違う日本人には悩ましい話しです。

ほくろの毛

理由を尋ねても苦笑いするだけで答えてもらえないのですが、クメール人の知人で顔や首筋のほくろに生えた毛を長く伸ばしている男性が数人います。なにかのおまじないでしょうが、おまじないだけに説明しにくいのかもしれません。

日本にも「長く伸びた眉毛には福がある」とそのまま残す迷信があるそうです。数年前に知った話しですが、日本の何処の話しかは聞きそびれてしまいました。私が長い眉毛で思い出すのが村山富市元首相ですが、彼は大分の出身です。

じつは私も眉が長く伸びます。それも数本だけ長く伸びます。以前はこれが気になって抜いていましたが、最近は眉が薄くなるような気がして切っています(苦笑)

USB延長ケーブル

AppleのUSB mailing listでUSBの延長ケーブルに関してAppleの技術者Barry Twycrossが興味深いことを書いています。

質問は延長ケーブル(装置)の使用に関するもので例として以下のURLを上げています。
Belkin : USB Active Extension Cable
USB peripheral extension extender 100 ft RJ45 CAT5, Exceed maximum USB length

Barry Twycrossは以下のようなコメントをしています。

Extension cables are specifically called out in the spec as being disallowed. The reason for that is while an extension cable may work in specific circumstances, they will not work in all circumstances and may cause devices to fail potentially in subtle and annoying ways. The spec wants to provide a good user experience so extension cables, with their potential for confusion and bad user experience are banned.

Barry Twycrossは続けてこの二つの延長ケーブルがUSB compliantでない、などの解説をしています。さらに、USB装置に対してで長距離通信したいなら、コンピュータ同士をLANなどで接続してUSB装置を共有するか、USB Serverと呼ばれる装置を使うことを推薦しています。

Keyspan | Products | USB Products

さて、Barry Twycrossの記述には少々注意が必要でしょう。USB 2.0規格の「Universal Serial Bus Specification Revision 2.0 April 27, 2000」ではケーブル長はパルスの立ち上がりなど電気的特性で制限されるとしています。具体的にケーブル長を定義する記述は見あたりません。

ただし、補足資料の「Errata for "USB Revision 2.0 April 27, 2000" as of May 28, 2002」に「Modify cable attenuation values to allow 5 meter cables」、さらに「High-Speed Inter-Chip USB Electrical Specification Version 1.0」に「... USB was designed to enable hot-plugging and unplugging of peripherals over 5 meters in length, ...」などの記述があります。

金額を問わないのであれば、特別に精錬された高品質の金属ケーブルや光ファイバーケーブルを使用するなどの方法で、電気的特性の規格に合格できる可能性もあります。また、IEEE 1394ではそのような試作品も見ました。

2007年11月29日木曜日

小型マウス

少々不思議なことに気付きました。

私はMicrosoftの小型マウスが気に入っていて、その最新版が発表されました。

Microsoft Mobile Memory Mouse 8000 | ホーム

このページの下に「必要システム」としてWindowsとMacintoshそれぞれの必要条件が書かれています。不思議なことに必要とするハードディスク容量はWindowsが100M byteに対して、Macintoshは20M byteです。WindowsはMacintoshの5倍もの容量を要求しています。

2007年11月28日水曜日

Time Machineのエラー

Time Machineを試そうとしたら以下のようなエラーが出ました(苦笑)

2007年11月15日木曜日

Safariの互換性

Bloggerの編集機能がアップデートされていますが、Mac OS X 10.4.11とSafari 3.0.4 (523.12)との互換性が悪いらしく頻繁にSafariが異常終了しています。

私のところだけでなく、知人のところでもSafariは様々な場面で互換性の問題を引き起こしています。これでは世界中のサイトに嫌われそうです(苦笑)

Mac OS XはIEEEに見放される?

ネットワーク規格など、様々な活動をしているIEEEですが、そのサイトにMac OS Xを見放すような記述がありました。

以下のスクリーンショットはIEEE会員向けサイトですが、Mac OS XのSafariもFirefoxも以下のような注意書きを表示して、WindowsのInternet Explorer 6.0(7ではない)を推奨しています。



PICTファイルが読めない?

Appleの画像フォーマットPICTは初代Macintoshから使われている形式ですが、どういう訳か古いPICTファイルはMac OS Xに標準付属のプレビュー 3.0.9 (409)では正常に表示できません。表示されるのは一面灰色の画面です。

試したのは2001年6月にSystem 9で撮ったスクリーンショットで、Photoshopでは問題なく読み込んで表示します。しかし、PhotoshopでPICTフォーマットを指定して別名で保存したファイルもプレビューは灰色のウィンドウを表示します。試しにPNGフォーマットに変換するとプレビューは表示できます。

Windowsのアクティベーション

まずはWindowsの話しですが、

私が持っている日本語版Windows XP Service Pack 1は古いもので、動作検証のために様々なPC互換機にインストールしています。このため新規インストールするとinternet経由のアクティベーションができず、Microsoftに電話をかけなくてはなりませんでした。しかし、どういう訳か今回のVMwareのインストールではinternet経由のアクティベーションができました。Microsoftのチェックが緩くなったのでしょうか?

Windowsのアクティベーションも不便ですが、Windows XPをインストールするとMicrosoftのサイトからアップデータを大量にダウンロードしなくてはならず、さらに何度も再起動を求められる点も不便なところの一つと思っていました。

ところが、最近にMac OS X 10.3.xと10.4.xをインストールして、Mac OS Xも同様の状況になっている事が分かりました。状況によって異なりますが、10.3で3回ほど、10.4で2回ほど再起動します。

Windows XPもMac OS Xもネットワークからの自動アップデートが前提で、予めファイルをダウンロードしてアップデートするには、それぞれのサイトを探す事になります。

私はAppleのサイトを見慣れているので、必要なファイル探すのは比較的簡単です。しかし、Microsoftのサイトは見慣れていないので、必要なファイルを探すのは難しく、見つけても「IT プロフェッショナルおよび開発者用 」とか「コンピュータを 1 台だけ更新する場合は、Windows Update を参照」とか書かれています。

VMwareの続き

VMwareに関して面白い記事を見つけました。無名の私には関係ありませんが・・・(笑)

ヴイエムウェア、Mac用仮想化ソフト「Fusion 1.1」をリリース--一部ブロガーに無料版も:ニュース - CNET Japan

さて、Parallelsでインストールに失敗した英語版と日本語版のWindows XP Service Pack 1をファイル形式でインストールし、Service Pack 2も含むすべてのアップデートに成功しました。

ただし、日本語版Windows XPでUSBハードディスクドライブの認識に問題がありました。このようになった原因は不明ですが、デバイスマネージャを使ってドライバを更新すると認識するようになりました。また、どういうわけか「テキスト サービスと入力言語」で「英語(米国)」のキーボードを設定しないと「-」とそのシフトの「_」などのMacBook Proの英語キーボード配列と入力される文字が整合しません。Boot Campではこのような設定なしで利用できています。Service Pack 2をインストールしたものと最初から入っているもの違いかもしれません。

他にも、FATでフォーマットした外部ドライブにインストールしようとすると以下のようなエラーが表示されます。


今のところMac OS X 10.5(Leopard)でもNTFSフォーマットのボリュームは読み出し専用のため、私はWindowsとのデータ交換のためにFATでフォーマットした外部ドライブを用意しています。このドライブにVMwareのファイルを保存しようとして、上記のエラーが表示されました。

・・・と書いていたのですが、VMwareでBoot Camp内のWindows XPを起動して、Yahoo Messengerを使用していると突然フリーズしました。いやはや(苦笑)

2007年11月13日火曜日

VMwareと内蔵iSight

VMware FusionではMacBook Proの内蔵iSightが使えました。

Parallels Desktop 3.0 for Mac(以後Parallels)で動かなかったiSightが*1 、VMware Fusion(VMware)で動作しました。わたしはWindowsユーザとの連絡にYhoo! Messenger *2を使用していて、iSightは必須の機能です。まだ30日試供版で試験中ですが、インストールは以下の通りです。

VMwareのサイトで試供を依頼して、ファイルをダウンロード(日本語版があります)、インストールします。VMwareはBoot Campのパーティションを利用できますので、以下の条件のBoot Campを使用しました。

実験したBoot Campは試作版から(つまり、Windows XP Service Pack 2を使用)Mac OS X 10.5に付属のBoot Campにアップデートしたもので、Boot Campのツールはもちろん、MS-Office 2002、Yhoo! MessengerをインストールしてBoot Campでの動作を確認しています。

VMwareからWindows XPを起動して「仮想マシン > USB > Apple Built-in iSightを接続」を選択すると、Windows XPがiSightを検出してインストールを始めます。インストールに失敗したという趣旨のエラーを表示します・・・が、動作します(笑)

なお、付属している日本語のマニュアルにも書かれていますが、最初の起動時だけVMwareとBoot Campの両方でWindows XPのアクティベーションを求められました。また、マニュアルには書かれていませんがMS-Office 2002はインストールCDを求めます。

ほかにも、Boot Campのパーティションにアクセスするため、VMwareでBoot Camp内のWindows XPを起動するとMac OS Xのアカウント承認を求められます。また、サスペンドとレジュームは便利そうな機能ですが、Boot Campでは利用できないようです。日本語マニュアル書かれている理由はわかりますが、なぜキーチェーンをつかわないのか理由が分かりません。

*1 Parallels
Parallelsでは2.5 build 3212.0の時に試供版で英語版と日本語版のWindows XP Service Pack 1をインストールしましたが、ともにMicrosoftのWebサイトからのアップデート中にエラーが頻発し、インストール終了後も動作が不安定で実用になりませんでした。また、3.0 build 4128.0試供版とβ版Boot Campのパーティションから起動してiSightを試しましたが利用できませんでした。Boot Campを利用する方法はParallelsのサポート・ページに動く「場合がある」と書かれていたのですが、私の場合はダメでした。現在のParallelsでは動くかもしれませんが・・・。

*2 Yhoo! Messenger
Yhoo! MessengerはSkypeと比べて使用するEthernetの帯域が狭いらしく、Internet環境の悪いところでも会話できます。多少Internet環境が良いところだと、ギクシャクした(笑)ビデオを見ながら会話できます。iSightが利用できるようになる以前はUSB Cameraを使用していました。ただし、一年前は海外との通信に米国Yhoo! Messengerのアカウントが必要でした。今のYhoo! Messengerがどのようになっているかはわかりません。

2007年11月11日日曜日

Service Menu

あまり知られていないし、使われてもいない機能に「アプリケーション名 > サービス」メニューがあります。

たとえば「URL を開く」という命令があり、自分で書いたり貼り付けたりしたURLを確認したい時に利用できます。しかし、たくさんのアプリケーションが色々なサービスを提供したために、項目数が多すぎて「URL を開く」を選択するのは面倒で不便です。また、ショートカットが設定されたメニューがあるのに、「URL を開く」にはショートカットが設定されていません。

そこで、このメニューにショートカットを設定する方法を紹介します。

以下のアプリケーションを見つけてください。
  /System/Library/CoreServices/SystemUIServer
日本語表記では
  /システム/ライブラリ/CoreServices/SystemUIServer

この「SystemUIServer」をctrlキーを押しながらクリックし、ポップアップメニューから「パッケージの内容を表示」を選択します。「Contents」フォルダが表示さますので、そのなかの「Info.plist」と言う名前のファイルを「テキストエディタ」で開きます。以下のように書かれている場所を探します。
<key>NSServices</key>
  <array>
    <dict>
      <key>NSMenuItem</key>
      <dict>
        <key>default</key>
        <string>Open URL</string>
      </dict>
      <key>NSMessage</key>
      <string>openURL</string>
      <key>NSPortName</key>
      <string>SystemUIServer</string>
      <key>NSSendTypes</key>
      <array>
        <string>NSURLPboardType</string>
        <string>NSStringPboardType</string>
      </array>
    </dict>
  </array>


上記を以下のように項目を追加して保存します。
  <key>NSServices</key>
  <array>
    <dict>
      <key>NSKeyEquivalent</key> <-追加
      <dict> <-追加
        <key>default</key> <-追加
        <string>W</string> <-追加
      </dict> <-追加

      <key>NSMenuItem</key>
      <dict>
        <key>default</key>
        <string>Open URL</string>
      </dict>
      <key>NSMessage</key>
      <string>openURL</string>
      <key>NSPortName</key>
      <string>SystemUIServer</string>
      <key>NSSendTypes</key>
      <array>
        <string>NSURLPboardType</string>
        <string>NSStringPboardType</string>
      </array>
    </dict>
  </array>


以上の変更が終われば、再起動します。

「アプリケーション名 > サービス」メニューをみると、「URL を開く」の右にシフト+コマンド+Wのアイコン表示がでます。「スティッキーズ」を開いてURLを入れて「シフト+コマンド+W」を押すと、Webブラウザが起動してURLを表示します。

ただし、「テキストエディタ」では「シフト+コマンド+W」のショートカットは「ページサイズで表示」に割り当てられています。この場合にはアプリケーションのショートカット・キーが優先されます。「テキストエディタ」で使いたい人は<string>W</string> の「W」を他の文字に代えてください。

この方法は「サービス」メニューに表示されている他のアプリケーションにも応用できます。また、「サービス」メニューを表示できる全てのアプリケーションで共通して利用できるショートカットなので、System 9以前と似たような使い方ができるのが嬉しいです。

2007年11月7日水曜日

LeopardのDock

TidBITS #902 2007/10/30(日本語版2007/11/04)に掲載されたMatt Neuburgの記事によると、Docの背面に表示される鏡映を消せるそうです。

TidBITS Blog Post: Six Things I Hate about Leopard
TidBITS 日本語版 #902/29-Oct-07

Terminal.appで以下の命令を入力すると、鏡面効果を消せます。

defaults write com.apple.dock no-glass -boolean YES
killall Dock

元に戻す命令は以下の通りです。

defaults write com.apple.dock no-glass -boolean NO
killall Dock

もとのDockの表示

鏡面効果を切った場合の表示


Terminal命令のdefaults はMax OS Xの様々な初期設定ができるそうです。そこで、defaultsとkillallのmanをAppleサイトで見てみました。

Mac OS X Manual Page For defaults(1)
Mac OS X Manual Page For killall(1)

defaultsはアプリケーションなどの初期設定を変更するツールで、設定項目やその内容の表示と変更ができます。killallはkill命令と同様にプロセスを終了させますが、killがプロセスID(pid)でプロセスを指定し、killallは名前でプロセスを指定します。今回の場合、Dockは終了ではなく、Finderと同様に終了しても再起動させられるようです。

以下の命令を実行するとdockの設定内容が表示されます。

defaults read com.apple.dock

面白いことに、初期状態では"no-glass"の項目はありません。つまり、"no-glass"の項目を追加し、設定しています。

元々ある項目を見つけだしたのなら「良くぞ見つけた」といえますが、もともとないものをMatt Neuburgはどうやって知ったのでしょう?Googleでザッと見た限りでは、この方法を紹介しているサイトは多いですが、どうやって知ったかを書いているサイトを見つけることはできませんでした。

ところで余談ですが、面白いことにdefaultsのmanの最後に以下の一文があます。

HISTORY
First appeared in NeXTStep.

2007年11月4日日曜日

LeopardからTigerを制御

LeopardからTigerをGUIで制御できます。

ご存じのかたは少ないかもしれませんが、Macintoshから他のMacintoshをGUIで制御するソフトウェアで最も初期のものに「Timbuktu」があります。

Netopia Timbuktu® Pro For Mac OS - Remote Control Desktop for Mac - Remote Computer Access

似たような機能が「リモートデスクトップ」という名称でWindows XPに標準付属しています。しかし、Macintoshでは「Timbuktu」も「Apple Remote Desktop」も有料でした。

しかし、LeopardでようやくWindows XPに追いつきました(苦笑)Leopard同士はもちろん、LeopardにTigerのディスクトップを表示して制御することもできます。以下は、その設定方法です。

■ Tigerの設定、
「システム環境設定 > 共有」を選択し、「ファイアウォール」タブを選びます。「新規...」ボタンを押し、表示された「ポート名」ポップアップメニューから「VNC」を選択し「OK」ボタンを押します。リストに「VNC」が表示されチェックマークが付いていることを確認します。

次に、「サービス」タブを選択し、リストから「Appe Remote Desktop」を選択します。右下に表示された「アクセス権...」ボタンを押し表示されたウィンドウから、以下のように設定します。

「ユーザ」リストから利用する人(アカウント)にチェックマークを付けます。利用したい機能を右の項目から選びます。さらに「VNC 使用者が画面を操作することを許可」にチェックマークを付けます。「OK」ボタンを押すと、「認証」を求められますのでパスワードを入力し「OK」ボタンを押します。

以上でTigerの設定が終わりましたのでAppe Remote Desktopの「開始」ボタンを押します。

■ Leopardの作業
Tigerの設定が終わると、Finderのサイドバーに「共有」項目が表示されます。「共有」項目の中にTigerの「システム環境設定 > 共有」で「コンピュータ名」として設定した名前が表示されているはずです。表示された名前を選択して、右側の「画面を共有...」ボタンを押します。ウィンドウをカラム表示にすると以下のような画面になります。



「画面共有」アプリケーションが起動して、名前とパスワードを入力します。名前はTigerで設定した「ユーザ」とそのパスワードを入力します。

以上の作業でウィンドウが表示され、Tigerを捜査できます。

リモートデスクトップは追いつきましたが、無料になったWindows XP版「Virtual PC」に相当する機能はLeopardにもありません。

2007年11月1日木曜日

MacBook Proの音

MacBook Proの音が出ないという故障になりました。以下はその顛末です。

■ 症状
音関連のFunctionキーであるF3からF5までを押すと、画面に表示されるスピーカの下に交通標識の禁止マークが表示されます。

「システム環境設定... > サウンド」にある「主音量」のスライダが動かなくなっています。「メニューバーに音量を表示」チェックボックスで、メニューバーにスピーカのアイコンを表示させても、スライダは動きません。

■ 解決
イヤホンジャックにイヤホンを何度か抜き差しすると治りました。

金欠病(笑)と省エネで、私は普通のイヤホンを使っています。イヤホンジャックの接触不良というのは良くある不良の一つですが、MacBook Proでは単に音が出なくなるだけでなく上に書いたような症状を引き起こします。

2007年10月28日日曜日

GetIOUSBLibVersion

Mac OS XのUSB関連ソフトウェアは頻繁にバージョンアップしていて互換性に要注意です。

以下のページはUSB Debug Kitにかんするものですが、OSバージョンとUSBバージョンの関連が書かれています。

Hardware & Drivers - Mac OS X USB Debug Kits Downloads

この内容からも分かるようにIntel版とPowerPC版でバージョンは異なりますし、それ以前でも一つのOSバージョンに二つのIOUSBFamily.kextがあるものもあります。また、IOUSBLibのバージョンも似たような状況です。

エラー処理や微妙なタイミングに注意しなくてはならないUSB装置向けのソフトウェアは、IOUSBFamilyとIOUSBLibのバージョンに注意してください。

IOUSBFamilyとIOUSBLibのバージョンを調べるにはIOUSBDeviceStruct197とIOUSBInterfaceStruct197からサポートが始まったGetIOUSBLibVersionがあります。

USB 2.0装置を誤認

AppleのUSBのメーリングリストに、USB 2.0装置をMacintoshに接続してもUSB 1.1規格と誤認することがあるという報告が上がりました。

AppleはUSB装置側のファームウェアに以下のような問題があるとしています。
 1.多くのHi-speedチップはFull-sprrdのみにするビットがあり、
   このビットをonにして誤動作している。
 2.OSからのUSB RESETに対して、毎回必ずHi-speedとして
   認識されるように正しく応答せず、誤動作している。
本当なら、悩ましい話しです。

2007年10月16日火曜日

ACアダプタ

Cinema Displayが修理から返ってきました。やはり電源不良でACアダプタを交換していました。ACアダプタのコネクタの不具合はケーブル側のプラグではなくACアダプタ側レセプタの問題だったようです。

ACアダプタと言えば、CNETにPowerBookのACアダプタがショートしたという記事がありました。

「PowerBook用アダプタがショート -- YouTubeで動画公開 - CNET Japan

この記事に書かれている動画を見つけることはできませんでしたが、私のACアダプタもショートしました。



見た感じではプラスティックの材質が粗悪だったような感じです。

2007年10月7日日曜日

Cinema Display 故障

昨年2006年4月に買ったAppleのCinema Display 23”が1年と数ヶ月で故障しました。画面が真っ暗で表示されませんが、システム環境設定のモニタは認識しています。症状は6月頃から出始めたのですが、その頃には起動後に少し遅れて画面が明るくなり表示されました。その後、表示されない時間がだんだん長くなり、いまは最悪で1時間以上かかります。

おそらく、バックライトの電源不良ではないかと思います。一番怪しいのは電解コンデンサの不良です。

この故障を調べている時に分かったのですが、ACアダプタと本体を接続するコネクタも接触不良でした。Cinema Displayを接続してシステム環境設定のモニタを開くと、Cinema Display側に表示されるウィンドウに「オプション」タブが表示されます。




しかし、このコネクタが接触不良になった場合とUSBコネクタをコンピュータ本体に接続しなかった場合に「オプション」が表示されません。



このACアダプタのコネクタは左右を替えても指すことができます。しかし、私のものは左右を差し替えると「オプション」が表示されません。



じつは、買った当初からCinema Display横にあるボタンが動いたり動かなかったりしていました。このボタンは使わないので気にしていませんでしたが、コネクタの接触不良が原因だとは気づきませんでした。今回の不具合の原因はこの接触不良かもしれません。

USB Hubの互換

MacintoshとUSBの互換性問題は良く聞きますが、一部のUSB 2.0互換Hubとも問題があるようです。特殊な状況とはいえ、ノーブランドのHubだけでなくD-Linkでも問題が発生するようです。

質問した人は複数のUSBモデムをHubを経由してMacintoshと接続して利用しています。単に接続するだけであれば問題なく動作するそうです。しかし、接続したモデムを一度抜いて再度接続すると、複数あるUSBモデムの一部だけが認識されるようです。

Appleでも調査中らしく、この症状が発生すると全てのポートが使用中になるようです。この症状が出ると、本来Mac OS XのHubが接続された時に呼び出されるコードが呼び出され、Hubの設定を失敗してHubが誤動作するようです。

もちろん、Windows XPでは問題ないそうです(苦笑)

この報告をした人はSun SPOTというJavaベースのセンサ装置のファームウェアを開発していてるそうです。この装置はUSBのモデムの規格CDC ACM (Communications Device Class Abstract Control Model)に準拠した機能を持っており、ホストとの通信に利用するようです。Hubの問題よりもこちらの方が面白そうです(笑)

SunSPOTWorld - Project Sun SPOT Products
https://www.sunspotworld.com/products/

ただし、海外から購入するには少々手続きが必要なようです。

ハードディスクとグラフィックカードが衝突?

Apple主催のFireWireメーリングリストに面白い記述がありました。

以下の組み合わせでエラーになる場合があるそうです。どれか一つが故障しているのではないかと思うのですが、エラーになるのはこの組み合わせだけだそうです。

Power Mac G5 (Model ID: PowerMac7,3)と
   Mac OS X 10.4.9の組み合わせ
Oxford Semiconductorの
   FireWire/USB 2.0-SATAコントローラ924DSbを使った
   ハードディスクをFire Wire 800で接続
ATI Radeon 9200 PCIカードと
  ATI Radeon 9600 XTを使って
   モニタを3つ接続

Oxford Semiconductor 924DSb
http://www.oxsemi.com/products/storage/OXUF924DSB.html

Radeon™ 9200 Mac Edition - Overview
http://ati.amd.com/products/radeon9200/radeon9200me/index.html

Radeon 9600 Series
http://ati.de/products/radeon9600/radeon9600pro/index.html

2007年8月31日金曜日

IOAsyncCallBack1の引数

AppleのUSBに関するMailing Listで、Appleの技術者による以下のような記述を見つけました。

----------------------- snip -----------------------
The arg0 parameter of the IOAsyncCallBack1 contains the # of bytes that were transferred.

We are improving the documentation and examples so that this is clear.
----------------------- snip -----------------------

実際、IOAsyncCallBack1の引数の解説は不親切で、いくつかのサンプルコードを元に実際にいろいろと試さないと引数の意味は分かりません。

IOKitLib.h

つまり、上記の説明は以下のように書くべきでしょう(笑)
We are improving the documentation and examples now. So that, this will be, may be, or hope to be clear.

2007年8月19日日曜日

USB装置のMac OS Xへの移植

Windowsで動いているUSB装置のMac OS Xへの移植を考えている人は多いと思います。通常であればKEXTドライバかアプリケーションを書けば、全てのUSB装置はMac OS Xでも動作する「はず」です。しかし「動かない」ことがあります。

例えば、SonyのGPS ユニットキットGPS-CS1はUSBのマスストレージとして作られていてWindowsでは問題なくマスストレージとして認識されます。一方、Mac OS Xではマスストレージ用のKEXTドライバが標準装備されているので、USBマスストレージとして作られた装置であれば動く「はず」です。しかし、Sony GPS-CS1はMacintoshではタイムアウト・エラーになりマウントできません。ちなみに、Intel MacをBoot CampとWindows XPで起動してGPS-CS1を接続すると正常に動作します。このようにWindowsで問題なく動作するのに、Macintoshだと動かないUSB装置がときどき見られます。

昨年の末に私からAppleが主催するUSBのMailing Listで上記の問題に関して質問したことがあります。その時にはIntel MacとMac OS X 10.4.9の組み合わせではマスストレージとして認識されることが分かりました。しかし、具体的に何が悪いのかは不明のままです。他にも似たような症状を一部の「製造元不明」のUSBメモリで見ています。

さて、昨日に上記のUSBのMailing ListにWindowsに関して興味深い書き込みがありました。

質問した人はCypressのUSBチップFX2を使用した装置用にMac OS Xのアプリケーションを書いていますが、Windowsでは正常に動作するのにMac OS Xでは動きません。Appleを始め多くの技術者が討論した末に、質問した人から以下のような報告がありました。

まず、USB装置メーカが書いたCypress FX2用ファームウェアに以下の二つの問題がありました。

1.endpoint descriptorのBULK IN lengthが1024になっていた。
  本来は512
2.ファームウェアのendpoint autoin lengthが1024になっていた。
  本来のサイズ以上のデータを送ろうとしている。

上記の二つの問題はCypressやCypress FX2の問題ではなく、Cypressのユーザである装置メーカが書いたファームウェアの問題(バグ)です。繰り返しますが、CypressやCypress FX2の問題ではありません。

面白いことに、この二つのバグ持を持ったUEB装置はWindows XPとVistaでは動作「します」ただし、全てで動作するわけではなく、一部のマザーボードやUSB拡張カードではWindowsでも誤動作するようです。

装置メーカがファームウェアをプログラマに開示しないために厳密に何が起きているのかは不明としています。

Mac OS Xは今回のような設計ミスや故障による「エラー処理が弱い」という欠点を持っています。たとえば故障したUSB装置を接続した場合に、Windows XPなら直ちに「故障している」とのダイアログが表示されます。この時にUSB装置はソフトウェア的に切り離され、Windowsは動作を続けます。しかし、上記の故障している装置をMac OS Xに接続すると、ダイアログは表示されず、フリーズしないまでも処理能力が極端に落ちて、再起動せざるを得なくなります。

2007年8月12日日曜日

Javaの文字化け、その後2

考えてみれば当然であるが、javadocもjarも文字化けする。当面の対策は例によって~/.bash_profilに追記である。

alias javac='javac -J-Dfile.encoding=UTF-8'
alias java='java -Dfile.encoding=UTF-8'
alias javadoc='javadoc -J-Dfile.encoding=UTF-8 -encoding UTF-8 -docencoding UTF-8'
alias jar='jar -J-Dfile.encoding=UTF-8'

ただし、javadocで出力されたhtmlファイルはエンコードの指定がないためSafariでは文字化けする。

システムプロパティを参照するPropertiesで調べると以下のような出力がある。

sun.jnu.encoding=SJIS

おそらくはこれを変更するかなにかするのであろうが、Shift JISのまま設定を変えないAppleの意図が分からない。

2007年8月9日木曜日

偽札

日経のサイトに偽札に関する記事が連載されています。その中に偽札の見分け方の一部が紹介されていました。

北朝鮮だけではなかった偽ドル札づくり / SAFETY JAPAN [松村 喜秀氏] / 日経BP社
そこで米国カリフォルニア州のCitibankから引き出した$100札を調べてみました。分かりやすそうな時計の針を調べてみたのですが、虫眼鏡程度の拡大率では偽札のように見えます。そこでScannerで約80倍に拡大スキャンすると、何となく分かりました。

しかし、書かれている内容から受けるイメージとは少々異なります。針が長いと言うよりは、時計の目盛りと長針が重なっていると言った方が近い感じです。もし、彼が言うように針が長いとすれば、その針先は曲がっています。

ところで、偽札を扱っている人達は、$100札を受け取ると一枚一枚顕微鏡で調べているのでしょうか?一般に流通していまえば、それが元に戻ったとしてももう一度使うだけのように思います。

それとも、偽札が見分けられる事で偽札が流通していることを世界に知らせ、米ドルに対する不安をあおることが目的なのでしょうか?そうだとすると、この記事を書いている人や日経の立場は危うくなります。どうも素人には分かりません。

2007年8月3日金曜日

Javaの文字化け、その後

先の「Javaの文字化け」記述に問題があった。javacのエラー出力にShift JISとUnicodeが混合されて出力されることが分かる。環境設定ファイルを以下のようにすると全てUnicodeで表示される。

alias javac='javac -J-Dfile.encoding=UTF-8'
alias java='java -Dfile.encoding=UTF-8'

2007年8月2日木曜日

Javaの文字化け

Mac OS XでJavaを利用すると文字化けする。

信じられない話しであるがMac OS X 10.4.10の"javac"も"java"もその日本語出力はShift JISである。なぜこのような時代錯誤が発生したのか詳細は不明であるが、これでは実用に問題がある。

結果から言えば以下のように~/.bash_profilに追記すれば一時的に回避できることが分かる。

alias javac='javac -encoding UTF-8'
alias java='java -Dfile.encoding=UTF-8'

"-encoding"はmanに解説があるが設定する変数の定義がなく、どこを参照するべきかも書かれていない。これはIANAという規格を前提にしているらしいが、ここで定義しているUFT-8だけでなくutf-8でもUTF8でも機能する・・・いやはや。

http://www.iana.org/assignments/character-sets

"-Dfile.encoding=utf-8"に関してはmanとSun Microsystemsのサイトに以下のような記述がある。

manより
-Dproperty=value
Sets a system property value.

Sun Microsystemsのサイトより
-Dproperty=value
システムプロパティの値を設定します。value が、スペースを含む文字列である場合は、文字列を次のように二重引用符で囲む必要があります。
java -Dfoo="some string" SomeClass

ここで言うシステムプロパティとはJavaが実行されるときに、システムから得た情報を格納するSystemクラスのプロパティーとキーの組み合わせのことらしい。今回のfile.encodeingというプロパティはファイルのエンコードを指定している。

2007年7月25日水曜日

不可視フォルダの設定

Mac OS XはUnix系のOSですが、/bin/や/usr/などのUnix系独自のフォルダは見えないようにしています。ここではフォルダを見えないようにする方法を紹介します。

フォルダを見えなくする最も簡単な方法はフォルダ名の先頭に「.」(ピリオード)を置くことです。しかし、ファイル名を変えるというのは何かにつけて不便です。Mac OS Xのファイルシステムにはフォルダを不可視にする設定があり、Unix系フォルダはAppleのコマンドライン・ツールを利用してこの設定をしています。

このWeblogを読んでいる人であれば、Developer Toolsをインストールしていると思います。もし、まだであればこれを機会にインストールすることをお勧めします。開発環境が無料で付属しているのは、旧Systemと比べた場合のMac OS Xの利点の一つです。旧来のMacユーザには取っつきにくく不便ですが、せっかくあるものを利用しない手はありません。

まずは、不可視にするフォルダをGetFileInfoで調べます。書式は以下の通りです。

GetFileInfo フォルダへのパス

例えば以下のようになります。ルート・ディレクトリに/MyFolder/があるとして、

$ /Developer/Tools/GetFileInfo /MyFolder/
directory: "/MyFolder"
attributes: avbstclinmedz
created: 07/25/2007 17:29:05
modified: 07/25/2007 17:29:05


SetFileの-aスイッチにV引数を付けて可視( 小文字のv )/不可視(大文字の V )の設定します。

SetFile -a V フォルダへのパス

例えば以下のようになります。

$ /Developer/Tools/SetFile -a V /MyFolder/

ちなみに、/Developer/Tools/GetFileInfoと/Developer/Tools/SetFileは各ツールのアイコンをターミナル画面にドラッグ&ドロップすると入力できますし、ターゲットのフォルダも同様にドラッグ&ドロップで入力できます。

/Developer/Tools/フォルダには他にもさまざまなツールが入っていますので、暇なときにmanで調べると時間つぶしができます。

2007年7月16日月曜日

SMARTQueryとAppleの資料

先にも紹介したSMARTQueryですが、ソースコードをみるといくつか面白いことが分かります。
SMARTQuery.zip

windowSMARTs.mファイルのGetDeviceObjectで、
IORegistryEntrySearchCFPropertyを使って"SMART Capable"を検索しています。そこで、IO RegistryをIORegistryExplorer.app (/Developer/Applications/Utilities/IORegistryExplorer.app)を使って調べました。"IOService" Service Planeから"pci@f4000000 > AppleMacRiskPCI > ata-6@D..."の順に追いかけると"IOATABlockStorageDriver > IOATABlockStorageDevice"の中に"SMART Capable"というBooleanのKeyがあります。

しかし、FireWireのデバイスにはこれに相当する"IOBlockStorageDriver"の下はハードディスクの名前がそのまま出てきて、"SMART Capable"というBooleanのKeyがありません。将来はこの"SMART Capable" Keyが追加されるのかもしれませんが、少々大きな変更になる可能性があります。

他にs.m.a.r.t.に関連するMac OS Xの資料としては以下の資料があります。
Sending SCSI or ATA commands to storage devices

ここに以下のような記述があります。
The same design applies to the ATA family as well: sending commands directly to ATA and Serial ATA (SATA) devices is unsupported. However, the ATA family does provide a device interface that allows applications to read SMART (Self-Monitoring, Analysis, and Reporting Technology) data from ATA and SATA devices that implement the SMART feature set.

smartmontoolsのインストール方法

smartmontoolsのサイトにはインストール方法が解説されていますが、Mac OS Xにインストールするには情報が不足しています。ここでは、不足している部分も含むsmartmontoolsのインストール方法を紹介します。
smartmontools Home Page

ここでは、ソースコードのダウンロードとインストール方法がいくつか紹介されていますが、Darwinは三つ目にあります。
Third Method (Darwin/FreeBSD/Linux/NetBSD/ OpenBSD/Solaris/Cygwin) - Install from the CVS repository

まず以下のようにcvsにloginします。
$ cvs -d:pserver:anonymous@smartmontools.cvs.sourceforge.
net:/cvsroot/smartmontools login


cvs repositoryから以下のような応答があり、CVS password:で何も入力せずにリターンキーをタイプします。
Logging in to :pserver:anonymous@smartmontools.cvs.
sourceforge.net:2401/cvsroot/smartmontools
CVS password:


次に、以下のようにタイプします。
$ cvs -d:pserver:anonymous@smartmontools.cvs.sourceforge.
net:/cvsroot/smartmontools co sm5


上記のcvs命令に対して以下のように応答し、カレントディレクトリにsm5というフォルダができ、ソースコードがダウンロードされます。
$ cvs checkout: Updating sm5

ここまではsmartmontools Home Pageに書かれているとおりですが、次に書かれている./autogen.shを入力すると以下のようなエラーが表示されます。
You must have at least GNU Automake 1.7 (up to 1.9.x)
installed in order to bootstrap smartmontools from CVS.
Download the appropriate package for your distribution,
or the source tarball from ftp.gnu.org—automake <ftp:
//ftp.gnu.org/gnu/automake/> .

Also note that support for new Automake series (anything
newer than 1.9.x) is only added after extensive tests. If
you live in the bleeding edge, you should know what you're
doing, mainly how to test it before the developers.
Be patient.


上記にあるAutomakeを入手するために、Mac OS XのFinderで「移動 > サーバへ接続...」を選択し、「ftp://ftp.gnu.org/gnu/automake/ 」と入力してFTPサーバに接続し、automake-1.9.6.tar.gzを入手します。automake-1.9.6.tar.gzをダブルクリックして伸張し、ターミナル.appでautomake-1.9.6/ に移動してビルドします。
$ cd automake-1.9.6/
$ ./confiqure
:
$ make
:
$ sudo make install
Password:
:


以上でAutomakeの準備ができましたので、本来のsmartmontooolsのautogen.shに戻ります。
$ ./autogen.sh
:
$ ./configure
:
$ make
:
$ sudo make install
Password:
:


以上で、smartmontooolsのsmartctlとsmartdが利用できます。それぞれの使い方はmanに譲りますが、以下のようにすると起動ディスクのs.m.a.r.t.データを見ることができます。
$ smartctl --all disk0

s.m.a.r.t.

Googleの報告によるとハードディスクの自己診断試験s.m.a.r.t.を利用すると、6割ぐらいの確率でクラッシュ前に分かるそうです。
Failure Trends in a Large Disk Drive Population

私は日経エレクトロニクス2007年4月23日版に掲載されていた日本の抄訳版で知りました。

ハードディスクが故障する確率は少なくとも50%ではない(笑)と思うので、65%は調べるに値する検査だと思います。

s.m.a.r.t.の解説とソフトウェアの紹介はWikipediaにありますが、例によって紹介されているソフトウェアのほとんどはWindows版です。
Wikipedia: s.m.a.r.t.

Mac OS X 10.4.xに付属するDisk Utility.appはs.m.a.r.t.が表示されますが、どのような内容を元に「S.M.A.R.T. 状況 : 検証済み」としているのかが分かりません。Googleの報告書を読んでいなければこれでも良いのですが、読んでしまった以上はAppleがどのような基準を元に「検証済み」と判断したのかが気になります(苦笑)

さらに、検証結果を見られるのは内蔵のATAまたはSATAドライブのみで、USBやFireWireなどで接続したATAドライブの検証結果を見ることができません。そこでハードディスクからs.m.a.r.t.の内容を取り出すソフトウェアを調べてみました。

■ SMARTReporter
SMARTReporterはMac OS Xに付属するDisk Utility.appがだす報告と同じですが、起動時に調べた内容をLogとして記録できます。
SMARTReporter

報告内容だけでなく、対象ドライブもDisk Utility.appと同じです。USBやFireWireのドライブを見たいひとはAppleに頼むように書いています。いずれAppleがUSBやFireWireのドライブやRAIDドライブもサポートするだろうから、ジタバタしないという意味でしょう(笑)

■ smartmontools
SMARTReporterのReadMeには詳細な報告が必要な場合にはsmartmountoolsを使用するように書いています。smartmontoolsはMac OS X(Darwin)で使えるコマンドラインツールです。
smartmontools Home Page

このツールはs.m.a.r.t.の検査結果の詳細を表示してくれますが、ソースコードを入手して自分でコンパイルしなくてはなりません。さらに、対象のドライブも内蔵ドライブのみです。ソースコードをみるとSCSIやATAのドライブをBSDのAPIでオープンして命令を送っているようです。

■ SMARTQuery
これはAppleが公開しているサンプルコードですが、s.m.a.r.t.の検査結果の内容を表示してくれます。
SMARTQuery

これは2007年5月30日に公開された新しいサンプルコードです。ここからもs.m.a.r.t.のサポートは始まったばかりという感じがします。ソースコードを元に少し調べてみると、Appleはデバイス管理データベースであるIO Registryにs.m.a.r.t.の項目を追加しています。本格的にサポートすることを検討しているのかもしれません。

Appleが外部ドライブでもs.m.a.r.t.をサポートするようになるのはいつかは分かりませんが、自分で開発するより待った方が良さそうです。

ちなみにWindowsの世界ではいくつかのサードパーティが外部ドライブをサポートしている点が「売り」になっているようです。ただし、サポートできる外部ドライブはメーカ指定で、汎用になっていないようです。

2007年7月9日月曜日

Info.plist

USB装置用にkextドライバを書くときに必ず問題となるのがInfo.plistに書き込む内容です。他のkextドライバのInfo.plistをコピーして場当たり的に修正しただけで、プログラムを書ける場合もあります。しかし、後で問題となる確率も高くなります。

Appleの資料
Appleの資料ではInfo.plistを書くにはUSBの規格書を読むようにと書かれていて、usb.orgのURLが書かれているだけです。しかし、usb2.0の資料は650ページもある膨大なもので、英語が外国語の人間には資料がないのと代わりありません(苦笑)

しかし、そこはPCの良いところで「比較的」簡単に検索ができます。具体的にはPreview.appのSearch欄に"Configuration Descriptor"と入れると、読むページをかなり限定できます。

USB Prober
この手の規格書には具体的な例が少なく分かりにくい事が多いのですが、USBの場合にはマウスやキーボードなどの具体例が目の前にゴロゴロしています。標準の開発パッケージに入っているUSBProber(/Developer/Applications/Utilities/USBProber.app)でUSB装置のDescriptorを見ながら読むことができます。

例えばAppleのマウスでは以下のように表示されます。



IORegistryExplorer
他にもIORegistryExplorer(/Developer/Applications/Utilities/IORegistryExplorer.app)があります。ServicePlanesでIOUSBを選択して、その右の欄にあるRootから順に追いかける事ができます。



USB規格書
USB規格書はなんと言っても基本ですが、いきなり電子回路とレジスタ(メモリ)そしてソフトウェアをつなぐ文章は初めてのひとには辛いと思います。電子回路の知識のある人にはUSBの予備知識として以下のNECのサイトをお勧めします。

http://www.necel.com/usb/ja/about_usb/index.html

さて、Previw.appでUSB規格書を検索してInfo.plistに関連する内容を抜き書きしてみました。

USB規格書に9.6 Standard USB Descriptor Definitionsという項目があり、この辺からinfo.plistに出てくる文字列が出てきます。

9.6.1 Deviceからdevicedescriptorに関する解説が始まります。Table 9-8. Standard DeviceDescriptorにそれらしき文字列が出てきます。ただし、Table 9-8の最初の4バイトはAppleのUSB Prober.appやIORegistryExplorer.appでは表示されません。また、他にも表示されなかったり、独自表記している部分があり注意が必要です。

9.6.3 ConfigurationからはUSB Prober.appと同じ"configuration descriptor"が、また9.6.5 Interfaceからは"interface descriptor"の詳細が記述されています。

USB Proberでは▼Configuration Descriptorの▼Length (and contents): の下に生のデータが16進数で表示されおり、その解釈が続きますが、その内容とUSB規格書の9.6.5 Interface以降の表とビット単位で対応させることができます。

なお、Interface Classなどソフトウェアに近い規格の定義に関しては別に定義されています。

USB.org Approved Device Class Document Download


例えばマウスなどのHID(Human Interface Devices)装置ではHID1_11.pdfがあります。HID Descriptorの詳細はこの資料の6.2.1 HID Descriptorに解説されています。リストの書き方がUSB規格書とは少々異なりますが、書いていることは同じです。USB ProberでAppleのマウスを見ると▼HID Descripterの下に記述されているCountry CodeはHID1_11.pdfではbCountryCodeと書かれていて6.2.1 HID Descriptorの次のページに国名のリストがあります。

さらに、USB ProberでAppleのマウスを見ると以下のような階層になっています。

▼Configuration Descriptor
  ▼Interface #0
    ▼HID Descripter
      ▼Descriptor 1
        ▼Length (and contents)
        ▼Parsed Report Descriptor

▼Length (and contents)が前述と同様に生のデータが16進数で表示されています。また、その解釈が▼Parsed Report Descriptorに記述されています。この内容とHID1_11.pdfの6.2.2 Report Descriptorの最後に掲載されているマウスのデータを比較すると対応関係がわかると思います。

2007年7月1日日曜日

アンコールワット・ハーフ・マラソン

2003年の12月5日にアンコールワット・ハーフ・マラソンに参加しました。以下はその時のメモです。

プノンペン在住のJICA シニアボランティアからは総勢5人の参加です。

前日の早朝にプノンペンを発ち、シェムリアップのホテルにチェックイン後、運営事務局に行って最終登録をすませます。実は事前登録の時点でいろいろと問題があり、最終登録でも事前に渡していた写真がなくなり、一部の人が市内のカメラ屋で撮影しなおすという問題が発生しました。この手の大きな大会には、何度やっても、どうしても、問題がつきまといます。

私はアンコールワットが初めてだったので、ほかの皆さんにおつきあい頂いてコースの下見をかねて観光しました。もちろんコースの下見は車ですが、車で走ってもハーフ・マラソンの21kmはほんとうに長いです。

シェムリアップに来る前に、あらかじめ1時間半走って体調を見ると同時に時間を計りました。その結果を基に計算すると21kmを走るのに四時間かかります。その時には時間制限がないという話しでしたので、私はのんびりと駆け足程度で走る事にしていました。

ところが、下見の時に恐ろしい話を聞かされました。3時間を過ぎると会場が撤収されて誰もいなくなり、遅い走者は後ろからトラックで追いかけられ「トラックに乗れば楽だよ!」と悪魔のささやきがある…そうです。

出発は朝の7時ですが、例によっていろいろと出発前の儀式がいろいろとあります。ところが、主催社「ハート・オブ・ゴールド」代表でマラソン走者でもあった有森裕子さんが来てません。この手の大きな大会には、何度やっても、どうしても、問題がつきまといます。

ようやく儀式も終わり7時30分に出発です。同行の知人は10kmコース参加予定を急遽予定変更してハーフ・マラソンで出発です。私はとにかく3時間を切らなくてはならないので、駆け足よりも早めで走り始めます。たくさんの参加者がいるのであっという間にみんなバラバラになって走る事になります。最初の頃は交通制限や整理もあるのですが、30分も走って「アンコールワット」の東側辺りになると交通整理すらなくなります。

バスやトラック、乗用車などが道路脇を走る私のすぐ脇をかすめるように・・・いや一台のバスは実際に私をかすめて走り抜けました。道ばたには露店や一般の観光客、声援の人達がいるし、石やゴミが多くて、道の端によって走ることができません。これでは危険なので、道の中央を走ることで車からよく見えて、大きく迂回しないと追い抜けないようにして走ります。それでも、バスや4WDのディーゼル・エンジンからはき出される黒煙の中を走る事になります。この手の大きな大会には、何度やっても、どうしても、問題がつきまといます。

さらに30分ほど走って「バンディアイ・クディ」という遺跡で左折すると車の数が少なくなります。道ばたには歓声を送ってくれる地元の人々がいます。子供達はハイタッチしようと近づいてきますが「この歓声にハイタッチなどでまともに答えていると体力を失う」そう聞いていた私はニコリとするだけで勘弁してもらいます。一緒に走る子供もたくさんいて、アッという間に追い抜いてきます。いやみたらしく何度も追い抜いていく子もいますが、この挑発に乗ると残された道は自滅とその後に続く周囲からの嘲笑と自責の念だけ…我慢ガマンです。

テレビなどで知っている人も多いともいますが、マラソンのコースには給水所があります。テレビなどでは紙コップで渡す場面をよく見ますが、ここでは500mlのペットボトルが用意されています。知人にマラソン好きの米国人がいるのですが、彼に言わせると給水所の数が十分ではないそうです。実際にこの問題を見越して一部の欧州人グループはコースの要所々々で特性の飲み物を準備して、美人の女性が渡しています。それを羨ましく思いながら通り抜けます。この手の大きな大会には、何度やっても、どうしても、問題がつきまといます。

私は水を一口か二口飲む程度にして、あとは頭と両足にかけます。12月といえどもカンボジアの炎天下ですので帽子は必須です。私の帽子はメッシュになっていて水をかけるとしばらくは涼しくなります。私の服装はTシャツに膝までのズボンですが、履き物はプノンペンで買ったサンダルです。

私は走るのも歩くのも下手で 山を3日か4日歩いただけで足の爪がはがれます。登山用に靴を特注で作ってもらった事もありますが、爪がはがれます。プノンペンには靴の特注を受けてくれる店もあるそうですが、ランニング用の靴は素材がありません。そこで、面テープ(マジックテープ)でピッタリと足にあって軽いサンダルを選びました。それでも、よほど走り方が悪いらしく、他の人の足音に比べて私の足はドタドタと大きな音を立てています。走り方を変えればよいのですが、すでに走り始めてから一時間を過ぎて、そのような余裕もなくなってきます。

コースの給水所のすこし先にはボトル拾いの少年少女が待ち受けています。こちらの余裕がないので拾ってくれるのを願って彼らの足下に向かって投げます。できるだけ小さな子供に向かって投げようとするのですが、コントロールが悪くて年長の子供達が走ってきて持って行きます。声援を送ってくれる子供達と比べて、彼らが無表情なのが気になります。

コースの半分ぐらいから足以外の筋肉が痛くなり始めます。足が痛くなるのは最初から覚悟していたのですが、両腕と両肩、さらに腹筋が痛くなるとは思ってもいませんでした。山を歩いている時にこのような事はありません。マラソンを走る時には足だけでなく両腕や腹筋などのトレーニングもした方が良さそうです。

痛くなった筋肉は水をかけると少し治まりますが、給水所が少ないのでなかなかそうも行きませんし、500mlのペットボトルを手に持って走るだけの余裕もありませんし、腰などにぶら下げるペットボトル用袋などは邪魔になりそうです。ただし、もうしばらく走ると体が麻痺して痛みすら感じられなくなります。

痛みが感じられなくなった頃に、後ろから知人がが声をかけてくれました。私はいっぱいイッパイで、返事すらまともにできません。知人はあっという間に私の視界から消えます。痛みは感じられなくなるのですが、ペースがドンどん落ちていきます。気づくと遅くなっているので、絶えずペースに気を遣うようにします。何度か他の人の後ろを走る事で走るペースを一定に保とうとするのですが、こちらの体力がついていけず取り残されてしまいます。もう少し体力があるつもりだったので、これはかなり悔しいです。

「勝利の門」を抜けて「綱渡り踊り子の塔」辺りになると「象のテラス」がみえます。ここでは何かの大きな法要があるらしく、鉄骨アングルを組み舞台を大きくして椅子を並べています。昨日の下見で見た風景なので何となく分かるのですが、疲れがひどくて黄色い法衣をまとった僧侶が多いなと感じるだけです。

「バイヨン」の西側を迂回して「南大門」を抜けます。「南大門」とそれに続く橋の辺りは道幅も狭く観光客も車も多いのですが、交通整理されてません。ここでは観光客と車の間を右に左にとよけながら走る事になります。実際に観光客に混じった東洋人男性がよろけて私に当たりました。しかし、今から思えば疲れたランナーをねらったスリだったかも知れません。幸い私は何も持たずに走っていたのですが要注意です。この手の大きな大会には、何度やっても、どうしても、問題がつきまといます。

「南大門」からは最終の直線コースです。この直線コースがどれだけ続いているかイメージできてきませんし、アンコールワット前のどこがゴールになっているのかも分からないので、どの時点で残った力を振り絞って良いかが分かりません。昨日に渡されたパンフレットに地図があるのですが、ゴールの場所が分かりにくく、現地で探してもよく分かりません。この手の大きな大会には、何度やっても、どうしても、問題がつきまといます。

やむなく、アンコールワットが見えるようになった辺りでラストスパートする事にしました。ゴールは右という横断幕も見えます。ちょうど前を走っている東洋系女性に一緒に走らないかと声をかけて、声を出しながらペースを上げていきます。思っていた以上に力が残っていて、右折時には体を右に倒して回るほどです。アンコールワット前で西に右折すると、木々に隠れていたゴールが20mほど先に見えます。ゴール・ゲート上にはデジタル表示の時計があり、私は2時間22分30秒でした。

サラ・ボントラバエからのお知らせ

私の派遣先であった日本カンボジア友好技術訓練センターは地元の人からはサラ・ボントラバエとよばれています。

場所はJICA事務所の前を通るモニボン通りを南に下り、大学と高校の次にこのセンターがあります。

サラ・ボントラバエでは印刷、シルク印刷、木工、電気製品の修理、縫製を教えています。当センターの授業料は無料です。各部門が商売をして収益を上げ、その収益を元にカンボジアの人々に技術を教えています。

印刷部門はカンボジアでも有数の印刷技術を誇っています。シルク印刷部門では横断幕やTシャツなどの印刷を請け負っています。木工部門では教育用の木工品や椅子などの家具を手がけています。さらに、電気製品の修理では修理店を開いています。

さて縫製部門ではセンター内にお店を持っており、シルクのドレスやシャツのオーダーができます。市場などで買った生地を持ち込んで、縫製だけしてもらうこともできます。また、カンボジア土産によいシルクの小物も製造販売しています。シャツや小物に名前などの刺繍を入れることもできます。

私は、携帯電話をいれる小物入れをオーダーしました。ベルトに取り付けたり、首から提げられるようにして、名前を刺繍してもらいました。布地代、縫製代、刺繍代も含めて$7.00でした。

カンボジアの人々が技術を習得できるように、是非、当センターをご利用下さい。

心付け

十年以上前の話しになりますが、電子楽器のメーカーで修理や改造をしていたことがあります。そのころに修理の部品代や技術代(人件費)などの価格体系を決めるために苦労したことがあります。

ある集まりで、カンボジアにボランティアできている人が「日本では修理代が高くて困る。カンボジアで修理したら日本の数十分の一だ。」と嘆いていました。

修理代金は修理に対する品質保証など、さまざまな考え方があるため一概に評価することは困難です。しかし、一般的に修理代は部品代よりも人件費の占める割合の方が遥かに多くなります。

つまり、修理代が高いと言うことは人件費が高い、人件費が高いと言うことは給料が高いと言うことにつながり、所得が高いと言うことになります。

逆に言えば修理代が安いと言うことは、所得が低いと言うことです。

ボランティアの目的の一つに支援先の生活向上のための所得向上があると思います。所得を向上させるためには、賃金が上がらないと行けません。つまり、ボランティアは修理代が安いと喜ぶのではなく、修理代が安いと悲しまなくてはなりません(笑)

また、「カンボジアの物価は日本よりも安いのだから」と言って、相手の儲け分を無視して値切って買おうとする「値切り」マナーの悪い人すらいます。これも同様にボランティアが値切るのは良くないことで、「外国人価格」を支払って支援先の所得の向上にわずかでも役立たないといけません(笑)

もちろん、買い物の楽しさの一つに、値切り交渉の楽しさがあります。やり取りの楽しさの他に、安くなれば安くなるほど楽しいと言うこともあります。それならば、安くなった分の一部でもチップとして渡すことが、外国人ボランティアのマナーではないでしょうか?

ところで、「日本にはチップの習慣がない」とテレビでうそぶく有名人を見たことがあります。彼や彼女は「心付け」や「祝儀」という大昔から日本にある習慣を忘れた寂しい日本人です。いかに上手く心付けを渡すかが、その人の品位を示すこともあります。

日の出と日の入り

2007年の6月22日は日本では昼が最も長くなる夏至でしたが、赤道に近いカンボジアでは一年中午前6時頃に日が昇り、午後6時頃に日が沈みます。

日本で時間を決めて朝の散歩に出ると、冬に散歩に出ると薄暗いし、夏は日がさんさんと照っている、と言うようなことになりますが、カンボジアではそんなことはありません。カンボジアでは時間を決めれば戸外の明るさも決まります。

南十字星

「南十字星」「サザンクロス」と聞いて皆さんはどのようなイメージを持ちますか?ロマンチック、新婚旅行、心癒される兵士、いろいろとあると思います。

カンボジアでは、その南十字星を見る事ができます。5月初旬だと10時頃、中旬には9時頃、下旬には8時頃に真南の空に見えます。南の空の少し低いところを見ると十字に並んだ星を見る事ができます。右側の星が少し暗めですが慣れれば簡単に見分けられます。

南十字星だけでなくサソリ座やケンタウロス座など天の川に沿って南の空は美しいですよ。東から南、西の順に、ヘラクレス、蛇遣い、オオカミ、定規、コンパス、ケンタウロス、南十字星、ハエ、竜骨、帆、 羅針盤、船尾、大犬、一角獣、子犬、双子座、と並びます。

私の滞在先では窓を全開にして楽しむ事ができます。このためにわざわざ双眼鏡を買いました。光害の多いプノンペン市内でもよく見えますので、他の場所ならとてもきれいだと思います。

半年ほど前までは蚊が多くて星を見るのに困りましたが、最近は蚊の駆除が進み少なくなりました。プノンペンは夜間の気温でも28℃前後ありますが湿度は50%から70%の間で、東京や京都の夏のように湿度80%や90%以上!という事はありません。とくに滞在先では窓を全開にするとビル風が吹き抜けて、星を見ながら気持ちよく過ごせます。もちろん、蚊の大群が押し寄せたり、風のない日は退散です。

インターネットを利用できる方にはプラネタリウム・ソフトウェアが無料で配布されています。

Solar System Simulator Project
http://www.sssim.com/

ここには教育用のプラネタリウム・ソフトウェアがあり、小学生向けの簡単な星座図から始まり、中学生や高校生向けの天文学の解説まで入っています。Windows XP版は「太陽系シミュレータースタジオ」、Mac OS X版は「太陽系シミュレーター 教育用普及版」と言います。太陽系の動きなどをアニメーションで解説していますので、大人でも楽しめます。日本語版だけでなく英語版も入っていますので、カンボジアの人達にもお勧めできます。

雑巾の色

プノンペン市内でも物乞いで生活している子供達を見ます。雑巾の色、それが貧しい子供達が着ているシャツの色です。汚れて、洗って、汚れて、洗って、なんども、なんども、繰り返した色です。雑巾の色は貧困の色、ニッコリした歯の白が似合う色です。

雑巾の色は忘れた色でした。掃除の時には化学雑巾で使い捨て、飲み物をこぼすとティッシュやペーパータオルで使い捨てです。子供の頃、冬の朝に氷の張ったバケツにカチカチの雑巾が掛かっているのを思い出します。手に息を吹きかけて絞った雑巾、廊下を拭き走った雑巾、忘れられた色です。

子供の頃の膝あてズボンや肘あてシャツ、かかとやつま先の継ぎあて靴下、そんなときの色も雑巾の色でした。古下着は据えた匂いがして、それを雑巾にして、機械の油を拭き取って、燃やして暖をとる。雑巾の色は節約の色です。


物乞いを怠けているだけという人がいます。しかし、物乞いも立派な仕事です。技術も知識も持つ機会のなかった人が、自分の見栄も外聞もかなぐり捨てて、公衆の面前でひざまずき行き交う人々にものを乞う。こんな苦渋を伴う仕事です。東京にいる浮浪者とカンボジアの物乞いとは異なります。

ものを乞うのにもさまざまな技術(演出)が必要です。立っているだけでは誰も恵んでくれません。みすぼらしいだけでも、うずくまっているだけでも、哀れな声を出すだけでも、恵んでもらえません。一目見ただけで喜捨をしなくてはと思わせる演出技術、つまりテクニカル・タクティクス(戦術技術)が必要です。

演出技術だけでは足りません。マーケティング・アナリシス(事前顧客調査)も必要です。人々(顧客)が喜捨で優越感を得たり、喜捨ができて有り難いと思う時はどのような時か?どのような服装の人か?装飾品は?化粧は?人種は?。さらに、たくさんの子供集まりそうな場所は嫌われる、などのストラテジック・インフォメーション(戦略情報)も必要です。

人々はそんな優越感や功徳の心をくすぐる技術に対してお金を支払います。

親玉がピンハネするからと言う人もいます。ピンハネされても子供達の手に幾ばくかのお金が残り、そのお金で小さな命を「明日まで」つなぎ止める事ができます。

あなたに「物乞い」という仕事ができますか?

プノンペンから南へ その2

前項ではプノンペンから南へ国道2号線を下りましたが、今回はプノンペンから南へ国道3号線を3時間ほど下ってコンポート州にでます。コンポート州は海に面していますが、海の観光地シアヌークビルのような観光化はされていません。プノンペンから日帰りできる距離ですし、幹線の国道3号線よりも車が少なく舗装された31号線と33号線をたどればさらに速く行くことができます。

なぜ観光化されていないかというと、砂浜がほとんど無いためです。プノンペンの人達は魚やエビなどの海産物を食べにコンポート州に行くそうです。休憩所で海の幸に舌鼓を打って、ハンモックで休んだり、トランプの興じたり・・・と書くと興味を失う人が多いと思いますが、ちょっと待ってください。それだけではありません。

先ほど砂浜がほとんど無いと書きましたが、実はあります。島に行くととてもきれいな砂浜を楽しむことができます。私の行った島はコ・トムサイと言い、コは島、トムサイはウサギという意味で、ウサギ島となります。このウサギ島はとてもきれいでお勧めできます。

きれいな砂浜に様々なヤシの木が茂り、観光化されていない自然、日本人が持つ南の島のイメージそのままを楽しめます。背の低いヤシの群生に、板を渡して、木陰の縁台にし、ハンモックを吊す、そんな夢のような所もあります。海からの風を楽しみながら、ヤシの木陰に吊したハンモックで昼寝・・・いいですよ。島をぐるりと回ってみたり、シュノーケル*1で潜ってみるのも面白いかもしれません。

ただし、シアヌークビルも含むこのあたりの海には鮫がいるそうですので、一人で泳ぐのは禁物です。数人で海に入って誰かが必ず周囲に注意するようにして泳ぎましょう。船頭さんに見てもらうのも一案かもしれません。

ウサギ島には先ほどの休憩所に頼めば十人くらい乗れる船を一艘$20ほどで送り迎えしてくれます。島までの船旅は20分ほどです。島には水などの飲み物を持って行くことをお勧めします。また、船で出発する前に休憩所で海産料理を仕込んで島で食べるのも一案でしょう。

  南国の島へ 日帰り!

カンボジアの首都プノンペンにはそんな楽しみもあります。


*1 シュノーケル
私がいた頃は、プノンペン市内のペンシルマーケットという店の3階に水中眼鏡とのセットが売られていました。

プノンペンから南へ その1

プノンペンから南へ国道2号線を車で1時間半ほど走ると、チッソウ(ジッソウ)と呼ばれる小山があります。オッドン山などプノンペン周辺にある小山と同様にこの小山の頂上にもお寺があります。

プノンペンの北部にあってにぎやかなオッドン山の山麓とくらべると、南のチッソウ山は子供達の数も露天の数も少なく閑散としています。並んでいる露天も開店休業状態・・・とはいうものの子供達がいないわけではありません。山の南側に車を止めて降りると、例によって子供達がよってきます。

ここの子供達はオッドン山にいるファン・キッズや演劇少年団*1とは違って、英語を話します。少々驚きながらも話を聞いてみると観光案内をしてくれるそうです。

先にも書いたようにこの山の頂上にはお寺がありますが、その向こう側には遺跡があるそうです。小学生の高学年か中学生ぐらいの少女によると、この遺跡はアンコールワット周辺にある遺跡よりも百年ほど古い物と言われているそうです。

この山の南斜面からお寺まで続く階段道入り口の脇を見ると記念碑が建っていて、階段の寄贈者の名前として日本人とおぼしき名前が英語で彫られています。階段はそれほどきつくはないのですが、木陰がなく南国の直射日光が差しますので帽子や日傘は必須です。この階段を上り、門をくぐって少し行くと、道は二股に分かれていて、一方は山頂のお寺に続きます。

お寺では景色を眺めながら昔の道を思い描くとなかなか楽しめます。とぎれとぎれに並木が続き、メコン川の方に伸びています。その道を横切るような並木も見えますし、ため池のように見える場所もあります。遺跡が栄えた何百年も昔はどうなっていたのでしょうか。

お寺から下って、先ほどの二股道で残りのもう一方の道を行くと遺跡があるのですが…ここで呼び止められます。例によって外国人である我々はここで入場料を支払わなくてはなりません。

払う物を払って少し下ると、右手に遺跡が見えてきます。所々に壊れるだけでなく黒くすすけたところがあります。クメール・ルージュの影響だそうですが、竈ですすけたように見えるところもあります。お坊さんが生活していたのかもしれません。

子供達の解説を聞いていて、ハタと気づいたのですが、彼らの言っていることが何の苦もなく聞き取れます。なんと、彼らの発音が良いのです。

どうやら、英語がネイティブの外国人が来て観光案内を英語で教えたようです。これはなかなか良いアイデアです。いささか感心しました。少年少女達は英語を習いながら、生活の糧を得る方法も習っています。現金が入るので彼らの勉強への熱意もいやが上にも増します。

単に英語などの勉強を教えるだけでなく、習ったことをどのように生かして生活の糧にするか、ここまで考えて相手を納得させて初めて役立つ教育となります。勉強したいと思わせる教育、なかなかうまくやったな、やられたな、と感心しました。ここではチップ、いやガイド料金をたっぷりとはずみましょう(笑)

アンコールワットの観光ガイドは認可制ですが、子供は例外にしてもらい、英語だけでなく日本語の観光案内も覚えてもらいたいと思いました。日本語版公式ガイド・マップ*2の販売と日本語ガイドで子供達の生活が潤います。子供達の生活が潤い、日本人観光客の知り合いできれば、日本に対する興味も増し、未来の日本とカンボジアの友好に必ず役立つ、そう信じます。

*1 ファン・キッズや演劇少年団
他の項目を参照してください。

*2 日本語版公式ガイド・マップ
私が派遣されている訓練センターでは、アンコールワットの公式ガイド・マップを印刷しています。私も遺跡の日本語名の命名でお手伝いしました。日本語版の印刷もすでに校正やレイアウトが終わっており、予算がおりればすぐに印刷される予定です。

演劇少年団

2005年の元旦にプノンペン北部にあるオッドン山に行きました。以前にFan Kidsで紹介した山ですが、今度は演劇少年団を見つけました。

オッドン山の麓にはヤシの葉などで葺いた屋根だけの掘っ立て小屋がたくさんあり、その下に置いた桟敷で食事をしたりハンモックで昼寝をしたりできます。その桟敷に小学生ぐらいの少年が4人ほどでやってきます。顔には炭で歌舞伎のような隈取りを塗っています。かれらは歌を聴かないかと桟敷を一つ一つ尋ねて回ります。いわゆる門付けというやつです。

交渉が成立すると何やら歌い始め、歌に合わせて寸劇をします。これが異常にウケていています。クメール人は老若男女を問わずみんな声を上げて笑っています。女性などは笑いすぎて腹を抱えて桟敷で突っ伏していて、妊婦などは大丈夫かと心配になるほど笑っています。ウケがよいと、ご祝儀が出ます。ご祝儀が出ると芸に勢いが付いてさらにウケるようになります。もちろん、私には何を言っているのかサッパリ分かりませんが、みんなが腹を抱えて笑っているので、それを見ている私もおかしくなります。もちろん、ご祝儀を弾みました。

一通りネタが終わると、客の目の前でご祝儀の山分けが始まります。年長で一番活躍していた少年が、お金を取りまとめて一人一人に渡しています。

ところで、オッドン山の麓にはいろいろな露店が並んでいます。露店と言ってもムシロを敷いて売っているのはよい方で、天秤棒の籠を地面に並べただけの行商も多くいます。そんな店の中になつかしい飴細工もあります。私は何十年も前の小学校時代に見たきりでしたが、オッドン山で久しぶりに見ました。自転車の荷台に飴細工の道具を一式積んで子供相手に売っています。

オッドン山に遊びに来ている子供だけでなく、仕事をしている子供達も一緒になってみています。思い切ったようにお金を出して、飴細工を買っている子供がいます。きっと、売り上げが良かったのでしょう。

Fan Kids

2004年10月10日日曜日にプノンペン北部にある山寺に行きました*1。

左が湖、右が川になった道を北上すると、左の湖の向こうに小山が見えます。この小山が目的地でオッドン(またはウドン、アルファベット表記でOdongk)山といいます。同行したカンボジア人によると、地元の人しか行かないような観光地だそうです。プノンペン市周辺の一帯は全くの平地で、まれに巨大な岩石のような小山があります*2。そのような小山には決まって山寺があるようです。

麓の空き地が駐車場になっていて、そこに車を預けて昼食に出かけます。普通は早朝にここに到着して山に登ってから昼食だそうですが、到着したのが昼食時間です。麓にある露店で食べ物を買って、休憩所で食事をします。休憩所といっても我々が利用したのは雨よけ日よけのビニールシートを張って桟敷を置いただけです。

じつは、駐車場で車を降りてからこの休憩所に来るまで少年達がつきまとってきました。男の子だけでなく女の子もいます。しかし、彼らは物乞いではありません。何も言わずに黙々と団扇で扇いでくれます。団扇はヤシなどの葉を編んで作った物です。一度も洗ったことがなさそうな米漫画シンプソンズのTシャツを着た10才ぐらいの男の子は、私にねらいを定めたようです。

食事が終わって残り物を少年達に上げましたが*3、シンプソンズの少年は見向きもしません。こうなればお金を上げるしかなく、少年を呼んで500リエルを上げました。さらに、山寺に向かって出発するときに休憩所に残る女性を扇ぐという条件でさらに500リエルを上げます。これで、シンプソンズの少年を追い払うことができました。

山寺までの参道は石の階段になっています。石段には線香売りや物乞いがいますが、面白い商売をしている一団もいます。階段の踊り場に椅子を置き、階段で汗だくになった人を座らせます。その周囲を十人ぐらいの少年少女が囲み団扇で一斉に扇ぎます。これは涼しそうです。

頂上の山寺にたどり着き、お参りを済ませ、周辺の真っ平らな景色を眺めていると、団扇少女がやってきました。この少女は団扇だけでなく線香も売っていますし、青いプラスチックのバケツも持っていてなにやら入っています。いわゆる経営の多角化というやつです。

これはさすがに無視しようと思ったのですが、私のジーンズのポケットを指さしてなにやら言っています。よく見ると、ポケットからお金が覗いていました。少女はお金が欲しいという意味で言ったのかも知れませんが、追いはぎに遭いかねない状態を注意してくれたのかも知れません。いずれにしても、お金をやらないわけにはいきません。

お金を受け取ったのでその場を離れるかと思いきや、少女はプロ意識のある女性で山を下りるまで扇ぎ続けてくれました。何せ南国の真っ昼間の炎天下で、長い階段を下りるので異常に暑くなります。少女の団扇は有り難いことこの上なしです。もちろん、降りてからお金を追加しました。少女の日に焼けて垢にまみれた顔をよく見ると、可愛い顔をしています。元気すぎて地面に転がり落ちてしまったアプサラと言ったところでしょうか。

休憩所にもどるとシンプソンズの少年達は女性達となにやら楽しそうに話しながら扇いでいました。私が戻ると数人がかりで扇いでくれて、これがまた涼しい。少年達もプロ意識があって、私が車に乗るまで扇いでくれました。

団扇少年少女にはプロ根性があります。彼らに教育と仕事の機会があれば、カンボジアの将来はさらに明るくなるでしょう。

*1 本当は南部にある山寺に行く予定だったのですが、Phucomben(プチョンベン)という祭りの影響で大渋滞したために逆の北の山に向かうことになりました。川や山寺の位置から考えると、プノンペンは風水に基づいて決められた首都かも知れません。

*2 知人に高い山でどれくらいだとたずねると800程あると答えが返ってきました。「エッ、800mか?」と聞き返すと「800段」と笑っていました。プノンペンの人にとって山の高さは、山寺までの階段数なのかも知れません。

*3 食事を分け合って持って行く子供達の他に、水が入っていたプラスティック・ボトルを集めている少女もいます。彼女はボトルを地面に置いて、その上にピヨンと飛び乗ってポンッと音をさせてつぶします。ポンと良い音がすると、彼女はニコッと笑います。

2007年6月26日火曜日

Subversion 1.4.4

Subversionが1.4.3から1.4.4になっていました。

このアップに合わせてUniversal Subversion 1.4.4 Binary (build 3)も配布されていました。

他に、Mac SVN Server - MASMac SVNというものも見つけましたが、まだアルファーの状態で古いSubversionを元にしていますので、当面はテキストベースで作業するより方法がなさそうです。

2007年6月14日木曜日

期待はずれと期待

San Franciscoで開催中のWWDCに来ています。期待していたTime Machineを使ったプロジェクト管理は外してしまいましたが、次期Mac OS Xに期待してSubversionをこのまま使い続けても良さそうです。WWDCのLabにはXcode and Subversion Labという項目があります。
http://developer.apple.com/wwdc/sessions/

ところで、WWDCに来て良いことの一つにPeetsのコーヒが好きなだけ飲めるという点があります。

San Joseで開催していた頃から開場には小さな屋台が出てエスプレッソやカフェラテなどが飲めたのですが、今までどこのお店が出しているのかは気にしていませんでした。知人に指摘されて、San Franciscoの開場ではPeetsが出店していると知りました。San JoseでWWDCが開催された頃にはコーヒの他にフローズン・ヨーグルトのようなものも楽しめたのが懐かしく思い出されます。

2007年6月6日水曜日

Xcodeとプロジェクト管理ツール

現在実験中ですが、現状のMac OS Xではプロジェクト管理ツールは使いにくいです。

Xcodeに不足している機能を上げると以下のようになります。
1.リポジトリを作れず、以下の作業ができません。
   > sudo svnadmin create /svnrep
   > sudo chgrp -R svnusers /svnrep/db
   > sudo chmod -R g+wx /svnrep/db
2.リポジトリから直接インポートsvn importができません。
3.リポジトリから直接チェックアウトsvn checkoutができません。
4.手順が複雑です。
   ターミナル経由で一度インポートしたものを削除して、
   チェックアウトしたものをXcodeで開く事になります。
5.Xcodeからリポジトリの登録内容を見ることができません。
6.Xcodeでコミット時エラーが正しく表示されない事があります。
   Xcodeの「SCM > SCMの結果」を表示して
   右下の小さなアイコンをクリックすると表示されます。
   しかし、その内容はログ出力に色づけしただけのものです。

プロジェクト管理ツールは特許対策としての「先使用権」を証明するために大切であることはほぼ間違いないと思います。しかし、Appleのサポートがこの状況では前途多難と言わざるを得ません。

ここは次期Mac OS Xに期待せざるを得ない…と考えると、噂のタイムマシーンが気になります。Xcodeからタイムマシーンを利用できるようになれば・・・これは便利で分かりやすいかもしれません。しかも外付けのHDDなどにバックアップするので、高速で安心です。これは期待できるかも(笑)

2007年6月5日火曜日

プロジェクト管理ツール その後

「プロジェクト管理ツール その3」で終わらせるつもりでしたが、MacBook Proで思わぬ反撃に遭い、もう少し書くことと相成りました(苦笑)

さて、いろいろとやった結果、Mac OS X標準のApacheのAPR(Apach Portable Runtime)というファイルをインストールしなくてはならい事が分かりました。Mac OS Xには入っていないようです。ファイルは以下のURLから入手できます。

http://apr.apache.org/

最新版として1.2.8がありますが、Subversion 1.4.3の資料では0.9.xに関して記述しています。また、このサイトにも0.9.xが二番目に掲載されています。そこで、ここは安全策と言うことで(笑)「apr-0.9.13.tar.gz」と「apr-util-0.9.13.tar.gz」をダウンロードします。

インストールの手順です。
まず、「apr-0.9.13」ディレクトリに移り以下のようにします。

./configure
make
sudo make install


次に、「apr-util-0.9.13」ディレクトリに移り以下のようにします。

./configure --with-apr=/usr/local/apr/
make
sudo make install


「Subversion 1.4.3」は前回にダウンロードしていますので、それを伸張してそのディレクトリに移ります。

./configure --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr/
make
sudo make install


以上で、「/usr/local/bin/」に「svn」などがインストールされているはずです。「svn -h」などとして試してください。

なお、./configure...の処理時に、Berkeley Data Base(BDB)の代わりにFSFSを使用すると言われます。「代わり」と言われると気持ち悪いのでさらに調べてみましたが、これに時間がかかった(笑)

Subversionの圧縮ファイルに入っているファイル名「INSTALL」にはTBD(詳細は後日に記述)として、BDB 4.0.xで問題があると記述されています。実際にOracleのサイトから「db-4.5.20.tar.gz」をダウンロードしてインストールしましたが、同じエラーが表示されます。

FSFSが何の省略かを見つけることはできませんでした(笑)が、BDBの代わりに採用されたものでネットワーク経由で利用しやすいそうです。一部にはファイルシステムと書いています。2005年にはマルチスレッドで問題があったようですが、最近の記述で問題を見つけることはできませんでした。

http://svn.haxx.se/dev/archive-2005-04/0355.shtml

以上のように、やはり自分でSubversionをビルドするのは面倒です。rubyなども使うことを考えている人はDarwinPortsを使うことの方が楽です。もちろん、たえず最新版を使うためにはDarwinPortsのアップデートを待たなくてはならないと言う問題があります。とくにcvsのようにセキュリティの問題が出ると不安があります。しかし、人によってはDarwinPortsの便利さは、セキュリティの不安を上回ると思います。

KEXTドライバへのパラメータ

AppleのNik Gervaeという人がDarwin-devのMailing Listで面白い返事をしていました。
------ by Apple Nik Gervae -----
That second parameter has always been passed as NULL. I'm afraid there's no clean way to get data passed to your kext at load time (and mixing in libkern C++ with a non-I/O Kit kext is problematic, but it can be done). Feel free to file an enhancement request for the feature you need, and I'll add it to my list. It seems pretty reasonable, after all!

(By the way, the kmod_info_t struct contains fields for your kext's bundle ID and version, and other internal bookkeeping stuff. Nothing much of use to kexts themselves. Check out Kernel.framework/Headers/mach/kmod.h for the definition.)
------ by Apple Nik Gervae -----

KEXTドライバがロードされるときのパラメータとしてデータを渡す方法はないそうです。他にチップスとして、kmod_info_t構造体にKEXTドライバのバンドルIDやバージョンなどの情報が格納されているそうです。Kernel.framework/Headers/mach/kmod.hには以下のようになっています。

typedef struct kmod_info {

struct kmod_info *next;

int info_version;// version of this structure

int id;

char name[KMOD_MAX_NAME];

char version[KMOD_MAX_NAME];

int reference_count; // # refs to this

kmod_reference_t *reference_list; // who this refs

vm_address_t address; // starting address

vm_size_t size; // total size

vm_size_t hdr_size; // unwired hdr size

kmod_start_func_t *start;

kmod_stop_func_t *stop;

} kmod_info_t;


面白いことにこの宣言の前に以下のようなコメントが書かれています。
/* LP64todo - not 64-bit safe */

2007年6月4日月曜日

Internet事情

Internet事情

以下の文章はある日本のNGOから依頼されて書いた文章に少し手を加えたものです。

カンボジアのインターネット事情

1.コンピュータ小売店
プノンペンはカンボジアの首都であり、経済発展しているベトナムのホーチミンシティからバスで半日の距離である。このため、コンピュータの製品や部品は半年から1年遅れぐらいで新製品が店頭に並び、価格は秋葉原に近い。コンピュータ小売店も中古専門店も含めて数多くあるが、その知識と技術のレベル、サービスは日本の郊外型大量販売店並である。日本であればメーカからのサポートに依存しているため商売が成り立つが、プノンペンではメーカからのサービスはない。1年補償や3年補償を訴っている小売店があるが、実際にはさまざまな理由を付けて補償されない場合が多い。

2.Internet
 2.1 Internet Cafe
すでに無線LANによるサービスは空港などの大きな施設だけでなく、巷のInternet Cafeでも提供されている。このInternet CafeがプノンペンでのInternet事業展開のキーになると考えられる。Internet Cafeはプノンペン市内だけでなく市から離れた郊外にもあるが、その多くがInternetサービスの提供だけでなく国際電話サービスも提供している。

Internet CafeでもInternetの通信速度は体感的にISDNよりは早いといった程度であるが、2007年頃から高速が売り物のInternet CafeができCDサイズのデータを1時間ほどで入手できるとのことである。

問題はその金額ある。Intenet Cafeの利用料金は2004年の一時間2000リエル($1=約4000リエル)から2005年末には1500リエルまで下がった。また、短時間の場合には400リエルなどの料金設定もしている。このためか、数多くあるInternet Cafeが土曜や日曜に満席となる。

国際電話も低価格である。比較的低価格とされるInternet電話の料金を比較例として挙げると、日本とカンボジア間でSkypeが1分$0.331(携帯電話$0.299)、Yahoo Messenger(米国版)が$0.19(携帯電話も同額)である。この価格に対してInternet Cafeの国際電話サービスは1分300リエル(約$0.075)で、QoS(通話の品質つまり音質や遅延、音切れなど)もIntenet電話よりも高品質である。

どうようにこれだけの高品質低価格を実現しているのかは不明である。興味深い事実としてInternet CafeにでSkypeの通信を行うと他のInternet利用者の速度が落ちて苦情が出るが、国際電話ではそのような苦情は出ない事がある。

また、前述のようにInternet電話よりもQoSが良い。このため国際電話用に別回線を持っている可能性が考えられる。ただし、原因は不明であるが音声回線のみでデータ回線としての利用はまだのようであり、この点もその理由が不明である。

JICAはODA(政府開発援助)としてファイバー回線や衛星回線に対する資金援助をして、さらにボランティアを送り込んで技術援助をしている。しかし、JICAで支援サポートを行ってきたボランティアによると2005年の時点でその回線はまだまだ細く、光ファイバ回線と衛星回線をあわせても68Mpbsしかない。(*1)

 2.2 個人宅と企業
Internet Cafeが主流で個人宅に導入している例は少ない。プノンペンでは2006年5月の時点で月額$50で重量制限の常時接続サービスが受けられる、ただし夜間と週末には重量制限が解除される。

プノンペンでもっとも積極的にInternetを導入しているホテルに2年間滞在したが、接続状態は不安定で頻繁に通信不能に陥る。他の企業などでは通信不能は日常茶飯事である。このように企業でもIntenetの回線は細い。

 2.3 地方学校特殊な例として、モータバイクを使ったInternetが運営されている地方学校がある。

http://www.firstmilesolutions.com/

技術的には非常に面白く開発途上国への支援として大いに期待できる。このサービスの開始と運営にはいくつかのNGOが関わっているらしいが、その実態は不明である。以下のNGOは直接話したことのあるグループであるが、彼ら自身もその全体像を把握できていない。また、キャッシュフローが不安定で自立できておらず寄付に依存しており、技術の移転もできていない。

Japan Relief for Cambodia/American Assistance for Cambodia他に、UNESCOの職員も関わって、日本の中古PCを輸入して修理後にLinuxをインストールして地方の小学校に配布しているNGOもある。このNGOでは輸入した中古PCをプノンペンで動作検証し必要に応じて修理した後、LinuxとOpen Office、教育用ソフトなどをインストールして、地方の学校に配布している。しかし、地方学校でPCが動かなくなった場合には技術者が居ないため不具合解析もできず、プノンペンに送り返して修理し再度地方に発送している。

この対策として私が派遣されたカンボジア日本友好技術訓練校が期待されている。私がハードウェアとソフトウェアの修復技術の移転するだけでなく、クメール語による教科書を作成し、教員訓練のための授業を二回実施している。この訓練校で地方の教員を訓練し簡単な修理方法と、地方で修理できる問題か否かの切り分けができるようになれば、地方における情報技術の授業は大幅に改善されるはずである。

さらに、複数の故障したPCから一台の正常動作するPCを作るなど、中古PCを活用する技術を学習すればカンボジア内での一つの職業、あるいは産業として確立できる可能性もある。

*1
カンボジアの通信回線は米国式の1.5Mbps単位のT1ではなく、欧州式の2Mbps単位のE1を基本にしている。外国向け回線は総数34本、合計68Mpbs分ある。接続はファイバーケーブルでタイとベトナムに接続し、衛星回線で日本と米国に接続している。2005年頃の各内訳は以下の通り。

タイーカンボジア間:

2Mbpsが8本(内2本はマレーシアへ)

ベトナムーカンボジア間:

2Mbpsが4本

衛星回線:

日本向け2Mbpsが2本
米国向け2Mbpsが20本

クメール語OS

以下の文章はある日本のNGOから依頼されて書いた文章に少し手を加えたものです。

クメール語OS

1. Limon
カンボジアではクメール語が利用されている。コンピュータでクメール語を扱うことは条件付ながら可能であり、クメール語によるDTPも行われている。

現状ではLimonと呼ばれるフォント・セットとその派生品が使用されている。

Limonフォントは現在フランスに在住しているプログラマが作ったとされており、クメール語のフォントを直接キーボーのキーに割り振っている。クメール語の文字は数が多いため、シフトキー、コントロールキーなどの修飾キーを組み合わせて入力することになる。このため、アプリケーションの命令キー・コンビネーションと重複することが多い。LimonフォントはMicrosoft Wordをターゲットにしてキー・コンビネーションを割り振ったものである。他のフォントは同じグリフ(字形)を使用して異なるキー・コンビネーションを持たせている。このため、アプリケーションのショートカットキーの組み合わせと衝突するなど、相互の互換性がなく変換ソフトウェアを使用しなくてはならない。また、Limonフォントのグリフをそのままコピーしているため著作権も問題である。なお、カンボジア政府のWebサイトではLimonフォントを配布している。

http://www.cambodia.gov.kh/unisql1/egov/english/material.list.html

また、日本政府からの要請を受けて調査した報告では市場の70%以上がLimonフォントを使用している。

http://www.o2int.co.jp/cambodia/j/outline/outline.html

なお、Macintosh用のLimonフォントもキー・コンビネーションを替えたものがあり、DTPで実際に使用されている。

2. Unicode
日本ではUnicodeを導入するときにさまざまな問題が発生し、その後遺症は現在も続いている。同様の問題がクメール語Unicodeにも発生している。

Microsoftは独自にこの問題を解決するための新しいOpenTypeフォントを発表した。

http://www.microsoft.com/typography/OpenType%20Dev/khmer/intro.mspx

この新しいOpenTypeフォントは同社の次期OSであるWindows Vistaに搭載されているといわれているが、私はまだ確認していない。このUnicode対応のOpenTypeフォンをWindows XPやLinuxで使用するためのソフトウェアが下記のグループより配布されている。

http://www.forum.org.kh/en/index.shtml

このソフトウェアはLimonのクメール語入力方法とは異なり、日本語のローマ字仮名変換と同じ入力方法を採用している。このため2006年初頭頃から政府や学校関係者に対する講習会を開き、新しい入力方法を広めようとしている。

現在のこのソフトウェアの問題はフォントのデザインである。無償公開されているフォント・セットが二つのみであり、しかも画面上で見ても読みにくい。ましてやDTPに使用できるデザイン品質のフォントがない。Limonフォントでは少なくとも14のグリフ(書体)が事実上無償で配布されており、Apsarasという完成度の高いフォントも販売されている。

この問題の可決方法としてはWindows Vistaがクメール語を正式にサポートし、多くのフォントが出回るまで待つか、独自にデザイナーに資金援助して無償フォントを開発するこであろう。この点はカンボジアの情報技術への支援として重要である。カンボジアの経済状況を考えると、無償で美しいフォントが配布されることは、カンボジアの情報技術、ひいては教育や経済活動に大きく貢献するであろう。

3.フォントの開発
前述のようにカンボジアでコンピュータ教育をする上で、もっとも大きな障害となっているのがクメール語のUnicode化である。Microsoftの次期WindowsであるWindows Vistaで問題の多くは解決されるであろうが、無償提供されているフォントが読みにくいということはコンピュータを使用する上で大きな障害である。また、DTPで今まで無料で使用できていたフォントが使えなくなる点も、カンボジアの発展に大きな足かせとなる。このため、フォントの開発も求められている。

実際にフォント化するにはMicrosoftの新しい定義に適合したフォントを作るツールから開発するか、その技術を持っているところに発注しなくてはならない。

この分野を支援することで、カンボジアだけでなく、独自の文字を持った民族のフォントを開発して世界の情報化をすすめDigital Divideの低減に寄与する事ができる。また、フォントは一つの「文化」であり「芸術」であり、作成したフォントは何年にもわたって継続的に使用され支援が「見える形」で提供される。コンピュータによる情報化により、このような文化と芸術が失われることを防ぐ意味においてもこの分野への支援は重要である。

プロジェクト管理ツール その3

前回、前々回とMac OS Xのプロジェクト管理ツールに関して書きましたが、今回がその最後です。ここではバイナリで配布されているSubversionの紹介と、自分でソースコードからコンパイルする方法を紹介します。

まず、以下のURLはSubversionのソースコードを配布しているサイトですが、バイナリ・ファイルを配布しているサイトも紹介されています。

Subversion: Subversion Packages

ここでは、三カ所が紹介されています。一つはFinkを使用してビルドしたファイルを配布しているサイトで前回に紹介したDarwinPortsと同じ方向性で作成したものをバイナリで配布しているようです。残る二つは以下の通りです。

Metissian - Projects - Mac OS X Packages - Subversion
残念ながら、開発が2006年4月3日の版1.3.1で止まっています。

open collabnet
こちらの方はSubversion 1.4.3で最新版と考えて良さそうです。

さて、Mac OS XはUNIXだと言われていますし、実際に漢字コード変換ツールのnkfなどは修正なしでmakeできます。そこでSubversionも可能かもしれないと考え試しました。以下の方法で実行しましたが、今のところ動いているようです。

まず、Subversionのソースコードは以下のURLからダウンロードできますが、見つからない場合には上流から探してください。

subversion: ドキュメント & ファイル: Source code

私が試したのはsubversion-1.4.3.tar.bz2という名前のファイルです。ファイルをディスクトップにダウンロードしてダブルクリックで伸張します。あとは以下の命令を順に入力するだけです。

$ cd ~/Desktop/subversion-1.4.3/
$ ./configure
$ make
$ sudo make install

例によって、大量のコメントがターミナルの画面を流れますが、エラーなどで中断されることなく終わりました。

後は、前回に設定した「サブバージョンツールパス」を「/usr/local/bin/svn」に戻せばDarwinPortsと同じように動きます。日本語の扱いに関しても同じように文字化けします(笑)

まだ、詳しく試験していませんが、動いているように見えます。もし、問題を見つけた人はコメントください。

・・・と書いたところでMacBook Pro Intel Core Duo版で試すと./configureでエラーが出ました(苦笑)

まだ、原因不明ですがDarwinPortsを使った方がよいかもしれません。Subversionだけでなく他のツールを使うことも考えている人には良いと思います。とくに、rubyのようにいろいろと依存関係のあるものを使うときには便利そうです。

2007年6月2日土曜日

プロジェクト管理ツール その2

前回に引き続きMac OS Xのプロジェクト管理ツールで、ここからはSubversionです…と書きたいところですが、ここに問題がありました。XcodeのマニュアルによるとDarwinPortsというFreeBSDのパッケージ管理ソフトをインストールしろと書いています。その上でSubversionのソースファイルを取り込み、コンパイルして使うそうです。
Subversionソフトウェアをインストールする

DarwinPortsをもとにSubversionをコンパイルしましたが、少々問題があることが分かりました。その問題はこの後で書きますが、DarwinPortsを通さずにSubversionを直接コンパイルしても利用できました。以下はその顛末です。

■ DarwinPorts
まず最初に、Xcodeのマニュアルに書かれているDarwinPortsのURLが間違っています。これはOpen Darwinというプロジェクトがなくなったことの影響ですが、以下のURLにあります。
DarwinPortsの申込

DarwinPortsには日本語の解説もありますが、文字化けするかもしれません。解説文の漢字エンコーディングはutf-8です。また、解説はMac OS X 10.2.と10.3に関する記述です。

DarwinPorts解説

インストールはPowerPCの場合にメータが80%ぐらいになった所でグッと遅くなりますがエラーにならずに終了しました。インストールするとルートに/opt/というディレクトリができます。readmeに従って、動作検証をかねて以下の命令を実行します。

$ sudo /opt/local/bin/port selfupdate
DarwinPorts base version 1.442 installed
Downloaded MacPorts base version 1.442
The MacPorts installation is not outdated and so was not updated
selfupdate done!


次に、Xcodeのマニュアルのマニュアルに沿ってshellの環境変数を変更し、以下の命令でSubversionのイントールをします。ただし、インストールには1時間ほどかかります。

$ sudo port install subversion

これで、ようやくSubversionが使えるようになります。Xcodeのマニュアルに沿って、ユーザグループを作成し、ユーザを登録します。しかし、Mac OS XであればNetInfo Manager.appを使うのが妥当というものでしょう(笑)

NetInfo Manager.appを使う方法は以下の通りです。
1.NetInfo Manager.appを起動します。
  /Applications/Utilities/NetInfo\ Manager.app/
2.左下の鍵を解除します。
3./groupsを選択します。
4.「ディレクトリ > 新規のディレクトリ」を選択するか、
  ツールバーの「新規」ボタンをクリックします。
5.「プロパティ」欄の「name」の値として「svnusers」を入れます。
6.「ディレクトリ > 新規のプロパティ」を選択するか、
  「プロパティ」欄を選択した状態で、ツールバーの
  「新規」ボタンをクリックします。
7.「プロパティ」欄のプロパティとして「gid」、その値
  として「700」を入れます。
8.「ディレクトリ > 新規のプロパティ」を選択するか、
  「プロパティ」欄を選択した状態で、ツールバーの
  「新規」ボタンをクリックします。
9.「プロパティ」欄のプロパティとして「users」、
  その値としてユーザ名を入れます。
  ユーザ名はシステム環境設定のアカウント内に表示されて
  いるユーザ名です。
10.ユーザを追加するときには、「プロパティ」欄の
  「users」を選択した状態で、「ディレクトリ > 新規の値」
  または「ディレクトリ > 値の挿入」を選択します。

次の「ルートディレクトリを作成して初期化する」はFinderによるGUI操作よりコマンドラインの方が便利でしょう。ただし、ディレクトリはFinderからドラッグアンドドロップしたほうが便利です。

■ Subversion
日本語のマニュアルが以下にあります。

Subversionによるバージョン管理

私のように初めての人は、第1章と第2章に目を読めばとりあえず使えるようになります。しかし、Mac OS Xが日本語環境だとsvnの出力が日本語になっておりTerminalを初期値のまま利用すると文字化けして読めません。この対策はshell環境変数の変更です。bashの場合には以下のようにします。

DarwinPortsで作成した「.bash_profile」ファイルをテキストエディタで読み出し、以下の内容を追加します。

出力を日本語にする場合;
export LANG=ja_JP.UTF-8
出力を英語にする場合;
export LANG=en_US.UTF-8

以上の作業を行った後に、Xcodeのマニュアルのバージョン管理をもう一度目を通せば、全体像がつかめるようになると思います。

バージョン管理

注意するべき点として、「SCMを有効にする」をオンにしたときに「編集...」ボタンで「サブバージョンツールパス」を「/usr/local/bin/svn」から先の作業で生成した「/opt/local/bin/svn」に変更してください。

・・・という事で、動きはするのですが、ルートに/opt/が見えているのが気に入りません。全てがこの下にまとまっているのは良いのですが、ユーザごとにパスを通すのも面倒な話しです。Mac OS XはUnixと言われているのですから、Subversionをそのまま利用できないかとも思います。そこで、さらに調べてみたのですが、それは項をあたらめて・・・。

2007年6月1日金曜日

プロジェクト管理ツール その1

Mac OS Xのプロジェクト管理ツールに関して少し調べてみました。

XcodeのマニュアルにはCVSとSubversionの使い方に関して説明しています。Xcodeのマニュアルは以下の場所にあります。
Xcodeマニュアル

プロジェクトの管理に関する解説は以下のファイルから始まります。
プロジェクトを管理する

ただ、ここに書かれている内容は誰かがプロジェクト管理をするデータベース(リポジトリと言うそうです)を構築していることを前提としてます。つまり、ここに書いている内容を実行するにはリポジトリを構築しないと行けません。その方法を書いているのが以下の二カ所です。

CSVを使用する
Subversionを使用する

■ CVS
まず最初に書かれているのがAppleが使っているCVSに二つのバージョンがあるという点です。一つはバージョンが古くクラッキングされるおそれがあるが、Xcodeと互換性があるもの、もう一つはクラッキング対策された新しいバージョンだが、Xcodeと使うには問題があるものです。

私のようにSOHOで使っている分にはクラッキングされる可能性はないので、ocvsという古いバージョンを試すことにしました。マニュアルにあるcvsをocvsと読み替えて実験をしましたが、ほぼ書いてあるとおりに動きます。

ただ、最初にTerminalからリポジトリに登録し、元のファイルを削除し、リポジトリから取り出し、取り出したものをXcodeで編集しなくてはなりません。また、新しいファイルを追加したり削除したりする度に「リポジトリに追加」して、さらに登録(コミットと言います)をしなくてはなりません。さらに、毎回「build」ディレクトリを削除してからコミットします。これなどは、cvsが対象外として登録できるとか、Xcodeにスクリプトを組み込んで「build」ディレクトリを削除してからコミットできるとか、してもらいたいものです。

以上のように使いにくいですし、またいずれ新しいcvsに入れ替えることになります。その時に互換性問題が発生しないとは言い切れない点が気がかりです。

もう一つのSubversionを試すことにしましたが、Subversionにもいろいろと問題がある事が分かりました。次の項目ではその問題を紹介します。

2007年5月27日日曜日

コンピュータ故障 その3

プノンペンでコンピュータを使うための注意としてホコリと、虫とヤモリを書きましたが、最後の電源です。

プノンペンでは電源が不安定です。また頻繁に停電します。さらに、雷が落ちます。この事が原因で電源だけでなく、ハードディスクやメインボードが故障します。

カンボジアでコンピュータを使うには電源安定化装置や無停電電源、場合によっては発電機を準備してください。

電源安定化装置は電源のノイズを小さくしてくれます。多くは220Vから100Vなどの電圧変換器として売られています。また、雷による急激な電圧と電流の変化(雷サージ)に対応しているるものもあります。モニボン通りの北側にある電気屋に行って、ボルテージ・スタビライザと言えば買えると思います。

無停電電源はコンピュータ屋でUPSと言えば買うことができます。これは、停電したときに数分間だけ電気を供給できる装置で、その間にコンピュータを終了させます。プノンペン入手できるUPSは内部に車などでも使われている鉛電池が入っています。車と同じ鉛電池ですので、車と同様に2年から3年ほどで充電しても短い時間しか利用できなくなります。使えてるように見ても必ず2年から3年ほどで交換してください。

ディスクトップPCは電源安定化装置と無停電電源の二つを準備すれば十分です。ノートPCの場合にはノートPC自体に電池を持っていますので、電源安定化装置だけでも良いと思います。絶対にコンピュータを止めたくない場合には、発電機が必要です。UPSにたくさんつなげば長い時間コンピュータを使うことができますが、UPSの電池で部屋が占領されてしまうでしょう(笑)プノンペンでは軽油を使うディーゼル発電機をよくみます。多くが日本製で工事現場用発電機の中古品ですので、電源は不安定でノイズが乗っている場合があります。電源安定化装置と無停電電源の二つが必要です。

さて、2004年頃はそれほど停電しませんでした。しかし、さまざまな事情により2005年の末頃から頻繁に停電するようになりました。現在も首都プノンペンは二日か三日に一回ほどの頻度で1時間から3時間ほど停電しています。

さらに、プノンペンの地形のためか猛烈な雷雨が発生し、雷が落ちます。JICAから派遣されている気象の専門家によると猛烈な雷雨は、飛行機事故で有名になったダウンバーストだそうです。雷が家に落ちるとさまざまなところを通って地中に抜けます。このさまざまの中には電源線も含まれます。

カンボジアはフランス式の220Vですが、大きく上下に変動します。また、ノイズも多く含まれています。日本の電源は良質ですが、その良質な電源を前提に設計されている電気機器は十分な注意が必要です。

例えば、雷による急激な電圧と電流の変化(雷サージ)に対応するためにサイリスタという電子部品が使われていますが、国内向けにはコストダウンのために入れていないメーカがあります。また、コンピュータにはスイッチング電源という小さく急激な電力変化(ノイズ)に強い電源を使用しています。逆に、この電源は大きな電力変化には弱いとも言えます。

急激に変化した場合に、電源回路は対応しきれないためコンピュータ内の電源が不安定になったり、ノイズが出たりします。

電源が不安定だと、さまざまな障害が出ます。例えば、一般的なハードディスクは毎秒7200回転しています。この回転数が不安定になるとヘッドと呼ばれる読み書きする装置がディスクと衝突し火花が散ります。ハードディスク内部では、きれいな火花がパッと輪になって現れます。

また、メインボードでは回路を設計するときに予測した以外の電気が流れて誤動作します。最悪の場合には故障します。

コンピュータ故障 その2

前項に続き、プノンペンでコンピュータを使うための注意その2です。

プノンペンでは虫やヤモリ(クメール語でチンチョと言います)がコンピュータ中に入ります。虫の死骸はたくさん見ました。虫は電気回路をショートさせて故障の原因になります。また、虫の死骸はショートしないまでも漏電に近い状況で動作が不安定になることがあります。

ヤモリは思いもよらぬところから侵入します。ある人のPowerMac G4は、使用中に突然電源が切れたそうです。その後は動作不安定が何ヶ月も続いたため私のところに持ち込まれました。私が内部の状況を調べている最中に異臭と共に煙が出ました(笑)

臭いは電源回路から来ています。電源回路は金属の箱の中に入っていて、日本であれば箱ごと交換します。しかし、PowerMac G4では部品がないのでそうはいかず、箱を開けることにしました。その中に入っていたのが胴体が焦げたヤモリです。



おそらくは電源回路に冷却ファンから侵入し、電気ショックで死亡したものと思います。その後、乾燥して電気が通りやすくなり、ときどき動作不良を起こし、さらに私のところに来る間に移動してショートしたのでしょう。

このような虫などを防ぐために冷却ファンなどの穴を網金でふさぐこともできますが、小さな虫は簡単に入ってきます。これもホコリと電源同様に避けようがありません。

次は残る電源の話しです。

コンピュータ故障 その1

JICAの派遣先ではコンピュータの修理も授業に取り入れました。

カンボジアなど発展途上国で専門的にコンピュータを使うには、簡単な修理の知識は必須です。そこで、授業で教えるためにJICAを始めさまざまな組織や、会社、学校、そして個人から修理品を預かりました。その2年間の修理でプノンペンでの故障傾向が分かりました。

プノンペンでコンピュータを使うには以下の三つに注意してください。

 1.ホコリ
 2.虫やヤモリ
 3.電源

プノンペンはメコン川が運んだ砂の上にあります。この砂は粒子が細かいため宙に舞いやすく、どこにでも舞い込んできます。当然、コンピュータの中にも入ります。ディスクトップPCはもちろん、比較的密閉度の高いノートPCでも入ります。

室内に置いたディスクトップPCは1年で内部が黄色くなります。CDドライブや冷却ファンなどのメカの隙間にも入り込み、動かなくしてしまいます。CDやDVDドライブは2年ほどで使えなくなります。

冷却ファンが止まると内部が高温になります。また、プロセッサなどについている金属でできた放熱フィンにも付着して、放熱できなくなりプロセッサが高温になります。プロセッサなどのICチップが高温になると、ICチップが誤動作し始めます。誤動作している状態で使い続けると、さらに高温になってICチップが壊れます。最短の場合、3年ほどで故障しますが、メインボードやプロセッサの交換は高額です。また、交換する部品がないために修理できない場合もあります。特にノートPCの交換部品の入手は難しいです。

2の虫やトカゲ、3の電源は項目を改めて書きましょう。

2007年5月21日月曜日

最近のMac

AMDがノートPC用プラットフォームを開発しているという記事を読んで、最近のMacのUSBやFireWireを接続しているバスが気になり、久しぶりにAppleのDeveloper Noteを見ました。

まず驚いたのがDeveloper Noteはhtml版だけになっていました。2年間…いや3年間のブランクは大きいです(笑)さらに、その内容はとてもわずかです。例えば、15" MacBook Proだと、以下の内容だけです。

2006/10版
15-inch MacBook Pro Developer Note

FireWireは別ファイルになっています。

FireWire Developer Note

以上の中で、機種ごとに解説しています。例えば、15" MacBook Proだと以下の場所です。

FireWire Developer Note

FireWireのバスは32 bit/33 MHzのPCIバス(転送速度:約1 G bps)に接続されています。FireWire 800だと専用にPCIバスを設けないと間に合いません。説明ではFireWireの論理レイヤ・チップと拡張バスを接続する規格Open HCIが32 bit/33 MHzを前提にしているような記述になっています。そのくせIntelなのでUSB 2.0は別扱いです。(まあ、特別扱いのUSB 2.0が継子扱いのFireWire 400よりも遅いというのも、なにですが…)

価格を安くするためとは言えつまらなくなりました。以前のAppleはMC68KやPowerPCプロセッサと周辺チップをつなぐシステムチップ(Intel系でいうChipset)は独自開発でした。MC68KからPowerPCプロセッサに変更できたのはシステムチップを内製していたおかげです。それが、Intelプロセッサの採用に伴い、システムチップもIntelの既製品に入れ替わりました。MacintoshがMacintoshであり得たAppleの優位技術の一つが消えました。今は亡きCompaqが似たような技術的歴史をたどっていますが、Appleの「見た目のかっこよさ」という優位技術は健在です。

もちろん、Appleが自讃している「使いやすさ」には異論もあると思いますが…(苦笑)

2007年5月17日木曜日

カメラ

カンボジアに持って行くカメラには注意することがあります。それはレンズとフラッシュが近すぎないことです。この二つが近いとフラッシュ撮影したときに光の輪がいくつも現れます。



この光の輪の原因はホコリです。ホコリっぽいところで撮影すると、フラッシュの光がホコリに反射して光の輪として撮影されます。プノンペンはメコン川の砂の上にあり、細かな砂がたくさん空気中に舞っています。この例のように、踊っている人々を撮影すると光の輪の中で踊っている写真が撮れます(笑)

私が持って行ったのはSonyのコンパクトデジタルカメラSony Cyber-shot DSC-T1ですが、レンズがF3.5-4.4と暗く頻繁にフラッシュが光ります。薄曇りの室外も、晴天の明るい室内でも光ります。フラッシュを止めるとシャッター速度が遅くなり手ぶれが起きやすくなりますが、三脚のねじ穴がないので三脚で固定することもできません。手ぶれ防止機能もありません。

おわかりの通り光の輪が現れるのはカンボジアに限った話しではなく、布団を引いた後などホコリっぽい部屋でも起きます。フラッシュを止めて撮影するには、最近の手ぶれ防止機能付きやISO感度の大きなカメラで、レンズの明るい(F値の小さい)ものが有利です。また、三脚を取り付けて撮影するのも一案です。

2007年5月16日水曜日

Peet'sのコーヒ

Starbucksは米国と日本のあちらこちらにあるが、Starbucksに行くといつも思い出すのがPeet'sである。

その理由は偶然のなせる技であり、大した意味はない。その偶然とは知人家族とSan Jose近くのショッピングモールに行ったときに休憩に行ったところがPeet'sであって、たまたま店に入ったときに入れたばかりのコーヒの良い香りがした・・・それだけである。

私にとって「コーヒは味覚ではなく香りである」と、この時に認識した。それもコーヒを入れたときの香りである。エスプレッソを入れたときの強い香りである。味ではないので、私はコーヒに砂糖やミルクを入れる。糖分で脳に栄養を与え、苦みで脳に刺激を与える・・・と勝手に悦に入っている。

昔、San Jose Mercury News紙のWeb版にPeet'sに関する記事が掲載された。記事によると、ある人がBarclayにあるPeet'sのコーヒが気に入り、Seattleに戻って始めたのがStarbucksだと書いてあった。その後、彼はStarbucksの権利を売ってPeet'sの社長になり、Starbucksはフランチャイズ化に成功したそうだ。ただし、英語の苦手な私がたまたま偶然に目にした記事なので、真偽の程は自身がない(笑)

今は米国に行ってもSan Franciscoばかりで、しかもあれだけたくさんあるPeet'sのお店が私が行くところの周辺にはない。レンタカーを借りることもなくなったので、それこそ行く機会がない。

2007年5月15日火曜日

マウスドライバのソースコード

USBの資料で「古いDarwinのUSB Familyには単独のkextドライバとしてビルドできるマウスのソースコードが含まれていました」と書きましたが、どのくらい古いかを調べてみました。実際にビルドしたわけではないので動作保証はできませんが、Mac OS X 10.3.9のDarwin 7.9として公開されているIOUSBFamily-217.4.4の以下のディレクトリにありました。

IOUSBFamily-217.4.4/AppleUSBMouse/Classes/AppleUSBMouse.cpp

このソースコードはこの後のMac OS X 10.4でIOUSBFamilyから消えています。このソースコードを元にkextドライバを生成する方法は以下のURLに書いています。ただし、この資料はMac OS X 10.2.xまたは10.3.xを前提にしていますので、10.4.xあるいは10.5.xでどのようになるかは調べていません。

http://homepage.mac.com/inada/X_Driver/pdf.html

Technorati Tags:

Google Map

昨年2006年の半ば頃からGoogle Mapがカンボジアの航空写真を更新しました。プノンペンの航空写真は一軒一軒を見分けることができるほど詳細な写真になりました。

そこで、プノンペンの街を案内します。まずは、カンボジアはここです。

カンボジア

中央の水色の部分がトンレサップ湖と言って、この北岸にアンコールワットがあるシェムリアップという街があります。このカンボジアを航空写真でみるとこんな感じになります。

カンボジア航空写真

有名なアンコールワット遺跡群はここです。

アンコールワット遺跡群

中央の大きな正方形がアンコールトムで、その南の小さい方の正方形がアンコールワットです。西側にある長方形は灌漑用の人工池です。

ここでアンコールワット遺跡を一つ一つ回り始めるときりがなくなるので、ドンと南に下ってここがプノンペンです。

プノンペン

右を流れているのがメコン川とその支流です。上に黒く見えている大きな三角はコック湖(バンコック)といいます。さらに、その北西にある半円と放射型に延びている線は新規に開拓している地域です。

コック湖(バンコック)


中央から少し西にある四角の中にある楕円形はオリンピック・スタジアムと呼ばれている競技場です。

オリンピック・スタジアム

北に掛かっている橋は日本の寄付で建設されましたが、そのことを知っているカンボジア人は少なく、この橋を日本橋と呼んでいるのは日本人だけでそれも少数派で、通称はチョルイチャンバー橋と言います。この橋を通る道はアンコールワットの街であるシェムリアップに通じています。

チョルイチャンバー橋

ちなみに、この橋とは別にプノンペンから北東にあるコンポンチャムという街には「きずな橋」という大きな橋も日本政府は建設しています。

さて、チョルイチャンバー橋の南に小さな小山があります。

ワット・プノム

ここがプノンペンの地名の由来となったペンおばさんが奉納したお寺ワット・プノムがあります。プノム(プノン)とは小山の意味でペンは人名です。ワット・プノムのワットはお寺という意味なので直訳すると「山寺」となります。ここではゾウに乗って一周することができます。ただし、ここには夫婦といえども男女のペアで行ってはいけません。ここの神様が女性で嫉妬して別れさせるそうです(笑)

ワット・プノムから南南東に2km程行ったメコン川沿いに王宮があり見学できます。プノンペンにいる高校生は授業で見学します。

王宮

また、王宮の北西には国立博物館もあります。ここには日本に輸出した陶器が展示されています。日本の収集家が寄贈したそうです。

国立博物館

王宮から西の川沿いは夕刻ともなると地元の人だけでなく外国人も含めてたくさんの人が夕涼みに来ます。また、11月には水祭りのボートレースもここで開催されます。この川沿いを南に下ったところに遊園地があって毎晩とてもにぎわっています。

遊園地

ここには、むき出しになった車やトラクターのエンジンで観覧車やメリーゴーラウンドなどを回しています。なにせ、作りが荒いので日本人にはかなりスリルがあります。さて、王宮から北北西の方向にこのような建物があります。

プサー・タマイ

ここはセントラル・マーケット(プサー・タマイ)というドーム型の市場で、テレビなどで見るシルクロードの市場を思わせます。ちなみに、プサー・タマイの南にある白い四角の角に青いドームがある建物はソリア・マーケットと言ってプノンペンのファッション・リーダ達が集まるビルです。このビルのさらに西を走る大通りがモニボン通りと言いプノンペンの商業をささえるバックボーンです。この道を南に下るとこんな所に出ます。

アパート兼ホテル

モニボン通りの東にみえるチョット複雑な屋根の建物がCity Villaというアパート兼ホテルで、私が2年間お世話になったところです。ちなみに私が赴任中の真っ昼間にこの東の道で銃による殺人がありました。また、西にはクメール・ルージュ時代に収容所として利用され、現在は記念館となっている建物ツールスレイがあります。

ツールスレイ

さて、モニボン通りをさらに南に下るとJICAのカンボジア事務所があります。少々分かりにくいのですが、中央のうす茶色の屋根がJICAカンボジア事務所でその隣に青い屋根が三つ見えます。

JICAカンボジア事務所

さらに南に下るとこのような建物があります。

高級ディスコ

この建物は私が赴任した2004年以降に建築が始まったもので、この写真がとても新しいものだと言うことが分かります。ちなみにこの建物は観光客と金持ち向けの高級ディスコです。

さらに、さらに南に下り、大学と高校を超えると、私が派遣されて2年間お手伝いした日本カンボジア友好技術訓練学校があります。

日本カンボジア友好技術訓練学校

道沿いの赤茶色の屋根が紙の倉庫と製本工場、その東の薄い茶色の南北に長い屋根が印刷工場とDTPルームです。南の薄い茶色の建物がコンピュータ教室と事務所、そして縫製部がある建物で、私の事務所はこの建物の2階にありました。

この訓練学校は通称サラ ボン トラバエッと呼ばれていて、小さいですが縫製部のお店もあります。こんな服が欲しいと写真を持って行くと一週間から二週間ほどで作ってくれます。布製の小物入れも作っています。私はシルクのシャツを縫ってもらいました。木製の子供のおもちゃなども置いていますので、プノンペンにお越しの際には是非お立ち寄りください。

また、プノンペンで印刷を考えられている方にもお勧めします。なかなか良い印刷をしますが、お勧めなのが製本です。背表紙のちゃんとついた本を全て手作りで注文できます。日本人の印刷専門家が見て、日本でここまでできるところは少なくなったと言っていました。

・・・と言うことで苦連学校の宣伝で終わったカンボジアツアーでした(笑)

2007年5月13日日曜日

プノンペンの小鳥

プノンペンの我が家は少し緑があるので、昼間でも小鳥の声を聞けます。




この時は、たまたま手元にあったPDAに録音機能があったので録音しました。編集していないので音が小さいし、スイッチのON/OFFの時の音も入っています。ファイルの日付をみると2007年4月7日の12時4分になっています。朝にも小鳥の声を聞くことができますし、夜には犬の遠吠えを聞くことができます。犬の遠吠えを聞くのは子供の時以来です。

2007年5月9日水曜日

ecto

このWeblogを書くのにectoというアプリケーションを試しています。

ecto

ectoは自分のPCで編集した内容をWeblogサーバに送信するアプリケーションで、Weblogへのログインも不要ですし、Webブラウザの編集機能に依存しません。書いた内容が自分の手元に残りますので万が一のトラブル対策になります。

ectoはKung-Logという名前で無料配布されていたときに、自宅に立ち上げたMobableTypeに書き込むために使っていました。見ての通りBloggerにも対応しているのですが、どういう訳かBloggerの「ラベル」を設定する機能が見つかりません。いまはectoでアップしたあとでログインしてラベルを付けています(笑)

乗り継ぎ空港

現在、日本からカンボジアへの直行便はなく、どこかの空港で乗り換えすることになります。

たとえば、クアラルンプール空港の乗り換えると、20時間ほど潰すことになります。今までは成田空港で荷物をプノンペンまで預けて、クアラルンプールの空港内にあるホテルに宿泊する事ができました。しかし、4月下旬から成田空港でのチェックイン時にマレーシア航空からプノンペンまでの荷物預かりを拒否されるようになり、クアラルンプールまでしか預かってくれません。

マレーシア航空とクアラルンプール空港の方針が変更されたらしく、クアラルンプール空港では・・・預けた荷物を受け取り、一度マレーシアに入国し、再度チェックインして荷物を預け、マレーシアから出国して、空港内のホテルに宿泊する・・・という面倒なことをしなくてはなりません。空港で荷物を長時間預かる時に、旅行者自身が荷物を確認するというような意味のことを成田空港のチェックイン・カウンターでは言っていますが、クアラルンプール空港には荷物を広げて内容を確認できるような場所はありません。

どういう経緯か分かりませんが、マレーシア空港とクアラルンプール航空は預かった荷物を責任を持って管理できなくなった・・・と言うことのようです。

クアラルンプール空港はWorld' Best Airportに選ばれたこともある空港だったそうですが残念です。

クアラルンプール空港

ちなみに、クアラルンプール空港内にあるホテルの代金は以下のようになっています。

-----以下Air Side Transit Hotelのパンフレットより-----
Air Side Transit Hotel
<<<<
Standard Room (12 units)RM 140.00
Superior Room (49 units)RM 160.00
Deluxe Room (18 units)RM 200.00
Suite (1 units)RM 230.00
Extra BedRM 30.00

Rate for stay of more than 6 hours RM 20.00 per hour
(Maximum 3 hours)

For stay between 10 -12 hours Double the normal rate.

Tel:603-8787-4848
Fax:603-8787-4747
-----以上Air Side Transit Hotelのパンフレットより-----
カンボジアまでの航空代金は2006年まではマレーシア航空が一番安かったのですが、2007年からはシンガポール航空も安くなっています。カンボジアへの乗り継ぎにはシンガポールのチャンギ空港も考えに入れた方が良さそうです。チャンギ空港もクアラルンプール空港と同様に巨大な空港です。

チャンギ空港

自分の年齢も考えずにチャンギ空港内の椅子で一晩明かしたことがあります。2004年の事ですが、その時にはクアラルンプールのようなヘッドレストと足置きがついた椅子も長椅子もありませんでした。


Technorati Tags:

USBの資料

Mac OS X用にUSBのkextドライバを書く場合に問題となるのがその資料やサンプルコードの少なさです。以下のURLに面白い記述があります。

Hardware Developer Documentation: (USB Devices)

上記のURLに以下のように書かれています。

There is no Inside Macintosh documentation for USB devices.
(USB装置用Inside Macintosh資料はない)

上記のように言い切った上でMac OS USB DDKと以下のpdfファイルを参照するように書かれています。

Mac OS USB DDK API Reference

ところが、この資料は1999年に書かれたもので、ハードウェア的にはUSB 1.1を基準にしていますし、ソフトウェア的にもその後さまざまなAPIなどが追加され統合されています。たとえば、古いDarwinのUSB Familyには単独のkextドライバとしてビルドできるマウスのソースコードが含まれていましたが、新しいDarwinには含まれなくなりました。ちなみに、マウスを扱うコードはポインティング・デバイスとしてHID系のドライバは統合され、さらに以下のディレクトリからも分かるようにUSB Familyのプラグインの一つになっています。

/System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/IOUSBHIDDriver.kext/

さらにMac OS X USB DDKはもちろん、Mac OS X USB SDKもなくなり、Mac OS X USB Debug Kitsが残っているだけです。

Hardware & Drivers - Mac OS X USB Debug Kits Downloads

おそらく、Appleとしてはkextドライバをサードパーティが書く事によりカーネルが不安定になる可能性のリスクよりも、アプリケーションがAppleの汎用ドライバを経由してUSB装置とやり取りする事を推薦しているのではないかと思います。多くの場合はこの方法でも良いのですが、セキュリティ関連製品などUSB装置によってはカーネル内のkextドライバの方がスマートな場合もあります。

もちろん、前述のDarwinの旧版からマウスのソースコードを引き出して使うことも可能でしょうが、現在のMac OS Xに合わせるにはかなりの修正が必要です。また、USB Audioなどのように特定のサービスから掘り下げていくのも一案でしょう。

Audio Device Driver Programming Guide

いずれにしても、学習には時間がかかります。

2007年5月8日火曜日

キーボードのキー割り振り

AppleのUSB Mailing Listにキーボードのキー割り振りに関する質疑応答がありました。Appleからの返事はまだですが、USBの規格が紹介されていました。USB IFのサイトはアップデートするたびに昔の資料を探すのに苦労しますが(笑)今日の時点では以下のURLにHID Usage Tables 1.12というPDFファイル(ファイル名:Hut1_12.pdf)が公開されています。

HIDに関するページのトップ
http://www.usb.org/developers/hidpage/

キーボードやゲームパッドなどのキー割り振りに関する資料
HID Usage Tables Version 1.12

私はキーボードとしてはやったことがないですが、Aaron Promanと言う人がMac OS XはVolume Up/Down/Muteには応答するが、他は無視すると書いています。また、Logitech Control CenterのドライバとLogitech Internet Navigator Keyboardの組み合わせでカーネルパニックを起こすとして以下のURLを紹介しています。

http://www.staarcom.com/software/HIDden/index.html

2007年5月5日土曜日

Mac OS X起動プロセス

少し旧聞になりますが、Appleのdarwin-driversのMailing ListにMac OS Xの起動に関するMailing Listが開設されたと紹介されました。

Appleの技術者Garth CummingsによるとEFI、OpenFirmware、BootRootなどの起動プロセスに関するMailing Listだそうです。EFIとOpenFirmwareはすでに知られていますが、BootRootというのはIntel Macで使用されている技術で、Mac OS X標準でサポートされていないファイルシステムをマウントしたり、起動したりできるそうです。例えばAppleRAIDがこの技術を使用しているそうです。BootRootの起動はSystem 9以前の方法と似ており、HFS+のパーティションにドライバを置いて、そこから起動させるとGarth Cummingsは解説しています。

このMailing Listの中でAppleのShantonu SenはBootRootとは表記せずにBoot≠Rootと書いて以下のような資料を読むように解説しています。
AppleRAID-2.5.6
AppleFileSystemDriver-8
IOKitUser-297.10
bless-46.1
kext_tools-65.76
system_cmds-336.20
xnu-792.18.15

USBアナライザ

USB装置のドライバなどを開発するときに、USBアナライザがあれば非常に便利であることは皆さんが賛成されると思います。しかし、どこのUSBアナライザが良いかとなると意見が分かれます。たとえば、多くのアナライザはホストPCが必要ですが、ホストPCのOSは多くがWindowsです。AppleのUSBのMailing ListではときどきAppleの技術者がアナライザの紹介をしています。

2007.05.04にはBarry Twycrossと言う技術者がCATC(現LeCroy)のアナライザが好みと書いています。CATCは初期の頃からアナライザを出していますが、彼もコメントしている通りCATCは高額です。彼はアナライザのホストPCのOSとしてMac OS Xで利用できるものは知らないそうで、CATCのアナライザを使うときにはVirtula PCまたはParallelsの上で解析ソフトを走らせているそうです。

また、比較的低価格なアナライザとしてBarry TwycrossはElisysを紹介しています。多くの開発者が利用しているそうで、これもVirtula PCまたはParallelsで利用できるようです。

Mac OS Xのドライバ

以前に.macのサイトに無理をしてWeblogをアップしていましたが、いろいろと障害が多いためこちらに書いてみることにしました。このWeblogでは「Mac OS X KEXT driver」とラベルを打ってMac OS Xのドライバ関連の話しをしたいと思います。よろしければお付き合いください。

2007年3月2日金曜日

カンボジアの交通事情

カンボジアの交通事情を2005年頃に撮影したものです。
2014/07/08 写真のリンクが切れていましたので、文章も含めて多少修正しました。

2005年の時点ではカンボジアには鉄道線路があるのですが、不定期なうえに危険だそうで地元の人も利用しなかったようです。ここがそのプノンペン駅の正面です。
駅構内はこんな感じですが、鉄格子がしまっていて入れません。
その鉄格子越しに見たプラットフォームです。タンク車や貨車が30車ほど並んでいたので、荷物運びには使われているようです。2009年前後には南の海岸地方とつながる線路が修復されました。南部海岸では石灰石がとれ、それまでの赤茶色のラテライトを焼き固めたものからコンクリートに街並みが変わるかも知れません。
南側には使われなくなった蒸気機関車が展示されていますが、駅構内にあるため近寄って詳しく見る事はできませんでした。除煙板(デフレクター)にある番号131-106とフランスとの関係を元に調べてみると、Wikipediaに131はフランス式の車軸配置と書かれていました。形状から見てもフランス製の蒸気機関車のようです。
カンボジアでは鉄道の代わりにバスなどの車が主な移動手段になっています。
プノンペンから地方の都市へは定期バスが走っています。日本でよく見るバス(クメール語でランクロンと呼びます)の他に、マイクロバスや幌付きの小型トラックも走っています。屋根に荷物が山積みで、その上に人が乗っているという、テレビでよく見るアレです。小型トラックはルジュン・スノールと呼びます。
カンボジアは北回帰線よりも南にあるので、4月5月の時期は太陽が真上から強烈に差します。この車の陰が真下にあるのが分かりますか?カンボジアの人達はこの極暑の中をギュウギュウ詰めの状態で5時間以上乗ります。途中休憩もあるそうですが、よく我慢できるものです。
マイクロバスやワンボックスカーはツーリスト(英語がクメール語になったもの)と呼ばれて、こんな感じで使われています。
トラックの後ろに立って乗るルジュン・チュノールという乗り合いバスもあります。こんな車が事故るととんでもない事になりますが・・・。
こんなトンでもないルジュン・スノールもいます。
下の写真はプノンペンを南北に走る大通りモニボン通りを走っているトラックを後ろから撮りました。何を運んでいると思います?
答えは2m x 3mぐらいのガラス板4枚を四人で支えながら運んでいます。四人を支えるものは何もなく、足で踏ん張っているだけです。車は交通渋滞の中を下手な運転で急発進急停止を繰り返しながらギクシャクと走っていました。
村間の人の移動には以前にも紹介したバイクに二輪の荷台を付けたものを使っていて、ルモと呼んでいます。
上は田舎のバスと言ったところですが、プノンペン市内では荷物運びに活躍しています。下は何やら巨大な箱と家具を運んでいます。
自転車に荷台を付けてもルモですが、バイクはルモ・モト、自転車はルモ・チュンと呼び分けています。モトはバイクの事で、チュンは足の事です。プノンペン市内ではあまりルモ・チュンを見かけません。
プノンペン市内の移動には人数によって幾つかの方法があり、四人以上でよく使われるのがこのトゥクトゥクで、欧米人も「エスニック エスニック」と喜んで観光によく利用しています。2009年頃では両側から乗るタイプのトゥクトゥクをよく見かけます。
ちなみにプノンペンに来る欧米人は必ずと言っていいほど日本製デジカメやデジタルビデオを持っています。ただし古い型です。逆にプノンペンに在住するカンボジア人の金持ちはソニーなどの最新デジカメやビデオを持っています。
トゥクトゥクの他にもインド産ではないかと思われる車モト・カンバイもよく見かけます。
一人から三人ぐらいの市内移動によく使われるのがスクータを使ったタクシーでモトドップと呼ばれています。このモトドップに運転手も含めて四人が乗ると曲芸になります。
大人が5人乗るという曲芸もあるそうです。他にも幾つか紹介すると・・・まずは、米袋を前に一つ、後ろに二つ、その上に人が一人乗って、二台が一緒に走るという曲芸です。
こちらは扉を立てた状態で運んでいます。
ドライバがビニル袋や野菜に埋まっていたり、いろいろな曲芸を見る事ができます。
鶏やガチョウを逆さづりにして運んでいるのもいますが、生きたままです。できるだけ新鮮な肉を売るためであって、鳥インフルエンザのためではない・・・と思います。
他に豚を狭い竹籠に詰めてバイクで運ぶ事がありますが、豚も生きたまま市場に運ばれます。プノンペンではいつでもバナナがありますが、20本ほど付いた一房が25円ほどで売られています。このバナナをバイクで運ぶ時はこんな感じになります。
東南アジアの人にとって日本製の良さは高性能でも壊れにくい事でもなく、滅茶苦茶な整備や改造をしても走るという点だそうです。他の国のバイクは日本製と同じように扱うと壊れてしまうそうです。この辺はトヨタもよく知っているようで、トヨタが人気の理由は修理部品の流通にもあるようです。
いっぽう人力では、前に荷台を付けたシクロという自転車があります。これには人間だけでなくソファーや冷蔵庫、エアコン3台、などを運ぶ曲芸もあります。まずは普通の乗り方で・・・
次はタンスです。
これは、四分六版のベニヤ板を運んでいます。
家財道具一式ですが、何やら後ろに突き出ています。
家具を作っている地域ではこんな姿もよく見られます。
ベッドクッションを乗せている最中ですが、この後何枚乗せたか・・・(笑)
普通の自転車も負けていません。
ちなみに、この自転車は北に向かって走っているのですが、前輪の影をよく見ればわずかに北から太陽が差しているのが分かります。この自転車は見ての通りプラスティック製品を積んでいるのですが、後ろから見るとこんな感じです。
もっとうずたかく積んでいる自転車もあります。
次は風船屋さんで、後ろに風船をふくらませるためのボンベを二本積んでいます。
プノンペンではこんなサーカスのような光景を毎日見る事ができます。