Index: asp_wo_cfg/trunk/MANIFEST
===================================================================
--- asp_wo_cfg/trunk/MANIFEST	(revision 53)
+++ asp_wo_cfg/trunk/MANIFEST	(revision 56)
@@ -64,4 +64,5 @@
 library/t_perror.c
 library/test_lib.c
+library/vasyslog.c
 
 sample/Makefile
@@ -79,5 +80,4 @@
 syssvc/syslog.c
 syssvc/syslog.h
-syssvc/vasyslog.c
 
 utils/applyrename
Index: asp_wo_cfg/trunk/arch/logtrace/trace_config.c
===================================================================
--- asp_wo_cfg/trunk/arch/logtrace/trace_config.c	(revision 53)
+++ asp_wo_cfg/trunk/arch/logtrace/trace_config.c	(revision 56)
@@ -1,6 +1,5 @@
 /*
- *  TOPPERS/ASP Kernel
- *      Toyohashi Open Platform for Embedded Real-Time Systems/
- *      Advanced Standard Profile Kernel
+ *  TOPPERS Software
+ *      Toyohashi Open Platform for Embedded Real-Time Systems
  * 
  *  Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
@@ -38,5 +37,5 @@
  *  の責任を負わない．
  * 
- *  @(#) $Id$
+ *  $Id$
  */
 
Index: asp_wo_cfg/trunk/arch/logtrace/trace_config.h
===================================================================
--- asp_wo_cfg/trunk/arch/logtrace/trace_config.h	(revision 53)
+++ asp_wo_cfg/trunk/arch/logtrace/trace_config.h	(revision 56)
@@ -1,10 +1,9 @@
 /*
- *  TOPPERS/ASP Kernel
- *      Toyohashi Open Platform for Embedded Real-Time Systems/
- *      Advanced Standard Profile Kernel
+ *  TOPPERS Software
+ *      Toyohashi Open Platform for Embedded Real-Time Systems
  * 
  *  Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
  *                              Toyohashi Univ. of Technology, JAPAN
- *  Copyright (C) 2004-2007 by Embedded and Real-Time Systems Laboratory
+ *  Copyright (C) 2004-2012 by Embedded and Real-Time Systems Laboratory
  *              Graduate School of Information Science, Nagoya Univ., JAPAN
  * 
@@ -38,5 +37,5 @@
  *  の責任を負わない．
  * 
- *  @(#) $Id$
+ *  $Id$
  */
 
@@ -45,6 +44,7 @@
  *
  *  このインクルードファイルは，target_config.hおよびtarget_syssvc.hの
- *  みからインクルードされる．他のファイルから直接インクルードしてはな
- *  らない．
+ *  みからインクルードされる．また，トレースログ機能の初期化や記録の開
+ *  始／停止，トレースログのダンプを行うプログラムからインクルードする
+ *  ことを想定している．
  */
 
Index: asp_wo_cfg/trunk/arch/logtrace/trace_dump.c
===================================================================
--- asp_wo_cfg/trunk/arch/logtrace/trace_dump.c	(revision 53)
+++ asp_wo_cfg/trunk/arch/logtrace/trace_dump.c	(revision 56)
@@ -1,6 +1,5 @@
 /*
- *  TOPPERS/ASP Kernel
- *      Toyohashi Open Platform for Embedded Real-Time Systems/
- *      Advanced Standard Profile Kernel
+ *  TOPPERS Software
+ *      Toyohashi Open Platform for Embedded Real-Time Systems
  * 
  *  Copyright (C) 2007-2011 by Embedded and Real-Time Systems Laboratory
@@ -36,5 +35,5 @@
  *  の責任を負わない．
  * 
- *  @(#) $Id$
+ *  $Id$
  */
 
Index: asp_wo_cfg/trunk/configure
===================================================================
--- asp_wo_cfg/trunk/configure	(revision 53)
+++ asp_wo_cfg/trunk/configure	(revision 56)
@@ -67,5 +67,5 @@
 #  -o <options>			共通コンパイルオプション（COPTSに追加）
 #  -O <options>			共通シンボル定義オプション（CDEFSに追加）
