2012年1月24日火曜日

iOS Simulatorがzombie量産(笑)

XcodeでiOSアプリの開発をするとiOS Simulatorのお世話になるわけですが、アプリプロセスの管理にちょっとだけ問題があるようです。

Xcodeでアプリの実行を指示→iOS Simulatorの起動とアプリの実行→Xcodeからアプリの終了をせずにiOS Simulatorの終了・・・という流れで作業をすると、開発アプリの終了SIGNALを受け取る受け皿であるiOS Simulatorがいなくなり、開発アプリがzombie化します。zombie化したプロセスはlaunchdにぶら下がることになるので、結局OSのリスタートをすることになります。iOS Simulator上での開発プロセスの検証の際には、iOS Simulatorを終了させるのではなく、Xcodeに戻ってProduct -> Stop (Cmd-.)を叩くように習慣づけると良いと思います。

とはいえ、ついついiOS Simulator側で Cmd-qとか叩いちゃうので、はやく修正してもらえるとありがたいですね。

2012年1月20日金曜日

TrimEnabler 2.0 released!

先日beta5のリリースをお伝えしたTrim Enablerですが、2.0としてリリースされました。

NewImage

詳細については、こちらのページを御覧ください。
http://www.groths.org/?page_id=322

僕はLion@MacBook ProにSSD 512GiBとHD 1TiBを載せていますが、Trim Enablerのおかげもあってかとても快適に使うことができています。SSDの価格もこなれてきたので、マシンの買い替えを検討されている方は、是非SSDへの換装も検討してみてください。僕は「大きいことはいいことだ」とばかりに512GiBのSSDを購入してしまいましたが、~Library以外のホームディレクトリをHDに逃がすという使い方で実際に使っているのは100GiB程度です。光学ドライブをHDに換装することができるMacBook Proならではのメリットと考えて、容量の小さいSSDを組み合わせるのも良い選択だと思います。

Trim Enabler 1.xからのバージョンアップについての記事はこちら→http://petittech.blogspot.com/2011/11/trim-enabler-20-beta2lionssd.html

 

 

2012年1月17日火曜日

Linuxでのmdns(avahi/Bonjour)による名前解決。

macやpcでParallelsやVMWareなどの仮想化ソフトを使っていると、ゲストOSの名前解決にストレスを感じることがあります。

RedHat LinuxやCentOSでは、avahi daemonがデフォルトでインストールされます。avahi daemonはZeroconfのフリーソフトウェアによる実装で、IPアドレスの自動割り当てや、名前解決の機能などを実現します。ZeroconfのAppleによる実装であるBonjourとの相互運用が可能ですので、macでは特別なソフトウェアを追加することなく、すぐに使うことができます。WindowsではiTunesをインストールすると、Bonjourの機能が使えるようになります。

多くの仮想化ソフトでは、ゲストOSのためにDHCP daemonを提供してくれています。ですから、avahiの恩恵を受けるのはやはり名前解決の部分だと思います。もちろんこれはStaticにIP Addressをアサインされたマシンに対しても有効です。逐一/etc/hostsファイルを編集するのも面倒ですし、IPアドレスでゲストOSにアクセスするのはもっと面倒です。Bonjour@mac/winとavahi@Linuxを手軽に使うのは非常に簡単です。Linux ゲストOSのホスト名を .localドメインに所属させるように定義します。node1.localとか、mylinux.localとか。CentOS5では、/etc/sysconfig/networkファイルでホスト名を設定することができます。

これだけでmacやBonjourが有効になっているWindowsから、名前によるアドレス解決ができます。ホストOSの端末からsshなどをするときに名前解決ができるようになるので、大変便利です。しかし、この状態では少しだけ不満がでます。それは、Linuxホスト自体がavahiによる名前解決をしてくれないというものです。(macからping linux1.localは問題なく行えるが、linux1.localからping linux2.localができない)

Linuxで、avahiによる名前解決をするためには、nss-mdnsライブラリをインストールした上で、/etc/nsswitch.confを編集する必要があります。以下、その手順です。(ここであげている例はOSはCentOS 5.7 x64です)

  1. epel repositoryにアクセスできるようにする。nss-mdnsライブラリはepel repositoryからダウンロードすることができます。http://download.fedora.redhat.com/epel/5/x86_64/ にアクセスして、最新のepel-release-*.noarch.rpmを探してダウンロードします。このblogを書いている時点では5.4が最新のようですので、http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpmをダウンロードすることになります。
  2. ダウンロードしたepelのrpmパッケージをインストールします。もちろん、直接ネットワークからインストールしてもらってもかまいません。
    # rpm -Uvh epel-release-5-4.noarch.rpm
  3. nss-mdnsパッケージをインストールします。
    # yum -y install nss-mdns

