単に実行したディレクトリのファイル名を表示するだけのプログラムを asm で書いてみる。 普段全くディレクトリエントリの構造を意識しないけど、システムコールを直接呼ぼうと思うと意識せざるを得ない。 使うシステムコールは以下の通り open getdents close write (表示用) exit libc レベルだと opendir/closedir というふうにディレクトリ対象の open 操作は分かれているので、システムコールもそうなのかと思っていたけど、そうではなく普通の open/close で統一されている。ディレクトリ内容を読むには readdir というシステムコールもあるが、getdents が現代版らしいので、最初からこちらを使う。 getdents open/close はともかく、getdents の挙動を理解するのに苦労した。 struct linux_dir