diff options
Diffstat (limited to 'share/doc/ja_JP.EUC/handbook/memoryuse.sgml')
-rw-r--r-- | share/doc/ja_JP.EUC/handbook/memoryuse.sgml | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/share/doc/ja_JP.EUC/handbook/memoryuse.sgml b/share/doc/ja_JP.EUC/handbook/memoryuse.sgml deleted file mode 100644 index 16fa5d4..0000000 --- a/share/doc/ja_JP.EUC/handbook/memoryuse.sgml +++ /dev/null @@ -1,61 +0,0 @@ -<!-- $Id: memoryuse.sgml,v 1.4 1997/02/22 13:01:27 peter Exp $ --> -<!-- The FreeBSD Japanese Documentation Project --> -<!-- Original revision: 1.9 --> - -<sect><heading>PC におけるメモリの利用<label id="memoryuse"></heading> - -<p><em>原作: &a.joerg;.<newline> - 16 Apr 1995.</em> -<p><em>訳: &a.tomo;. <newline> - 29 Oct 1996.</em> - -<em>FreeBSDがi386プラットフォーム上でどのようにメモリを使うかに -ついての説明です. </em> - -ブート部分は<tt>0:0x7c00</tt>にロードされ, すぐに自分自身を -<tt>0x7c0:0</tt>に移します. (これは手品ではなく, 単なる<tt>%cs</tt> -セレクタのための調節であり, <tt>ljmp</tt>により行われます. ) - -それから最初の15セクタを<tt>0x10000</tt>(biosbootのMakefileのなかの -BOOTSEG部分)にロードし, 作業領域のスタックを<tt>0x1fff0</tt>以下に -セットします. このあと, boot2 に飛びます. つまり, boot1 自身と -(ダミーの) DOS パーティションテーブルを飛び越えて, %csセレクタを -調節します---この時点ではまだ16ビットモードです. - -boot2はブートファイルを要求し, <tt>a.out</tt>ヘッダを調べます. -<tt>0x00ffffff</tt>によってファイルエントリポイントを -(通常は<tt>0xf0100000</tt>に)マスクし, ロードします. -このため, 通常のロードポイントは1MB(<tt>0x00100000</tt>)になります. -ロードしている間, リアルモードでBIOSを使うため, ブートコードは, -リアルモードとプロテクトモードの間を行ったり来たりします -(訳注: これは, BIOSがリアルモード用に書かれていて, -ロードすべき領域がリアルモードではアクセスできない1MBより上位の -アドレスであることから, ブートコードがリアルモードと -プロテクトモードを切り替えながら動作するためです). - -ブートコード自身はプロテクトモードで<tt>%cs</tt>と<tt>%ds/%es</tt>用に -セグメントセレクタ<tt>0x18</tt>と<tt>0x20</tt>を使い, -リアルモードに戻るのに<tt>0x28</tt>を使います. -最終的にカーネルはアドレス空間全体をカバーできるようなダミーの -ディスクリプタを参照して<tt>%cs</tt> <tt>0x08</tt>と -<tt>%ds/%es/%ss</tt> <tt>0x10</tt>でスタートします. - -カーネルはそのロードポイントで起動されます. -別の(高位)アドレスにリンクされるので, -ページテーブルやページディレクトリなどが適切に設定され, -ページングが有効になり, カーネルがリンクされたアドレスで -動作するようになるまでは, カーネルはロードアドレスからの -相対アドレス (PIC: position independent code) を用いて -実行されなければなりません. - -<em>寄贈: &a.davidg;.<newline> - 16 Apr 1995.</em> - -カーネルの BSS セグメントの直後の物理ページ (実メモリ) に -proc0 (訳注: プロセス番号 0, swapper) のページディレクトリや -ページテーブル, Uページが配置されます. -仮想記憶機構が初期化された少しあと, -<tt>0x1000-0x9ffff</tt>の実メモリとカーネル -(text + data + bss + 上記の proc0 に関わるもの + その他) -の後ろの実メモリは, 通常の仮想記憶ページの形で利用可能となり, -グローバルな空きページリストに追加されます. |