この操作によって、以下のファイルがインストールされます。

  • libnss_mdns.so.2
  • libnss_mdns4.so.2
  • libnss_mdns6.so.2
  • libnss_mdns_minimal.so.2
  • libnss_mdns4_minimal.so.2
  • libnss_mdns6_minimal.so.2

/etc/nsswitch.confでhostsの項目にmdnsやmdns4, mdns6_minimalなどを指定することでavahiによる名前解決がLinuxノードでもできるようになります。ここでいくつか注意点があります。mdnsモジュールは、IPv4, IPv6の両方に対応したモジュールなのですが、IPv4のみでの運用を行なっているようなネットワークである場合、IPv6のアドレス解決をしようとしてタイムアウトをしてしまうことがあるようです。ですので、どちらかに限定したネットワークを構築している場合は、mdns4あるいはmdns6のどちらかを使うことをお勧めします。また、_minimalとついているのはavahiによってアサインされたリンクローカルのアドレスについてのみ名前解決をするというものなので、DHCPやStaticにIP Addressをアサインしているような環境では使うことができません。yumコマンドでインストールされるnss-mdnsパッケージは/etc/nsswitch.confに対してmdns_minimalを使うような設定を書き込みますので注意が必要です。

Trim Enabler 2.0beta5が出ました。

macのHDをSSDに換装している人には必須のTrim Enablerです。2.0 beta5がリリースされました。

NewImage