-#  -k <options>			共通リンカオプション（LDFLAGSに追加）
+#  -k <options>			共通リンカオプション（LDFLAGS等に追加）
 
 #  使用例(1)
Index: asp_wo_cfg/trunk/library/vasyslog.c
===================================================================
--- asp_wo_cfg/trunk/library/vasyslog.c	(revision 56)
+++ asp_wo_cfg/trunk/library/vasyslog.c	(revision 56)
@@ -0,0 +1,111 @@
+/*
+ *  TOPPERS Software
+ *      Toyohashi Open Platform for Embedded Real-Time Systems
+ * 
+ *  Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
+ *                              Toyohashi Univ. of Technology, JAPAN
+ *  Copyright (C) 2004-2011 by Embedded and Real-Time Systems Laboratory
+ *              Graduate School of Information Science, Nagoya Univ., JAPAN
+ * 
+ *  上記著作権者は，以下の(1)〜(4)の条件を満たす場合に限り，本ソフトウェ
+ *  ア（本ソフトウェアを改変したものを含む．以下同じ）を使用・複製・改
+ *  変・再配布（以下，利用と呼ぶ）することを無償で許諾する．
+ *  (1) 本ソフトウェアをソースコードの形で利用する場合には，上記の著作
+ *      権表示，この利用条件および下記の無保証規定が，そのままの形でソー
+ *      スコード中に含まれていること．
+ *  (2) 本ソフトウェアを，ライブラリ形式など，他のソフトウェア開発に使
+ *      用できる形で再配布する場合には，再配布に伴うドキュメント（利用
+ *      者マニュアルなど）に，上記の著作権表示，この利用条件および下記
+ *      の無保証規定を掲載すること．
+ *  (3) 本ソフトウェアを，機器に組み込むなど，他のソフトウェア開発に使
+ *      用できない形で再配布する場合には，次のいずれかの条件を満たすこ
+ *      と．
+ *    (a) 再配布に伴うドキュメント（利用者マニュアルなど）に，上記の著
+ *        作権表示，この利用条件および下記の無保証規定を掲載すること．
+ *    (b) 再配布の形態を，別に定める方法によって，TOPPERSプロジェクトに
+ *        報告すること．
+ *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
+ *      害からも，上記著作権者およびTOPPERSプロジェクトを免責すること．
+ *      また，本ソフトウェアのユーザまたはエンドユーザからのいかなる理
+ *      由に基づく請求からも，上記著作権者およびTOPPERSプロジェクトを
+ *      免責すること．
+ * 
+ *  本ソフトウェアは，無保証で提供されているものである．上記著作権者お
+ *  よびTOPPERSプロジェクトは，本ソフトウェアに関して，特定の使用目的
+ *  に対する適合性も含めて，いかなる保証も行わない．また，本ソフトウェ
+ *  アの利用により直接的または間接的に生じたいかなる損害に関しても，そ
+ *  の責任を負わない．
+ * 
+ *  @(#) $Id$
+ */
+
+/*
+ *		可変数引数のシステムログライブラリ
+ */
+
+#include <t_stddef.h>
+#include <t_syslog.h>
+#include <stdarg.h>
+
+#ifndef TOPPERS_OMIT_SYSLOG
+
+void
+syslog(uint_t prio, const char *format, ...)
+{
+	SYSLOG	logbuf;
+	va_list	ap;
+	uint_t	i;
+	char	c;
+	bool_t	lflag;
+
+	logbuf.logtype = LOG_TYPE_COMMENT;
+	logbuf.loginfo[0] = (intptr_t) format;
+	i = 1U;
+	va_start(ap, format);
+
+	while ((c = *format++) != '\0' && i < TMAX_LOGINFO) {
+		if (c != '%') {
+			continue;
+		}
+
+		lflag = false;
+		c = *format++;
+		while ('0' <= c && c <= '9') {
+			c = *format++;
+		}
+		if (c == 'l') {
+			lflag = true;
+			c = *format++;
+		}
+		switch (c) {
+		case 'd':
+			logbuf.loginfo[i++] = lflag ? (intptr_t) va_arg(ap, long_t)
+										: (intptr_t) va_arg(ap, int_t);
+			break;
+		case 'u':
+		case 'x':
+		case 'X':
+			logbuf.loginfo[i++] = lflag ? (intptr_t) va_arg(ap, ulong_t)
+										: (intptr_t) va_arg(ap, uint_t);
+			break;
+		case 'p':
+			logbuf.loginfo[i++] = (intptr_t) va_arg(ap, void *);
+			break;
+		case 'c':
+			logbuf.loginfo[i++] = (intptr_t) va_arg(ap, int);
+			break;
+		case 's':
+			logbuf.loginfo[i++] = (intptr_t) va_arg(ap, const char *);
+			break;
+		case '\0':
+			format--;
+			break;
+		default:
+			break;
+		}
+	}
+	va_end(ap);
+	(void) syslog_wri_log(prio, &logbuf);
+}
+
+#endif /* TOPPERS_OMIT_SYSLOG */
Index: asp_wo_cfg/trunk/sample/Makefile
===================================================================
--- asp_wo_cfg/trunk/sample/Makefile	(revision 53)
+++ asp_wo_cfg/trunk/sample/Makefile	(revision 56)
@@ -147,4 +147,5 @@
   APPL_COBJS = $(APPLNAME).o @(APPLOBJS)
 endif
