FreeBSD初心者運用日記 このページをアンテナに追加

 | 

2008-05-27

[][]アーカイブファイルに含まれてる関数を調べる 07:56 アーカイブファイルに含まれてる関数を調べる - FreeBSD初心者運用日記 を含むブックマーク はてなブックマーク - アーカイブファイルに含まれてる関数を調べる - FreeBSD初心者運用日記 アーカイブファイルに含まれてる関数を調べる - FreeBSD初心者運用日記 のブックマークコメント

$ nm -g /usr/lib/libc.a | grep -v "U" | grep -v "D" | grep -v "C" | grep -v "W" | grep -v "w" | grep -v "R" | grep -v "B" | grep -v "V"       

[]オブジェクトファイルについて 08:15 オブジェクトファイルについて - FreeBSD初心者運用日記 を含むブックマーク はてなブックマーク - オブジェクトファイルについて - FreeBSD初心者運用日記 オブジェクトファイルについて - FreeBSD初心者運用日記 のブックマークコメント

  • オブジェクトファイルは以下の3つから構成される
    • テキストセグメント(プログラムの命令部分)
    • データセグメント(初期化されたデータ(外部変数、スタティック変数)が配置)
    • BSSセグメント(初期化されていないデータ(外部変数、スタティック変数)が配置)

ちなみに、自動変数はスタックセグメントやレジスタというところに格納される。

[][]システムコールについて 08:15 システムコールについて - FreeBSD初心者運用日記 を含むブックマーク はてなブックマーク - システムコールについて - FreeBSD初心者運用日記 システムコールについて - FreeBSD初心者運用日記 のブックマークコメント

  • printf関数は、いきつくところwriteシステムコール関数を利用しているにすぎない。
  • システムコールは、ユーザプログラムからカーネルの機能を利用するためのインタフェースにすぎず、アセンブリで書かれた数行のプログラム。
  • それぞれのシステムコールには番号が割り当てられている。
  • システムコールはエラーになると返却値に-1を返し、外部変数errnoにエラー番号が格納される。
  • 使う側からすると、システムコールもライブラリ関数も違いはない。
  • システムコール関数内ではトラップ命令が実行される(何の?)

[]カーネルについて 08:15 カーネルについて - FreeBSD初心者運用日記 を含むブックマーク はてなブックマーク - カーネルについて - FreeBSD初心者運用日記 カーネルについて - FreeBSD初心者運用日記 のブックマークコメント

  • カーネルはメモリに常駐したプログラムで、役割は以下の二つ。
    • ハードウェアの抽象化
    • システム資源の管理
 |