1.xのリリースがLionに対応していないという、ちょっとした混乱もありましたが僕のMacBook Proでは問題なく動作しています。今回のbeta5で大きな問題が見つからなければ、これが正式リリースの2.0になるとのことです。(1.xからのupdateについては、手前味噌ですがこちらの記事を御覧ください。→http://petittech.blogspot.com/2011/11/trim-enabler-20-beta2lionssd.html )

内容としては、patchの内容そのものには変更がないそうで、beta4からの再パッチあては不要だそうです。beta5の変更はパッチあての作業そのものについての向上で、その項目は以下の通りです。

  • パッチあてにかかる時間が、以前のバージョンよりも格段に速くなった
  • 変更を確認するのに、Updateボタンやアプリの再スタートをする必要がなくなった
  • 状態についてのメッセージを向上させた
  • いくつかの状況で経験したクラッシュに対する修正
  • SSDの名前について適切にリポートするようになった。複数のSSDがある場合にはその数を表示するようになった。

開発者のblogによるbeta5のリリース記事はこちら→http://www.groths.org/?p=617

ダウンロードは上記リンクの主記事にある Download Trim Enabler Beta 5からどうぞ。

2012年1月16日月曜日

TORNE用のHD買わなきゃ。

タイの大洪水のためにHDの価格が高騰してますが、運悪く(?)TORNEに使っているHDがそろそろ満タンになってきました。

今、うちで使っているのは、これです。

TORNEのためのディスク選びは意外と気を使いますよね。本体と同時にディスクの電源が切れてくれないと困ります(僕が持っているWDはこの部分がダメでした)し、なによりもTORNEに認識してもらわない(手持ちの日立の3Tは認識させられませんでした)といけません。

というわけで、もう一本同じ製品を買っておこうと思います。この製品は、中身のディスクによって当たり外れがあるという話を聞くので少しだけ怖さもありますが、運試しのつもりでぽちってこようと思います(笑)

2012年1月15日日曜日

MOTUのUltraLite mk3 Hybridが気になってます。

今月号のサンレコで紹介されていたMOTUのUltraLite mk3 Hybridが気になってます。

NewImage

少々長いですが、前置きです。・・・自宅にリハーサル&レコーディングスタジオを作成しようと検討しています。とは言うものの、やはり住宅地に作るスタジオですから音は多少控えめになります。ドラムを電子ドラムにして、音量をコントロールできるようにすることを検討してます。とはいうものの、やはり良い音で演奏したいという欲求は強いので、ギター&ベースのアンプで悩んでいます。

一つの方法としては、普通にギターアンプ・ベースアンプを置いてしまうというのがあります。僕はギターを弾いていて、Line6のPOD HD500(アンプシミュレータ)→Electro HarmonicsのMagnum .44(パワーアンプ)と接続し、ライブハウスでもキャビネットだけ借りるようにしてます。ですので、ギターアンプに関して言えばキャビネットだけ買えば良いわけで、Marshallの1936とか1960とかだけ買えばいいのかな?なんて思っています。SoundHouseさんの製品に驚きの低価格キャビネットもありますし。そんなわけで、(ヘッドを買わなくても良いため)それほど高価な投資が必要になるわけではないのです。

もう一つの方法は、全ての出音をモニタースピーカーだけで完結させるというもの。これだと、Line6のキャビネットシミュレータも使えるので音の幅は広がりますが・・・やっぱり音圧を感じるという点ではきっと物足りなく感じるだろうなと予想してます。

と、ここまで説明させてもらって本題です。後者のセッティングをしようとしたときに、どうしても多チャンネルモニターの環境が必要になります。つまり、演奏する各メンバー全員が専用のモニタースピーカーを置き、そのモニタースピーカーから自分の音と他のメンバーの音をミックスした音を出すわけです。当然、各自で聞きたい音は異なるはずなので、モニターのチャネルごとにミックスは変わってくるはずです。手持ちの機材として16chのデジタルミキサーがあるのですが、残念ながら2チャンネル分のミックスしか作れません。そこで、MOTUのUltraLite mk3 Hybridです。これは内部にDSPを内蔵していて、複数のミックスチャネルを作成することができ、それを別々の出力系統に流すことができるそうなのです。雑誌の内容を読む限りでは最大8chのミックスができるので、ホームスタジオには十分な数です。

ホームスタジオについて検索してみるのですが、なかなか記事も少なくて困っています。

そうそう。Amazonだと並行輸入品も取り扱っているんですね。かなりお買い得になりそうです。

2012年1月7日土曜日

QuickSilverで外付けディスクのイジェクト。

外付けディスクのアンマウントって、意外と面倒です。僕はMacBookをデスクで使うときにはTimeMachine用の外付けHDに接続しているのですが、もちろんデスクから移動するときにはディスクのアンマウントの操作が必要です。デスクトップで、ディスクを選択してCmd-E・・・これでも十分簡単だとは思うのですが、LoveQuickSilver blogで面白い方法が紹介されていたのでご紹介します。

まず最初に/Volumesをショートカットで呼び出せるようにします。クイックシルバーのランチャーを表示した状態で、Cmd-,(カンマ)を叩き設定画面を開きます。CatalogのCustomを選択してください。

NewImage

次に、クイックシルバーのランチャーを呼び出して、/を入力してからカーソルの左を二回押します。すると、起動ディスク(/)が選択されます。次にOptionキーを押しながらカーソルキーの右を一回叩いてください。すると隠しファイルを含めたファイル・フォルダが選択できるようになります。この中から、/Volumesを探して選択します。この状態で/VolumesのフォルダアイコンをQuick Silverの設定ウィンドウ(カタログ/カスタム)にドロップします。

NewImage

こんな風にVolumesが登録されると思います。次に、Triggers/Custom Triggersを選択します。

NewImage

+ボタンをクリックして、新しいHotKeyを登録します。

スクリーンショット 2012 01 07 0 54 24

Select an Itemの項目にはVolumesを登録。(Volumesとタイプすることで表示されます。)

ActionにはShow Contentsを選択します。(shcとタイプすると選択できます。Show Contents Menuではないので注意してください。)

NewImage

これで、Volumesの内容を表示するというコマンドが作られたことになります。このコマンドにホットキーを割り当てます。HotKeyの部分をクリックして任意のホットキーを登録します。ここではオリジナルの記事と同じようにCtrl-Shift-Vを登録しておきます。

NewImage

これで、Ctrl-Shift-Vをクリックすることで、Volumes以下の項目にインスタントアクセスができるようになります。

スクリーンショット 2012 01 07 0 55 55

こんな感じですね。ここで、Tab -> Eと叩くとEjectが選択できるので簡単にディスクの取り外しができるようになるのですが、この手順もショートカットしてしまいましょう。QuickSilverの設定画面でPreferences/Extraを開いてください。Capitalized keys modify action in command windowという項目があるので、これをチェックします。これは大文字で入力された文字はコマンドウィンドウへの入力して扱うという意味になります。具体的にはShiftキーを叩けばいいわけですよね。

NewImage

ここまでの設定をした上での操作をまとめると以下のようになります。

Ctrl-Shift-Vでボリューム(ディスク)一覧の表示をして、アンマウントしたいディスクを選択し、Shift-Eを押してEjectを選択してエンター。また、ディスクを選択した状態でCmd-Shift-Eを叩くことでも(エンター無しで)イジェクトができます。

イジェクト機能を使うかどうかは別として、QuickSilverを簡易ファイラーとして使う時にはVolumesのホットキーはとても便利ですね。僕自身もQuickSilverは全然使いこなせていないと思っているので、LoveQuickSilverのblogはとてもありがたいです。