+APPL_COBJS := $(APPL_COBJS) log_output.o vasyslog.o t_perror.o strerror.o
 APPL_CFLAGS =
 APPL_LIBS =
@@ -159,5 +160,4 @@
 SYSSVC_ASMOBJS := $(SYSSVC_ASMOBJS)
 SYSSVC_COBJS := $(SYSSVC_COBJS) banner.o syslog.o serial.o logtask.o \
-				log_output.o vasyslog.o t_perror.o strerror.o \
 				@(SYSSVCOBJS) $(CXXRTS)
 SYSSVC_CFLAGS := $(SYSSVC_CFLAGS)
Index: asp_wo_cfg/trunk/sample/sample1.c
===================================================================
--- asp_wo_cfg/trunk/sample/sample1.c	(revision 53)
+++ asp_wo_cfg/trunk/sample/sample1.c	(revision 56)
@@ -38,5 +38,5 @@
  *  の責任を負わない．
  * 
- *  @(#) $Id$
+ *  $Id$
  */
 
@@ -49,10 +49,14 @@
  *
  *  ユーザインタフェースを受け持つメインタスク（タスクID: MAIN_TASK，優
- *  先度: MAIN_PRIORITY）と，3つの並列実行されるタスク（タスクID:
+ *  先度: MAIN_PRIORITY）と，3つの並行実行されるタスク（タスクID:
  *  TASK1〜TASK3，初期優先度: MID_PRIORITY）で構成される．また，起動周
  *  期が2秒の周期ハンドラ（周期ハンドラID: CYCHDR1）を用いる．
  *
- *  並列実行されるタスクは，task_loop回空ループを実行する度に，タスクが
- *  実行中であることをあらわすメッセージを表示する．
+ *  並行実行されるタスクは，task_loop回空ループを実行する度に，タスクが
+ *  実行中であることをあらわすメッセージを表示する．空ループを実行する
+ *  のは，空ループなしでメッセージを出力すると，多量のメッセージが出力
+ *  され，プログラムの動作が確認しずらくなるためである．また，低速なシ
+ *  リアルポートを用いてメッセージを出力する場合に，すべてのメッセージ
+ *  が出力できるように，メッセージの量を制限するという理由もある．
  *
  *  周期ハンドラは，三つの優先度（HIGH_PRIORITY，MID_PRIORITY，
@@ -61,5 +65,5 @@
  *
  *  メインタスクは，シリアルI/Oポートからの文字入力を行い（文字入力を
- *  待っている間は，並列実行されるタスクが実行されている），入力された
+ *  待っている間は，並行実行されるタスクが実行されている），入力された
  *  文字に対応した処理を実行する．入力された文字と処理の関係は次の通り．
  *  Control-Cまたは'Q'が入力されると，プログラムを終了する．
@@ -452,9 +456,31 @@
  	 *  ループ回数の設定
 	 *
-	 *  TASK_LOOPがマクロ定義されている場合，測定せずに，TASK_LOOPに定
-	 *  義された値を，タスク内でのループ回数とする．
-	 *
-	 *  MEASURE_TWICEがマクロ定義されている場合，1回目の測定結果を捨て
-	 *  て，2回目の測定結果を使う．1回目の測定は長めの時間が出るため．
+	 *  並行実行されるタスク内での空ループの回数（task_loop）は，空ルー
+	 *  プの実行時間が約0.4秒になるように設定する．この設定のために，
+	 *  LOOP_REF回の空ループの実行時間を，その前後でget_timを呼ぶことで
+	 *  測定し，その測定結果から空ループの実行時間が0.4秒になるループ回
+	 *  数を求め，task_loopに設定する．
+	 *
+	 *  LOOP_REFは，デフォルトでは1,000,000に設定しているが，想定したよ
+	 *  り遅いプロセッサでは，サンプルプログラムの実行開始に時間がかか
+	 *  りすぎるという問題を生じる．逆に想定したより速いプロセッサでは，
+	 *  LOOP_REF回の空ループの実行時間が短くなり，task_loopに設定する値
+	 *  の誤差が大きくなるという問題がある．
+	 *
+	 *  そこで，そのようなターゲットでは，target_test.hで，LOOP_REFを適
+	 *  切な値に定義するのが望ましい．
+	 *
+	 *  また，task_loopの値を固定したい場合には，その値をTASK_LOOPにマ
+	 *  クロ定義する．TASK_LOOPがマクロ定義されている場合，上記の測定を
+	 *  行わずに，TASK_LOOPに定義された値を空ループの回数とする．
+	 *
+	 * ターゲットによっては，空ループの実行時間の1回目の測定で，本来よ
+	 * りも長めになるものがある．このようなターゲットでは，MEASURE_TWICE
+	 * をマクロ定義することで，1回目の測定結果を捨てて，2回目の測定結果
+	 * を使う．
+	 *
+	 *  タスク例外処理ルーチン内での空ループの回数（tex_loop）は，
+	 *  task_loopの4分の1の値（空ループの実行時間が0.1秒になるループ回
+	 *  数）に設定する．
 	 */
 #ifdef TASK_LOOP
@@ -476,5 +502,5 @@
 
 #endif /* TASK_LOOP */
-	tex_loop = task_loop / 5;
+	tex_loop = task_loop / 4;
 
 	/*
Index: asp_wo_cfg/trunk/sample/sample1.h
===================================================================
--- asp_wo_cfg/trunk/sample/sample1.h	(revision 53)
+++ asp_wo_cfg/trunk/sample/sample1.h	(revision 56)
@@ -38,5 +38,5 @@
  *  の責任を負わない．
  *
- *  @(#) $Id$
+ *  $Id$
  */
 
@@ -57,5 +57,5 @@
 								/* HIGH_PRIORITYより高くすること */
 
-#define HIGH_PRIORITY	9		/* 並列に実行されるタスクの優先度 */
+#define HIGH_PRIORITY	9		/* 並行実行されるタスクの優先度 */
 #define MID_PRIORITY	10
 #define LOW_PRIORITY	11
Index: asp_wo_cfg/trunk/syssvc/vasyslog.c
===================================================================
--- asp_wo_cfg/trunk/syssvc/vasyslog.c	(revision 53)
+++ 	(revision )
@@ -1,111 +1,0 @@
-/*
- *  TOPPERS Software
- *      Toyohashi Open Platform for Embedded Real-Time Systems
- * 
- *  Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
- *                              Toyohashi Univ. of Technology, JAPAN
- *  Copyright (C) 2004-2011 by Embedded and Real-Time Systems Laboratory
- *              Graduate School of Information Science, Nagoya Univ., JAPAN
- * 
- *  上記著作権者は，以下の(1)〜(4)の条件を満たす場合に限り，本ソフトウェ
- *  ア（本ソフトウェアを改変したものを含む．以下同じ）を使用・複製・改
- *  変・再配布（以下，利用と呼ぶ）することを無償で許諾する．
- *  (1) 本ソフトウェアをソースコードの形で利用する場合には，上記の著作
- *      権表示，この利用条件および下記の無保証規定が，そのままの形でソー
- *      スコード中に含まれていること．
- *  (2) 本ソフトウェアを，ライブラリ形式など，他のソフトウェア開発に使
- *      用できる形で再配布する場合には，再配布に伴うドキュメント（利用
- *      者マニュアルなど）に，上記の著作権表示，この利用条件および下記
- *      の無保証規定を掲載すること．
- *  (3) 本ソフトウェアを，機器に組み込むなど，他のソフトウェア開発に使
- *      用できない形で再配布する場合には，次のいずれかの条件を満たすこ
- *      と．
- *    (a) 再配布に伴うドキュメント（利用者マニュアルなど）に，上記の著
- *        作権表示，この利用条件および下記の無保証規定を掲載すること．
- *    (b) 再配布の形態を，別に定める方法によって，TOPPERSプロジェクトに
- *        報告すること．
- *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
- *      害からも，上記著作権者およびTOPPERSプロジェクトを免責すること．
- *      また，本ソフトウェアのユーザまたはエンドユーザからのいかなる理
- *      由に基づく請求からも，上記著作権者およびTOPPERSプロジェクトを
- *      免責すること．
- * 
- *  本ソフトウェアは，無保証で提供されているものである．上記著作権者お
- *  よびTOPPERSプロジェクトは，本ソフトウェアに関して，特定の使用目的
- *  に対する適合性も含めて，いかなる保証も行わない．また，本ソフトウェ
- *  アの利用により直接的または間接的に生じたいかなる損害に関しても，そ
- *  の責任を負わない．
- * 
- *  @(#) $Id$
- */
-
-/*
- *		可変数引数のシステムログライブラリ
- */
-
-#include <t_stddef.h>
-#include <t_syslog.h>
-#include <stdarg.h>
-
-#ifndef TOPPERS_OMIT_SYSLOG
-
-void
-syslog(uint_t prio, const char *format, ...)
-{
-	SYSLOG	logbuf;
-	va_list	ap;
-	uint_t	i;
-	char	c;
-	bool_t	lflag;
-
-	logbuf.logtype = LOG_TYPE_COMMENT;
-	logbuf.loginfo[0] = (intptr_t) format;
-	i = 1U;
-	va_start(ap, format);
-
-	while ((c = *format++) != '\0' && i < TMAX_LOGINFO) {
-		if (c != '%') {
-			continue;
-		}
-
-		lflag = false;
-		c = *format++;
-		while ('0' <= c && c <= '9') {
-			c = *format++;
-		}
-		if (c == 'l') {
-			lflag = true;
-			c = *format++;
-		}
-		switch (c) {
-		case 'd':
-			logbuf.loginfo[i++] = lflag ? (intptr_t) va_arg(ap, long_t)
-										: (intptr_t) va_arg(ap, int_t);
-			break;
-		case 'u':
-		case 'x':
-		case 'X':
-			logbuf.loginfo[i++] = lflag ? (intptr_t) va_arg(ap, ulong_t)
-										: (intptr_t) va_arg(ap, uint_t);
-			break;
-		case 'p':
-			logbuf.loginfo[i++] = (intptr_t) va_arg(ap, void *);
-			break;
-		case 'c':
-			logbuf.loginfo[i++] = (intptr_t) va_arg(ap, int);
-			break;
-		case 's':
-			logbuf.loginfo[i++] = (intptr_t) va_arg(ap, const char *);
-			break;
-		case '\0':
-			format--;
-			break;
-		default:
-			break;
-		}
-	}
-	va_end(ap);
-	(void) syslog_wri_log(prio, &logbuf);
-}
-
-#endif /* TOPPERS_OMIT_SYSLOG */
