回にゃあと鳴く"こちらの記事が大変素晴らしかったので、実際の実行時システムコール呼び出しを追ってみました。平たく言うと、strace・システムコールの入門です。worldを書いてみます。0;}コンパイルして、パーミッションを100にします。hello.chelloバイナリに読み取り権限がないことを確認しました。worldおお!実行できました!!ちょっと感動。今まで実行ファイルはなんとなく755にしてたのですが、今後はもうちょっとパーミッションを厳しくしてもいいのかも。worldを作ってみます。world\n";パーミッションを100にして実行してみます。world実行できました!straceでバイナリファイル実行のシステムコールを追ってみるさて、実際のシステムコール呼び出しを見てみましょう。straceコマンドを使います。?冒頭でexexveシステムコールが./helloファイルを引数にして呼ばれていることがわかります。./helloバイナリファイルに対してopenやreadなどの呼び出しはされていません。バイナリファイルを実行するのに読み取り権限が必要ないことがこれで納得がいきます。straceでスクリプト実行のシステムコールを追ってみる次はstraceでhello.plを実行します。失敗させるために、パーミッションを100にしてからstraceします。hello.plを実行するには読み取り権限が必要なのだとわかります。考えてみれば、Perlインタープリタがhello.plを解釈するためにファイルオープンするのだがら、当然といえば当然ですね。