[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 &amp;&amp; ./build.sh tools</code>
-        </listitem>
-        <listitem>
 	  "<code>cd /usr/src/sys/arch/&lt;ARCH&gt;/conf</code>", 
   	  &lt;ARCH&gt; には 'i386', 'sparc', 'mac68k' のような
 	  あなたのマシンアーキテクチャーが入ります。
@@ -147,17 +165,9 @@
 	  他のカーネル設定のオプションの情報のために、 <emphasis role="bold">&man.options.4;</emphasis>
 	  も読んでください。
         </listitem>
-        <listitem>
-          NetBSD 1.6 のアップデート以外では、
-          以下のコマンドを使ってカーネルを再構築します。
-          <code>cd /usr/src &amp;&amp; ./build.sh
-  	  kernel=MYCONF</code>.
-          このコマンドは、カーネルの構築前に、必要に応じて toolchain を更新します
-          次の 4 個のステップは省いてください。
         </listitem>
         <listitem>
-          <emphasis>NetBSD 1.6 の</emphasis>アップデートの場合は
-	  <quote><code>config &lt;MYCONF&gt;</code></quote> を実行します。こうすると、
+          <emphasis> <quote><code>config &lt;MYCONF&gt;</code></quote> を実行します。こうすると、
   	  &lt;MYCONF&gt; に対するカーネル構築用ディレクトリーが作成されます。
         </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&lt;addr&gt;</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 &amp;&amp; ./build.sh tools</code>
-        </listitem>
-        <listitem>
 	  "<code>cd /usr/src/sys/arch/&lt;ARCH&gt;/conf</code>", 
   	  where &lt;ARCH&gt; is your machine's architecture such as 'i386',
 	  'sparc', 'mac68k'.
@@ -143,16 +161,7 @@
 	  &lt;XXX&gt; and &lt;YYY&gt;. 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 &amp;&amp; ./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 &lt;MYCONF&gt;</code></quote>, which will generate the
   	  kernel build directory for &lt;MYCONF&gt;. 
         </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&lt;addr&gt;</code>" 
+	  tell gdb to use it "<code>proc 0x&lt;addr&gt;</code>" 
         </listitem>
       </orderedlist>
     </sect3>