1.18 -> 1.19	introduction/chapter.sgml
	1.20 -> 1.21	linuxemu/chapter.sgml

Submitted by:	Hiroki Sato <hrs@geocities.co.jp>
Reviewed by:	kuriyama
This commit is contained in:
Jun Kuriyama 1999-10-07 02:46:03 +00:00
parent f8da7adcf2
commit 56e29c3d10
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=5813
2 changed files with 142 additions and 129 deletions
ja_JP.eucJP/books/handbook
introduction
linuxemu

View file

@ -2,8 +2,8 @@
The FreeBSD Documentation Project
The FreeBSD Japanese Documentation Project
Original revision: 1.18
$FreeBSD: doc/ja_JP.eucJP/books/handbook/introduction/chapter.sgml,v 1.5 1999/09/11 11:04:04 kuriyama Exp $
Original revision: 1.19
$FreeBSD: doc/ja_JP.eucJP/books/handbook/introduction/chapter.sgml,v 1.6 1999/09/15 21:55:48 kuriyama Exp $
-->
<chapter id="introduction">
@ -29,38 +29,45 @@
<para><emphasis>訳: &a.jp.tomo;.</emphasis></para>
<para>FreeBSDはIntel社の (SXやDXも含めた) 386や486, Pentium
プロセッサ や DEC 社の Alpha といった CPU
アーキテクチャに基づくコンピュータシステム用としては
<para>FreeBSD は, Intel 社の 386, Pentium ファミリに加え,
AMD 社や Cyrix 社の Intel 互換 CPU,
DEC 社の Alpha といった各 CPU アーキテクチャに
基づくコンピュータシステム用として,
現在求めうる最高水準のオペレーティングシステムです.
AMD社やCyrix社のIntel互換CPUもサポートされています. FreeBSDは,
以前は高価なコンピュータでしか利用できなかった多くの
高度な機能を提供します.
FreeBSDには次のような機能があります:</para>
FreeBSD は, 従来高価なコンピュータでしか利用できなかった
多くの先進的な機能を提供します.
FreeBSD には次のような機能があります:</para>
<itemizedlist>
<listitem>
<para>アプリケーションとユーザとの間で円滑かつ公平に
コンピュータを 共有することを保証する,
優先度を動的に調節する機能を備えた
<para>
優先度を動的に調節する機能を備えることで
アプリケーションとユーザとの間で円滑かつ公平な
コンピュータ資源共有を実現し,
特に高い負荷にも耐えることができる堅牢さを備えた
<emphasis>プリエンプティブマルチタスキング</emphasis>.</para>
</listitem>
<listitem>
<para>多くの人々が1つのFreeBSD
システムをさまざまな目的で同時に 使うことを可能にする
<emphasis>マルチユーザ</emphasis> アクセス. また,
プリンタやテープドライブのようなシステムの周辺機器も
すべてのユーザ間で適切に共有されます.</para>
<para>多くの人々が 1 つの FreeBSD
システムをさまざまな目的で同時に使うことを可能にする
<emphasis>マルチユーザ</emphasis> アクセス.
これは例えば, プリンタやテープデバイスといった
システムの周辺機器が, そのシステムを利用する全てのユーザだけでなく
ネットワーク経由においても自然な形で共有され,
さらに重要なシステム資源の使い過ぎを防ぐために
個々の資源に対する制限がユーザ単位, グループ単位で
設定できる, というようなことを意味しています.
</para>
</listitem>
<listitem>
<para>SLIPやPPP, NFS, NISのサポートを含んだ完全な
<emphasis>TCP/IPネットワーキング</emphasis>. これによって,
FreeBSDマシンが商用サーバと同じように相互に運用でき, NFS
(リモートファイルアクセス)
や電子メールサービスのような極めて 重要な機能を提供します.
また, WWWやftp, ルーティング, ファイアウォール
<para>SLIP や PPP, NFS, DHCP, NIS といった業界標準規格の
サポートを含んだ <emphasis>堅固な TCP/IP ネットワーキング</emphasis>.
これによって, FreeBSD マシンが商用サーバと同じように相互に運用でき,
NFS(リモートファイルアクセス)や, 電子メールサービスのような
極めて重要な機能を提供します.
また, WWW や ftp, ルーティング, ファイアウォール
(セキュリティ) サービスを用いてインターネットと
接続できます.</para>
</listitem>
@ -74,7 +81,8 @@
<listitem>
<para>FreeBSD は <emphasis>32ビット</emphasis>
のオペレーティングシステムであり,
のオペレーティングシステム(Alpha 版は
<emphasis>64 ビット</emphasis>)であり,
最初からそのようにこつこつと設計されました.</para>
</listitem>
@ -86,14 +94,14 @@
</listitem>
<listitem>
<para>SCOやBSDI, NetBSD, Linux, 386BSD用に作られた多くの
プログラムにおける<emphasis>バイナリ互換性</emphasis>.</para>
<para>Linux や SCO, SVR4, BSDI, NetBSD 用に作られた多くの
プログラムとの<emphasis>バイナリ互換性</emphasis>.</para>
</listitem>
<listitem>
<para>何百もの <emphasis>すぐに実行可能な</emphasis>
アプリケーションが FreeBSDの <emphasis>ports</emphasis> や
<emphasis>packages</emphasis> コレクション で利用可能です.
<para>何千もの<emphasis>すぐに実行可能な</emphasis>
アプリケーションが FreeBSD の <emphasis>ports</emphasis> や
<emphasis>packages</emphasis> コレクションで利用可能です.
ここに用意されているものは
ネットを探し回る必要がありません</para>
</listitem>
@ -118,10 +126,9 @@
</listitem>
<listitem>
<para><emphasis>共有ライブラリ</emphasis>
(MS-WindowsのDLLと同等のUnixの 機能) によって,
ディスクスペースとメモリを効果的に使用する
ことができます.</para>
<para>複数の CPU を搭載したマシンにおける
<emphasis>SMP 機能</emphasis>のサポート(Intel 版のみ).
</para>
</listitem>
<listitem>
@ -191,11 +198,11 @@
</listitem>
<listitem>
<para>World Wide Web サーバ</para>
<para>World Wide Web サーバ(標準, もしくは安全な [SSL])</para>
</listitem>
<listitem>
<para>Gopher サーバ</para>
<para>ファイアウォールと NAT("IP マスカレード")ゲートウェイ</para>
</listitem>
<listitem>
@ -203,11 +210,7 @@
</listitem>
<listitem>
<para>USENET ニュース</para>
</listitem>
<listitem>
<para>電子掲示板システム</para>
<para>USENET ニュースおよび電子掲示板システム</para>
</listitem>
<listitem>
@ -215,8 +218,12 @@
</listitem>
</itemizedlist>
<para>まずは高価ではない386クラスのPCで始めておいて,
仕事の成長に合わせてアップグレードできます.</para>
<para>FreeBSD を利用すれば, 小規模で安価な 386 クラスの
PC でも気軽に導入することができますし,
事業の成長に合わせてアップグレードした
4 つの Xeon プロセッサと RAID ストレージデバイスを
備えたシステムでも, 全くそのまま使うことができるのです.
</para>
</listitem>
<listitem>
@ -400,25 +407,29 @@
開発分流 (RELENG_2_1_0) は現在,
保守のみをおこなう状態になっており, 今後は, セ
キュリティの改善や他の何か重要なバグフィックスのみが
おこなわれるでしょ う.</para>
おこなわれるでしょう.</para>
<para>FreeBSD 2.2 の開発は, RELENG_2_2 開発分流として, 開発の本流
(&ldquo;-current&rdquo;) から 1996年 11月に分岐し, そして 1997年
4月に最初の公開 (2.2.1) がおこなわれました. 2.2
開発分流からはさらに 97 年の夏と秋に公 開がおこなわれ, 98 年 7
月の終わりには最新版の 2.2.7 が登場しました. FreeBSD 3.0
の初めての公式なリリースが 1998 年 10 月上旬に登場し, 2.2
開発分流からの最後のリリースである 2.2.8 が 1998 年 11
月に登場しまし た.</para>
<para>FreeBSD 2.2 の開発は, RELENG_2_2 開発ブランチとして, 開発の本流
(&ldquo;-current&rdquo;) から 1996 年 11 月に分岐し, そして 1997
4 月に最初のリリース(2.2.1)が行なわれました. 2.2
開発ブランチからは, さらに 97 年の夏と秋にリリースが行なわれ,
98 年 11 月に 2.2 開発ブランチの最終リリース(2.2.8)が
行なわれています. 1998 年 10 月に FreeBSD 3.0 最初の公式リリースが
行なわれ, 2.2 開発ブランチは開発の終了を迎えることになりました.
</para>
<para>1999 年 1 月 20 日には, FreeBSD
の開発ツリーが再び分岐しました. 4.0-current と 3.x-stable
の分流です. 3.x-stable からは 3.1 が 1999 年 2 月 15
日にリリースされ, 3.2 は 1999 年 5 月 15日にリリースされました.</para>
<para>1999 年 1 月 20 日には, FreeBSD の開発ツリーが
4.0-current と 3.x-stable の各ブランチに再び分岐しました.
3.x-stable からは 3.1 が 1999 年 2 月 15 日に,
3.2 が 1999 年 5 月 15 日にリリースされました.
このブランチにおける現時点で最も新しいリリースは 3.3 で,
1999 年 9 月 16 日にリリースされています.
</para>
<para>長期的な開発プロジェクトは 4.0-current 開発分流で続けられ,
スナップショットの CDROM (もちろん, ネットワーク上でも)
で公開されます.</para>
<para>長期的な開発プロジェクトは 4.0-current 開発ブランチで続けられ,
4.0 のスナップショットリリースが収録された CDROM
(もちろん, ネットワーク上でも)は, 開発の進行状況に応じて
継続的に公開されています.</para>
</sect1>
<sect1 id="goals">
@ -446,19 +457,18 @@
最も基本的な目的であ ると, 私は信じています.</para>
<para>私たちのソースツリーに含まれるソースのうち,
GNU一般公有使用許諾(GPL)ま
たはGNUライブラリ一般公有使用許諾(LGPL)
に従っているものについては, 多 少制限が科されています. ただし,
GNU 一般公有使用許諾(GPL)または GNU ライブラリ一般公有使用許諾(LGPL)
に従っているものについては, 多少制限が課せられています. ただし,
ソースコードへのアクセスの保証という,
一般の制限とはいわば逆の制限(訳注1)です.
ただしGPLソフトウェアを商用で
利用する場合, さらに複雑になるのは避けられません.
そのため, それらのソ フトウェアを, より制限の少ない BSD
著作権に従ったソフトウェアで置き換える事が合理的であるときには,
我々は置き換える努力を行っています.</para>
GPL ソフトウェアの商利用には, そのライセンスにある
複雑な側面が影響してくることがあります.
ですから私たちは, そうすることが合理的であると判断されたときには,
より制限の少ない, BSD 著作権表示を採用しているソフトウェアを
選択するようにしています.</para>
<para>(訳注1) GPL では, 「ソースコードを実際に受け取るか,
あるいは, 希望しさ えすればそれを入手することが可能であること」
あるいは, 希望しさえすればそれを入手することが可能であること」
を求めています.</para>
</sect1>
@ -626,18 +636,19 @@
386BSD, そして Free Software Foundation の
ソフトウェアなどにより拡張されています.</para>
<para>94年末の FreeBSD 2.0 のリリースからみると, FreeBSD は性能,
<para>94 年末の FreeBSD 2.0 のリリースからみると, FreeBSD は性能,
機能, 安定性の面で劇的に改善されました.
もっとも大きな変化は仮想メモリシステムに おける改良で,
統合化された VM/file バッファキャッシュを用いる
ことで性能を向上させながらも FreeBSD
のメモリの使用量を減らすことが できたことです. おかげで, 最低
5MB メモリという制約上でも動作する ようになりました.
その他の拡張としては NIS のクライアントとサーバの 完全サポート,
トランザクション TCP のサポート, ダイヤルオンデマンド PPP, 改良
SCSI サブシステム, ISDN のサポート, ATM のサポート, FDDI や Fast Ethernet
(100Mbps) などのサポート, Adaptec 2940 (WIDE と narrow)
のサポートの改良と数百件のバグの修正, などがあります.</para>
のメモリの使用量を減らすことができたことです. そのおかげで, 最低
5MB メモリという制約上でも動作するようになりました.
その他の拡張としては, NIS のクライアントとサーバの完全なサポート,
トランザクション TCP のサポート, ダイヤルオンデマンド PPP,
統合された DHCP のサポート, 改良された SCSI サブシステム,
ISDN, ATM, FDDI, Fast Ethernet や Gigabit Ethernet(1000Mbit)
アダプタへの対応, 最新の Adaptec コントローラ対応の改良や,
数百件におよぶバグの修正などがあります.</para>
<para>私たちはたくさんのユーザからのコメントや
提案をまじめに受け取り, 私たちが正しいと考え,

