<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>watermint.org &#187; mac</title>
	<atom:link href="http://watermint.org/tag/mac/feed" rel="self" type="application/rss+xml" />
	<link>http://watermint.org</link>
	<description>Takayuki Okazaki&#039;s blog</description>
	<lastBuildDate>Tue, 20 Dec 2011 14:10:12 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://watermint.org/tag/mac/feed" />
		<item>
		<title>お客様の中に名探偵はいらっしゃいませんか？</title>
		<link>http://watermint.org/2011/12/10/1501.html</link>
		<comments>http://watermint.org/2011/12/10/1501.html#comments</comments>
		<pubDate>Sat, 10 Dec 2011 02:44:57 +0000</pubDate>
		<dc:creator>Takayuki Okazaki</dc:creator>
				<category><![CDATA[テクノロジー]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[dtrace]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[mac]]></category>

		<guid isPermaLink="false">http://watermint.org/?p=1501</guid>
		<description><![CDATA[名探偵コナン並みの推理力をもったプログラマーにデバッグとか手伝ってもらったらどうだろうか。 ? Takayuki Okazaki (@watermint) December6, 2011 なんて思ってたら、 @watermint つまり、「毎週超難解なバグが発生する」ということですね？＞＜ ? パレオはせとあずさ♂?熱烈歓迎DeNA／ (@setoazusa) December6, 2011 ！！！ お客様の中に名探偵の方はいらっしゃいませんか？＞＜ ということで、iOS Advent Calendarのネタです。今回は、iOSデバッグ界隈の中ではマイナーと言われるか、一部のファンに熱狂的な支持！といわれるか絶妙なバランスを保ったDTraceでのデバッグを取り上げます。 DTraceはもともと、Sun Microsystemsによって開発されSolaris 10に搭載されたデバッグフレームワークです。現在は、FreeBSDやMac OS Xなどでも利用することが出来ます。詳しい説明は今回は省きますがTraceと名前がついていることから想像できる通り、プログラムの実行をトレースしてどのコードが、どういう風に実行されたか。といったことを調べることが出来ます。 こんなことはありませんか？ 初期化処理がどうやらうまくいっていないようだが、どこまで実行されたか知りたい。しかし、Xcodeのデバッガでステップ実行・ブレークポイント設定などしながら確認するにはプログラムが大きすぎる。 NSLogを埋め込んでどこまで実行されたか確認したいが、そもそもログを埋め込むのが面倒くさい。または、ソースコードをNSLogだらけにして汚したくない。 個人的にはXcodeのブレークポイント設定はなかなかよく出来ていると思っていて、多くのケースではそれで足りると思っています。 Xcodeでブレークポイントを設定してActionにSoundを設定、ブレークポイントは自動的に続行するように設定しておけばその該当箇所が実行されたかどうか音で聞き分けて調べることが出来ます。初期化関連の問題を探すときなんかは個人的にはよく利用しています。 さて、これでも十分なんですが設定したいブレークポイントが増えてくると音の種類も限定されますしどの音がどのブレークポイントだったかよくわからなくなります。Log Messageなどのアクションを設定してログ出力するのもいいのですが、網羅的にブレークポイント設定は面倒くさすぎます。 こういうときに威力を発揮するのがDTraceです。まずは手っ取り早くつかってみましょう。XcodeについているiOSのサンプルプロジェクトLazyTableImagesを題材にしています。Xcodeであなたのデバッグしたいプロジェクトを開いて、シミュレーター上で実行してください。出ましたか？ 次にターミナルから次のコマンドを実行します。 $ ps ax &#124; grep Simulator &#124; grep -v iPhoneSimulator すると次のようにiOSシミュレーター上で実行されているアプリのプロセスIDが分かります。下の例だと85894ですね。 85894 ?? SX 0:00.33 /Users/watermint/Library/Application Support/iPhone Simulator/4.0.2/Applications/993BF578-B81F-4B4C-97FA-B6B6843DD47E/LazyTable.app/LazyTable 88978 s004 R+ [...]]]></description>
			<content:encoded><![CDATA[<blockquote class="twitter-tweet"><p>名探偵コナン並みの推理力をもったプログラマーにデバッグとか手伝ってもらったらどうだろうか。</p>
<p>? Takayuki Okazaki (@watermint) <a href="https://twitter.com/watermint/status/143981060890427393" data-datetime="2011-12-06T09:12:14+00:00">December6, 2011</a></p></blockquote>
<p><script charset="utf-8" type="text/javascript" src="//platform.twitter.com/widgets.js"></script>なんて思ってたら、 </p>
<blockquote class="twitter-tweet" data-in-reply-to="143981060890427393"><p>
@<a href="https://twitter.com/watermint">watermint</a> つまり、「毎週超難解なバグが発生する」ということですね？＞＜</p>
<p>? パレオはせとあずさ♂?熱烈歓迎DeNA／ (@setoazusa) <a href="https://twitter.com/setoazusa/status/143982323132669952" data-datetime="2011-12-06T09:17:15+00:00">December6, 2011</a>
</p></blockquote>
<p><script charset="utf-8" type="text/javascript" src="//platform.twitter.com/widgets.js"></script><br />
！！！<br />
お客様の中に名探偵の方はいらっしゃいませんか？＞＜</p>
<p>ということで、<a href="http://atnd.org/events/22792">iOS Advent Calendar</a>のネタです。今回は、iOSデバッグ界隈の中ではマイナーと言われるか、一部のファンに熱狂的な支持！といわれるか絶妙なバランスを保ったDTraceでのデバッグを取り上げます。</p>
<p><a href="http://en.wikipedia.org/wiki/DTrace">DTrace</a>はもともと、Sun Microsystemsによって開発されSolaris 10に搭載されたデバッグフレームワークです。現在は、FreeBSDやMac OS Xなどでも利用することが出来ます。詳しい説明は今回は省きますがTraceと名前がついていることから想像できる通り、プログラムの実行をトレースしてどのコードが、どういう風に実行されたか。といったことを調べることが出来ます。</p>
<p>こんなことはありませんか？</p>
<ol>
<li>初期化処理がどうやらうまくいっていないようだが、どこまで実行されたか知りたい。しかし、Xcodeのデバッガでステップ実行・ブレークポイント設定などしながら確認するにはプログラムが大きすぎる。</li>
<li>NSLogを埋め込んでどこまで実行されたか確認したいが、そもそもログを埋め込むのが面倒くさい。または、ソースコードをNSLogだらけにして汚したくない。</li>
</ol>
<p>個人的にはXcodeのブレークポイント設定はなかなかよく出来ていると思っていて、多くのケースではそれで足りると思っています。</p>
<p><a href="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-17.34.33.png"><img src="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-17.34.33-e1323480954619.png" alt="" title="Xcode and Breakpoint" width="498" height="194" class="alignnone size-full wp-image-1512" /></a></p>
<p>Xcodeでブレークポイントを設定してActionにSoundを設定、ブレークポイントは自動的に続行するように設定しておけばその該当箇所が実行されたかどうか音で聞き分けて調べることが出来ます。初期化関連の問題を探すときなんかは個人的にはよく利用しています。</p>
<p>さて、これでも十分なんですが設定したいブレークポイントが増えてくると音の種類も限定されますしどの音がどのブレークポイントだったかよくわからなくなります。Log Messageなどのアクションを設定してログ出力するのもいいのですが、網羅的にブレークポイント設定は面倒くさすぎます。</p>
<p>こういうときに威力を発揮するのがDTraceです。まずは手っ取り早くつかってみましょう。XcodeについているiOSのサンプルプロジェクトLazyTableImagesを題材にしています。Xcodeであなたのデバッグしたいプロジェクトを開いて、シミュレーター上で実行してください。出ましたか？</p>
<p><a href="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-17.50.44.png"><img src="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-17.50.44-e1323481881555.png" alt="" title="LazyTableImage" width="256" height="500" class="aligncenter size-full wp-image-1516" /></a></p>
<p>次にターミナルから次のコマンドを実行します。</p>
<blockquote><p>
$ ps ax | grep Simulator | grep -v iPhoneSimulator
</p></blockquote>
<p>すると次のようにiOSシミュレーター上で実行されているアプリのプロセスIDが分かります。下の例だと85894ですね。</p>
<pre>
85894   ??  SX     0:00.33 /Users/watermint/Library/Application Support/iPhone Simulator/4.0.2/Applications/993BF578-B81F-4B4C-97FA-B6B6843DD47E/LazyTable.app/LazyTable
88978 s004  R+     0:00.00 grep Simulator
</pre>
<p>さてこれが分かったら続いてdtraceを実行します。dtraceは他の人の実行しているプロセスなども丸裸にしてしまうなどでき、セキュリティー上の課題があるため一般ユーザでは実行できません。sudoをつかって実行しましょう。下記の85894の部分は調べたプロセスIDに読み替えてください。</p>
<blockquote><p>
$ sudo dtrace -p 85894 -n &#8216;objc$target:::entry { printf(&#8220;[%s %s]\n&#8221;, probemod, probefunc); }&#8217;
</p></blockquote>
<p>できましたか？できたらアプリを適当にタップするなど動かしてみてください。<br />
<a href="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-18.04.19.png"><img src="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-18.04.19-e1323482692202.png" alt="" title="dtrace実行結果" width="500" height="382" class="alignnone size-full wp-image-1519" /></a><br />
このようにObjective Cで実行された関数がリアルタイムに出力されます。どうでしょうか？これでNSLogを仕込まなくてもトレースがとれるようになりましたね。でもちょっと出力が多すぎるようです。これではデバッグの役に立てるにはややしんどいです。出力を抑制してみましょう。</p>
<p>objc$target:::entryのところを、objc$target:クラス名::entryと書き換えてみましょう。ここではLazyTableImageにあるクラスのIconDownloaderとしましょうか。実際に実行するときにはあなたのプロジェクトにあるクラスをつかってください。</p>
<blockquote><p>
$ sudo dtrace -p 85894 -n &#8216;objc$IconDownloader::entry { printf(&#8220;[%s %s]\n&#8221;, probemod, probefunc); }&#8217;
</p></blockquote>
<p><a href="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-18.10.20.png"><img src="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-18.10.20-e1323483049692.png" alt="" title="出力をIconDownloaderのみにする" width="500" height="382" class="alignnone size-full wp-image-1521" /></a><br />
出力が一気に減って、IconDownloaderだけになりましたね。ご想像の通り、関数名でもフィルタできます。</p>
<blockquote><p>
$ sudo dtrace -p 85894 -n &#8216;objc$target:IconDownloader:-indexPathInTableView:entry { printf(&#8220;[%s %s]\n&#8221;, probemod, probefunc); }&#8217;
</p></blockquote>
<p>便利ですね。これでたとえば、初期化処理のときに通らなければならない関数がちゃんと実行されているかどうか分かるようになりました。クラス名や関数名にはワイルドカードが使えます。たとえば、IconDownloader以外にIconButton、IconButtonLabelなどのクラスがあった場合にはIcon*というようにアスタリスクを指定するとIconで始まるクラス名にマッチします。</p>
<p>さて、デバッグしていて原因箇所がなんとなくわかってきたときに知りたいのはその関数がいつ、どこから呼ばれたか？です。呼び出し元を知りたいですよね。そういうときは、もうちょっと凝ったdtraceの使い方をしてみましょう。</p>
<p>次のようなファイルを用意して、trace.d というファイル名で保存しておきます</p>
<pre>
#pragma D option quiet

self int level;

objc$target:::entry
{
  printf("%*s[tid=%lld][%s %s]\n",
    self->level * 2, " ->",
    (long long)tid, probemod, probefunc);
  self->ts[probefunc] = timestamp;
  self->level++;
}

objc$target:::return
{
  time = timestamp - self->ts[probefunc];
  self->level--;
  printf("%*s[tid=%lld][%s %s] [%dms]\n",
    self->level * 2, " <-", (long long)tid,
    probemod, probefunc, time / 1000);
}
</pre>
<p>ではこれを実行してみましょう。</p>
<blockquote><p>
$ sudo dtrace -p 85894 -s trace.d
</p></blockquote>
<p><a href="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-18.32.05.png"><img src="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-18.32.05-e1323484363305.png" alt="" title="dtraceで呼び出しツリー" width="500" height="382" class="alignnone size-full wp-image-1524" /></a></p>
<p>このように関数呼び出しをツリー状にしてダンプできます。後は必要に応じてクラス名や関数をフィルタしていけば良いでしょう。</p>
<p>さて、すこし駆け足になりましたがXcodeのデバッガをつかう場合と比べてだいぶ便利な機能があることがお分かりいただけたでしょうか？</p>
<p>コマンドラインからの実行に抵抗があるというかたはInstrumentsからもDtraceは実行できます。</p>
<p><a href="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-18.38.14.png"><img src="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-18.38.14-e1323484740809.png" alt="" title="Instruments" width="500" height="353" class="alignnone size-full wp-image-1525" /></a></p>
<p>さて、すこし駆け足になりましたが最後に制約事項を説明しておきます。dtraceはOS側に仕込まれたプローブという検出ポイントに対して働きます。このため、トレースしたい内容のプローブがOS側で実装されていることが必須です。このため、dtraceのプローブを持たないiOSにはdtraceを接続できません。必ずiOSシミュレータ上で実行しているアプリに対してdtraceを実行してください。</p>
<p>iPhoneやiPadなどのiOSが動作している実機に対しては別途従来通りのXcodeやgdbを用いたデバッグが必要です。</p>
<p>Mac OS XのdtraceにはObjective Cのためのプローブがいくつか用意されています。詳しくはman dtraceを参照してください。<br />
<a href="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-18.41.38.png"><img src="http://watermint.org/wp-content/uploads/2011/12/Screen-shot-2011-12-09-at-18.41.38-e1323484944692.png" alt="" title="man dtrace" width="500" height="280" class="alignnone size-full wp-image-1526" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://watermint.org/2011/12/10/1501.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://watermint.org/2011/12/10/1501.html" />
	</item>
		<item>
		<title>Mac OS X Snow Leopardを英語環境で使う</title>
		<link>http://watermint.org/2010/09/02/1420.html</link>
		<comments>http://watermint.org/2010/09/02/1420.html#comments</comments>
		<pubDate>Thu, 02 Sep 2010 13:53:45 +0000</pubDate>
		<dc:creator>Takayuki Okazaki</dc:creator>
				<category><![CDATA[テクノロジー]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[mac]]></category>

		<guid isPermaLink="false">http://watermint.org/?p=1420</guid>
		<description><![CDATA[OSは普段使う分には日本語環境で十分なのだけれど、ときどき英語環境でないと困ることがある。そのなかで顕著なケースが、新しい開発用ソフトを使う場合。ここ半年ほど使っているiPhone/iPad向けアプリを開発するために使っているXcodeもその一つ。普通に開発している分には何ら問題がないのだけれど、初めて使うフレームワークや、次々と追加される新しい機能を使う上では英語環境にした方が都合がいい。新しい開発環境に関する情報は英語しかないし、メニューの名前も英語だから。下手に日本語化されているとどれかわからなくて困ることも。 言語環境を変更するにはシステム環境設定から、言語とテキストで順番を入れ替えるだけ。?さて、英語環境にしたときに困るのが、いくつかのアプリケーションは日本語環境でなければ正常に動作しないこと。Illustrator、Photoshop、Safariあたりがそう。Illustratorはプラグインの読み込みにいくつか失敗し、Photoshopは実用上困ったことはないけれど一部メニューが文字化け、SafariはAccept-Languageがenになって一部Webが文字化け。そういうときには、個別にアプリケーションに対して言語設定を実施。Mac OS X 10.5 LeopardまではFinder.appから設定できたけど、Snow Leopardではできない模様。 コマンドラインで次のように入力。 defaults write $(mdls -name kMDItemCFBundleIdentifier -raw /Applications/Adobe\ Illustrator\ CS4/Adobe\ Illustrator.app) AppleLanguage &#8220;(ja)&#8221; のように入力してアプリケーションを再起動すれば完了。]]></description>
			<content:encoded><![CDATA[<p>OSは普段使う分には日本語環境で十分なのだけれど、ときどき英語環境でないと困ることがある。そのなかで顕著なケースが、新しい開発用ソフトを使う場合。ここ半年ほど使っているiPhone/iPad向けアプリを開発するために使っているXcodeもその一つ。普通に開発している分には何ら問題がないのだけれど、初めて使うフレームワークや、次々と追加される新しい機能を使う上では英語環境にした方が都合がいい。新しい開発環境に関する情報は英語しかないし、メニューの名前も英語だから。下手に日本語化されているとどれかわからなくて困ることも。</p>
<p><a title="View 'Language settings' on Flickr.com" href="http://www.flickr.com/photos/21684662@N00/4951406664"><img src="http://farm5.static.flickr.com/4084/4951406664_fd61494d3e.jpg" border="0" alt="Language settings" width="500" height="434" /></a></p>
<p>言語環境を変更するにはシステム環境設定から、言語とテキストで順番を入れ替えるだけ。?さて、英語環境にしたときに困るのが、いくつかのアプリケーションは日本語環境でなければ正常に動作しないこと。Illustrator、Photoshop、Safariあたりがそう。Illustratorはプラグインの読み込みにいくつか失敗し、Photoshopは実用上困ったことはないけれど一部メニューが文字化け、SafariはAccept-Languageがenになって一部Webが文字化け。そういうときには、個別にアプリケーションに対して言語設定を実施。Mac OS X 10.5 LeopardまではFinder.appから設定できたけど、Snow Leopardではできない模様。</p>
<p><a title="View 'Language settings for some applications' on Flickr.com" href="http://www.flickr.com/photos/21684662@N00/4951406660"><img src="http://farm5.static.flickr.com/4111/4951406660_db8b7e2680.jpg" border="0" alt="Language settings for some applications" width="500" height="60" /></a></p>
<p>コマンドラインで次のように入力。</p>
<blockquote>
<p>defaults write $(mdls -name kMDItemCFBundleIdentifier -raw /Applications/Adobe\ Illustrator\ CS4/Adobe\ Illustrator.app) AppleLanguage &#8220;(ja)&#8221;</p>
</blockquote>
<p>のように入力してアプリケーションを再起動すれば完了。</p>
]]></content:encoded>
			<wfw:commentRss>http://watermint.org/2010/09/02/1420.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://watermint.org/2010/09/02/1420.html" />
	</item>
		<item>
		<title>iPhone 4、故障と交換</title>
		<link>http://watermint.org/2010/08/24/1416.html</link>
		<comments>http://watermint.org/2010/08/24/1416.html#comments</comments>
		<pubDate>Mon, 23 Aug 2010 15:35:06 +0000</pubDate>
		<dc:creator>Takayuki Okazaki</dc:creator>
				<category><![CDATA[ガジェット]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mac]]></category>

		<guid isPermaLink="false">http://watermint.org/?p=1416</guid>
		<description><![CDATA[少し前の話ですが、7月末頃、iOS 4.0からiOS 4.0.1にアップデートしようとしたところ、「iPhone&#8221;iPhone&#8221;を復元できませんでした。不明なエラーが発生しました(9)」というエラーがでてアップデートが完了しません。iMacを再起動してみたり、MacBook Pro側で試してみたり、違うUSBポートから実行してみたりなどかなり多くのパターンを試してみましたがどのパターンもだめ。 何度試してもiPhone 4側にiTunesにつないで復旧せよ、という表示のまま。仕方なく、渋谷のApple Storeへ持ち込み。Apple Storeでも現象が再現し、iPhone 4本体は交換となり無事復旧しました。 ちなみに交換してもらったため、本体への技適マーク表記がなくなっています。iOS 4は技適マーク表記があるので電波法上問題はありませんが、本体に印字されているという希少価値がなくなったのはちょっと残念。まあ、新しくなったのでよしとしましょう。]]></description>
			<content:encoded><![CDATA[<p><a title="View 'iPhone 4 restore failed with iTunes' on Flickr.com" href="http://www.flickr.com/photos/21684662@N00/4910312225"><img src="http://farm5.static.flickr.com/4102/4910312225_2edda257c5.jpg" border="0" alt="iPhone 4 restore failed with iTunes" width="500" height="122" /></a></p>
<p>少し前の話ですが、7月末頃、iOS 4.0からiOS 4.0.1にアップデートしようとしたところ、「iPhone&#8221;iPhone&#8221;を復元できませんでした。不明なエラーが発生しました(9)」というエラーがでてアップデートが完了しません。iMacを再起動してみたり、MacBook Pro側で試してみたり、違うUSBポートから実行してみたりなどかなり多くのパターンを試してみましたがどのパターンもだめ。</p>
<p><a href="http://www.flickr.com/photos/okazaki/4825481915/" title="_DSC1625.jpg by Takayuki Okazaki, on Flickr"><img src="http://farm5.static.flickr.com/4080/4825481915_95ec08b0c8.jpg" width="500" height="332" alt="_DSC1625.jpg" /></a></p>
<p>何度試してもiPhone 4側にiTunesにつないで復旧せよ、という表示のまま。仕方なく、渋谷のApple Storeへ持ち込み。Apple Storeでも現象が再現し、iPhone 4本体は交換となり無事復旧しました。</p>
<p><a title="View '_DSC2483.jpg' on Flickr.com" href="http://www.flickr.com/photos/21684662@N00/4905072198"><img src="http://farm5.static.flickr.com/4118/4905072198_0cb8a45040.jpg" border="0" alt="_DSC2483.jpg" width="500" height="332" /></a></p>
<p>ちなみに交換してもらったため、本体への技適マーク表記がなくなっています。iOS 4は技適マーク表記があるので電波法上問題はありませんが、本体に印字されているという希少価値がなくなったのはちょっと残念。まあ、新しくなったのでよしとしましょう。</p>
]]></content:encoded>
			<wfw:commentRss>http://watermint.org/2010/08/24/1416.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://watermint.org/2010/08/24/1416.html" />
	</item>
		<item>
		<title>iPhone 4</title>
		<link>http://watermint.org/2010/07/25/1414.html</link>
		<comments>http://watermint.org/2010/07/25/1414.html#comments</comments>
		<pubDate>Sun, 25 Jul 2010 03:00:30 +0000</pubDate>
		<dc:creator>Takayuki Okazaki</dc:creator>
				<category><![CDATA[ガジェット]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mac]]></category>

		<guid isPermaLink="false">http://watermint.org/?p=1414</guid>
		<description><![CDATA[ブログに書くのが遅くなりましたが、iPhone 4が届きました(6月29日)。2年間つかったインターネットマシンことSoftBank 922SHからの機種変。なんだかんだ、届いてから1ヶ月ぐらいですね。 Retina Displayは確かにおそろしくきれい。デバイスの持つ表現力もさることながら、iOS自体もこれに向けて周到に準備が整えられていたのが大きいと思います。高ppi対応は記憶が正しければ、Mac OS X Leopardあたりから本格的に入り始めたので3年の月日をかけて熟成させ、MacではなくiPhoneに最初に導入された訳です。WindowsもVistaからは高ppi対応が入っていて、2007年当時、これからはディスプレイが「○?○万画素！」と謳われて電気屋で売られる想像を当時していましたが予想は外れて、2010年ようやくスマートフォンがその戦いを始めようとしているようです。 iPhone 4を約１ヶ月使っての感想です。iPhone 3GSも平行して使っていますが、使ってみるとiPhone 4は確かに優れていますがiPhone 3GSを置き換えるほどではないことに気づきました。なぜなら同じアプリがiTunesによって同期され、Mobile Meによってメールや連絡先などの情報は同期されているので使い勝手は何ら変わらないからです。言い換えれば、iPhoneの魅力はやはりアプリであって、iPhoneというデバイス自体の機能や性能差というのは微々たるものだと感じるようになりました。]]></description>
			<content:encoded><![CDATA[<p><a title="View '_DSC0683.jpg' on Flickr.com" href="http://www.flickr.com/photos/21684662@N00/4767857924"><img src="http://farm5.static.flickr.com/4098/4767857924_dea2ef35d7.jpg" border="0" alt="_DSC0683.jpg" width="332" height="500" /></a></p>
<p>ブログに書くのが遅くなりましたが、iPhone 4が届きました(6月29日)。2年間つかったインターネットマシンことSoftBank 922SHからの機種変。なんだかんだ、届いてから1ヶ月ぐらいですね。</p>
<p><a title="View '_DSC0687.jpg' on Flickr.com" href="http://www.flickr.com/photos/21684662@N00/4767859646"><img src="http://farm5.static.flickr.com/4095/4767859646_bdc15f244b.jpg" border="0" alt="_DSC0687.jpg" width="500" height="332" /></a></p>
<p>Retina Displayは確かにおそろしくきれい。デバイスの持つ表現力もさることながら、iOS自体もこれに向けて周到に準備が整えられていたのが大きいと思います。高ppi対応は記憶が正しければ、Mac OS X Leopardあたりから本格的に入り始めたので3年の月日をかけて熟成させ、MacではなくiPhoneに最初に導入された訳です。WindowsもVistaからは高ppi対応が入っていて、2007年当時、これからはディスプレイが「○?○万画素！」と謳われて電気屋で売られる想像を当時していましたが予想は外れて、2010年ようやくスマートフォンがその戦いを始めようとしているようです。</p>
<p><a title="View '_DSC0731.jpg' on Flickr.com" href="http://www.flickr.com/photos/21684662@N00/4767874990"><img src="http://farm5.static.flickr.com/4119/4767874990_ebd6e98284.jpg" border="0" alt="_DSC0731.jpg" width="500" height="332" /></a></p>
<p>iPhone 4を約１ヶ月使っての感想です。iPhone 3GSも平行して使っていますが、使ってみるとiPhone 4は確かに優れていますがiPhone 3GSを置き換えるほどではないことに気づきました。なぜなら同じアプリがiTunesによって同期され、Mobile Meによってメールや連絡先などの情報は同期されているので使い勝手は何ら変わらないからです。言い換えれば、iPhoneの魅力はやはりアプリであって、iPhoneというデバイス自体の機能や性能差というのは微々たるものだと感じるようになりました。</p>
]]></content:encoded>
			<wfw:commentRss>http://watermint.org/2010/07/25/1414.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://watermint.org/2010/07/25/1414.html" />
	</item>
		<item>
		<title>今日のTimeMachineバックアップ, 急展開!</title>
		<link>http://watermint.org/2010/06/11/1406.html</link>
		<comments>http://watermint.org/2010/06/11/1406.html#comments</comments>
		<pubDate>Thu, 10 Jun 2010 15:06:13 +0000</pubDate>
		<dc:creator>Takayuki Okazaki</dc:creator>
				<category><![CDATA[テクノロジー]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[snow leopard]]></category>
		<category><![CDATA[timemachine]]></category>

		<guid isPermaLink="false">http://watermint.org/?p=1406</guid>
		<description><![CDATA[日曜日から実行しているTimeMachineによるバックアップがそろそろ終わりそうです。バックアップが10%ぐらい終了したあたりから、急に7MBytes/秒程度のスループットが出るようになりました。 何かのタイミングで、プログレスのダイアログが出なくなってメニューバー上にしか出なくなりました。あと残り約40GB。この分だと明日の朝には終わってそうです。]]></description>
			<content:encoded><![CDATA[<p><img src="http://watermint.org/wp-content/uploads/2010/06/timemachine-2010-06-09.png" border="0" alt="timemachine 2010.06.09" width="445" height="148" /></p>
<p>日曜日から実行しているTimeMachineによるバックアップがそろそろ終わりそうです。バックアップが10%ぐらい終了したあたりから、急に7MBytes/秒程度のスループットが出るようになりました。</p>
<p><img src="http://watermint.org/wp-content/uploads/2010/06/timemachine-2010.06.10.png" border="0" alt="timemachine 2010.06.10" width="500" height="137" /></p>
<p>何かのタイミングで、プログレスのダイアログが出なくなってメニューバー上にしか出なくなりました。あと残り約40GB。この分だと明日の朝には終わってそうです。</p>
]]></content:encoded>
			<wfw:commentRss>http://watermint.org/2010/06/11/1406.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://watermint.org/2010/06/11/1406.html" />
	</item>
		<item>
		<title>今日のTimeMachineバックアップ</title>
		<link>http://watermint.org/2010/06/08/1379.html</link>
		<comments>http://watermint.org/2010/06/08/1379.html#comments</comments>
		<pubDate>Mon, 07 Jun 2010 23:29:54 +0000</pubDate>
		<dc:creator>Takayuki Okazaki</dc:creator>
				<category><![CDATA[テクノロジー]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[snow leopard]]></category>
		<category><![CDATA[timemachine]]></category>

		<guid isPermaLink="false">http://watermint.org/?p=1379</guid>
		<description><![CDATA[まだ実行中です。うちのTimeMachineバックアップがおわるのがはやいか、iPhone 4が出るのが早いか。まだまだかかりそうです。いったいいつ終わるんだろう。]]></description>
			<content:encoded><![CDATA[<p><img src="http://watermint.org/wp-content/uploads/2010/06/timemachine.png" border="0" alt="timemachine" width="448" height="158" /></p>
<p>まだ実行中です。うちのTimeMachineバックアップがおわるのがはやいか、iPhone 4が出るのが早いか。まだまだかかりそうです。いったいいつ終わるんだろう。</p>
]]></content:encoded>
			<wfw:commentRss>http://watermint.org/2010/06/08/1379.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://watermint.org/2010/06/08/1379.html" />
	</item>
		<item>
		<title>TimeMachineの初期バックアップはいつ終わるだろうか</title>
		<link>http://watermint.org/2010/06/06/1376.html</link>
		<comments>http://watermint.org/2010/06/06/1376.html#comments</comments>
		<pubDate>Sun, 06 Jun 2010 12:21:42 +0000</pubDate>
		<dc:creator>Takayuki Okazaki</dc:creator>
				<category><![CDATA[ガジェット]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[raid]]></category>
		<category><![CDATA[snow leopard]]></category>
		<category><![CDATA[timemachine]]></category>

		<guid isPermaLink="false">http://watermint.org/?p=1376</guid>
		<description><![CDATA[CenturyのRAIDを設置してからようやく丸1日。いまSnow Leopardのバックアップ機能Time Machineを有効にして、バックアップを取っているところですが、さて・・いつ終わるでしょうか。 上図はほぼ同時刻に開始したコピー処理ですが、Time Machineのトランザクションはおおよそ1/15の速度です。もし処理時間が単純コピーの処理に比例するなら、あと25〜30日といったところでしょうか。こんな悠長なバックアップで間に合うのか・・・・。]]></description>
			<content:encoded><![CDATA[<p>CenturyのRAIDを設置してからようやく丸1日。いまSnow Leopardのバックアップ機能Time Machineを有効にして、バックアップを取っているところですが、さて・・いつ終わるでしょうか。</p>
<p><img src="http://watermint.org/wp-content/uploads/2010/06/08cdaaa9c65fb06c6ee256a9c422fe7b.png" border="0" alt="スクリーンショット（2010-06-06 21.15.32）.png" width="443" height="248" /></p>
<p>上図はほぼ同時刻に開始したコピー処理ですが、Time Machineのトランザクションはおおよそ1/15の速度です。もし処理時間が単純コピーの処理に比例するなら、あと25〜30日といったところでしょうか。こんな悠長なバックアップで間に合うのか・・・・。</p>
]]></content:encoded>
			<wfw:commentRss>http://watermint.org/2010/06/06/1376.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://watermint.org/2010/06/06/1376.html" />
	</item>
		<item>
		<title>iMac 27&#8243; (Core i7), メモリ使用状況その2</title>
		<link>http://watermint.org/2010/03/09/1253.html</link>
		<comments>http://watermint.org/2010/03/09/1253.html#comments</comments>
		<pubDate>Mon, 08 Mar 2010 16:43:32 +0000</pubDate>
		<dc:creator>Takayuki Okazaki</dc:creator>
				<category><![CDATA[ガジェット]]></category>
		<category><![CDATA[imac]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[mac os x]]></category>

		<guid isPermaLink="false">http://watermint.org/?p=1253</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/21684662@N00/4413119015" title="View 'Ubuntu, Solaris, and Windows on Parallels 5 on iMac 27" (Core i7)' on Flickr.com"><img border="0" width="500" alt="Ubuntu, Solaris, and Windows on Parallels 5 on iMac 27" (Core i7)" src="http://farm5.static.flickr.com/4072/4413119015_379dac4445.jpg" height="281"/></a><br />
ParallelsでたくさんVMを立ち上げてみました。Windows XP, Ubuntu 9.10, Solaris 10 Update 8, OpenSolarisです。それぞれのVMに1GBずつRAMを割り当て、Solarisには2CPU (Hyper ThreadingのHardware Thread 2つ、つまりCore i7の場合1コア)を割り当てて起動してみました。<br />
<a href="http://www.flickr.com/photos/21684662@N00/4413878528" title="View 'Activity Monitor, iMac 27"' on Flickr.com"><img border="0" width="500" alt="Activity Monitor, iMac 27"" src="http://farm5.static.flickr.com/4067/4413878528_5ec4d7c587.jpg" height="375"/></a><br />
さすがにこれだけ立ち上げると16GBでも心細くなってきますね。ま、これ以上やるならAmazon EC2でも借りることになるでしょう。手元に置いておくという意味ではやっぱり今のスペックで十分すぎます。あえて欲を言うなら、H.264エンコードのアクセラレータが欲しいぐらいでしょうか。</p>
]]></content:encoded>
			<wfw:commentRss>http://watermint.org/2010/03/09/1253.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://watermint.org/2010/03/09/1253.html" />
	</item>
		<item>
		<title>iMac 27&#8243;(Core i7), メモリ使用状況</title>
		<link>http://watermint.org/2010/03/07/1251.html</link>
		<comments>http://watermint.org/2010/03/07/1251.html#comments</comments>
		<pubDate>Sun, 07 Mar 2010 06:35:55 +0000</pubDate>
		<dc:creator>Takayuki Okazaki</dc:creator>
				<category><![CDATA[ガジェット]]></category>
		<category><![CDATA[imac]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[mac os x]]></category>

		<guid isPermaLink="false">http://watermint.org/?p=1251</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/21684662@N00/4412375295" title="View 'Activity Monitor on iMac 27"' on Flickr.com"><img border="0" width="500" alt="Activity Monitor on iMac 27"" src="http://farm5.static.flickr.com/4047/4412375295_5416028be8.jpg" height="375"/></a><br />
メモリを16GBにしてからというもの、メモリ不足なんてみじんも感じなくなりました。Apertureが64bitモードで動作するため多めに使うようですが、Parallelsで複数のVMを立ち上げたり、Photoshop、Illustrator、InDesignなどの重量級アプリを複数立ち上げてもまだまだ余裕が感じられます。いままでは、新しいパソコンを買ってしばらくすると、これ以上やるとダメだなと思える処理が何かしらありましたが、今の環境にはそれがありません。デジカメが1,000万画素を超え、SDカードが8GBを超えたあたりでこれ以上望むべく所がなくなったのと同様、そろそろパソコンの性能も個人レベルで使うには限界に達してきたということでしょうか。</p>
]]></content:encoded>
			<wfw:commentRss>http://watermint.org/2010/03/07/1251.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://watermint.org/2010/03/07/1251.html" />
	</item>
		<item>
		<title>Aperture 3とスライドショー書き出し</title>
		<link>http://watermint.org/2010/02/18/1235.html</link>
		<comments>http://watermint.org/2010/02/18/1235.html#comments</comments>
		<pubDate>Wed, 17 Feb 2010 15:49:07 +0000</pubDate>
		<dc:creator>Takayuki Okazaki</dc:creator>
				<category><![CDATA[テクノロジー]]></category>
		<category><![CDATA[aperture]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[mac]]></category>

		<guid isPermaLink="false">http://watermint.org/?p=1235</guid>
		<description><![CDATA[先週AppleからAperture 3がリリースされました。Apertureはたぶん、うちで一番良く使うソフト。迷わずアップグレード版を購入しました。1週間弱使ってみましたが、Aperture 2と比べても圧倒的に安定している上、動作も速くなっています。顔認識やスライドショーの追加、動画管理のサポートなどiPhoto &#8217;09からも数多くの機能が移植されています。スライドショーはH.264/MPEG4への書き出しも可能です。昨年の旅行をスライドショーにして書き出してDVDにすることに。ところが、写真＋動画で42分ほどの動画を書き出そうとしたところ、どうも失敗する。 OSStatus error -9459。これが出てどうしようもなくなります。すこし調べてみたところ、同じ症状で困っている人がいるようです。 Topic : Unable to export Slideshow in A3 試行錯誤の結果、42分のスライドショーを20分程度ずつに分けて、エクスポートの形式をH.264ではなく、MPEG4、720&#215;405@30fpsで出力ができました。DVD出力用に854&#215;480@30fpsも試しましたが同じエラーで失敗。どうやら、何らかのサイズに影響されてエラーが出ているようです。 Software Updateが出ていたので、なおるか期待しましたが、やはり同じエラーで失敗。仕方なく、720&#215;405@30fpsのムービーでDVDを作ることにしました。 あとはDVD Studio Proで仕上げ。]]></description>
			<content:encoded><![CDATA[<p>先週Appleから<a href="http://www.apple.com/jp/aperture/">Aperture 3</a>がリリースされました。Apertureはたぶん、うちで一番良く使うソフト。迷わずアップグレード版を購入しました。1週間弱使ってみましたが、Aperture 2と比べても圧倒的に安定している上、動作も速くなっています。顔認識やスライドショーの追加、動画管理のサポートなどiPhoto &#8217;09からも数多くの機能が移植されています。スライドショーはH.264/MPEG4への書き出しも可能です。昨年の旅行をスライドショーにして書き出してDVDにすることに。ところが、写真＋動画で42分ほどの動画を書き出そうとしたところ、どうも失敗する。<br />
<img src="http://watermint.org/wp-content/uploads/2010/02/6770733963dd1c5b4cf4caf1a9b2bf11.png" alt="スクリーンショット（2010-02-13 20.58.31）.png" border="0" width="418" height="153" /><br />
OSStatus error -9459。これが出てどうしようもなくなります。すこし調べてみたところ、同じ症状で困っている人がいるようです。</p>
<ul>
<li><a href="http://discussions.apple.com/thread.jspa?messageID=11085670">Topic : Unable to export Slideshow in A3</a></li>
</ul>
<p>試行錯誤の結果、42分のスライドショーを20分程度ずつに分けて、エクスポートの形式をH.264ではなく、MPEG4、720&#215;405@30fpsで出力ができました。DVD出力用に854&#215;480@30fpsも試しましたが同じエラーで失敗。どうやら、何らかのサイズに影響されてエラーが出ているようです。<br />
<a href="http://www.flickr.com/photos/okazaki/4365595066/" title="Aperture Software Update by Takayuki Okazaki, on Flickr"><img src="http://farm3.static.flickr.com/2768/4365595066_15ec319a69.jpg" width="406" height="500" alt="Aperture Software Update" /></a><br />
Software Updateが出ていたので、なおるか期待しましたが、やはり同じエラーで失敗。仕方なく、720&#215;405@30fpsのムービーでDVDを作ることにしました。<br />
<a href="http://www.flickr.com/photos/okazaki/4364851391/" title="DVD Studio Pro by Takayuki Okazaki, on Flickr"><img src="http://farm5.static.flickr.com/4061/4364851391_d74c4c879f.jpg" width="500" height="281" alt="DVD Studio Pro" /></a><br />
あとはDVD Studio Proで仕上げ。</p>
]]></content:encoded>
			<wfw:commentRss>http://watermint.org/2010/02/18/1235.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://watermint.org/2010/02/18/1235.html" />
	</item>
	</channel>
</rss>

