「Linuxプログラミングの基礎」の編集履歴(バックアップ)一覧はこちら

Linuxプログラミングの基礎」(2009/05/14 (木) 20:16:23) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

*ふつうのLinuxプログラミングのまとめ by TAC ---- 09/05/14 **システムコール ハードウェアを操作できるのはカーネルだけ。 そのカーネルに対して仕事をお願いするときにシステムコールを呼ぶ。 open,read,write,etc... プログラム中でシステムコールを呼び出す場合、 n = read(fd,buf,sizeof buf); というように、関数呼び出しとして利用していたものが 実はシステムコールだったのだ。 **ライブラリ ライブラリにはライブラリ関数とマクロが収められている。 これまで関数として利用していたものは、システムコールの呼び出し又はライブラリ関数の呼び出しだったのだ。 標準Cライブラリ(libc)なら /lib に入ってる。 ライブラリの中身は関数とマクロで、それらからシステムコールを呼び出していることもある。たとえば、printfは内部でwriteってシステムコールを呼び出している。 **API APIとはシステムコールの呼び出しではない。 libcのAPIとは関数やマクロのこと。 カーネルのAPIはシステムコールのこと。 よくいう"Win32 API"ってのは、"WindowsOSのWin32サブシステムのAPI"のこと。 **ファイル、プロセス、ストリーム Linuxではハードウェアもファイルとして扱われる。 /dev とかに置かれてる。 プロセスはプログラムが実行されることによって作られる。 ps ax で走ってるプロセスを確認できる。 ストリームは byte stream の意。バイナリデータの流れ。 プロセス-プロセス間とかプロセス-ファイル間のバイナリデータの流れがストリーム。 ---- #comment
*ふつうのLinuxプログラミングのまとめ ---- 09/05/14 **システムコール ハードウェアを操作できるのはカーネルだけ。 そのカーネルに対して仕事をお願いするときにシステムコールを呼ぶ。 open,read,write,etc... プログラム中でシステムコールを呼び出す場合、 n = read(fd,buf,sizeof buf); というように、関数呼び出しとして利用していたものが 実はシステムコールだったのだ。 **ライブラリ ライブラリにはライブラリ関数とマクロが収められている。 これまで関数として利用していたものは、システムコールの呼び出し又はライブラリ関数の呼び出しだったのだ。 標準Cライブラリ(libc)なら /lib に入ってる。 ライブラリの中身は関数とマクロで、それらからシステムコールを呼び出していることもある。たとえば、printfは内部でwriteってシステムコールを呼び出している。 **API APIとはシステムコールの呼び出しではない。 libcのAPIとは関数やマクロのこと。 カーネルのAPIはシステムコールのこと。 よくいう"Win32 API"ってのは、"WindowsOSのWin32サブシステムのAPI"のこと。 **ファイル、プロセス、ストリーム Linuxではハードウェアもファイルとして扱われる。 /dev とかに置かれてる。 プロセスはプログラムが実行されることによって作られる。 ps ax で走ってるプロセスを確認できる。 ストリームは byte stream の意。バイナリデータの流れ。 プロセス-プロセス間とかプロセス-ファイル間のバイナリデータの流れがストリーム。 ---- #comment

表示オプション

横に並べて表示:
変化行の前後のみ表示: