Macintosh Developer Online (MDOnline)


2002年2月20日発行号 - Mac OS X 10.1.3が公開



突然、10.1.3が出ています。私の手元にあるデバイスでまだ使えないものについては記事に書こうかと思ったのですけど、こっちで紹介しましょう。まず、あいかわらず、PCカードモデムを、PCカードスロットで使うことができません。それから、おもちゃデジカメのChe-ez!SpyZについても、まだ対応はしていませんでした。このところの売上上位のモデルだけに早く対応してほしいですね。私の使っているKodakのデジカメや、CD-RWドライブはすでに使える状態だったので、個人的には、10.1.3ではたいした変化はないというところです。ちょっと注目すべきは、ユーザ認証をLDAPやActive Directoryでできるようにしたことでしょうか。もっとも、ネットワーク利用はユーザ認証が全てではなく、それをもとにしたネットワークベースのユーザ環境をどこまで簡単に柔軟にカスタマイズできるかと言うこともかかってくるでしょう。従って、即座にWindowsネットワークもOKと言えるかどうかは定かではないのですが、いずれにしても、異機種混合環境が当たり前なネットワークの世界で、NetInfoつまりはMac OS X Serverを買わないとどうしようもないという部分があるのはやはりデメリットだったかと思います。WindowsがメジャーなネットワークサイトにMac OS Xを加えても、大きく使用環境を損なわないとか、統合的なアカウント/パスワード管理に参加できるとかいった実質的なメリットが見えてくると、Mac OS Xについてのビジネス現場の見方は変わるかもしれません。もちろん、認証できるのは第一歩でしょう。たとえば、SMBサーバの自動ログオンやブラウズ、ホームディレクトリのカスタマイズなど、ニーズを集めればきりはないかと思いますが、どこまでMacintosh環境として応えるのかは見守る必要があるところだと思います。
(新居雅行 msyk@mdonline.jp


【MacWIRE配信予定】Mac OS X 10.1.3のアップデータがリリース、周辺機器の対応を強化など

Mac OS X 10.1.3がリリースされた。ソフトウエアアップデートでのアップデートが可能となっている。CD-RW装置の対応が広がり、QPS、EZQuest、LaCie、Yamaha、MCE Technologies、Sonyのドライブの対応が追加された。また、デジカメでは、CANON、Kodak、Sony製品への対応が向上した。またPowerBook G4での外部ディスプレイでのDVD再生が可能になり、PowerBookでは外部ディスプレイを接続すると最初からミラーリングされるようになる。さらに、電子メールソフトのMailがSSLに対応した他、OpenSSH 3.0.2p1対応、WebDAVのダイジェスト認証、LDAPやActive Directoryを使ったログイン認証にも対応した。サイズは17.3MBあり、インストール後に最適化および再起動が必要になる。ビルド番号は5Q45である。近々アップデートがあると2002年1月に伝えれられたAppleScriptであるが、AppleScriptは1.8.1であるので、Mac OS X 10.1.2と変化はない。また、2001年11月のJavaOneでは、2001年1月にJava 1.3.1 Update 1のリリースが予定されることが公表されたが、Javaについても10.1.2までと同様の1.3.1が組み込まれている。
いずれにしても、周辺機器の対応が増えたので、一部のユーザにとってはぐっとMac OS Xの使い勝手が高くなると言えるだろう。また、ユーザ認証がLDAPなどでできるのは、Mac OS X Serverの必然性が薄れることになり、ネットワークでのシステム構築では柔軟性が高くなることは十分に考えられる。

カテゴリ:Mac OS X, OS関連ソフトウエア


Browsing Mac OS X》RAIDの機能を試してみる

   この記事のPDFファイル(643KB)は以下のアドレスにあります。
   ダウンロードには、MDOnlineのアカウントが必要です。
   pdfs/MDOnline020012.pdf
 ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥
Mac OS X 10.1から、RAIDを組む機能がシステム標準で添付組み込まれた。実際にタイトな仕事をさせたわけではないけども、どんな感じで使えるのかを見てみた。RAIDにはいくつか方式があるがその一部しかサポートはしていないものの、ディスク処理をより高速にしたい場合には、興味ある機能だろう。

――――RAIDとは
RAIDはRedundant Array of Inexpensive Disksの略だ。「レイド」という名前はかっこいいが(笑)、そのもとになっている英単語は、いわば「安物のディスクを積み重ねて使います」のような意味合いになり、ちょっと雰囲気が違う感じがする。当初は安価なディスクでも高価なディスクなみの機能を実現するという意味であったが、ハードディスクではそうした値段差がなくなってしまって、安価高価とは言えない状況になった。最近はIndependentがIの略に使われることが多い。いずれにしても、一言で言えば、複数台のハードディスクをあたかも1台のハードディスクのように稼働させてしまうような仕組みである。RAIDを使ったドライブとして販売されていることもあるし、RAIDを構成するための拡張カードという形式もある。これらハード的なRAID実現方法に対し、Mac OS Xでは普通につないだ単体のディスクをいくつか使ってソフトウエア的にRAIDができてしまう。
RAIDの目的は、速度を速めることや信頼性を高めるということが言えるのだが、RAID自体の動作方法などは7通りあって、方式ごとに動作やメリットは異なる。当初は、RAID1〜RAID5という5通りだったが、RAID0とRAID6が付け加わった。RAID0はディスクへの読み書きを複数のディスクに分散させることで高速化を図ったものだ。従って、信頼度は高くなるどころか、確率の上では低くなるが、複数のドライブを並列に動作させることでスピードは早くなるし、RAID全体の容量は複数のドライブの合計になる。こうした動作を「ストライプ」とも呼んでいる。(なお、データの分割をしない、つまりストライプしないRAID0もあるらしい。)信頼度は落ちるとは言え、今時のハードディスクでは、普通の用途では問題にならないくらいだろう。
RAID1は、2台のドライブに同じようにデータを書き込む。これにより、一方で物理的な意味でデータが壊れても、もう一方が生きていればそちらのデータを使えるため、信頼度は高くなる。ただし、容量的には2台のうち、少ない方の容量分しか使えないし、スピード的には基本的には同じか、あるいはスピードの遅い方のディスクにひきずられる。こうした使い方は「ミラー」と呼んでいる。
実は、Mac OS Xの標準の機能では、ストライプかミラーかのどちらかしか使えない。残る5つの形式はサポートしていないのである。のこりをざっと説明しておくと、RAID2はエラー訂正ができるように、データに対する余分な情報を記録しておくものだ。RAID3はチェック用にディスクを配置するが、訂正はできない。RAID4はRAID3に比べてデータの扱いが異なる。RAID5はチェック用のディスクを固定しない方式だ。RAID6はRAID5よりもさらに信頼性を高める設計になっている。つまり、RAID3以上は結果的に信頼性を高めることになるが、総容量はディスクの合計よりも少なくなる。また、速度的な要素はいちがいに言えないというところだろう。
Mac OS X 10.1のRAID機能は、起動ディスクとしては使えない。システムをインストールするディスクは、RAIDにしていないドライブにあるパーティションである。RAIDは結果的にデータだけを保存できる拡張ボリュームとして使うものとなる。

――――RAIDディスクを構成する
Mac OS Xでは、UtilitiesフォルダにあるDisk Utilityで、RAIDの設定を行う。Disk UtilityはFirst Aidつまり修復機能や、あるいはフォーマット(消去)やパーティションを行うディスク関連のユーティリティだ。
以下は、Mac OS X Server 10.1.2を搭載した300MHzの青白Power Macintosh G3での設定例である。6GBのディスクが最初から内蔵されていたもので、それにMaxtorの8GB、IBMの8GB弱のディスクを追加で取り付けた。追加のディスクはそれぞれATAのバスのスレーブとなっている。
Disk Utilityを起動すると、左側に利用可能なドライブが一覧される。ここでは、拡張した2台のドライブでRAIDを組んでみる。右側でRAIDのタブを選択して、ここで設定を行う。まず、左側にあるディスクのアイコンを、右側の下のリスト部分にドラッグして、「ディスク」のリストに追加する。

◇RAIDのタブのディスクリストにディスクを登録する
 

なお、起動ディスクはドラッグして登録はできない。また、IDEとSCSIディスクは登録できるが、FireWireやUSBディスクは登録できない。つまり、固定して使うドライブのみを対象としている。FireWireディスクだと気軽に抜き差しするのだが、RAIDの一部分を取り除くとデータの破壊等問題につながるので、FireWireディスクは使えないようにしているものと思われる。
RAIDのタブでは、RAID方式、RAIDセット名、RAIDディスクのフォーマットを選択する。RAID方式は、ストライプとミラーしか選択できない。RAIDセット名は、そのままデフォルトのボリューム名になるので、そのことを考慮して名前を付けておくと良いだろう。フォーマットは、Mac OS Xで使うのなら基本的にはMac OS 拡張を選択しておくのが良い。

◇RAID方式は2通りから選択する
 

つまり、RAID0とRAID1のいずれかしか選択できない。ここでストライプの場合には、2つのディスクの容量を合計したRAIDディスクが出来上がる。ミラーの場合には、少ない方のディスク容量と同じサイズのRAIDディスクができあがる。
こうして設定を行うと、右下にある「作成」ボタンをクリックする。RAIDを組むと、ディスクのそれぞれのディスクの内容は消されてしまうので、警告が出る。もちろん、ディスクに必要なファイルがあるのなら、あらかじめバックアップを取ってからRAIDにしなければならない。警告のシートで「作成」ボタンをクリックすることで、実際にRAIDディスクとして構成される。

◇「作成」ボタンをクリックしてRAIDにする
 

こうしてRAIDを作成すると、Disk Utilityでの左側のドライブリストに変化が見られる。まず、RAIDのものになったディスクはグレーで表示され、一方で、作成したRAIDディスクが1つの項目を占めるようになる。起動ディスクにも、パーティションが1つ増えている。いずれにしても、RAIDのタブでは、RAIDをばらす「セットを削除」ボタンが出るようになっている。また、ここで、RAID方式やサイズなどをチェックすることもできる。

◇出来上がったRAIDディスク
 

上記の段階で、すでに組み立てられたRAIDのディスクがデスクトップにマウントされているだろう。マウントされたディスクは単体のハードディスクとはなんら変わらずに利用できる。普通にアイコンが出てきて、そこにファイルをコピーすることなどができるようになっている。

ディスクの信頼度は、昔は確かに低かったものの、最近ではよほどの事がない限りはハードディスクのデータは壊れない。ハードディスクが原因で壊れることより、たとえばシステムがフリーズすることによって書き込み途中のファイルが壊れるといったシステム側の原因になることが多いだろう。従って、現在では、一般的なパソコン利用の上では障害に強くするためにわざわざRAID2〜6を使うというのは考えにくい。もちろん、非常に高い信頼性を確保したい場合にはあり得るかもしれない。また、ミラーによるRAIDによる信頼性の向上も、現状では一般利用者にはニーズは薄いだろう。
だが、ストライピングについては、ニーズはある。まず、読み書きの高速化が期待できる。AppleもKnowledge Base(106594)では高速化が可能であると説明しいる。また、複数の小さなディスクではなくそれらをまとめて使えるというメリットもある。結果的にはPower Mac G4ユーザのようにディスクを拡張できないと使えない機能ではあるが、データのファイルの読み書きを高速化する手段として、一気に2台のディスクを増設して試してみる価値はあるかもしれない。

∽∽∽∽∽∽∽この項、以上∽∽∽∽∽∽∽[新居雅行]∽∽∽∽∽∽∽

カテゴリ:周辺機器, Browsing Mac OS X


AppleScript Stduioでlogコマンドが使えるフレームワークとInterface Builderツール

AppleScript Studioでlogコマンドの利用を可能にするHAStudioLoggerが、フレームワークとInterface Builderツールとして利用できるようになった。Project BuilderでのAppleScriptプログラムでは、従来のようなlogコマンドやstart logによるイベントのダンプ処理などができなくなってしまっていた。HAStudioLoggerは、Objective-Cのソースコードを追加する形式であったが、クラス定義からインスタンスを作成しなければならなかった。フレームワーク&IBツール形式なったことで、より手軽に自分の作っているプロジェクトで利用できるようになる。あらかじめDeveloper Toolsの追加パレットとしてIBツールを登録しておく。そして、起動時にロードされるnibファイルにそのインスタンスをドラッグ&ドロップして作っておけばよい。後は、フレームワークを自分のプロジェクトにコピーし、そのフレームワークがビルドされたアプリケーションのパッケージに含まれるように、ビルドフェーズを追加すれば、後はAppleScriptのソースではlogコマンドなどが使えるようになる。LGPLライセンスで利用できるので、通常の使用はフリーで行える。ソースも付属している。

関連リンク:H.Abe’s Web Site: Freewares
カテゴリ:ライブラリ, AppleScript


Darwin関連のドキュメント

Darwinに関連した開発者向けの文書がいくつか公開され、ドキュメントのページが用意されている。ドライバやあるいはファイルシステムなどを開発する開発者にとってはカーネルレベルの知識が必要になる。カーネルの基本的なことを解説するのが「Kernel Programming」という文書であるが、ストレージデバイスやオーディオデバイスについての解説文書も用意されている(Roadmap to informationというページを見るのが早いだろう)。また、アプリケーションのプログラマにとっては、アプリケーションから周辺機器をアクセスする方法や、/devディレクトリに見えているデバイスファイルについての知識も、これらの文書から得られるだろう。さらに、Mach、POSIX、FreeBSDといったサイトへのリンクもあり、コアOSについてのさまざまな情報源となっている。

関連リンク:Darwin Developer Documentation
カテゴリ:アップルからの開発資料, 開発情報, Darwin


データベースエンジンのValentina 1.8.10がリリース、Objective-Cでの開発に対応など

Paradigma Softwareは、データベースエンジンのValentina 1.8.10をリリースした。Valentina C++ SDKを利用することで、Project BuilderでC++あるいはObjective-Cによる開発が可能となる。Valentina C++ SDKはデータベースエンジン機能をアプリケーションなどに組み込むことを可能にするライブラリだ。Valentina for Javaは、Mac OS XのJava環境に適合させた。また、エンジン部分は、CREATE TABLE, DROP TABLE, ALTER TABLE, INSERT INTO, INSERT ... SELECT, UPDATE, DELETE, CONVERT RDBLINKといったコマンドのサポートを追加している。Valentinaは単体のアプリケーションとしても稼働するバージョンがあるが、これはすでにCarbon対応によりMac OS X対応している。Valentinaは当初はAppleScriptから利用できるデータベースとして登場したが、SQLサポートを強化して汎用的に利用可能なように発展してきている。REALbasicやXCMD、ActiveX、Directorなど多彩な利用形態を提供する。

関連リンク:Paradigma Software
カテゴリ:データベース