[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Documentation/kernel/index.xml: 1.16 -> 1.18
以下のページの更新をしました。ツッコミをお願いします。
Documentation/kernel/index.xml: 1.16 -> 1.18
> revision 1.18
> date: 2007/01/13 15:11:14; author: pavel; state: Exp; lines: +12 -5
> Adapt the gdb instruction to the new LWP world.
> Do not adapt them to gdb6 though, getting backtraces of arbitrary LWPs
> is broken.
> ----------------------------
> revision 1.17
> date: 2007/01/13 15:08:19; author: pavel; state: Exp; lines: +27 -18
> Describe only a native kernel compile process using config and
> make. Point to the documentation about tracking -current and
> crosscompiling for information about build.sh.
>
> Inconsistence of this document noted by Marius ROMAN on netbsd-users.
月曜日までに異議がなければ、 commit します。
以下、訳と原文それぞれの新旧の差分です。
--- Documentation/kernel/index.xml.orig 2007-01-14 20:40:00.000000000 +0900
+++ Documentation/kernel/index.xml 2007-01-14 20:40:00.000000000 +0900
@@ -5,10 +5,10 @@
<webpage id="ja-Documentation-kernel-index">
<config param="desc" value="NetBSD ドキュメンテーション: カーネル"/>
- <config param="cvstag" value="$NetBSD: index.xml,v 1.16 2006/12/10 20:51:36 hubertf Exp $"/>
+ <config param="cvstag" value="$NetBSD: index.xml,v 1.18 2007/01/13 15:11:14 pavel Exp $"/>
<!-- Based on english version: -->
-<!-- NetBSD: index.xml,v 1.16 2006/12/10 20:51:36 hubertf Exp -->
- <config param="rcsdate" value="$Date: 2006/12/10 20:51:36 $"/>
+<!-- NetBSD: index.xml,v 1.18 2007/01/13 15:11:14 pavel Exp -->
+ <config param="rcsdate" value="$Date: 2007/01/13 15:11:14 $"/>
<head>
<!-- Copyright (c) 1994-2005
@@ -105,6 +105,30 @@
<anchor id="building_a_kernel" />
<!-- Don't change the above targets - SAs reference them. -->
+ 以下に示す手順は、インストールされている NetBSD
+ と同じバージョンのカーネルをコンパイルする場合専用のものです。
+ 同じメジャーバージョンの、より新しいカーネルに更新する場合も、
+ 以下の手順を使ってうまく更新できるはずです。しかし、-current
+ のカーネルに更新する場合や、より新しいメジャーリリースに更新したい場合には、
+ はじめに、新しいツールチェインをコンパイルする必要があります。
+ -current の追跡に関するドキュメンテーション内にある、<code>build.sh</code>
+ スクリプトを使ってツールチェインと新しいカーネルを構築する方法の説明に従ってください。
+ <itemizedlist>
+ <listitem>
+ <ulink url="../current/">既存システムのアップデート</ulink>
+ (必要なのは、<code>build.sh tools</code> と <code>build.sh
+ kernel</code> の段階だけです)
+ </listitem>
+ <listitem>
+ <ulink url="../../guide/en/chap-build.html">
+ build.sh を使った NetBSD のクロスコンパイル</ulink>
+ </listitem>
+ <listitem>
+ <ulink url="../../guide/en/chap-kernel.html#chap-kernel-build.sh">
+ build.sh を使ったカーネルの構築</ulink>
+ </listitem>
+ </itemizedlist>
+ カーネルを構築する手順は、以下の通りです。
<orderedlist>
<listitem>
あなたのベースシステムに付属していたコンパイラーセット(<code>comp.tgz</code>)を
@@ -116,12 +140,6 @@
ダウンロードできますか</ulink>参照)。
</listitem>
<listitem>
- -current を使っている場合、新しい tool-chain のコンパイルが
- 必要かもしれません:
- 完全な -current のソースをダウンロードしたら:
- <code>cd /usr/src && ./build.sh tools</code>
- </listitem>
- <listitem>
"<code>cd /usr/src/sys/arch/<ARCH>/conf</code>",
<ARCH> には 'i386', 'sparc', 'mac68k' のような
あなたのマシンアーキテクチャーが入ります。
@@ -147,17 +165,9 @@
他のカーネル設定のオプションの情報のために、 <emphasis role="bold">&man.options.4;</emphasis>
も読んでください。
</listitem>
- <listitem>
- NetBSD 1.6 のアップデート以外では、
- 以下のコマンドを使ってカーネルを再構築します。
- <code>cd /usr/src && ./build.sh
- kernel=MYCONF</code>.
- このコマンドは、カーネルの構築前に、必要に応じて toolchain を更新します
- 次の 4 個のステップは省いてください。
</listitem>
<listitem>
- <emphasis>NetBSD 1.6 の</emphasis>アップデートの場合は
- <quote><code>config <MYCONF></code></quote> を実行します。こうすると、
+ <emphasis> <quote><code>config <MYCONF></code></quote> を実行します。こうすると、
<MYCONF> に対するカーネル構築用ディレクトリーが作成されます。
</listitem>
<listitem>
@@ -494,8 +504,16 @@
<orderedlist>
<listitem>
- プロセスの proc addr を調べる: <code>ps -ax -O paddr -M
- netbsd.x.core</code>
+ LWP の lwp 構造体のアドレスを調べる
+ : <code>ps -ax -O laddr -M
+ netbsd.x.core</code>
+ <para>
+ (LWP すなわち軽量プロセスは、一つのプロセス、
+ またはカーネル内で実行されているプロセスの一つのスレッドに対応します。
+ スレッド化されていないプログラムにおいては、一つの LWP
+ が正確に一つのプロセスに対応しますが、スレッド化されたプログラムでは、
+ より多くのプロセスに対応することができます。)
+ </para>
</listitem>
<listitem>
このアドレスを使うよう、gdb に "<code>proc 0x<addr></code>" と指示する
Index: Documentation/kernel/index.xml
===================================================================
RCS file: /cvsroot/htdocs/Documentation/kernel/index.xml,v
retrieving revision 1.16
retrieving revision 1.18
diff -u -r1.16 -r1.18
--- Documentation/kernel/index.xml 10 Dec 2006 20:51:36 -0000 1.16
+++ Documentation/kernel/index.xml 13 Jan 2007 15:11:14 -0000 1.18
@@ -5,8 +5,8 @@
<webpage id="Documentation-kernel-index">
<config param="desc" value="NetBSD Documentation: Kernel"/>
- <config param="cvstag" value="$NetBSD: index.xml,v 1.16 2006/12/10 20:51:36 hubertf Exp $"/>
- <config param="rcsdate" value="$Date: 2006/12/10 20:51:36 $"/>
+ <config param="cvstag" value="$NetBSD: index.xml,v 1.18 2007/01/13 15:11:14 pavel Exp $"/>
+ <config param="rcsdate" value="$Date: 2007/01/13 15:11:14 $"/>
<head>
<!-- Copyright (c) 1994-2005
@@ -103,6 +103,30 @@
<anchor id="building_a_kernel" />
<!-- Don't change the above targets - SAs reference them. -->
+ The procedure below applies only if you are compiling the kernel
+ of the same version of NetBSD that you have already installed. Updating
+ to a newer kernel of the same major version should be also fine
+ using this procedure, but if you update a -current kernel, or
+ want to update to a newer major release, compiling a new
+ toolchain first is required. Follow the description of building
+ the toolchain and new kernel with the <code>build.sh</code>
+ script in the documentation about tracking -current:
+ <itemizedlist>
+ <listitem>
+ <ulink url="../current/">Updating an existing system</ulink>
+ (only the <code>build.sh tools</code> and <code>build.sh
+ kernel</code> steps are needed)
+ </listitem>
+ <listitem>
+ <ulink url="../../guide/en/chap-build.html">
+ Crosscompiling NetBSD with build.sh</ulink>
+ </listitem>
+ <listitem>
+ <ulink url="../../guide/en/chap-kernel.html#chap-kernel-build.sh">
+ Building the kernel using build.sh</ulink>
+ </listitem>
+ </itemizedlist>
+ The steps to build a kernel are:
<orderedlist>
<listitem>
Ensure you have installed the Compilers (<code>comp.tgz</code>) set
@@ -114,12 +138,6 @@
source</ulink>).
</listitem>
<listitem>
- If you are following -current, you may need to compile a new
- tool-chain:
- Assuming you have downloaded the complete -current source:
- <code>cd /usr/src && ./build.sh tools</code>
- </listitem>
- <listitem>
"<code>cd /usr/src/sys/arch/<ARCH>/conf</code>",
where <ARCH> is your machine's architecture such as 'i386',
'sparc', 'mac68k'.
@@ -143,16 +161,7 @@
<XXX> and <YYY>. You should also read <emphasis role="bold">&man.options.4;</emphasis>
for information on the different kernel configuration options.
</listitem>
- <listitem>
- Unless you are updating NetBSD 1.6, build the new kernel via the
- command
- <code>cd /usr/src && ./build.sh
- kernel=MYCONF</code>.
- This command will update the toolchain, if necessary, before
- building the kernel. Skip the next four steps.
- </listitem>
- <listitem>
- If you <emphasis>are</emphasis> updating NetBSD 1.6, run
+ <listitem> run
<quote><code>config <MYCONF></code></quote>, which will generate the
kernel build directory for <MYCONF>.
</listitem>
@@ -500,11 +509,18 @@
<orderedlist>
<listitem>
- get the proc addr of the process: <code>ps -ax -O paddr -M
- netbsd.x.core</code>
+ get the address of the lwp structure of the LWP
+ : <code>ps -ax -O laddr -M
+ netbsd.x.core</code>
+ <para>
+ (LWP or lightweight process correspond to a process, or a
+ thread of a process which runs in the kernel. For
+ nonthreaded programs, there is exactly one LWP corresponding
+ to the process, for threaded there can be more of them.)
+ </para>
</listitem>
<listitem>
- tell gdb to use id "<code>proc 0x<addr></code>"
+ tell gdb to use it "<code>proc 0x<addr></code>"
</listitem>
</orderedlist>
</sect3>