Sample Codeとして、Mac OS Xで稼動するデーモンのサンプル「MyFirstDaemon」が公開された。デーモンとはバックグランドで稼動するソフトウエアであり、Mac OS XではUNIX部分の機能で実現されるものだ。2つのサンプルコードがあるが、いずれもソースコードに詳しくコメントが書かれている。ソースコードはC言語だ。ポイントとしては、deamonというシステムコールを呼び出すことで、起動したプロセスをデーモン化する。そして、syslogといったコールにより、コンソールにメッセージが出される。実際にConsoleアプリケーションで、ソースコードの文字列と生成されたメッセージの対応を取ると良いだろう。1つのサンプルはデーモン自体がすぐに終了するが、別のデーモンは30秒ごとにInternet Explorerを起動あるいはアクティブにするといったものだ。デーモンの中で無限ループが組まれている。そして、そのデーモンを終了するには、Process Viewerでの一覧にある対応する項目をダブルクリックすることで行えるということが説明されている。また、systemというコールを利用すると、コマンドを与えることができる。このサンプルでは、openコマンドを使ってInternet Explorerを起動するということを行っている。また、一定時間なにもしないという場合には、sleepというコールを使っている。なお、Project Builderで生成した実行バイナリは、Terminalで起動できるものとはなるが、ダブルクリックで起動するものにはならない。単にデーモンを起動するだけならProject Builderで可能だ。プログラム自体は非常に簡単なものなので、少しのプログラミング経験者ならすぐに理解できる極めてシンプルなサンプルで分かりやすい。Mac OSでのプログラミングをずっとやってきた人だと、デーモンということにあまりなじみがないかもしれないが、このサンプルを取っ掛かりにしてはどうだろうか。 |