質問: 最近Linuxをいじっているのですがftokコマンドがまったくわかりません 第一引数がファイル名となっていますがファイル名を受け取ってなにを行うのでしょうか バカでもわかるように教えてください お願いします
回答: `ftok`関数は、そのマニュアルに記載の通り「System V IPC」と組み合わせて利用するものです。それ以外の用途で使うことは通常ありえません。ここでのSystem V IPCは、「"System V"システムもしくはその互換OS上におけるプロセス間通信(IPC; Inter Process Communication)を実現する仕組み/API」の意味です。 異なる2つのプロセス間での通信チャネルを確立するために、両プロセス間であらかじめ「どの通信チャネルを使うのか?」を識別する必要があります(この同意がないとOS上の全プロセスで通信が混線してしまいます)。このとき用いるIPC識別用キーが`key_t`型の戻り値です。この`key_t`値を直接管理するのではなく、実際には「ファイルパス名」と「ある数値(プロジェクト識別子)」のペアを両プロセス間で合意しておき、`ftok`関数を用いて`key_t`値を算出しています。