ちょっと間が空いたけど、Mach-O入門の続き。今回はセグメント。 セグメント セグメントは、ダイナミックリンカがアプリケーションをロードしたときに仮想メモリにマップされる、Mach-Oファイル中のデータの範囲と、メモリ保護の属性を定義しています。セグメントはページアラインされていて、ゼロもしくは一つ以上のセクションを含みます。 セグメントは、ディスク上で占有している以上のサイズのメモリを、実行時に使用することができます。たとえば__PAGEZEROセグメントは仮想メモリ上では1ページを占有しますが、ディスク上でのサイズは0です。なお、0で埋められるセクションは、セグメントの最後尾に配置される必要があります。 サイズを小さくするため、中間オブジェクトファイルは1つのセグメントのみを含みます。このセグメントには名前がありません。それぞれのセクションには、そのセクションが配置されるセグメントの
![2007-01-21](https://cdn-ak-scissors.b.st-hatena.com/image/square/06a15c64ba0ceec233d86d71001ebb29a9dcbf5d/height=288;version=1;width=512/https%3A%2F%2Fcdn.blog.st-hatena.com%2Fimages%2Ftheme%2Fog-image-1500.png)