【勉強メモ】exec関数の命名
execveとか何の略かよくわからんかったので備忘メモ。。
execシステムコールは
そのシステムコールを呼びだしたプロセス上で、別なプログラムの実行を開始するためのシステムコール
つまり、「今走っているプログラムをそこで終了させ他のプログラムを実行する」
ということ。
execl,execv,の差は引数の渡し方の違い
最後 にpがつくとパス通ったディレクトリに該当するプログラムがあるか検索して実行
execのあとの
vはベクトル
lはリスト
eは環境変数
を表している。
■参考:exec() を使う典型的なプログラム
shell である。
Shell はコマンドとして入力されたプログラムを実行するのに、fork() によって新しいプロセスを作り、そのプロセス上で exec() を実行、そのプログラムを実行する。
↓
fork() -------
| |
親プロセス 子プロセス
| |
wait() exec() でプログラムを実行
: |
: |
: <----------
↓
参考:
リンク