そのため、Cプログラムのコンテキストでシステムコールを取得しますが、私の教科書では、ターミナル(Mac OSX)でのシステムコールの作成については実際には取り上げていません。 「コマンド」のようにコマンドラインでこれらを実行できますか、それともまったく異なる概念ですか?申し訳ありませんが、これは非常に初歩的なものであり、答えが見つかりません。
いいえ、ターミナルで実行されているシェルは、システムコールを呼び出して結果を処理するために必要なメモリへの低レベルのアクセスを提供しないため、システムコールを直接実行することはできません。シェルの仕事は、プログラム全体を簡単に実行できるようにすることです。これらのプログラムのいくつかは、システムコールやその他のオペレーティングシステムリソースへのより便利なインターフェイスを提供します。たとえば、mv
コマンドは、rename
システムコールへの快適なインターフェイスを提供します。 ln
コマンドは、link
およびsymlink
システムコールへのインターフェイスを提供します。組み込みのシェルコマンドcd
を使用すると、chdir
に簡単にアクセスできます。ただし、ほとんどの場合、システムコールは基本的なサービスを提供するため、シェルがそれらに直接アクセスするのに役立ちません。