View file

@ -2,12 +2,12 @@
The FreeBSD Documentation Project
The FreeBSD Japanese Documentation Project
Original revision: 1.20
$FreeBSD: doc/ja_JP.eucJP/books/handbook/linuxemu/chapter.sgml,v 1.5 1999/09/24 15:12:37 kuriyama Exp $
Original revision: 1.21
$FreeBSD: doc/ja_JP.eucJP/books/handbook/linuxemu/chapter.sgml,v 1.6 1999/09/29 15:40:34 kuriyama Exp $
-->
<chapter id="linuxemu">
<title>Linux エミュレーション</title>
<title>Linux モード</title>
<para><emphasis>原作: &a.handy; and &a.rich;</emphasis></para>
@ -15,42 +15,43 @@
24 September 1996.</emphasis></para>
<sect1>
<title>Linux エミュレータのインストール</title>
<title>Linux モードのインストール</title>
<para>FreeBSD での Linux エミュレーションは, 大部分の Linux
<para>FreeBSD における Linux バイナリ互換機能は, 大部分の Linux
バイナリ(a.out および ELF
フォーマット)を実行できる状態になっています. 2.1-STABLE ブラン
チでのエミュレーションでは, Linux DOOM や Mathematica
チでの Linux バイナリ互換機能は, Linux DOOM や Mathematica
が実行できます. &rel.current;-RELEASE でのエミュレーションは,
さらに強化されており, Linux 用 の Quake, Abuse, IDL, netrek
など, 多数のソフトウェアが実行できます.</para>
さらに強化されており, Linux 用 の Oracle8,
WordPerfect, StarOffice, Acrobat, Quake, Abuse, IDL,
netrek for Linux など, 多数のソフトウェアが実行できます.</para>
<para>Linux
オペレーティングシステムには, 特有の機能がいくつかあり, FreeBSD
でサポートされていないものもあります. Linux の
<filename>/proc</filename> ファイルシステム を使ったバイナリは,
<filename>/proc</filename> ファイルシステムに過度に依存したバイナリは,
FreeBSD では実行できません (FreeBSD で使用可能な
<filename>/proc</filename>
ファイルシステムとは仕様が異なっているためです).
また仮想 8086モードを有効にするなど, i386
に特有なシステムコールを使っている場合も実行できません.</para>
<para>Linux エミュレーションの設定方法は, 使用している FreeBSD
のバージョンによって多少異なっています.</para>
<para>Linux モードの設定方法は, 使用している FreeBSD
のバージョンによっていくらか異なっています.</para>
<sect2>
<title>2.1-STABLE への Linux エミュレーションのインストール</title>
<title>2.1-STABLE への Linux モードのインストール</title>
<para>2.1-STABLE の <filename>GENERIC</filename> カーネルは,
Linux との互換性を保つように構築されていません.
カーネルの再構築が必要です. 再構築をおこなうには, 2つの方
法があります. 1つは,
エミュレータをカーネル自体にスタティックリンクする方法.
バイナリ互換機能をカーネル自体にスタティックリンクする方法.
もう1つは, 動的に Linux
ローダブルカーネルモジュール(LKM)をロー
ドするようにする方法です.</para>
<para>エミュレータを有効にするには,
<para>Linux バイナリ互換機能を有効にするには,
以下をコンフィグレーションファイル
(<filename>/sys/i386/conf/LINT</filename> など)
に追加します.</para>
@ -72,15 +73,16 @@ options SYSVSHM</programlisting>
<programlisting>
options "COMPAT_43"</programlisting>
<para>LKM
を使用せずエミュレータをカーネルにスタティックリンクしたい場合は, 以下の行を追加します.</para>
<para>LKM(Loadable Kernel Module)
を使用せず, バイナリ互換機能をカーネルに
スタティックリンクしたい場合は, 以下の行を追加します.</para>
<programlisting>
options LINUX</programlisting>
<para><link linkend="kernelconfig"> FreeBSD
カーネルのコンフィグレーション </link> の節の記述に
したがって config と,
カーネルのコンフィグレーション </link> の節の記述に
したがって <command>config</command> と,
新しいカーネルのインストールをおこなってください.</para>
<para>LKM を使用する場合は,
@ -93,7 +95,8 @@ options LINUX</programlisting>
<screen>&prompt.root; <userinput>cd /usr/src/lkm/linux</userinput>
&prompt.root; <userinput>make all install</userinput></screen>
<para>カーネルと LKM のインストールが終了したら, root で `linux'
<para>カーネルと LKM のインストールが終了したら, root で
<command>linux</command>
コマンドを 実行することで LKM をロードできます.</para>
<screen>&prompt.root; <userinput>linux</userinput>
@ -127,12 +130,12 @@ linux</programlisting>
</sect2>
<sect2>
<title>2.2.2-RELEASE およびそれ以降の 2.2 系列への
Linux エミュレーションのインストール</title>
<title>2.2.2-RELEASE およびそれ以降の 2.2.x 系列への
Linux モードのインストール</title>
<para><literal>options LINUX</literal> や <literal>options
COMPAT_LINUX</literal> を指定する必要はなくなりました.
Linux エミュレーション
Linux バイナリ互換機能
LKM(&ldquo;Loadable Kernel Module&rdquo;)
を使用しているため, インストールの際に再起動する必要はありません.
ただし, スタートアップファイルで以下のように指定する必要があります.</para>
@ -176,7 +179,7 @@ EXEC 0 4 f09e6000 001c f09ec010 1 linux_mod</screen>
options LINUX</programlisting>
をカーネルの設定ファイルに指定して,
エミュレータをスタティックリンク
Linux バイナリ互換機能をカーネルにスタティックリンク
してください.
<link linkend="kernelconfig">
FreeBSDカーネルのコンフィグレーション</link>
@ -187,11 +190,11 @@ options LINUX</programlisting>
<sect2>
<title>3.0-RELEASE 以降への
Linux エミュレーションのインストール</title>
Linux バイナリ互換機能のインストール</title>
<para><literal>options LINUX</literal> や <literal>options
COMPAT_LINUX</literal> を指定する必要はなくなりました.
Linux エミュレーション
Linux バイナリ互換機能
KLD オブジェクト(&ldquo;Kernel LoaDable object&rdquo;)
を使用しているため, インストールの際に再起動する必要はありません.
ただし, スタートアップファイルで以下のように指定する必要があります.</para>
@ -210,7 +213,7 @@ linux_enable=YES</programlisting>
の以下の指定を有効にします.</para>
<programlisting>
# Start the Linux binary emulation if requested.
# Start the Linux binary compatibility if requested.
if [ "X${linux_enable}" = X"YES" ]; then echo -n '
linux'; linux &gt; /dev/null 2&gt;&amp;1
fi</programlisting>
@ -232,7 +235,7 @@ Id Refs Address Size Name
options LINUX</programlisting>
をカーネルの設定ファイルに指定して,
エミュレータをスタティックリンク
Linux バイナリ互換機能をカーネルにスタティックリンク
してください.
<link linkend="kernelconfig">
FreeBSDカーネルのコンフィグレーション</link>
@ -258,12 +261,12 @@ options LINUX</programlisting>
&prompt.root; <userinput>make all install</userinput></screen>
<para>これで, Linux
エミュレータが動作するようになったはずです. 伝説(とメー
ルのアーカイブ <!-- smiley --> :-) によれば, Linux
エミュレーションは, ZMAGIC ライブラリとリンクされている
Linux バイナリに対して, 最もうまく動作するようで す.
バイナリ互換機能が動作するようになったはずです.
聞いたところ(とメールのアーカイブ <!-- smiley --> :-) によれば,
Linux バイナリ互換機能は ZMAGIC ライブラリとリンクされている
Linux バイナリに対して, 最もうまく動作するようです.
Slackware V2.0 などに使われている QMAGIC ライブラリだと,
エミュレータが胸やけするかもしれません.
Linux バイナリ互換機能が胸やけするかもしれません.
マイナーバージョンの不一致などを
報告するプログラムもありますが,
普通は 問題にならないようです.</para>
@ -441,11 +444,10 @@ libc.so.4 (DLL Jump 4.5pl26) =&gt; /lib/libc.so.4.6.29</screen>
てインストールするのもよいアイディアでしょう.</para>
<para><filename>/compat/linux/etc/ld.so.conf</filename>
ファイルを作成し, Linux ラインタイムリンカ
がシェアードライブラリを検索する
ディレクトリを記述してください. このファ
イルはプレインテキストファイルで,
それぞれの行にディレクトリ名を含みま す.
ファイルを作成し, Linux ラインタイムリンカが
シェアードライブラリを検索するディレクトリを記述してください.
このファイルはプレインテキストファイルで,
それぞれの行にディレクトリ名を含みます.
<filename>/lib</filename> と <filename>/usr/lib</filename>
は標準ですから, 以下のようなディレクトリが追加できま
す.</para>
@ -455,9 +457,9 @@ libc.so.4 (DLL Jump 4.5pl26) =&gt; /lib/libc.so.4.6.29</screen>
/usr/local/lib</programlisting>
<para>Linux バイナリが, <filename>/lib/libc.so</filename>
というライブラリを開いた場合, エミュレー タは内部で,
というライブラリを開いた場合, Linux ABI サポートは内部で,
ファイル名を <filename>/compat/linux/lib/libc.so</filename>
にマップします. エ ミュレータがライブラリを検索するために,
にマップします. Linux ABI ローダがライブラリを検索できるよう,
すべての Linux のライブラリ
(<filename>/compat/linux/lib/libc.so</filename>,
<filename>/compat/linux/usr/X11/lib/libX11.so</filename>
@ -665,9 +667,9 @@ multi on</programlisting>
の小さなテキストファイルが含まれおり,
それぞれのパッケージの内容が記述されています.
必要なファイルを探している場合は, まず contents 内のテキ
ストファイルを取得し, そのファイルの中から grep
ストファイルを取得し, そのファイルの中から <command>grep</command>
を使用して検索するのが, 最も速い方法でしょう.
以下に必要となるであろうファイルを, grep を使用
以下に必要となるであろうファイルを, <command>grep</command> を使用
して検索した例を示します.</para>
<informaltable frame="none">
@ -696,7 +698,7 @@ multi on</programlisting>
というパッケージが必要なこと がわかります.
それぞれのcontentsファイルの中で, <literal>PACKAGE
LOCATION</literal> と書いてある行を探してください.
その行に, パッケージが含まれている&ldquo;ディ スク&rdquo;,
その行に, パッケージが含まれている&ldquo;ディスク&rdquo;,
今回の場合はサブディレクトリ名が書かれています. たとえば,
以下の ようになります.</para>
@ -805,7 +807,7 @@ multi on</programlisting>
から取得する必要があります.</para>
<para>Linux 互換ランタイムライブラリがインストールされており,
mathematica の展 開が終了したら, Install ディレクトリで
Mathematica の展開が終了したら, Install ディレクトリで
<command>mathinfo</command> プログラムを使用す ることで
&ldquo;machine ID&rdquo; を得ることができます.</para>
@ -825,7 +827,7 @@ richc.isdn.bcm.tmc.edu 9845-03452-90255</screen>
&ldquo;machine ID&rdquo; を知らせ て登録すると,
いくつかの番号のグループからなるパスワードが送り返されて
きます. パスワードを, マシン名, ライセンス番号とともに,
mathpass ファイルに追加します.</para>
<filename>mathpass</filename> ファイルに追加します.</para>
<para>追加は, 以下のようにおこないます.</para>
@ -871,7 +873,7 @@ richc.isdn.bcm.tmc.edu 9845-03452-90255</screen>
<row>
<entry>/usr/local/Mathematica/lib/X11</entry>
<entry>for the XKeysymb file</entry>
<entry>for the <filename>XKeysymb</filename> file</entry>
</row>
</tbody>
</tgroup>
@ -959,16 +961,16 @@ richc.isdn.bcm.tmc.edu 9845-03452-90255</screen>
<sect2>
<title>謝辞</title>
<para>&a.sos;と&a.peter;に深く感謝します.
Linuxエミュレーションが現在の形にあるのは, 彼らのおかげです.
<para>&a.sos; と &a.peter; に深く感謝します.
Linux モードが現在の形にあるのは, 彼らのおかげです.
そして, 彼ら二人にハッパをかけて, 犬のように働かせた Michael
Smithに. 今やLinuxエミュレーションは, linuxよりうま
くlinuxバイナリを実行できます! <!-- smiley -->:-)</para>
Smithに. 今や Linux モードは, Linuxよりうまく
Linux バイナリを実行できます! <!-- smiley -->:-)</para>
</sect2>
</sect1>
<sect1>
<title>エミュレーションはどのような原理で行なっているのですか?</title>
<title>Linux モードはどのような原理で動作しているのですか?</title>
<para>このセクションは, ほとんどが <email>chat@FreeBSD.org</email>
メーリングリストに投稿された
@ -1015,7 +1017,7 @@ richc.isdn.bcm.tmc.edu 9845-03452-90255</screen>
</para>
<para>
Linux バイナリエミュレーションを行なうため, FreeBSD は
Linux ABI をサポートするため, FreeBSD は
ELF バイナリを示すマジックナンバを確認します.
(ただし, この段階で FreeBSD, Solaris, Linux, そしてその他にも存在する
ELF イメージ形式を使っている OS を区別することはできません).
@ -1067,7 +1069,7 @@ richc.isdn.bcm.tmc.edu 9845-03452-90255</screen>
</para>
<para>
さらに Linux エミュレーションは, 状況に応じて
さらに Linux モードは, 状況に応じて
<emphasis>ファイルシステム本来のルートマウントポイントを置き換えて</emphasis>
ファイルの参照を行ないます.
これは, <literal>union</literal> オプションを指定して
@ -1079,7 +1081,7 @@ richc.isdn.bcm.tmc.edu 9845-03452-90255</screen>
<filename>/<replaceable>original-path</replaceable></filename>
を調べます.
こうすることで, 他のバイナリを要求するバイナリの実行を可能にしています
(したがって, Linux toolchain はエミュレーション環境下で完全に動作するわけです).
(したがって, Linux 用プログラムツールは Linux ABI サポート環境下で完全に動作するわけです).
またこれは, もし対応する Linux バイナリが存在しない場合に
Linux バイナリが FreeBSD バイナリをロードしたり, 実行したりすることが可能であること,
その Linux バイナリに自分自身が Linux 上で実行されていないことを
@ -1129,7 +1131,7 @@ richc.isdn.bcm.tmc.edu 9845-03452-90255</screen>
</para>
<para>
では, どうして &ldquo;Linux エミュレーション&rdquo; と呼ぶのでしょうか?
では, これが良く &ldquo;Linux エミュレーション&rdquo; と呼ばれるのは何故でしょうか?
それはもちろん FreeBSD の売りにするため <!-- smiley -->8-) でもあるのですが,
実際には, 次のような理由によります.
この機能が初めて実装された頃, 動作原理を説明する以外に