Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Unix1

540 views

Published on

http://tkot.hatenablog.com/
詳解UNIXプログラミングの学習用メモです。

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Unix1

  1. 1. 詳解UNIXプログラミング 1. 概論
  2. 2. シェルBourne シェル /bin/shCシェル /bin/cshKornシェル /bin/kshユーザの入力を読み取り、コマンドを実行するインタプリタ入力は通常端末からだが、ファイルから(シェルスクリプト)の場合もある
  3. 3. ファイル名ファイル名にはスラッシュ文字(/)とnull文字が使用できないスラッシュはパスを区切るnull文字はパスを終了させる新しくディレクトリを作ると .(ドット)と..(ドットドット)の2つのファイル名が自動的に作成される
  4. 4. 作業ディレクトリ各々のプロセスは作業ディレクトリを持つプロセスはchdirを用いて作業ディレクトリを変更できる
  5. 5. ファイル記述子プロセスが参照するファイルを識別するために、カーネルが使用する非負の整数カーネルが既存ファイルをオープンしたりするたび、ファイル記述子を返すすべてのシェルは新たにプログラムを実行するときに、3つの記述子「標準入力」「標準出力」「標準エラー出力」をオープンする
  6. 6. 標準入出力標準入出力関数はアンバッファド入出力関数に対するバッファリングインターフェースを提供アンバッファド入出力関数=バッファリングしない関数open, read, write, lseek, closeなどのことバッファリングしないと遅いのでそれを解消
  7. 7. プロセスプログラム=実行可能ファイルプロセス=プログラムの実行中のインスタンス各プロセスにはプロセスIDと呼ばれる非負の数値識別子が割り付けられる
  8. 8. ANSI CISOとANSIによって1989年、共同で標準化されたC言語多くの処理系がANSI Cの規格を順守<unistd.h>にはUNIXシステムコールに関する関数プロトタイプが収められる
  9. 9. システムデータ型_tで終わるデータ型(ssize_tなど)は基本的なシステムデータ型通常typedef宣言が必要だが、ANSI C側で定義されているint,longなどを使わずにシステム環境ごとの差異を吸収する
  10. 10. エラー処理UNIX関数でエラーが起こるとたいてい負の値が返され、追加情報がint errnoに設定されるエラーが発生しなかったときにerrnoがクリアされることはないので、errnoを参照するのはエラー発生時のみにすべき。
  11. 11. シグナル特定の状況が発生したことをプロセスに通知シグナル発生時に呼び出される関数を与え、デフォルトの処理を変更できる
  12. 12. システムコール各システムコールに対して標準Cライブラリ関数が提供されているユーザ側からはシステムコールとライブラリ関数を意識して区別する必要はさほどない

×