Ignore:
Timestamp:
Jul 23, 2017, 2:29:40 PM (7 years ago)
Author:
coas-nagasima
Message:

SVNプロパティを設定

File:
1 edited

Legend:

Unmodified
Added
Removed
  • rubycfg_asp/trunk/asp_dcre/doc/version.txt

    • Property svn:mime-type changed from text/plain to text/plane; charset=UTF-8
    r313 r315  
    11
    2                 TOPPERS/ASPカーネル
    3                 変更履歴
    4 
    5                 対応バージョン: Release 1.9.3
    6                 最終更新: 2017å¹´4月29日
    7 
    8 ã“のドキュメントは,TOPPERS/ASPカーネルのRelease 1.0.0以降の変更履歴を,
    9 æ–°ã—い方から順に記述したものである.
     2                TOPPERS/ASPカーネル
     3                変更履歴
     4
     5                対応バージョン: Release 1.9.3
     6                最終更新: 2017年4月29日
     7
     8このドキュメントは,TOPPERS/ASPカーネルのRelease 1.0.0以降の変更履歴を,
     9新しい方から順に記述したものである.
    1010
    1111----------------------------------------------------------------------
     
    1717             Graduate School of Information Science, Nagoya Univ., JAPAN
    1818 
    19  ä¸Šè¨˜è‘—作権è€
    20 ã¯ï¼Œä»¥ä¸‹ã®(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    21  ã‚¢ï¼ˆæœ¬ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã‚’改変したものを含む.以下同じ)を使用・複製・改
    22  å¤‰ãƒ»å†é
    23 å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
    24  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
    25      æ¨©è¡¨ç¤ºï¼Œã“の利用条件および下記の無保証規定が,そのままの形でソー
    26      ã‚¹ã‚³ãƒ¼ãƒ‰ä¸­ã«å«ã¾ã‚Œã¦ã„ること.
    27  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
    28      ç”¨ã§ãã‚‹å½¢ã§å†é
    29 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é
    30 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
    31      è€
    32 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—作権表示,この利用条件および下記
    33      ã®ç„¡ä¿è¨¼è¦å®šã‚’掲載すること.
    34  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
    35      ç”¨ã§ããªã„形で再é
    36 å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
    37      ã¨ï¼Ž
    38    (a) 再é
    39 å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€
    40 ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«ãªã©ï¼‰ã«ï¼Œä¸Šè¨˜ã®è‘—
    41        ä½œæ¨©è¡¨ç¤ºï¼Œã“の利用条件および下記の無保証規定を掲載すること.
    42    (b) 再é
    43 å¸ƒã®å½¢æ
    44 ‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
    45        å ±å‘Šã™ã‚‹ã“と.
    46  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
    47      å®³ã‹ã‚‰ã‚‚,上記著作権è€
    48 ãŠã‚ˆã³TOPPERSプロジェクトをå
    49 è²¬ã™ã‚‹ã“と.
    50      ã¾ãŸï¼Œæœ¬ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã®ãƒ¦ãƒ¼ã‚¶ã¾ãŸã¯ã‚¨ãƒ³ãƒ‰ãƒ¦ãƒ¼ã‚¶ã‹ã‚‰ã®ã„かなる理
    51      ç”±ã«åŸºã¥ãè«‹æ±‚からも,上記著作権è€
    52 ãŠã‚ˆã³TOPPERSプロジェクトを
    53      å
    54 è²¬ã™ã‚‹ã“と.
     19 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
     20 ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     21 変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     22 (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     23     権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     24     スコード中に含まれていること.
     25 (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     26     用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     27     者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     28     の無保証規定を掲載すること.
     29 (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     30     用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     31     と.
     32   (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     33       作権表示,この利用条件および下記の無保証規定を掲載すること.
     34   (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     35       報告すること.
     36 (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     37     害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     38     また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     39     由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     40     免責すること.
    5541 
    56  æœ¬ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã¯ï¼Œç„¡ä¿è¨¼ã§æä¾›ã•ã‚Œã¦ã„るものである.上記著作権è€
    57 ãŠ
    58  ã‚ˆã³TOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
    59  ã«å¯¾ã™ã‚‹é©åˆæ€§ã‚‚含めて,いかなる保証も行わない.また,本ソフトウェ
    60  ã‚¢ã®åˆ©ç”¨ã«ã‚ˆã‚Šç›´æŽ¥çš„または間接的に生じたいかなる損害に関しても,そ
    61  ã®è²¬ä»»ã‚’負わない.
     42 本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     43 よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     44 に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     45 アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     46 の責任を負わない.
    6247 
    6348 $Id$
    6449----------------------------------------------------------------------
    6550
    66                 TOPPERS/ASPカーネル
    67                 Release 1.9.2 から 1.9.3 への変更点
    68 
    69 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    70 
    71 ãƒ»å‹•çš„生成機能拡張パッケージのバグフィックス
    72         - acre_tskで,優å
    73 ˆåº¦ã®é«˜ã„タスクを生成・起動してもディスパッチが起
    74           こらない不å
    75 ·åˆã‚’修正.
    76         - fsnd_dtqとifsnd_dtqで,エラーコードにE_OKを上書きしている不å
    77 ·åˆ
    78           を修正.
    79         - acre_tskで,p_tinib->stkszに格納する値(stksz)を丸めた値とする
    80           ように修正.
    81 
    82 ãƒ»ãã®ä»–の修正
    83         - syslog_ref_logの出口のログ出力マクロ(LOG_SYSLOG_REF_LOG_LEAVE)
    84           のパラメータにエラーコードを追加.
    85         - extension/dcre/kernel/kernel.tfで,ISRに渡す拡張æƒ
    86 å ±ã‚’intptr_t型
    87           へのキャストするように修正.
    88         - sample/Makefile中のコンパイラに対する-Tオプションを,-Wl,-Tオプ
    89           ションに変更.
    90         - utils/genoffset.tfに,SIL_ENDIAN_BIT/LITTLEの誤定義の検出処理を
    91           追加.
    92         - コンフィギュレータのエラーメッセージの修正.
    93         - テンプレートファイルの記述スタイルの修正.
    94         - 拡張パッケージも,kernel.tf中で,スタック領域の確保にALLOC_STACK
    95           を使うように修正(過去の修正時の拡張パッケージの修正漏れ).
    96         - TLSFのinit_memory_poolが返すエラー値のチェック方法を修正〔Mac OS
    97           Xターゲット依存部〕.
    98 
    99 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£ï¼Œã‚³ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£
    100 
    101 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°
    102         - カーネルのバージョン番号を更新.
    103 
    104 ----------------------------------------------------------------------
    105 
    106                 TOPPERS/ASPカーネル
    107                 Release 1.9.1 から 1.9.2 への変更点
    108 
    109 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    110 
    111 ãƒ»å‹•çš„生成機能拡張のバグフィックス
    112         - acre_cycで,周期ハンドラを開始する処理のバグを修正.
    113 
    114 ãƒ»ãã®ä»–のバグフィックス
    115         - test_cpuexc10.cのチェック値の誤りの修正.
    116 
    117 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£ï¼Ž
    118 
    119 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°
    120         - カーネルのバージョン番号を更新.
    121 
    122 ----------------------------------------------------------------------
    123 
    124                 TOPPERS/ASPカーネル
    125                 Release 1.9.0 から 1.9.1 への変更点
    126 
    127 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    128 
    129 ãƒ»ãƒŸãƒ¥ãƒ¼ãƒ†ãƒƒã‚¯ã‚¹æ©Ÿèƒ½æ‹¡å¼µã®ä»•æ§˜å¤‰æ›´
    130         - 自タスクがロックしているミューテックスを再度ロックしようとした場
    131           合と,自タスクがロックしていないミューテックスをロック解除しよう
    132           とした場合のエラーコードをE_OBJに変更.
    133 
    134 ãƒ»ãƒŸãƒ¥ãƒ¼ãƒ†ãƒƒã‚¯ã‚¹æ©Ÿèƒ½æ‹¡å¼µã®ãƒã‚°ãƒ•ã‚£ãƒƒã‚¯ã‚¹
    135         - タスク終了時のミューテックスの解放順序を逆順に.
    136 
    137 ãƒ»å‹•çš„生成機能拡張のバグフィックス
    138         - オブジェクト未登録エラーのチェックの抜けおよびバグを修正.
    139         - オブジェクト未登録の場合の他のエラーのチェック場所の修正.
    140 
    141 ãƒ»ã‚ªãƒ¼ãƒãƒ©ãƒ³ãƒãƒ³ãƒ‰ãƒ©æ©Ÿèƒ½æ‹¡å¼µã®ãƒã‚°ãƒ•ã‚£ãƒƒã‚¯ã‚¹
    142         - オーバランタイマ割込みハンドラの起動と,オーバランタイマの再動作
    143           開始/停止との競合の問題を修正.
    144 
    145 ãƒ»ãƒ†ã‚¹ãƒˆãƒ—ログラム関係の修正
    146 
    147 ãƒ»ãã®ä»–の修正
    148         - xsns_dpnとxsns_xpnで,kerflgもチェックするように修正(安å
    149 ¨æ€§ã®å‘
    150           上のための修正).
    151         - kernel.tf中で,スタック領域の確保にALLOC_STACKを使うように修正.
    152 
    153 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å
    154 
    155 å®Ÿï¼Œã‚³ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£
    156 
    157 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°
    158         - カーネルのバージョン番号を更新.
    159 
    160 ----------------------------------------------------------------------
    161 
    162                 TOPPERS/ASPカーネル
    163                 Release 1.8.0 から 1.9.0 への変更点
    164 
    165 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    166 
    167 ãƒ»ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãƒãƒƒãƒ•ã‚¡æ©Ÿèƒ½æ‹¡å¼µãƒ‘ッケージの追加
    168 
    169 ãƒ»ã‚³ãƒ³ãƒ•ã‚£ã‚®ãƒ¥ãƒ¬ãƒ¼ã‚¿ã®ãƒ‘ス3のテンプレートファイルに,ターゲット依存部で
    170 ã€€è¨­å®šã—たセクションを,LMAからVMAにコピーする処理を追加
    171 
    172 ãƒ»ã‚µãƒ³ãƒ—ルのMakefileの修正
    173         - C言語の時に-lcを付けるように修正.
    174         - CFG_OBJSを,CFG_ASMOBJSとCFG_COBJSに分離.
    175 
    176 ãƒ»å
    177 ˆé ­ç•ªåœ°ã®ãƒã‚§ãƒƒã‚¯ã‚³ãƒ¼ãƒ‰ã®ä¿®æ­£
    178         - å
    179 ˆé ­ç•ªåœ°ã®ã‚µã‚¤ã‚ºãŒå›ºå®šå€¤ã«ãªã£ã¦ã„たところを,sizeof_FPに修正.
    180         - オーバランハンドラ機能拡張において,オーバランハンドラのå
    181 ˆé ­ç•ªåœ°
    182           のチェックを追加.
    183 
    184 ãƒ»é™çš„APIにおけるエラーチェックの追加
    185         - 符号無しのパラメータに負の値を指定した場合のエラーチェックを追加.
    186         - イベントフラグの初期ビットパターンのエラーチェックを追加.
    187 
    188 ãƒ»ãƒ†ã‚¹ãƒˆãƒ—ログラム関係の修正
    189         - テストライブラリに,test_startを追加.
    190         - テストプログラムのå
    191 ˆé ­ã§ï¼Œãƒ—ログラム名を表示するように修正.
    192         - gentestを拡張.
    193 
    194 ãƒ»å‹•çš„生成機能拡張のバグフィックス
    195         - カーネルが割り付けるメモリ領域のサイズのチェックコードを修正.
    196         - DEF_KMMのkmmszが0以下の場合のエラーチェックを追加.
    197         - カーネルå†
    198 éƒ¨ã‚·ãƒ³ãƒœãƒ«ã®ãƒªãƒãƒ¼ãƒ è¡¨ã‚’修正.
    199 
    200 ãƒ»ãã®ä»–のバグフィックス
    201         - kernel_def.csvにTARGET_MIN_ISTKSZを追加.
    202         - オーバランハンドラ機能拡張で,オーバランハンドラをサポートしてい
    203           ないターゲットでDEF_OVRを使用した場合には,コンフィギュレータでエ
    204           ラーとするように修正.
    205 
    206 ãƒ»ãã®ä»–の修正
    207         - reqdspをdspreqに,p_reqdspをp_dspreqにリネーム.
    208         - スタック領域と固定長メモリプール領域のå
    209 ˆé ­ç•ªåœ°ã‚’ユーザが指定した
    210           場合には,kernel_cfg.c中で(void *)型にキャストするように修正.動
    211           的生成機能拡張のカーネルが割り付けるメモリ領域のå
    212 ˆé ­ç•ªåœ°ã‚‚同様.
    213         - TNUM_PORTが5以上の時は,serial.cでエラーを報告する.
    214         - makedepとmakereleaseを改善.
    215 
    216 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å
    217 
    218 å®Ÿï¼Œã‚³ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£
    219         - ユーザーズマニュアルに「1.6 Cygwin環境における注意事é 
    220 ã€ã‚’追加.
    221         - ユーザーズマニュアルに「11.8 rodataセクションをRAMに置く場合」を
    222           追加.
    223 
    224 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°
    225         - カーネルのバージョン番号を更新.
    226 
    227 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®è¦ä¿®æ­£ç®‡æ‰€ï¼ˆ1.8.0 → 1.9.0)
    228 
    229 (1) CFG_OBJSをCFG_COBJSにリネーム
    230         - Makefileのターゲット依存部でCFG_OBJSを定義している場合には,
    231           CFG_COBJSにリネームする.
    232 
    233 ----------------------------------------------------------------------
    234 
    235                 TOPPERS/ASPカーネル
    236                 Release 1.7.0 から 1.8.0 への変更点
    237 
    238 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    239 
    240 ãƒ»char_t型の廃止
    241 
    242 ãƒ»SILのメモリ空間読出し関数に渡すポインタの属性の変更
    243         - sil_r??_???に渡しポインタに,const属性を追加.
    244 
    245 ãƒ»éžã‚¿ã‚¹ã‚¯ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆç”¨ã®ã‚¹ã‚¿ãƒƒã‚¯é ˜åŸŸã®ã‚µã‚¤ã‚ºãƒã‚§ãƒƒã‚¯ã®è¿½åŠ 
    246         - DEF_ICSのistkszがターゲット定義の最小値(TARGET_MIN_ISTKSZ)より
    247           も小さい場合にE_PARエラーとする処理を追加.
    248 
    249 ãƒ»vasyslog.cをlibraryディレクトリに移動
    250 
    251 ãƒ»MISRA-C対応のためのコードの修正
    252         - 文をマクロ定義している箇所をdo{}while(false)で囲む.
    253         - コンマ演算子に使用を最小限に.
    254         - 多重代å
    255 ¥æ–‡ã‚’やめる.
    256         - 符号無し整数定数にUをつける.
    257         - 標準的な名前を変数名として使わないように修正.
    258         - 返値を使わない関数呼出しを(void)にキャストする.
    259 
    260 ãƒ»ãã®ä»–のバグフィックス
    261         - ミューテックス機能拡張で,ref_tskがTTW_MTXを返す処理を追加.
    262         - 動的生成機能拡張で,acre_isrのエラーコードを修正.
    263         - 動的生成機能拡張で,オブジェクトコントロールブロックがない時に
    264           acre_yyyを呼んだ場合の問題を修正.
    265         - kernel_check.tfでエラーメッセージの出力処理を修正.
    266         - 拡張モジュールの追従ミスの修正.
    267         - TOPPERS_SUPPORT_OVRTIMをTOPPERS_SUPPORT_OVRHDRに修正.
    268 
    269 ãƒ»ã‚µãƒ³ãƒ—ルのMakefileの修正
    270         - カーネルライブラリを別ディレクトリで作成する時に,カーネルライブ
    271           ラリが更新されたら,オブジェクトファイルを再構築するように修正.
    272         - CFG2_OUTをCFG2_OUT_SRCSにリネーム.
    273         - LDFLAGSは,cfg1_out.cのリンク時には適用されないように修正.
    274         - log_output.o,vasyslog.o,t_perror.o,strerror.oを,SYS_COBJSから
    275           APPL_COBJSに移動.
    276 
    277 ãƒ»ãã®ä»–の修正
    278         - semaphore.h等からwait.hをインクルードするように修正.
    279         - TOPPERS_EMPTY_LABELのデフォルトの定義をkernel_int.hに移動.
    280         - __STDC_VERSION__が定義されていない場合に対応.
    281         - test_lib.hに多重インクルードの防止コードを追加.
    282         - ユーティリティプログラムを新しいperlに対応するように修正.
    283         - gentestを拡張(CPU例外ハンドラの生成,GOTOに対応など).
    284         - configureにオプションを追加.
    285         - test_tex1にテストケース1件を追加.
    286 
    287 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å
    288 
    289 å®Ÿï¼Œã‚³ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£
    290 
    291 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°
    292         - カーネルのバージョン番号を更新.
    293 
    294 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®è¦ä¿®æ­£ç®‡æ‰€ï¼ˆ1.7.0 → 1.8.0)
    295 
    296 (1) char_t型をchar型に修正
    297 
    298 (2) TARGET_MIN_ISTKSZの定義を追加(オプション)
    299         - 非タスクコンテキストのスタックサイズの最小値をチェックする場合に
    300           は,最小値をTARGET_MIN_ISTKSZに定義する.
    301 
    302 (3) CFG2_OUTをCFG2_OUT_SRCSにリネーム
    303         - Makefileのターゲット依存部でCFG2_OUTを定義している場合には,
    304           CFG2_OUT_SRCSにリネームする.
    305 
    306 (4) CFG1_OUT_LDFLAGSの定義
    307         - Makefileのターゲット依存部で定義したLDFLAGSは,cfg1_out.cをリンク
    308           する際には適用されないように変更したため,LDFLAGSに定義したオプショ
    309           ンで,cfg1_out.cをリンクする際にもå¿
    310 è¦ãªã‚‚のは,CFG1_OUT_LDFLAGS
    311           にも定義するように修正する.
    312 
    313 ----------------------------------------------------------------------
    314 
    315                 TOPPERS/ASPカーネル
    316                 Release 1.6.0 から 1.7.0 への変更点
    317 
    318 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    319 
    320 ãƒ»å‹•çš„生成機能拡張パッケージ,制約タスク拡張パッケージの追加
    321 
    322 ãƒ»ã‚¿ã‚¹ã‚¯ä¾‹å¤–処理ルーチンの実行開始条件の変更
    323         - タスク例外処理ルーチンの実行に関するコードの修正.
    324         - ipmflgを導å
    325 ¥ï¼Ž
    326         - exc_sense_unlockを廃止.
    327 
    328 ãƒ»ãƒ‡ãƒ¼ã‚¿ã‚­ãƒ¥ãƒ¼ã®ã‚³ãƒ¼ãƒ‰ã®ä¿®æ­£
    329         - データ管理ブロックの導å
    330 ¥ï¼ˆä»–のオブジェクトの実è£
    331 ã¨æ•´åˆã•ã‚ŒãŸï¼‰ï¼Ž
    332 
    333 ãƒ»SILのメモリ空間アクセス関数に渡すポインタの型の変更
    334         - void *を渡していたところを,サイズにあわせて,uint8_t *などに変更.
    335 
    336 ãƒ»å‹•çš„生成機能拡張パッケージにあわせた修正
    337         - t_stddef.hにMB_T型の定義を追加.
    338         - コンフィギュレータのテンプレートファイル(パス2および3)で定義し
    339           ていたターゲット依存æƒ
    340 å ±ã‚’,ヘッダファイルに移動.
    341         - kernel_def.csvに,それらの値を取得するための記述を追加.
    342         - ポーティングガイドの修正.
    343 
    344 ãƒ»ã‚ªãƒ•ã‚»ãƒƒãƒˆãƒ•ã‚¡ã‚¤ãƒ«ã‚’コンフィギュレータで生成する方法を追加
    345         - genoffset.tfを追加.
    346         - kernel_def.csvに,SIL_ENDIAN_BIG/LITTLEを追加.
    347         - sample/Makefileを修正.
    348         - m68k依存部を,この方法に対応させる.
    349         - ポーティングガイドの修正.
    350 
    351 ãƒ»ãã®ä»–のバグフィックス
    352         - CHECK_INTPRI_CHGIPMの定義中のtypoを修正.
    353         - genoffsetのRelease 1.6.0におけるディグレードを修正.
    354         - オーバランハンドラ拡張機能で,ターゲット依存部がオーバランハンド
    355           ラをサポートしていない場合には,TCB中のleftotmを定義しないように
    356           修正.
    357 
    358 ãƒ»ãã®ä»–の修正
    359         - USE_TSKINICTXBをマクロ定義した場合のスタック領域のå
    360 ˆé ­ç•ªåœ°ã®ãƒã‚§ãƒƒ
    361           クのために,GET_STK_TSKINICTXBを導å
    362 ¥ï¼Ž
    363         - kernel_cfg.c中で,タスクのå
    364 ˆé ­ç•ªåœ°ã‚’TASK型にキャストするように
    365           kernel.tfを修正.
    366         - ext_tskのE_SYSの返し方を修正.ext_kerもE_SYSを返すコードに修正.
    367         - CFG_INTは,有効なすべての割込み番号に対応する方針に従い,コンフィ
    368           ギュレータのエラー条件を修正.
    369         - makedepに-Sオプションを追加.
    370         - シリアルドライバでサポートするポート数を,最大4ポートに変更.
    371 
    372 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å
    373 
    374 å®Ÿï¼Œã‚³ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£
    375 
    376 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°
    377         - カーネルのバージョン番号を更新.
    378 
    379 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®è¦ä¿®æ­£ç®‡æ‰€ï¼ˆ1.6.0 → 1.7.0)
    380 
    381 (1) ターゲット依存部で,calltexを呼ぶ代わりにcalltexのå†
    382 å®¹ã‚’インライン
    383 å±•é–‹ã—ている場合に,call_texrtnを呼び出す条件に「ipmflgがtrue」を追加す
    384 ã‚‹ã‚ˆã†ã«ä¿®æ­£ï¼Ž
    385 
    386 (2) 割込み出å
    387 ¥å£å‡¦ç†ãŒæ­£ã—いかの確認.
    388         - ポーティングガイドの割込み出å
    389 ¥å£å‡¦ç†ã«è¿½åŠ ã—た「割込み優å
    390 ˆåº¦ãƒžã‚¹
    391           クを,å
    392 ¨è§£é™¤çŠ¶æ
    393 ‹ï¼ˆTIPM_ENAALL)の値に設定する … (*h)」の処理が実
    394           現されているかを確認.
    395         - ポーティングガイドの6.6.1節の記述を確認((*g)(*i)の注記を追加する
    396           など,記述を詳細化した).
    397 
    398 (3) exc_sense_unlockの定義を削除.
    399 
    400 (4) TARGET_TSKATR,TARGET_ISRATR,TARGET_INHATR,TARGET_INTATR,
    401 TARGET_EXCATR,TARGET_MIN_STKSZ,CHECK_STKSZ_ALIGNの定義を,ターゲット
    402 ä¾å­˜éƒ¨ã®ãƒ†ãƒ³ãƒ—レートファイル(パス2)からヘッダファイルに移動.
    403 
    404 (5) CHECK_FUNC_ALIGN,CHECK_FUNC_NONNULL,CHECK_STACK_ALIGN,
    405 CHECK_STACK_NONNULL,CHECK_MPF_ALIGN,CHECK_MPF_NONNULLの定義を,ターゲッ
    406 ãƒˆä¾å­˜éƒ¨ã®ãƒ†ãƒ³ãƒ—レートファイル(パス3)からヘッダファイルに移動.
    407 
    408 (6) 動的生成機能拡張パッケージに対応.
    409         - CHECK_MB_ALIGNの定義を追加.
    410         - TSZ_PDQMBの定義を追加(デフォルトで不都合な場合).
    411         - VALID_INTNO_CREINTの定義を追加.
    412         - 動的メモリ管理に関する定義を追加.
    413 
    414 (7) オフセットファイルをコンフィギュレータで生成する方法への対応(å¿
    415 é ˆ
    416 ã§ã¯ãªã„が,対応しておくことが望ましい).詳しくは,ポーティングガイド
    417 ã®2.5節を参ç
    418 §ã™ã‚‹ã“と.
    419 
    420 (8) USE_TSKINICTXBをマクロ定義し,CHECK_STACK_ALIGNとCHECK_STACK_NONNULL
    421 ã®ã„ずれかを定義している場合には,TINIBからスタック領域のå
    422 ˆé ­ç•ªåœ°ã‚’取り
    423 å‡ºã™ãŸã‚ã®ãƒ†ãƒ³ãƒ—レートファイル関数GET_STK_TSKINICTXBを定義.
    424 
    425 ----------------------------------------------------------------------
    426 
    427                 TOPPERS/ASPカーネル
    428                 Release 1.5.0 から 1.6.0 への変更点
    429 
    430 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    431 
    432 ãƒ»cfgの新しいバージョン(1.6)に対応
    433         - offsetof_TINIB_stkszとoffsetof_TINIB_stkの取得記述をターゲット非
    434           依存部に移動.
    435 
    436 ãƒ»ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã®ä¿®æ­£
    437         - genoffsetに,エンディアン指定をチェックする機能を追加.その際に,
    438           コードを整理.
    439 
    440 ãƒ»ãã®ä»–の修正
    441         - TCBのpriorityフィールドを,条件があえばuint_8で定義するように修正.
    442         - ターゲット依存部でSIL_ENDIAN_BIGもSIL_ENDIAN_LITTLEも定義されてい
    443           ない場合に,sil.hでエラーを検出するように修正.
    444         - システムログ機能のsysog_logmaskとsyslog_lowmask_notの初期値を修正.
    445         - makereleaseを,ファイルの重複をチェックするように修正.
    446         - test_utm1のエラーメッセージを修正.
    447 
    448 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å
    449 
    450 å®Ÿï¼Œã‚³ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£
    451 
    452 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°
    453         - カーネルのバージョン番号を更新.
    454 
    455 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®è¦ä¿®æ­£ç®‡æ‰€ï¼ˆ1.5.0 → 1.6.0)
    456 
    457 (1) makeoffset.cの修正
    458         - makeoffset.cに,sil_endian関数を追加する(これにより,genoffsetの
    459           エンディアン指定をチェックする機能が有効になる).
    460         - オーバランハンドラ拡張パッケージに対応する場合には,leftotmフィー
    461           ルドが含まれているかを確認する.
    462         - 生成されるoffset.hに変化がないことを確認する.
    463 
    464 (2) 値取得シンボルテーブルのターゲット依存部の修正
    465         - 以下の2行をtarget_def.csv(またはそれに代わるファイル)から削除する.
     51                TOPPERS/ASPカーネル
     52                Release 1.9.2 から 1.9.3 への変更点
     53
     54○変更点のリスト
     55
     56・動的生成機能拡張パッケージのバグフィックス
     57        - acre_tskで,優先度の高いタスクを生成・起動してもディスパッチが起
     58          こらない不具合を修正.
     59        - fsnd_dtqとifsnd_dtqで,エラーコードにE_OKを上書きしている不具合
     60          を修正.
     61        - acre_tskで,p_tinib->stkszに格納する値(stksz)を丸めた値とする
     62          ように修正.
     63
     64・その他の修正
     65        - syslog_ref_logの出口のログ出力マクロ(LOG_SYSLOG_REF_LOG_LEAVE)
     66          のパラメータにエラーコードを追加.
     67        - extension/dcre/kernel/kernel.tfで,ISRに渡す拡張情報をintptr_t型
     68          へのキャストするように修正.
     69        - sample/Makefile中のコンパイラに対する-Tオプションを,-Wl,-Tオプ
     70          ションに変更.
     71        - utils/genoffset.tfに,SIL_ENDIAN_BIT/LITTLEの誤定義の検出処理を
     72          追加.
     73        - コンフィギュレータのエラーメッセージの修正.
     74        - テンプレートファイルの記述スタイルの修正.
     75        - 拡張パッケージも,kernel.tf中で,スタック領域の確保にALLOC_STACK
     76          を使うように修正(過去の修正時の拡張パッケージの修正漏れ).
     77        - TLSFのinit_memory_poolが返すエラー値のチェック方法を修正〔Mac OS
     78          Xターゲット依存部〕.
     79
     80・ドキュメントの修正,コメントの修正
     81
     82・バージョン番号の更新
     83        - カーネルのバージョン番号を更新.
     84
     85----------------------------------------------------------------------
     86
     87                TOPPERS/ASPカーネル
     88                Release 1.9.1 から 1.9.2 への変更点
     89
     90○変更点のリスト
     91
     92・動的生成機能拡張のバグフィックス
     93        - acre_cycで,周期ハンドラを開始する処理のバグを修正.
     94
     95・その他のバグフィックス
     96        - test_cpuexc10.cのチェック値の誤りの修正.
     97
     98・ドキュメントの修正.
     99
     100・バージョン番号の更新
     101        - カーネルのバージョン番号を更新.
     102
     103----------------------------------------------------------------------
     104
     105                TOPPERS/ASPカーネル
     106                Release 1.9.0 から 1.9.1 への変更点
     107
     108○変更点のリスト
     109
     110・ミューテックス機能拡張の仕様変更
     111        - 自タスクがロックしているミューテックスを再度ロックしようとした場
     112          合と,自タスクがロックしていないミューテックスをロック解除しよう
     113          とした場合のエラーコードをE_OBJに変更.
     114
     115・ミューテックス機能拡張のバグフィックス
     116        - タスク終了時のミューテックスの解放順序を逆順に.
     117
     118・動的生成機能拡張のバグフィックス
     119        - オブジェクト未登録エラーのチェックの抜けおよびバグを修正.
     120        - オブジェクト未登録の場合の他のエラーのチェック場所の修正.
     121
     122・オーバランハンドラ機能拡張のバグフィックス
     123        - オーバランタイマ割込みハンドラの起動と,オーバランタイマの再動作
     124          開始/停止との競合の問題を修正.
     125
     126・テストプログラム関係の修正
     127
     128・その他の修正
     129        - xsns_dpnとxsns_xpnで,kerflgもチェックするように修正(安全性の向
     130          上のための修正).
     131        - kernel.tf中で,スタック領域の確保にALLOC_STACKを使うように修正.
     132
     133・ドキュメントの充実,コメントの修正
     134
     135・バージョン番号の更新
     136        - カーネルのバージョン番号を更新.
     137
     138----------------------------------------------------------------------
     139
     140                TOPPERS/ASPカーネル
     141                Release 1.8.0 から 1.9.0 への変更点
     142
     143○変更点のリスト
     144
     145・メッセージバッファ機能拡張パッケージの追加
     146
     147・コンフィギュレータのパス3のテンプレートファイルに,ターゲット依存部で
     148 設定したセクションを,LMAからVMAにコピーする処理を追加
     149
     150・サンプルのMakefileの修正
     151        - C言語の時に-lcを付けるように修正.
     152        - CFG_OBJSを,CFG_ASMOBJSとCFG_COBJSに分離.
     153
     154・先頭番地のチェックコードの修正
     155        - 先頭番地のサイズが固定値になっていたところを,sizeof_FPに修正.
     156        - オーバランハンドラ機能拡張において,オーバランハンドラの先頭番地
     157          のチェックを追加.
     158
     159・静的APIにおけるエラーチェックの追加
     160        - 符号無しのパラメータに負の値を指定した場合のエラーチェックを追加.
     161        - イベントフラグの初期ビットパターンのエラーチェックを追加.
     162
     163・テストプログラム関係の修正
     164        - テストライブラリに,test_startを追加.
     165        - テストプログラムの先頭で,プログラム名を表示するように修正.
     166        - gentestを拡張.
     167
     168・動的生成機能拡張のバグフィックス
     169        - カーネルが割り付けるメモリ領域のサイズのチェックコードを修正.
     170        - DEF_KMMのkmmszが0以下の場合のエラーチェックを追加.
     171        - カーネル内部シンボルのリネーム表を修正.
     172
     173・その他のバグフィックス
     174        - kernel_def.csvにTARGET_MIN_ISTKSZを追加.
     175        - オーバランハンドラ機能拡張で,オーバランハンドラをサポートしてい
     176          ないターゲットでDEF_OVRを使用した場合には,コンフィギュレータでエ
     177          ラーとするように修正.
     178
     179・その他の修正
     180        - reqdspをdspreqに,p_reqdspをp_dspreqにリネーム.
     181        - スタック領域と固定長メモリプール領域の先頭番地をユーザが指定した
     182          場合には,kernel_cfg.c中で(void *)型にキャストするように修正.動
     183          的生成機能拡張のカーネルが割り付けるメモリ領域の先頭番地も同様.
     184        - TNUM_PORTが5以上の時は,serial.cでエラーを報告する.
     185        - makedepとmakereleaseを改善.
     186
     187・ドキュメントの充実,コメントの修正
     188        - ユーザーズマニュアルに「1.6 Cygwin環境における注意事項」を追加.
     189        - ユーザーズマニュアルに「11.8 rodataセクションをRAMに置く場合」を
     190          追加.
     191
     192・バージョン番号の更新
     193        - カーネルのバージョン番号を更新.
     194
     195○ターゲット依存部の要修正箇所(1.8.0 → 1.9.0)
     196
     197(1) CFG_OBJSをCFG_COBJSにリネーム
     198        - Makefileのターゲット依存部でCFG_OBJSを定義している場合には,
     199          CFG_COBJSにリネームする.
     200
     201----------------------------------------------------------------------
     202
     203                TOPPERS/ASPカーネル
     204                Release 1.7.0 から 1.8.0 への変更点
     205
     206○変更点のリスト
     207
     208・char_t型の廃止
     209
     210・SILのメモリ空間読出し関数に渡すポインタの属性の変更
     211        - sil_r??_???に渡しポインタに,const属性を追加.
     212
     213・非タスクコンテキスト用のスタック領域のサイズチェックの追加
     214        - DEF_ICSのistkszがターゲット定義の最小値(TARGET_MIN_ISTKSZ)より
     215          も小さい場合にE_PARエラーとする処理を追加.
     216
     217・vasyslog.cをlibraryディレクトリに移動
     218
     219・MISRA-C対応のためのコードの修正
     220        - 文をマクロ定義している箇所をdo{}while(false)で囲む.
     221        - コンマ演算子に使用を最小限に.
     222        - 多重代入文をやめる.
     223        - 符号無し整数定数にUをつける.
     224        - 標準的な名前を変数名として使わないように修正.
     225        - 返値を使わない関数呼出しを(void)にキャストする.
     226
     227・その他のバグフィックス
     228        - ミューテックス機能拡張で,ref_tskがTTW_MTXを返す処理を追加.
     229        - 動的生成機能拡張で,acre_isrのエラーコードを修正.
     230        - 動的生成機能拡張で,オブジェクトコントロールブロックがない時に
     231          acre_yyyを呼んだ場合の問題を修正.
     232        - kernel_check.tfでエラーメッセージの出力処理を修正.
     233        - 拡張モジュールの追従ミスの修正.
     234        - TOPPERS_SUPPORT_OVRTIMをTOPPERS_SUPPORT_OVRHDRに修正.
     235
     236・サンプルのMakefileの修正
     237        - カーネルライブラリを別ディレクトリで作成する時に,カーネルライブ
     238          ラリが更新されたら,オブジェクトファイルを再構築するように修正.
     239        - CFG2_OUTをCFG2_OUT_SRCSにリネーム.
     240        - LDFLAGSは,cfg1_out.cのリンク時には適用されないように修正.
     241        - log_output.o,vasyslog.o,t_perror.o,strerror.oを,SYS_COBJSから
     242          APPL_COBJSに移動.
     243
     244・その他の修正
     245        - semaphore.h等からwait.hをインクルードするように修正.
     246        - TOPPERS_EMPTY_LABELのデフォルトの定義をkernel_int.hに移動.
     247        - __STDC_VERSION__が定義されていない場合に対応.
     248        - test_lib.hに多重インクルードの防止コードを追加.
     249        - ユーティリティプログラムを新しいperlに対応するように修正.
     250        - gentestを拡張(CPU例外ハンドラの生成,GOTOに対応など).
     251        - configureにオプションを追加.
     252        - test_tex1にテストケース1件を追加.
     253
     254・ドキュメントの充実,コメントの修正
     255
     256・バージョン番号の更新
     257        - カーネルのバージョン番号を更新.
     258
     259○ターゲット依存部の要修正箇所(1.7.0 → 1.8.0)
     260
     261(1) char_t型をchar型に修正
     262
     263(2) TARGET_MIN_ISTKSZの定義を追加(オプション)
     264        - 非タスクコンテキストのスタックサイズの最小値をチェックする場合に
     265          は,最小値をTARGET_MIN_ISTKSZに定義する.
     266
     267(3) CFG2_OUTをCFG2_OUT_SRCSにリネーム
     268        - Makefileのターゲット依存部でCFG2_OUTを定義している場合には,
     269          CFG2_OUT_SRCSにリネームする.
     270
     271(4) CFG1_OUT_LDFLAGSの定義
     272        - Makefileのターゲット依存部で定義したLDFLAGSは,cfg1_out.cをリンク
     273          する際には適用されないように変更したため,LDFLAGSに定義したオプショ
     274          ンで,cfg1_out.cをリンクする際にも必要なものは,CFG1_OUT_LDFLAGS
     275          にも定義するように修正する.
     276
     277----------------------------------------------------------------------
     278
     279                TOPPERS/ASPカーネル
     280                Release 1.6.0 から 1.7.0 への変更点
     281
     282○変更点のリスト
     283
     284・動的生成機能拡張パッケージ,制約タスク拡張パッケージの追加
     285
     286・タスク例外処理ルーチンの実行開始条件の変更
     287        - タスク例外処理ルーチンの実行に関するコードの修正.
     288        - ipmflgを導入.
     289        - exc_sense_unlockを廃止.
     290
     291・データキューのコードの修正
     292        - データ管理ブロックの導入(他のオブジェクトの実装と整合された).
     293
     294・SILのメモリ空間アクセス関数に渡すポインタの型の変更
     295        - void *を渡していたところを,サイズにあわせて,uint8_t *などに変更.
     296
     297・動的生成機能拡張パッケージにあわせた修正
     298        - t_stddef.hにMB_T型の定義を追加.
     299        - コンフィギュレータのテンプレートファイル(パス2および3)で定義し
     300          ていたターゲット依存情報を,ヘッダファイルに移動.
     301        - kernel_def.csvに,それらの値を取得するための記述を追加.
     302        - ポーティングガイドの修正.
     303
     304・オフセットファイルをコンフィギュレータで生成する方法を追加
     305        - genoffset.tfを追加.
     306        - kernel_def.csvに,SIL_ENDIAN_BIG/LITTLEを追加.
     307        - sample/Makefileを修正.
     308        - m68k依存部を,この方法に対応させる.
     309        - ポーティングガイドの修正.
     310
     311・その他のバグフィックス
     312        - CHECK_INTPRI_CHGIPMの定義中のtypoを修正.
     313        - genoffsetのRelease 1.6.0におけるディグレードを修正.
     314        - オーバランハンドラ拡張機能で,ターゲット依存部がオーバランハンド
     315          ラをサポートしていない場合には,TCB中のleftotmを定義しないように
     316          修正.
     317
     318・その他の修正
     319        - USE_TSKINICTXBをマクロ定義した場合のスタック領域の先頭番地のチェッ
     320          クのために,GET_STK_TSKINICTXBを導入.
     321        - kernel_cfg.c中で,タスクの先頭番地をTASK型にキャストするように
     322          kernel.tfを修正.
     323        - ext_tskのE_SYSの返し方を修正.ext_kerもE_SYSを返すコードに修正.
     324        - CFG_INTは,有効なすべての割込み番号に対応する方針に従い,コンフィ
     325          ギュレータのエラー条件を修正.
     326        - makedepに-Sオプションを追加.
     327        - シリアルドライバでサポートするポート数を,最大4ポートに変更.
     328
     329・ドキュメントの充実,コメントの修正
     330
     331・バージョン番号の更新
     332        - カーネルのバージョン番号を更新.
     333
     334○ターゲット依存部の要修正箇所(1.6.0 → 1.7.0)
     335
     336(1) ターゲット依存部で,calltexを呼ぶ代わりにcalltexの内容をインライン
     337展開している場合に,call_texrtnを呼び出す条件に「ipmflgがtrue」を追加す
     338るように修正.
     339
     340(2) 割込み出入口処理が正しいかの確認.
     341        - ポーティングガイドの割込み出入口処理に追加した「割込み優先度マス
     342          クを,全解除状態(TIPM_ENAALL)の値に設定する … (*h)」の処理が実
     343          現されているかを確認.
     344        - ポーティングガイドの6.6.1節の記述を確認((*g)(*i)の注記を追加する
     345          など,記述を詳細化した).
     346
     347(3) exc_sense_unlockの定義を削除.
     348
     349(4) TARGET_TSKATR,TARGET_ISRATR,TARGET_INHATR,TARGET_INTATR,
     350TARGET_EXCATR,TARGET_MIN_STKSZ,CHECK_STKSZ_ALIGNの定義を,ターゲット
     351依存部のテンプレートファイル(パス2)からヘッダファイルに移動.
     352
     353(5) CHECK_FUNC_ALIGN,CHECK_FUNC_NONNULL,CHECK_STACK_ALIGN,
     354CHECK_STACK_NONNULL,CHECK_MPF_ALIGN,CHECK_MPF_NONNULLの定義を,ターゲッ
     355ト依存部のテンプレートファイル(パス3)からヘッダファイルに移動.
     356
     357(6) 動的生成機能拡張パッケージに対応.
     358        - CHECK_MB_ALIGNの定義を追加.
     359        - TSZ_PDQMBの定義を追加(デフォルトで不都合な場合).
     360        - VALID_INTNO_CREINTの定義を追加.
     361        - 動的メモリ管理に関する定義を追加.
     362
     363(7) オフセットファイルをコンフィギュレータで生成する方法への対応(必須
     364ではないが,対応しておくことが望ましい).詳しくは,ポーティングガイド
     365の2.5節を参照すること.
     366
     367(8) USE_TSKINICTXBをマクロ定義し,CHECK_STACK_ALIGNとCHECK_STACK_NONNULL
     368のいずれかを定義している場合には,TINIBからスタック領域の先頭番地を取り
     369出すためのテンプレートファイル関数GET_STK_TSKINICTXBを定義.
     370
     371----------------------------------------------------------------------
     372
     373                TOPPERS/ASPカーネル
     374                Release 1.5.0 から 1.6.0 への変更点
     375
     376○変更点のリスト
     377
     378・cfgの新しいバージョン(1.6)に対応
     379        - offsetof_TINIB_stkszとoffsetof_TINIB_stkの取得記述をターゲット非
     380          依存部に移動.
     381
     382・ユーティリティの修正
     383        - genoffsetに,エンディアン指定をチェックする機能を追加.その際に,
     384          コードを整理.
     385
     386・その他の修正
     387        - TCBのpriorityフィールドを,条件があえばuint_8で定義するように修正.
     388        - ターゲット依存部でSIL_ENDIAN_BIGもSIL_ENDIAN_LITTLEも定義されてい
     389          ない場合に,sil.hでエラーを検出するように修正.
     390        - システムログ機能のsysog_logmaskとsyslog_lowmask_notの初期値を修正.
     391        - makereleaseを,ファイルの重複をチェックするように修正.
     392        - test_utm1のエラーメッセージを修正.
     393
     394・ドキュメントの充実,コメントの修正
     395
     396・バージョン番号の更新
     397        - カーネルのバージョン番号を更新.
     398
     399○ターゲット依存部の要修正箇所(1.5.0 → 1.6.0)
     400
     401(1) makeoffset.cの修正
     402        - makeoffset.cに,sil_endian関数を追加する(これにより,genoffsetの
     403          エンディアン指定をチェックする機能が有効になる).
     404        - オーバランハンドラ拡張パッケージに対応する場合には,leftotmフィー
     405          ルドが含まれているかを確認する.
     406        - 生成されるoffset.hに変化がないことを確認する.
     407
     408(2) 値取得シンボルテーブルのターゲット依存部の修正
     409        - 以下の2行をtarget_def.csv(またはそれに代わるファイル)から削除する.
    466410                offsetof_TINIB_stksz,"offsetof(TINIB,stksz)"
    467411                offsetof_TINIB_stk,"offsetof(TINIB,stk)"
    468         ※ Release 1.5.0における修正をå
    469 ƒã«æˆ»ã™ï¼Ž
    470 
    471 (3) target_fput_logの実è£
    472 åˆ¶é™ã®ç¢ºèªï¼ˆä»•æ§˜ãŒä¿®æ­£ã•ã‚ŒãŸã‚ã‘ではない)
    473         - target_fput_logå
    474 ¨å‰²è¾¼ã¿ãƒ­ãƒƒã‚¯çŠ¶æ
    475 ‹ã§å‘¼ã³å‡ºã›ã‚‹ã‚ˆã†ã«ãªã£ã¦ã„るか確
    476           認する.
    477 
    478 ----------------------------------------------------------------------
    479 
    480                 TOPPERS/ASPカーネル
    481                 Release 1.4.0 から 1.5.0 への変更点
    482 
    483 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    484 
    485 ãƒ»ã‚«ãƒ¼ãƒãƒ«ç®¡ç†å¤–の割込みとCPU例外の扱いの見直し
    486         - カーネル管理外の割込みの設定方法を整理・拡張.
    487         - カーネル管理外の割込みハンドラは,カーネルå†
    488 ã®å‡ºå
    489 ¥å£å‡¦ç†ã‚’経由し
    490           ないことを基本とした(ターゲット依存).
    491         - CPU例外ハンドラの出å
    492 ¥å£å‡¦ç†ã«ãŠã‘るカーネル管理外のCPU例外の扱い
    493           を規定.
    494 
    495 ãƒ»chg_ipmとget_ipmの仕様変更
    496         - chg_ipmとget_ipmは,CPUロック状æ
    497 ‹ã§ã¯å‘¼ã¹ãªã„ものとした.
    498         - これに伴ってテストプログラムを修正.
    499 
    500 ãƒ»ã‚¿ã‚¤ãƒžå‰²è¾¼ã¿å‡¦ç†ã§å‘¼ã³å‡ºã—たialm_timの基準時間の変更
    501         - current_timeの更新後に,タイムイベントの処理を行うように変更.
    502         - 有効な最小のシステム時刻としてmin_timeを導å
    503 ¥ï¼Ž
    504         - pend_updateを廃止.
    505 
    506 ãƒ»ã‚¿ã‚¹ã‚¯ã®ã‚¹ã‚¿ãƒƒã‚¯ã‚µã‚¤ã‚ºã®æœ€å°å€¤ãƒã‚§ãƒƒã‚¯ã®è¿½åŠ 
    507         - スタックサイズが0の場合のエラーを,ターゲット非依存で検出.
    508         - ターゲット依存で,タスクのスタックサイズの最小値を設定できるよう
    509           にした.
    510 
    511 ãƒ»ã‚¿ã‚¹ã‚¯åˆæœŸåŒ–コンテキストブロックの追加
    512         - ターゲット依存で,タスク初期化コンテキストブロック(TSKINICTXB)
    513           を使用できるようにした.
    514 
    515 ãƒ»ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã§å®šç¾©ã™ã‚‹åç§°ã®ãƒªãƒãƒ¼ãƒ æ–¹æ³•ã®å¤‰æ›´
    516         - ターゲット依存部で定義し,ターゲット非依存部から参ç
    517 §ã™ã‚‹åç§°ã®ãƒª
    518           ネーム記述を,ターゲット依存部に移動.
    519 
    520 ãƒ»æ‹¡å¼µãƒ‘ッケージの追加
    521         - ミューテックス機能拡張パッケージ,オーバランハンドラ機能拡張パッ
    522           ケージ,タスク優å
    523 ˆåº¦æ‹¡å¼µãƒ‘ッケージを,一般å
    524 ¬é–‹ã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã«è¿½åŠ ï¼Ž
    525         - オーバランハンドラ機能拡張への対応方法を,ポーティングガイドに記載.
    526 
    527 ãƒ»ã‚µãƒãƒ¼ãƒˆã™ã‚‹æ©Ÿèƒ½ã‚’識別するマクロの定義方法の変更
    528         - ターゲット依存部でTOPPERS_TARGET_SUPPORT_XXXXXがマクロ定義されて
    529           いれば,kernel.hでTOPPERS_SUPPORT_XXXXXをマクロ定義する方法に変更.
    530 
    531 ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãƒ­ã‚°æ©Ÿèƒ½ã®ä¿®æ­£
    532         - syslog_initializeが呼ばれる前のログæƒ
    533 å ±ã®å‡ºåŠ›ã«å¯¾å¿œï¼Ž
    534         - sysog_logmaskとsyslog_lowmask_notの初期値を修正.
    535 
    536 ãƒ»ãƒ†ã‚¹ãƒˆãƒ©ã‚¤ãƒ–ラリの修正
    537         - test_lib.hとtest_lib.cを,testディレクトリから,それぞれincludeと
    538           libraryディレクトリに移動.
    539         - syslog_flush関数を追加.logtask_flushの代わりに使用.
    540         - test_finish関数を追加.テストプログラム中でext_kerの代わりに使用.
    541         - 以上に伴ってテストプログラムを修正.
    542 
    543 ãƒ»configureの拡張
    544         - Makefileのテンプレートを指定するためのオプションを追加.
    545 
    546 ãƒ»ãã®ä»–のバグフィックス
    547         - kernel_impl.h中のマクロ名の修正.
    548         - kernel.tf中の文法ミスの修正.
    549 
    550 ãƒ»ãã®ä»–の修正
    551         - CTXB型をTSKCTXB型に名称変更.
    552         - ext_tskで,戻らないはずの処理から戻った場合には,E_SYSを返す.
    553         - call_texrtnからdispatchを呼び出す処理を改善.
    554         - make_non_waitを,wait.cからwait.hに移動.
    555         - xsns_xpn中の冗長な条件式を削除.
    556         - TA_DISINTとTA_LEVELをitron.hから削除.
    557         - LOG_TEX_LEAVEの第2パラメータを削除.
    558         - サンプルのMakefileに,OMIT_WARNING_ALLとOMIT_OPTIMIZATIONを追加.
    559         - get_utmに関するテスト(1)(test_utm1)を追加.
    560         - test_dlynse.cの表示を改善.
    561 
    562 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å
    563 
    564 å®Ÿï¼Œã‚³ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£
    565         - 機能拡張・チューニングガイドに関して,ユーザーズマニュアルに記載.
    566         - キュー操作ライブラリ関数に関して,ユーザーズマニュアルに記載.
    567         - システムの起動時の初期化処理に関して,ユーザーズマニュアルに記載.
    568         - 設計メモを拡å
    569 
    570 ï¼Ž
    571 
    572 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°
    573         - カーネル仕様のバージョン番号,カーネルのバージョン番号を更新.
    574 
    575 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®è¦ä¿®æ­£ç®‡æ‰€ï¼ˆ1.4.0 → 1.5.0)
    576 
    577 (1) カーネル管理外の割込みの扱いの変更
    578         - カーネル管理外の割込みハンドラの呼び出し方について,これまでの考
    579           え方を変更した.「ターゲット依存部 ポーティングガイド」の6.6.7節
    580           の記述通りに実è£
    581 ã•ã‚Œã¦ã„るかチェックする.
    582         - TA_NONKERNELを使用できるようにする場合には,target.tfで,
    583           TARGET_INHATRにTA_NONKERNELを設定する.
    584         - パス2のテンプレートファイルのターゲット非依存部に,
    585           INTNO_FIX_KERNEL,INHNO_FIX_KERNEL,INTNO_FIX_NONKERNEL,
    586           INHNO_FIX_NONKERNEL,USE_INHINIB_TABLE,USE_INTINIB_TABLEのサポー
    587           トが追加されたので,使用できる場合には使用するように修正する.
    588         - カーネル管理の割込みハンドラの出å
    589 ¥å£å‡¦ç†ã«ã¤ã„て,「ターゲット依
    590           存部 ポーティングガイド」の6.6.1節の記述通りに実è£
    591 ã•ã‚Œã¦ã„ること
    592           を確認する.
    593 
    594 (2) カーネル管理外のCPU例外の扱いの変更
    595         - カーネル管理外のCPU例外ハンドラの呼び出し方について,これまでの考
    596           え方を変更した.「ターゲット依存部 ポーティングガイド」の6.7.1節
    597           の記述を参ç
    598 §ã—て,実è£
    599 ã‚’修正する.
    600 
    601 (3) ターゲット依存部で定義する名称のリネームの追加
    602         - ターゲット依存部で定義し,ターゲット非依存部から参ç
    603 §ã™ã‚‹åç§°ã®ãƒª
    604           ネーム記述を,ターゲット依存部に追加する.ターゲット依存部とチッ
    605           プ依存部の間でも同様の変更を行うことが望ましい.ただし,
    606           arch/logtrace/trace_config.cで定義される名称については,ターゲッ
    607           ト依存部でリネームする.
    608 
    609 (4) ターゲット依存部でサポートする機能を示すマクロの変更
    610         - ターゲット依存部で定義しているTOPPERS_SUPPORT_DIS_INTを
    611           TOPPERS_TARGET_SUPPORT_DIS_INTに,TOPPERS_SUPPORT_ENA_INTを
    612           TOPPERS_TARGET_SUPPORT_ENA_INTに,TOPPERS_SUPPORT_GET_UTMを
    613           TOPPERS_TARGET_SUPPORT_GET_UTMに,それぞれ変更する.
    614 
    615 (5) タスクコンテキストブロックの型名の変更
    616         - CTXB型をTSKCTXB型に名称変更する.
    617 
    618 (6) 値取得シンボルテーブルのターゲット依存部の修正
    619         - 以下の2行をtarget_def.csv(またはそれに代わるファイル)に加える.
     412        ※ Release 1.5.0における修正を元に戻す.
     413
     414(3) target_fput_logの実装制限の確認(仕様が修正されたわけではない)
     415        - target_fput_log全割込みロック状態で呼び出せるようになっているか確
     416          認する.
     417
     418----------------------------------------------------------------------
     419
     420                TOPPERS/ASPカーネル
     421                Release 1.4.0 から 1.5.0 への変更点
     422
     423○変更点のリスト
     424
     425・カーネル管理外の割込みとCPU例外の扱いの見直し
     426        - カーネル管理外の割込みの設定方法を整理・拡張.
     427        - カーネル管理外の割込みハンドラは,カーネル内の出入口処理を経由し
     428          ないことを基本とした(ターゲット依存).
     429        - CPU例外ハンドラの出入口処理におけるカーネル管理外のCPU例外の扱い
     430          を規定.
     431
     432・chg_ipmとget_ipmの仕様変更
     433        - chg_ipmとget_ipmは,CPUロック状態では呼べないものとした.
     434        - これに伴ってテストプログラムを修正.
     435
     436・タイマ割込み処理で呼び出したialm_timの基準時間の変更
     437        - current_timeの更新後に,タイムイベントの処理を行うように変更.
     438        - 有効な最小のシステム時刻としてmin_timeを導入.
     439        - pend_updateを廃止.
     440
     441・タスクのスタックサイズの最小値チェックの追加
     442        - スタックサイズが0の場合のエラーを,ターゲット非依存で検出.
     443        - ターゲット依存で,タスクのスタックサイズの最小値を設定できるよう
     444          にした.
     445
     446・タスク初期化コンテキストブロックの追加
     447        - ターゲット依存で,タスク初期化コンテキストブロック(TSKINICTXB)
     448          を使用できるようにした.
     449
     450・ターゲット依存部で定義する名称のリネーム方法の変更
     451        - ターゲット依存部で定義し,ターゲット非依存部から参照する名称のリ
     452          ネーム記述を,ターゲット依存部に移動.
     453
     454・拡張パッケージの追加
     455        - ミューテックス機能拡張パッケージ,オーバランハンドラ機能拡張パッ
     456          ケージ,タスク優先度拡張パッケージを,一般公開するファイルに追加.
     457        - オーバランハンドラ機能拡張への対応方法を,ポーティングガイドに記載.
     458
     459・サポートする機能を識別するマクロの定義方法の変更
     460        - ターゲット依存部でTOPPERS_TARGET_SUPPORT_XXXXXがマクロ定義されて
     461          いれば,kernel.hでTOPPERS_SUPPORT_XXXXXをマクロ定義する方法に変更.
     462
     463・システムログ機能の修正
     464        - syslog_initializeが呼ばれる前のログ情報の出力に対応.
     465        - sysog_logmaskとsyslog_lowmask_notの初期値を修正.
     466
     467・テストライブラリの修正
     468        - test_lib.hとtest_lib.cを,testディレクトリから,それぞれincludeと
     469          libraryディレクトリに移動.
     470        - syslog_flush関数を追加.logtask_flushの代わりに使用.
     471        - test_finish関数を追加.テストプログラム中でext_kerの代わりに使用.
     472        - 以上に伴ってテストプログラムを修正.
     473
     474・configureの拡張
     475        - Makefileのテンプレートを指定するためのオプションを追加.
     476
     477・その他のバグフィックス
     478        - kernel_impl.h中のマクロ名の修正.
     479        - kernel.tf中の文法ミスの修正.
     480
     481・その他の修正
     482        - CTXB型をTSKCTXB型に名称変更.
     483        - ext_tskで,戻らないはずの処理から戻った場合には,E_SYSを返す.
     484        - call_texrtnからdispatchを呼び出す処理を改善.
     485        - make_non_waitを,wait.cからwait.hに移動.
     486        - xsns_xpn中の冗長な条件式を削除.
     487        - TA_DISINTとTA_LEVELをitron.hから削除.
     488        - LOG_TEX_LEAVEの第2パラメータを削除.
     489        - サンプルのMakefileに,OMIT_WARNING_ALLとOMIT_OPTIMIZATIONを追加.
     490        - get_utmに関するテスト(1)(test_utm1)を追加.
     491        - test_dlynse.cの表示を改善.
     492
     493・ドキュメントの充実,コメントの修正
     494        - 機能拡張・チューニングガイドに関して,ユーザーズマニュアルに記載.
     495        - キュー操作ライブラリ関数に関して,ユーザーズマニュアルに記載.
     496        - システムの起動時の初期化処理に関して,ユーザーズマニュアルに記載.
     497        - 設計メモを拡充.
     498
     499・バージョン番号の更新
     500        - カーネル仕様のバージョン番号,カーネルのバージョン番号を更新.
     501
     502○ターゲット依存部の要修正箇所(1.4.0 → 1.5.0)
     503
     504(1) カーネル管理外の割込みの扱いの変更
     505        - カーネル管理外の割込みハンドラの呼び出し方について,これまでの考
     506          え方を変更した.「ターゲット依存部 ポーティングガイド」の6.6.7節
     507          の記述通りに実装されているかチェックする.
     508        - TA_NONKERNELを使用できるようにする場合には,target.tfで,
     509          TARGET_INHATRにTA_NONKERNELを設定する.
     510        - パス2のテンプレートファイルのターゲット非依存部に,
     511          INTNO_FIX_KERNEL,INHNO_FIX_KERNEL,INTNO_FIX_NONKERNEL,
     512          INHNO_FIX_NONKERNEL,USE_INHINIB_TABLE,USE_INTINIB_TABLEのサポー
     513          トが追加されたので,使用できる場合には使用するように修正する.
     514        - カーネル管理の割込みハンドラの出入口処理について,「ターゲット依
     515          存部 ポーティングガイド」の6.6.1節の記述通りに実装されていること
     516          を確認する.
     517
     518(2) カーネル管理外のCPU例外の扱いの変更
     519        - カーネル管理外のCPU例外ハンドラの呼び出し方について,これまでの考
     520          え方を変更した.「ターゲット依存部 ポーティングガイド」の6.7.1節
     521          の記述を参照して,実装を修正する.
     522
     523(3) ターゲット依存部で定義する名称のリネームの追加
     524        - ターゲット依存部で定義し,ターゲット非依存部から参照する名称のリ
     525          ネーム記述を,ターゲット依存部に追加する.ターゲット依存部とチッ
     526          プ依存部の間でも同様の変更を行うことが望ましい.ただし,
     527          arch/logtrace/trace_config.cで定義される名称については,ターゲッ
     528          ト依存部でリネームする.
     529
     530(4) ターゲット依存部でサポートする機能を示すマクロの変更
     531        - ターゲット依存部で定義しているTOPPERS_SUPPORT_DIS_INTを
     532          TOPPERS_TARGET_SUPPORT_DIS_INTに,TOPPERS_SUPPORT_ENA_INTを
     533          TOPPERS_TARGET_SUPPORT_ENA_INTに,TOPPERS_SUPPORT_GET_UTMを
     534          TOPPERS_TARGET_SUPPORT_GET_UTMに,それぞれ変更する.
     535
     536(5) タスクコンテキストブロックの型名の変更
     537        - CTXB型をTSKCTXB型に名称変更する.
     538
     539(6) 値取得シンボルテーブルのターゲット依存部の修正
     540        - 以下の2行をtarget_def.csv(またはそれに代わるファイル)に加える.
    620541                offsetof_TINIB_stksz,"offsetof(TINIB,stksz)"
    621542                offsetof_TINIB_stk,"offsetof(TINIB,stk)"
    622         ※ 新設されたUSE_TSKINICTXBを使う場合にはå¿
    623 è¦ãªã„.
    624         ※ Release 1.6以降を用いる場合には,この修正はå¿
    625 è¦ã¯ãªã„.
    626 
    627 (7) ログマクロの修正
    628         - LOG_TEX_LEAVEの第2パラメータが削除されたので,LOG_TEX_LEAVEを定義
    629           している場合には,その定義を変更する.
    630 
    631 (8) スタートアップモジュールの修正(bssセクションのクリアを省略している
    632         場合のみ)
    633         - システムログ機能を使用する場合には,スタートアップモジュールに,
    634           syslog_logmaskとsyslog_lowmask_notを0に初期化するコードを追加する.
    635         - トレースログ記録のサンプルコードを組み込んでいる場合には,スター
    636       トアップモジュールに,trace_modeを0に初期化するコードを追加する.
    637 
    638 (9) タスクのスタックサイズの最小値チェックの設定(オプション)
    639         - ターゲット依存に,タスクのスタックサイズの最小値をチェックする場
    640           合には,最小値をTARGET_MIN_STKSZに定義する.
    641 
    642 (10) オーバランハンドラ機能拡張への対応(オプション)
    643         - オーバランハンドラ機能拡張パッケージに対応する.対応方法について
    644           は,「ターゲット依存部 ポーティングガイド」中の「#ifdef
    645           TOPPERS_SUPPORT_OVRHDR」がある箇所と,5.7節と6.14節を参ç
    646 §ã™ã‚‹ã“と.
    647 
    648 ----------------------------------------------------------------------
    649 
    650                 TOPPERS/ASPカーネル
    651                 Release 1.3.2 から 1.4.0 への変更点
    652 
    653 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    654 
    655 ãƒ»å‘¨æœŸãƒãƒ³ãƒ‰ãƒ©ã®ä»•æ§˜å¤‰æ›´
    656         - sta_cycを呼び出した後,最初に周期ハンドラが起動される時刻を,起動
    657           周期後から,起動位相後に変更.
    658 
    659 ãƒ»TSZ_MPFの定義を削除
    660 
    661 ãƒ»call_atexitの廃止
    662         - ターゲット非依存部からcall_atexitを呼び出すのをやめる.
    663           call_atexitで行っていた処理(標準的にはsoftware_term_hookを呼び出
    664           す処理)は,å¿
    665 è¦ã§ã‚ればtarget_exitのå
    666 ˆé ­ã§è¡Œã†ã“ととする.
    667 
    668 ãƒ»get_utmの問題の修正
    669         - 周期ハンドラ,アラームハンドラの中でget_utmを呼ぶと,正しい時刻が
    670           返らない問題を修正.
    671 
    672 ãƒ»ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ©ã®ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«æ€§å‘上
    673         - タスク状æ
    674 ‹ï¼ˆtstat)の変更を,make_runnableではなく,それを呼ぶ側
    675           の関数で行うように修正.
    676 
    677 ãƒ»ãƒ†ãƒ³ãƒ—レート変数の値の自動取得
    678         - OMIT_INITIALIZE_INTERRUPTとOMIT_INITIALIZE_EXCEPTIONの2つのテンプ
    679           レート変数の値を,ヘッダファイルの定義から自動取得するように修正.
    680 
    681 ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ãƒ­ã‚°æ©Ÿèƒ½ã®æ”¹å–„
    682         - LOG_TEX_ENTER,LOG_TEX_LEAVEのパラメータに,p_runtskを追加.
    683 
    684 ãƒ»å®Ÿè¡Œæ™‚間分布集計モジュールの修正
    685         - 時刻取得の方法をターゲット依存で変更できるように修正.
    686         - TNUM_HISTの定義を,histgram.hからhistgram.cに移動.
    687 
    688 ãƒ»ã‚³ãƒ³ãƒ•ã‚£ã‚®ãƒ¥ãƒ¬ãƒ¼ã‚¿ã®åˆ†é›¢
    689         - cfgは,ASPカーネルとは独立したパッケージとしてé
    690 å¸ƒã™ã‚‹ã“とにする.
    691 
    692 ãƒ»ãƒžã‚¤ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚¬ã‚¤ãƒ‰ã®åˆ†é›¢
    693         - doc/migration.txtは,別途PDFファイルでé
    694 å¸ƒã™ã‚‹ã“とにする.
    695 
    696 ãƒ»ãƒ†ã‚¹ãƒˆãƒ—ログラム,性能評価プログラムの追加
    697         - セマフォ機能のテスト(2)(test_sem2)を追加.
    698         - act_tsk,iact_tskの処理時間の評価プログラム(perf4)を追加.
    699 
    700 ãƒ»clean時に削除するファイル
    701         - clean時に削除するファイルを,ターゲット依存部で定義するための変数
    702           (CLEAN_FILES)を導å
    703 ¥ï¼Ž
    704 
    705 ãƒ»ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ã®ä¿®æ­£
    706         - makereleaseが使うディレクトリ名(asp)を,カレントディレクトリか
    707           ら決定するように修正.
    708         - makedepに,Cygwin環境におけるルートディレクトリ名を指定するため
    709           の-Rオプションを追加.MakefileにMAKEDEP_OPTS変数を追加.
    710         - gentestをアラームハンドラの複数回起動に対応できるように拡張.
    711 
    712 ãƒ»ãã®ä»–のバグフィックス
    713         - リネームするシンボルを修正.
    714         - 割込みサービスルーチン,初期化ルーチン,終了処理ルーチンのå
    715 ˆé ­ç•ª
    716           地に関数名以外を記述した場合にも動作するように修正.
    717         - Makefile.dependがない場合の問題を修正.
    718 
    719 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å
    720 
    721 å®Ÿï¼Œã‚³ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£
    722         - 各ドキュメントにTOPPERSライセンスと目次を追加.
    723 
    724 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°
    725         - カーネル仕様のバージョン番号,カーネルのバージョン番号を更新.
    726 
    727 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®è¦ä¿®æ­£ç®‡æ‰€ï¼ˆ1.3.2 → 1.4.0)
    728 
    729 (1) call_atexitの廃止
    730         - call_atexitを廃止したため,ターゲット依存部から定義を削除する.
    731           call_atexitで行っていた処理(標準的にはsoftware_term_hookを呼び出
    732           す処理)は,å¿
    733 è¦ã§ã‚ればtarget_exitのå
    734 ˆé ­ã§è¡Œã†ï¼Ž
    735 
    736 (2) テンプレート変数の値の設定の削除
    737         - OMIT_INITIALIZE_INTERRUPTとOMIT_INITIALIZE_EXCEPTIONの2つのテンプ
    738           レート変数の値を,ヘッダファイルの定義から自動取得するように修正
    739           したため,ターゲット依存部(target.tfまたはそこからインクルードさ
    740           れるファイル)で値を定義していれば,その定義を削除する.
    741 
    742 (3) makedepを呼ぶ際のオプションの追加
    743         - Makefileのターゲット依存部(Makefile.target等)でmakedepを呼んで
    744           いる場合には,$(MAKEDEP_OPTS)を追加する.
    745 
    746         例)@$(PERL) $(SRCDIR)/utils/makedep -C $(CC) $(MAKEDEP_OPTS) \
     543        ※ 新設されたUSE_TSKINICTXBを使う場合には必要ない.
     544        ※ Release 1.6以降を用いる場合には,この修正は必要はない.
     545
     546(7) ログマクロの修正
     547        - LOG_TEX_LEAVEの第2パラメータが削除されたので,LOG_TEX_LEAVEを定義
     548          している場合には,その定義を変更する.
     549
     550(8) スタートアップモジュールの修正(bssセクションのクリアを省略している
     551        場合のみ)
     552        - システムログ機能を使用する場合には,スタートアップモジュールに,
     553          syslog_logmaskとsyslog_lowmask_notを0に初期化するコードを追加する.
     554        - トレースログ記録のサンプルコードを組み込んでいる場合には,スター
     555      トアップモジュールに,trace_modeを0に初期化するコードを追加する.
     556
     557(9) タスクのスタックサイズの最小値チェックの設定(オプション)
     558        - ターゲット依存に,タスクのスタックサイズの最小値をチェックする場
     559          合には,最小値をTARGET_MIN_STKSZに定義する.
     560
     561(10) オーバランハンドラ機能拡張への対応(オプション)
     562        - オーバランハンドラ機能拡張パッケージに対応する.対応方法について
     563          は,「ターゲット依存部 ポーティングガイド」中の「#ifdef
     564          TOPPERS_SUPPORT_OVRHDR」がある箇所と,5.7節と6.14節を参照すること.
     565
     566----------------------------------------------------------------------
     567
     568                TOPPERS/ASPカーネル
     569                Release 1.3.2 から 1.4.0 への変更点
     570
     571○変更点のリスト
     572
     573・周期ハンドラの仕様変更
     574        - sta_cycを呼び出した後,最初に周期ハンドラが起動される時刻を,起動
     575          周期後から,起動位相後に変更.
     576
     577・TSZ_MPFの定義を削除
     578
     579・call_atexitの廃止
     580        - ターゲット非依存部からcall_atexitを呼び出すのをやめる.
     581          call_atexitで行っていた処理(標準的にはsoftware_term_hookを呼び出
     582          す処理)は,必要であればtarget_exitの先頭で行うこととする.
     583
     584・get_utmの問題の修正
     585        - 周期ハンドラ,アラームハンドラの中でget_utmを呼ぶと,正しい時刻が
     586          返らない問題を修正.
     587
     588・スケジューラのモジュール性向上
     589        - タスク状態(tstat)の変更を,make_runnableではなく,それを呼ぶ側
     590          の関数で行うように修正.
     591
     592・テンプレート変数の値の自動取得
     593        - OMIT_INITIALIZE_INTERRUPTとOMIT_INITIALIZE_EXCEPTIONの2つのテンプ
     594          レート変数の値を,ヘッダファイルの定義から自動取得するように修正.
     595
     596・トレースログ機能の改善
     597        - LOG_TEX_ENTER,LOG_TEX_LEAVEのパラメータに,p_runtskを追加.
     598
     599・実行時間分布集計モジュールの修正
     600        - 時刻取得の方法をターゲット依存で変更できるように修正.
     601        - TNUM_HISTの定義を,histgram.hからhistgram.cに移動.
     602
     603・コンフィギュレータの分離
     604        - cfgは,ASPカーネルとは独立したパッケージとして配布することにする.
     605
     606・マイグレーションガイドの分離
     607        - doc/migration.txtは,別途PDFファイルで配布することにする.
     608
     609・テストプログラム,性能評価プログラムの追加
     610        - セマフォ機能のテスト(2)(test_sem2)を追加.
     611        - act_tsk,iact_tskの処理時間の評価プログラム(perf4)を追加.
     612
     613・clean時に削除するファイル
     614        - clean時に削除するファイルを,ターゲット依存部で定義するための変数
     615          (CLEAN_FILES)を導入.
     616
     617・ユーティリティの修正
     618        - makereleaseが使うディレクトリ名(asp)を,カレントディレクトリか
     619          ら決定するように修正.
     620        - makedepに,Cygwin環境におけるルートディレクトリ名を指定するため
     621          の-Rオプションを追加.MakefileにMAKEDEP_OPTS変数を追加.
     622        - gentestをアラームハンドラの複数回起動に対応できるように拡張.
     623
     624・その他のバグフィックス
     625        - リネームするシンボルを修正.
     626        - 割込みサービスルーチン,初期化ルーチン,終了処理ルーチンの先頭番
     627          地に関数名以外を記述した場合にも動作するように修正.
     628        - Makefile.dependがない場合の問題を修正.
     629
     630・ドキュメントの充実,コメントの修正
     631        - 各ドキュメントにTOPPERSライセンスと目次を追加.
     632
     633・バージョン番号の更新
     634        - カーネル仕様のバージョン番号,カーネルのバージョン番号を更新.
     635
     636○ターゲット依存部の要修正箇所(1.3.2 → 1.4.0)
     637
     638(1) call_atexitの廃止
     639        - call_atexitを廃止したため,ターゲット依存部から定義を削除する.
     640          call_atexitで行っていた処理(標準的にはsoftware_term_hookを呼び出
     641          す処理)は,必要であればtarget_exitの先頭で行う.
     642
     643(2) テンプレート変数の値の設定の削除
     644        - OMIT_INITIALIZE_INTERRUPTとOMIT_INITIALIZE_EXCEPTIONの2つのテンプ
     645          レート変数の値を,ヘッダファイルの定義から自動取得するように修正
     646          したため,ターゲット依存部(target.tfまたはそこからインクルードさ
     647          れるファイル)で値を定義していれば,その定義を削除する.
     648
     649(3) makedepを呼ぶ際のオプションの追加
     650        - Makefileのターゲット依存部(Makefile.target等)でmakedepを呼んで
     651          いる場合には,$(MAKEDEP_OPTS)を追加する.
     652
     653        例)@$(PERL) $(SRCDIR)/utils/makedep -C $(CC) $(MAKEDEP_OPTS) \
    747654                        -O "$(CFLAGS) $(KERNEL_CFLAGS)" $< >> Makefile.depend
    748655
    749 (4) 簡易パッケージへのコンフィギュレータの追加
    750         - コンフィギュレータ(cfg)がターゲット非依存部から分離されたため,
    751           簡易パッケージにå
    752 ¥ã‚Œã‚‹å ´åˆã«ã¯ï¼ŒE_PACKAGEにcfgを含めるための記述
    753           を追加する.
    754 
    755         例)INCLUDE ../../cfg/MANIFEST
    756 
    757 ----------------------------------------------------------------------
    758 
    759                 TOPPERS/ASPカーネル
    760                 Release 1.3.1 から 1.3.2 への変更点
    761 
    762 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    763 
    764 ãƒ»TMAX_RELTIMをユーザから参ç
    765 §ã§ãã‚‹ãƒžã‚¯ãƒ­ã«
    766         - TMAX_RELTIMの定義を,kernel/time_event.hからinclude/t_stddef.hに
    767           移動.
    768 
    769 ãƒ»const指定の追加
    770         - syslog_printf,syslog_print,syslog_wri_log,serial_wri_datのパラ
    771           メータにconst指定を追加.
    772 
    773 ãƒ»TMIN_ISRPRI,TMAX_ISRPRIの導å
    774 ¥
    775 
    776 ãƒ»å®Ÿè¡Œæ™‚間分布集計モジュールで時間の逆転が疑われるケースの扱い
    777         - 実行時間分布集計モジュールで時間の逆転が疑われる度数を計測するよ
    778           うに修正.
    779 
    780 ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãƒ­ã‚°ã‚¿ã‚¹ã‚¯ã®çµ‚了処理の修正
    781         - ログバッファに残ったログæƒ
    782 å ±ã§ã‚ることを示す文字列を出力するように
    783           修正.
    784 
    785 ãƒ»ã‚³ãƒ³ãƒ•ã‚£ã‚®ãƒ¥ãƒ¬ãƒ¼ã‚¿ã®ä¿®æ­£
    786         - 順序付きリストの要素に式を使えるように変更.
    787         - 静的APIのパラメータに型キャストが含まれるとパースできないバグの修正.
    788         - #pragma onceを用いると行番号がずれるバグの修正.
    789         - cfgファイルを指定しなかった場合のエラーメッセージの修正.
    790 
    791 ãƒ»ã‚³ãƒ³ãƒ•ã‚£ã‚®ãƒ¥ãƒ¬ãƒ¼ã‚¿ãŒç”Ÿæˆã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«
    792         - コンフィギュレータがkernel_cfg.c以外のファイルを生成する場合に対
    793           応するための変数(CFG_OBJS,CFG2_OUT)を導å
    794 ¥ï¼Ž
    795 
    796 ãƒ»realclean時に削除するファイル
    797         - realclean時に削除するファイルを,ターゲット依存部で定義するための
    798           変数(REALCLEAN_FILES)を導å
    799 ¥ï¼Ž
    800 
    801 ãƒ»ãƒ†ã‚¹ãƒˆãƒ—ログラムの追加・拡å
    802 
    803 
    804         - セマフォ機能のテスト(1)を追加.
    805         - カーネルの整合性検査にセマフォ毎の検査を追加.
    806 
    807 ãƒ»ãƒã‚°ãƒ•ã‚£ãƒƒã‚¯ã‚¹
    808         - 非タスクコンテキスト用スタックの確保時のサイズの誤り.
    809         - kernel.tf中のエラーメッセージの誤り.
    810         - 実行時間分布集計モジュールにおける最大値の扱いのバグ.
    811         - Makefile中のAPPLDIRに複数のディレクトリが定義されている時の扱い.
    812         - test/perf.cで,計測回数を10000回になるように修正.
    813         - DVE68Kターゲット依存部のtarget.tf中のエラーメッセージの誤り.
    814 
    815 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å
    816 
    817 å®Ÿï¼Œã‚³ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£
    818         - 各ドキュメントにTOPPERSライセンスと目次を追加.
    819 
    820 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°
    821 
    822 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®è¦ä¿®æ­£ç®‡æ‰€ï¼ˆ1.3.1 → 1.3.2)
    823 
    824 ç‰¹ã«ãªã—
    825 
    826 ----------------------------------------------------------------------
    827 
    828                 TOPPERS/ASPカーネル
    829                 Release 1.3.0 から 1.3.1 への変更点
    830 
    831 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    832 
    833 ãƒ»ã‚¹ã‚¿ãƒƒã‚¯ã‚µã‚¤ã‚ºã®ã‚¨ãƒ©ãƒ¼ãƒã‚§ãƒƒã‚¯ã‚’追加
    834         - CRE_TSKのstk(タスクのスタック領域のå
    835 ˆé ­ç•ªåœ°ï¼‰ãŒNULLでない場合に,
    836           stkszを適切な値(ターゲット依存の値の倍数)に丸める処理をやめ,適
    837           切な値でない場合にエラーとするように修正.
    838         - DEF_ICSのistk(非タスクコンテキスト用のスタック領域のå
    839 ˆé ­ç•ªåœ°ï¼‰ãŒ
    840           NULLでない場合に,istkszが適切な値(ターゲット依存の値の倍数)で
    841           ない場合のエラーのチェックを追加.
    842 
    843 ãƒ»å¼·åˆ¶å¾
    844 ã¡è¦æ±‚ネストの廃止に伴う追加修正
    845         - TMAX_SUSCNTの定義を,kernel.hからitron.hに移動.
    846         - ref_tskで参ç
    847 §ã§ãã‚‹æƒ
    848 å ±ï¼ˆT_RTSKのフィールド)からsuscntを削除.
    849 
    850 ãƒ»kernel_api.csvの修正
    851         - 各オブジェクトの属性のパラメータを,符号無しに修正.
    852 
    853 ãƒ»kernel_def.csvの修正
    854         - 符号付きのシンボルの定義に",signed"を付加.
    855 
    856 ãƒ»itron.hの修正
    857         - frsm_tskのタイプミスの修正.
    858 
    859 ãƒ»ã‚³ãƒ³ãƒ•ã‚£ã‚®ãƒ¥ãƒ¬ãƒ¼ã‚¿ã®ä¿®æ­£
    860         - 組込み関数DUMP, TRACE, NOOPを追加.
    861         - $FOREACH$や$IF$等の中身が何もないときに,internal errorになる不å
    862 ·
    863           合を修正(エラーメッセージの適切化).
    864         - $INCLUDE$命令でインクルードしたtfの行番号がずれる不å
    865 ·åˆã‚’修正.
    866         - 64ビット整数が定義されていないと,CSVファイルでsをつけたレコード
    867           が符号付きと扱われない不å
    868 ·åˆã®ä¿®æ­£ï¼Ž
    869         - 型キャストのパース処理に関する不å
    870 ·åˆã®ä¿®æ­£ï¼Ž
    871         - エラーの起こった行番号が正しくない不å
    872 ·åˆã®ä¿®æ­£ï¼Ž
    873         - 同じtskidに対してDEF_TEXが複数あるエラーのチェックを行うように修正.
    874         - DEF_TEXを使用した時に,TSK.TSKID[tskid]が0になる不å
    875 ·åˆã®ä¿®æ­£ï¼Ž
    876         - DEF_INH,CFG_INT,DEF_EXCで同じオブジェクト番号に対する登録が重複し
    877           た場合のエラーチェックを二重に行っている問題の修正.
    878 
    879 ãƒ»é
    880 å¸ƒã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®ä¿®æ­£
    881         - doc/api_spec.txt, ngki_spec.txt, sysstat.txtを除外.
    882         - extensionディレクトリを除外.
    883 
    884 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£ï¼Œã‚³ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£
    885 
    886 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°
    887 
    888 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®è¦ä¿®æ­£ç®‡æ‰€ï¼ˆ1.3.0 → 1.3.1)
    889 
    890 (1) スタックサイズのエラーチェックに関する修正箇所
    891         - target.tfでkernel.tfをインクルードする前に,CHECK_STKSZ_ALIGNを,
    892           スタックサイズがどの値の倍数になっていなければならないかを設定す
    893           る.
    894                 例)$CHECK_STKSZ_ALIGN = 4$
    895 
    896 (2) ターゲット依存部のユーザーズマニュアルについて
    897         - ターゲット依存部のユーザーズマニュアルのファイル名と,そのファイ
    898           ルに記述すべきå†
    899 å®¹ã‚’規定した.「ターゲット依存部 ポーティングガイ
    900           ド」の「9.1 ドキュメント」の節を参ç
    901 §ã™ã‚‹ã“と.
    902 
    903 ----------------------------------------------------------------------
    904 
    905                 TOPPERS/ASPカーネル
    906                 Release 1.2.1 から 1.3.0 への変更点
    907 
    908 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    909 
    910 ãƒ»set_tim(システム時刻の設定)の廃止
    911 
    912 ãƒ»å±žæ€§ã®å¤‰æ›´
    913         - TA_DISINTを廃止して,TA_ENAINTを復活.
    914 
    915 ãƒ»æ‹¡å¼µæ©Ÿèƒ½ãƒ»ã‚¿ãƒ¼ã‚²ãƒƒãƒˆå®šç¾©æ©Ÿèƒ½ã®æœ‰ç„¡ã‚’判別するマクロ名の変更
    916         - TOPPERS_EXTENSION_MUTEXをTOPPERS_SUPPORT_MUTEXに.
    917         - TOPPERS_EXTENSION_PRI_LEVELをTOPPERS_SUPPORT_PRI_LEVELに.
    918         - SUPPORT_???_???をTOPPERS_SUPPORT_???_???に変更し,ターゲット依存
    919           部での定義をtarget_kernel.hに移動する.
    920 
    921 ãƒ»åž‹åãƒ»å¤‰æ•°åãƒ»å®šæ•°åã®å¤‰æ›´
    922         - SYSUTIM → SYSUTM,sysutim → sysutm,p_sysutim → p_sysutm
    923         - SIO_ERDY_SND → SIO_RDY_SND,SIO_ERDY_RCV → SIO_RDY_RCV
    924         - sio_ierdy_snd → sio_irdy_snd,sio_ierdy_rcv → sio_irdy_rcv
    925 
    926 ãƒ»cfg1_out.cのコンパイル/リンク方法の変更
    927         - cfg1_out.cからtarget_cfg1_out.hをインクルードするように,コンフィ
    928           ギュレータを変更.
    929         - ターゲット依存部でtarget_cfg1_out.hを用意する.
    930         - cfg1_out.cのリンクは,カーネルと同じ方法をとるように変更.
    931 
    932 ãƒ»ã‚³ãƒ³ãƒ•ã‚£ã‚®ãƒ¥ãƒ¬ãƒ¼ã‚¿ã®ä¿®æ­£
    933         - cfg1_out.cに生成するå†
    934 å®¹ã®å¤‰æ›´ï¼ˆå‰è¨˜ã¨é–¢é€£ï¼‰ï¼Ž
    935         - boost 1.35.0に対応.
    936 
    937 ãƒ»ã‚µãƒ³ãƒ—ルプログラムの修正
    938         - タスクå†
    939 ã§ã®ãƒ«ãƒ¼ãƒ—回数を固定する機能(TASK_LOOP)を導å
    940 ¥ï¼Ž
    941 
    942 ãƒ»ãƒã‚°ãƒ•ã‚£ãƒƒã‚¯ã‚¹
    943         - 固定長メモリプール領域の確保方法.
    944         - DEF_TEXのエラーで,問題になったDEF_TEXの行番号を表示する.
    945 
    946 ãƒ»ç”¨èªžã®å¤‰æ›´
    947         -「割込みロック」→「å
    948 ¨å‰²è¾¼ã¿ãƒ­ãƒƒã‚¯ã€
    949 
    950 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®ä¿®æ­£
    951 
    952 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°ï¼Ž
    953 
    954 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®è¦ä¿®æ­£ç®‡æ‰€ï¼ˆ1.2.1 → 1.3.0)
    955 
    956 (1) TA_DISINTの廃止・TA_ENAINTの復活に伴う修正箇所
    957         - TA_DISINTを使った判定をTA_ENAINTを使った判定に変更する.
    958                 例)((intatr & TA_DISINT) == 0U) → ((intatr & TA_ENAINT) != 0U)
    959         - CFG_INTの割込み属性にTA_DISINTが設定されていれば,それを消す.
    960                 例)CFG_INT(INTNO_SIO, { TA_DISINT | INTATR_SIO, INTPRI_SIO });
    961                 → CFG_INT(INTNO_SIO, { INTATR_SIO, INTPRI_SIO });
    962         - CFG_INTの割込み属性にTA_DISINTが設定されていなければ,TA_ENAINTを
    963           加える.
    964                 例)CFG_INT(INTNO_TIMER, { INTATR_TIMER, INTPRI_TIMER });
    965                 → CFG_INT(INTNO_TIMER, { TA_ENAINT | INTATR_TIMER, INTPRI_TIMER });
    966 
    967 (2) 拡張機能・ターゲット定義機能の有無を判別するマクロ名の変更に伴う修正箇所
    968         - SUPPORT_???_???をTOPPERS_SUPPORT_???_???に変更し,ターゲット依存
    969           部での定義をtarget_kernel.hに移動する.
    970                 TOPPERS_SUPPORT_DIS_INT                 dis_intをサポートする
    971                 TOPPERS_SUPPORT_ENA_INT                 ena_intをサポートする
    972                 TOPPERS_SUPPORT_GET_UTM                 get_utmをサポートする
    973    - makeoffset.cで,TOPPERS_EXTENSION_MUTEXを参ç
    974 §ã—ている場合には,
    975      TOPPERS_SUPPORT_MUTEXに変更する.
    976 
    977 (3) 型名・変数名・定数名の変更に伴う修正箇所
    978         - SYSUTIM → SYSUTM,sysutim → sysutm,p_sysutim → p_sysutm
    979         - SIO_ERDY_SND → SIO_RDY_SND,SIO_ERDY_RCV → SIO_RDY_RCV
    980         - sio_ierdy_snd → sio_irdy_snd,sio_ierdy_rcv → sio_irdy_rcv
    981         â˜
    982 sysutimとerdyを大文字小文字を区別せずにサーチするとよい.
    983 
    984 (4) cfg1_out.cのコンパイル/リンク方法の変更に伴う修正箇所
    985         - ターゲット依存部で,target_cfg1_out.hを用意する.詳しくは,「ター
    986           ゲット依存部 ポーティングガイド」の7.4節を参ç
    987 §ï¼Ž
    988         - 新たに用意したファイルをMANIFESTに追加する.
    989 
    990 (5) 警告メッセージへの対処
    991         - Makefile.targetに,「COPTS := $(COPTS) -Werror」を追加することを
    992           検討する.カーネルå†
    993 ã§åŽ³å¯†ãªåˆ¥åè¦å‰‡ã«ã‚ˆã‚‹è­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒå‡ºã‚‹å ´
    994           合には,「KERNEL_CFLAGS := $(KERNEL_CFLAGS) -fno-strict-aliasing」
    995           を追加してもよい.
    996 
    997 (6) コメントの修正
    998         -「割込みロック」→「å
    999 ¨å‰²è¾¼ã¿ãƒ­ãƒƒã‚¯ã€
    1000 
    1001 ----------------------------------------------------------------------
    1002 
    1003                 TOPPERS/ASPカーネル
    1004                 Release 1.2.0 から 1.2.1 への変更点
    1005 
    1006 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    1007 
    1008 ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ãƒ­ã‚°è¨˜éŒ²ã®ã‚µãƒ³ãƒ—ルコードを組み込む方法の変更
    1009         - configureに-rオプションを追加.
    1010         - sample/Makefileの修正.
    1011 
    1012 ãƒ»Makefileのコンフィギュレータ関連部分の変更
    1013         - コンフィギュレータに対するターゲット依存のオプションを,Makefile
    1014           のターゲット依存部で記述するように変更.
    1015         - コンフィギュレータの各パスのターゲット依存のファイルへの依存関係
    1016           を,Makefileのターゲット依存部で記述するように変更.
    1017 
    1018 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°ï¼Ž
    1019 
    1020 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®è¦ä¿®æ­£ç®‡æ‰€ï¼ˆ1.1.0 → 1.2.1)
    1021 
    1022 (1) 新しいコンフィギュレータへの対応
    1023 
    1024 ãƒ»target.tf中で,ヘッダファイルと重複した定数値の定義を行っている場合に
    1025 ã€€ã¯ï¼Œtarget_def.cvsに変数記述を行い,重複した定義を削除する.
    1026 
    1027 ãƒ»ã‚³ãƒ³ãƒ•ã‚£ã‚®ãƒ¥ãƒ¬ãƒ¼ã‚¿ã«å¯¾ã™ã‚‹ã‚ªãƒ—ションに,target_def.cvsを読み込ませる
    1028 ã€€æŒ‡å®šã‚’追加する.「ターゲット依存部 ポーティングガイド」2.4節の
    1029 ã€€(2-4-15) é 
    1030 ã‚’参ç
    1031 §ï¼Ž
    1032 
    1033 ãƒ»target_check.tfを作成する.「ターゲット依存部 ポーティングガイド」
    1034 ã€€7.3節参ç
    1035 §ï¼Ž
    1036 
    1037 ãƒ»ã‚³ãƒ³ãƒ•ã‚£ã‚®ãƒ¥ãƒ¬ãƒ¼ã‚¿ã®å„パスに対して,ターゲット依存のファイルへの依存
    1038 ã€€é–¢ä¿‚を定義する.「ターゲット依存部 ポーティングガイド」2.7節参ç
    1039 §ï¼Ž
    1040 
    1041 (2) データ型と定数の変更・追加
    1042 
    1043 ãƒ»BOOLをbool_tに,TRUEとFALSEをそれぞれtrueとfalseに変更する.ER_BOOLな
    1044 ã€€ã©ã‚’変更しないように注意すること.コメント中に記述されたこれらのデー
    1045 ã€€ã‚¿åž‹ã¨å®šæ•°ã‚‚変更すること.
    1046 
    1047 ãƒ»charをchar_tに変更する.ただし,文字列定数が記述されることが多い引数
    1048 ã€€ç­‰ã¯ï¼Œã‚³ãƒ³ãƒ‘イラの警告を避けるために,char *のままとする.ターゲット
    1049 ã€€ä¾å­˜éƒ¨ã§æœ€ä½Žé™å¤‰æ›´ã—なければならないのは,以下の2箇所.
    1050 
    1051         - target_fput_logの引数
    1052         - sio_snd_chrの第2引数
    1053 
    1054 ãƒ»target_stddef.h(またはそこからインクルードされるファイル)に,サイズ
    1055 ã€€ã®æŒ‡å®šã•ã‚ŒãŸæµ®å‹•å°æ•°ç‚¹åž‹ï¼ˆfloat32_tとdouble64_t),その最大値・最小値
    1056 ã€€ã®ãƒžã‚¯ãƒ­ã®å®šç¾©ã‚’追加する.「ターゲット依存部 ポーティングガイド」3.4
    1057 ã€€ç¯€å‚ç
    1058 §ï¼Žé–‹ç™ºç’°å¢ƒãŒGCCでarch/gcc/tool_stddef.hを用いており,float型と
    1059 ã€€double型がそれぞれIEEE754準拠の単精度浮動小数点数と倍精度浮動小数点数
    1060 ã€€ã§ã‚る場合には,arch/gcc/tool_stddef.hをインクルードする前に,
    1061 ã€€TOPPERS_STDFLOAT_TYPE1をマクロ定義すればよい.
    1062 
    1063 (3) トレースログ記録のサンプルコードの組込み(オプション)
    1064 
    1065 ãƒ»ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã‚’,トレースログ記録のサンプルコードを使用するように
    1066 ã€€ä¿®æ­£ã™ã‚‹ï¼Žã€Œã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ ポーティングガイド」6.11.2節参ç
    1067 §ï¼Ž
    1068 
    1069 (4) TARGETDIR変数の使用
    1070 
    1071 ãƒ»Makefileのターゲット依存部で,ターゲット依存部ディレクトリを参ç
    1072 §ã—て
    1073 ã€€ã„る箇所で,$(SRCDIR)/target/$(TARGET)を,$(TARGETDIR)に変更する.
    1074 
    1075 ----------------------------------------------------------------------
    1076 
    1077                 TOPPERS/ASPカーネル
    1078                 Release 1.1.0 から 1.2.0 への変更点
    1079 
    1080 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    1081 
    1082 ãƒ»ã‚³ãƒ³ãƒ•ã‚£ã‚®ãƒ¥ãƒ¬ãƒ¼ã‚¿ã‚’新しいバージョンに差し換え
    1083         - パス1とパス3にもターゲット依存機能を追加.
    1084         - FMPカーネルのクラス記述に対応.
    1085         - 追加ファイル(ターゲット非依存部,cfg以下を除く)
     656(4) 簡易パッケージへのコンフィギュレータの追加
     657        - コンフィギュレータ(cfg)がターゲット非依存部から分離されたため,
     658          簡易パッケージに入れる場合には,E_PACKAGEにcfgを含めるための記述
     659          を追加する.
     660
     661        例)INCLUDE ../../cfg/MANIFEST
     662
     663----------------------------------------------------------------------
     664
     665                TOPPERS/ASPカーネル
     666                Release 1.3.1 から 1.3.2 への変更点
     667
     668○変更点のリスト
     669
     670・TMAX_RELTIMをユーザから参照できるマクロに
     671        - TMAX_RELTIMの定義を,kernel/time_event.hからinclude/t_stddef.hに
     672          移動.
     673
     674・const指定の追加
     675        - syslog_printf,syslog_print,syslog_wri_log,serial_wri_datのパラ
     676          メータにconst指定を追加.
     677
     678・TMIN_ISRPRI,TMAX_ISRPRIの導入
     679
     680・実行時間分布集計モジュールで時間の逆転が疑われるケースの扱い
     681        - 実行時間分布集計モジュールで時間の逆転が疑われる度数を計測するよ
     682          うに修正.
     683
     684・システムログタスクの終了処理の修正
     685        - ログバッファに残ったログ情報であることを示す文字列を出力するように
     686          修正.
     687
     688・コンフィギュレータの修正
     689        - 順序付きリストの要素に式を使えるように変更.
     690        - 静的APIのパラメータに型キャストが含まれるとパースできないバグの修正.
     691        - #pragma onceを用いると行番号がずれるバグの修正.
     692        - cfgファイルを指定しなかった場合のエラーメッセージの修正.
     693
     694・コンフィギュレータが生成するファイル
     695        - コンフィギュレータがkernel_cfg.c以外のファイルを生成する場合に対
     696          応するための変数(CFG_OBJS,CFG2_OUT)を導入.
     697
     698・realclean時に削除するファイル
     699        - realclean時に削除するファイルを,ターゲット依存部で定義するための
     700          変数(REALCLEAN_FILES)を導入.
     701
     702・テストプログラムの追加・拡充
     703        - セマフォ機能のテスト(1)を追加.
     704        - カーネルの整合性検査にセマフォ毎の検査を追加.
     705
     706・バグフィックス
     707        - 非タスクコンテキスト用スタックの確保時のサイズの誤り.
     708        - kernel.tf中のエラーメッセージの誤り.
     709        - 実行時間分布集計モジュールにおける最大値の扱いのバグ.
     710        - Makefile中のAPPLDIRに複数のディレクトリが定義されている時の扱い.
     711        - test/perf.cで,計測回数を10000回になるように修正.
     712        - DVE68Kターゲット依存部のtarget.tf中のエラーメッセージの誤り.
     713
     714・ドキュメントの充実,コメントの修正
     715        - 各ドキュメントにTOPPERSライセンスと目次を追加.
     716
     717・バージョン番号の更新
     718
     719○ターゲット依存部の要修正箇所(1.3.1 → 1.3.2)
     720
     721特になし
     722
     723----------------------------------------------------------------------
     724
     725                TOPPERS/ASPカーネル
     726                Release 1.3.0 から 1.3.1 への変更点
     727
     728○変更点のリスト
     729
     730・スタックサイズのエラーチェックを追加
     731        - CRE_TSKのstk(タスクのスタック領域の先頭番地)がNULLでない場合に,
     732          stkszを適切な値(ターゲット依存の値の倍数)に丸める処理をやめ,適
     733          切な値でない場合にエラーとするように修正.
     734        - DEF_ICSのistk(非タスクコンテキスト用のスタック領域の先頭番地)が
     735          NULLでない場合に,istkszが適切な値(ターゲット依存の値の倍数)で
     736          ない場合のエラーのチェックを追加.
     737
     738・強制待ち要求ネストの廃止に伴う追加修正
     739        - TMAX_SUSCNTの定義を,kernel.hからitron.hに移動.
     740        - ref_tskで参照できる情報(T_RTSKのフィールド)からsuscntを削除.
     741
     742・kernel_api.csvの修正
     743        - 各オブジェクトの属性のパラメータを,符号無しに修正.
     744
     745・kernel_def.csvの修正
     746        - 符号付きのシンボルの定義に",signed"を付加.
     747
     748・itron.hの修正
     749        - frsm_tskのタイプミスの修正.
     750
     751・コンフィギュレータの修正
     752        - 組込み関数DUMP, TRACE, NOOPを追加.
     753        - $FOREACH$や$IF$等の中身が何もないときに,internal errorになる不具
     754          合を修正(エラーメッセージの適切化).
     755        - $INCLUDE$命令でインクルードしたtfの行番号がずれる不具合を修正.
     756        - 64ビット整数が定義されていないと,CSVファイルでsをつけたレコード
     757          が符号付きと扱われない不具合の修正.
     758        - 型キャストのパース処理に関する不具合の修正.
     759        - エラーの起こった行番号が正しくない不具合の修正.
     760        - 同じtskidに対してDEF_TEXが複数あるエラーのチェックを行うように修正.
     761        - DEF_TEXを使用した時に,TSK.TSKID[tskid]が0になる不具合の修正.
     762        - DEF_INH,CFG_INT,DEF_EXCで同じオブジェクト番号に対する登録が重複し
     763          た場合のエラーチェックを二重に行っている問題の修正.
     764
     765・配布するファイルの修正
     766        - doc/api_spec.txt, ngki_spec.txt, sysstat.txtを除外.
     767        - extensionディレクトリを除外.
     768
     769・ドキュメントの修正,コメントの修正
     770
     771・バージョン番号の更新
     772
     773○ターゲット依存部の要修正箇所(1.3.0 → 1.3.1)
     774
     775(1) スタックサイズのエラーチェックに関する修正箇所
     776        - target.tfでkernel.tfをインクルードする前に,CHECK_STKSZ_ALIGNを,
     777          スタックサイズがどの値の倍数になっていなければならないかを設定す
     778          る.
     779                例)$CHECK_STKSZ_ALIGN = 4$
     780
     781(2) ターゲット依存部のユーザーズマニュアルについて
     782        - ターゲット依存部のユーザーズマニュアルのファイル名と,そのファイ
     783          ルに記述すべき内容を規定した.「ターゲット依存部 ポーティングガイ
     784          ド」の「9.1 ドキュメント」の節を参照すること.
     785
     786----------------------------------------------------------------------
     787
     788                TOPPERS/ASPカーネル
     789                Release 1.2.1 から 1.3.0 への変更点
     790
     791○変更点のリスト
     792
     793・set_tim(システム時刻の設定)の廃止
     794
     795・属性の変更
     796        - TA_DISINTを廃止して,TA_ENAINTを復活.
     797
     798・拡張機能・ターゲット定義機能の有無を判別するマクロ名の変更
     799        - TOPPERS_EXTENSION_MUTEXをTOPPERS_SUPPORT_MUTEXに.
     800        - TOPPERS_EXTENSION_PRI_LEVELをTOPPERS_SUPPORT_PRI_LEVELに.
     801        - SUPPORT_???_???をTOPPERS_SUPPORT_???_???に変更し,ターゲット依存
     802          部での定義をtarget_kernel.hに移動する.
     803
     804・型名・変数名・定数名の変更
     805        - SYSUTIM → SYSUTM,sysutim → sysutm,p_sysutim → p_sysutm
     806        - SIO_ERDY_SND → SIO_RDY_SND,SIO_ERDY_RCV → SIO_RDY_RCV
     807        - sio_ierdy_snd → sio_irdy_snd,sio_ierdy_rcv → sio_irdy_rcv
     808
     809・cfg1_out.cのコンパイル/リンク方法の変更
     810        - cfg1_out.cからtarget_cfg1_out.hをインクルードするように,コンフィ
     811          ギュレータを変更.
     812        - ターゲット依存部でtarget_cfg1_out.hを用意する.
     813        - cfg1_out.cのリンクは,カーネルと同じ方法をとるように変更.
     814
     815・コンフィギュレータの修正
     816        - cfg1_out.cに生成する内容の変更(前記と関連).
     817        - boost 1.35.0に対応.
     818
     819・サンプルプログラムの修正
     820        - タスク内でのループ回数を固定する機能(TASK_LOOP)を導入.
     821
     822・バグフィックス
     823        - 固定長メモリプール領域の確保方法.
     824        - DEF_TEXのエラーで,問題になったDEF_TEXの行番号を表示する.
     825
     826・用語の変更
     827        -「割込みロック」→「全割込みロック」
     828
     829・ドキュメントの修正
     830
     831・バージョン番号の更新.
     832
     833○ターゲット依存部の要修正箇所(1.2.1 → 1.3.0)
     834
     835(1) TA_DISINTの廃止・TA_ENAINTの復活に伴う修正箇所
     836        - TA_DISINTを使った判定をTA_ENAINTを使った判定に変更する.
     837                例)((intatr & TA_DISINT) == 0U) → ((intatr & TA_ENAINT) != 0U)
     838        - CFG_INTの割込み属性にTA_DISINTが設定されていれば,それを消す.
     839                例)CFG_INT(INTNO_SIO, { TA_DISINT | INTATR_SIO, INTPRI_SIO });
     840                → CFG_INT(INTNO_SIO, { INTATR_SIO, INTPRI_SIO });
     841        - CFG_INTの割込み属性にTA_DISINTが設定されていなければ,TA_ENAINTを
     842          加える.
     843                例)CFG_INT(INTNO_TIMER, { INTATR_TIMER, INTPRI_TIMER });
     844                → CFG_INT(INTNO_TIMER, { TA_ENAINT | INTATR_TIMER, INTPRI_TIMER });
     845
     846(2) 拡張機能・ターゲット定義機能の有無を判別するマクロ名の変更に伴う修正箇所
     847        - SUPPORT_???_???をTOPPERS_SUPPORT_???_???に変更し,ターゲット依存
     848          部での定義をtarget_kernel.hに移動する.
     849                TOPPERS_SUPPORT_DIS_INT                 dis_intをサポートする
     850                TOPPERS_SUPPORT_ENA_INT                 ena_intをサポートする
     851                TOPPERS_SUPPORT_GET_UTM                 get_utmをサポートする
     852   - makeoffset.cで,TOPPERS_EXTENSION_MUTEXを参照している場合には,
     853     TOPPERS_SUPPORT_MUTEXに変更する.
     854
     855(3) 型名・変数名・定数名の変更に伴う修正箇所
     856        - SYSUTIM → SYSUTM,sysutim → sysutm,p_sysutim → p_sysutm
     857        - SIO_ERDY_SND → SIO_RDY_SND,SIO_ERDY_RCV → SIO_RDY_RCV
     858        - sio_ierdy_snd → sio_irdy_snd,sio_ierdy_rcv → sio_irdy_rcv
     859        ★sysutimとerdyを大文字小文字を区別せずにサーチするとよい.
     860
     861(4) cfg1_out.cのコンパイル/リンク方法の変更に伴う修正箇所
     862        - ターゲット依存部で,target_cfg1_out.hを用意する.詳しくは,「ター
     863          ゲット依存部 ポーティングガイド」の7.4節を参照.
     864        - 新たに用意したファイルをMANIFESTに追加する.
     865
     866(5) 警告メッセージへの対処
     867        - Makefile.targetに,「COPTS := $(COPTS) -Werror」を追加することを
     868          検討する.カーネル内で厳密な別名規則による警告メッセージが出る場
     869          合には,「KERNEL_CFLAGS := $(KERNEL_CFLAGS) -fno-strict-aliasing」
     870          を追加してもよい.
     871
     872(6) コメントの修正
     873        -「割込みロック」→「全割込みロック」
     874
     875----------------------------------------------------------------------
     876
     877                TOPPERS/ASPカーネル
     878                Release 1.2.0 から 1.2.1 への変更点
     879
     880○変更点のリスト
     881
     882・トレースログ記録のサンプルコードを組み込む方法の変更
     883        - configureに-rオプションを追加.
     884        - sample/Makefileの修正.
     885
     886・Makefileのコンフィギュレータ関連部分の変更
     887        - コンフィギュレータに対するターゲット依存のオプションを,Makefile
     888          のターゲット依存部で記述するように変更.
     889        - コンフィギュレータの各パスのターゲット依存のファイルへの依存関係
     890          を,Makefileのターゲット依存部で記述するように変更.
     891
     892・バージョン番号の更新.
     893
     894○ターゲット依存部の要修正箇所(1.1.0 → 1.2.1)
     895
     896(1) 新しいコンフィギュレータへの対応
     897
     898・target.tf中で,ヘッダファイルと重複した定数値の定義を行っている場合に
     899 は,target_def.cvsに変数記述を行い,重複した定義を削除する.
     900
     901・コンフィギュレータに対するオプションに,target_def.cvsを読み込ませる
     902 指定を追加する.「ターゲット依存部 ポーティングガイド」2.4節の
     903 (2-4-15) 項を参照.
     904
     905・target_check.tfを作成する.「ターゲット依存部 ポーティングガイド」
     906 7.3節参照.
     907
     908・コンフィギュレータの各パスに対して,ターゲット依存のファイルへの依存
     909 関係を定義する.「ターゲット依存部 ポーティングガイド」2.7節参照.
     910
     911(2) データ型と定数の変更・追加
     912
     913・BOOLをbool_tに,TRUEとFALSEをそれぞれtrueとfalseに変更する.ER_BOOLな
     914 どを変更しないように注意すること.コメント中に記述されたこれらのデー
     915 タ型と定数も変更すること.
     916
     917・charをchar_tに変更する.ただし,文字列定数が記述されることが多い引数
     918 等は,コンパイラの警告を避けるために,char *のままとする.ターゲット
     919 依存部で最低限変更しなければならないのは,以下の2箇所.
     920
     921        - target_fput_logの引数
     922        - sio_snd_chrの第2引数
     923
     924・target_stddef.h(またはそこからインクルードされるファイル)に,サイズ
     925 の指定された浮動小数点型(float32_tとdouble64_t),その最大値・最小値
     926 のマクロの定義を追加する.「ターゲット依存部 ポーティングガイド」3.4
     927 節参照.開発環境がGCCでarch/gcc/tool_stddef.hを用いており,float型と
     928 double型がそれぞれIEEE754準拠の単精度浮動小数点数と倍精度浮動小数点数
     929 である場合には,arch/gcc/tool_stddef.hをインクルードする前に,
     930 TOPPERS_STDFLOAT_TYPE1をマクロ定義すればよい.
     931
     932(3) トレースログ記録のサンプルコードの組込み(オプション)
     933
     934・ターゲット依存部を,トレースログ記録のサンプルコードを使用するように
     935 修正する.「ターゲット依存部 ポーティングガイド」6.11.2節参照.
     936
     937(4) TARGETDIR変数の使用
     938
     939・Makefileのターゲット依存部で,ターゲット依存部ディレクトリを参照して
     940 いる箇所で,$(SRCDIR)/target/$(TARGET)を,$(TARGETDIR)に変更する.
     941
     942----------------------------------------------------------------------
     943
     944                TOPPERS/ASPカーネル
     945                Release 1.1.0 から 1.2.0 への変更点
     946
     947○変更点のリスト
     948
     949・コンフィギュレータを新しいバージョンに差し換え
     950        - パス1とパス3にもターゲット依存機能を追加.
     951        - FMPカーネルのクラス記述に対応.
     952        - 追加ファイル(ターゲット非依存部,cfg以下を除く)
    1086953                kernel/kernel_api.csv, kernel_def.csv, kernel_check.tf
    1087         - 追加ファイル(ターゲット依存部)
     954        - 追加ファイル(ターゲット依存部)
    1088955                target_def.csv, target_check.tf
    1089         - sample/Makefileを新しいコンフィギュレータに対応させる.
    1090         - ミューテックス機能拡張でコンフィギュレータのmakeを不要に.
    1091 
    1092 ãƒ»ãƒ‡ãƒ¼ã‚¿åž‹ã¨å®šæ•°ã®å¤‰æ›´ãƒ»è¿½åŠ 
    1093         - BOOL型をbool_t型に変更.
    1094                 BOOL → bool_t,TRUE → true,FALSE → false
    1095                 従来の定義をitron.hに追加.
    1096         - char型をchar_t型に変更.
    1097                 ただし,文字列定数が記述されることが多い引数等は,コンパイラの
    1098                 警告を避けるために,char *のままとする.
    1099         - float32_t, double64_tの追加.
    1100 
    1101 ãƒ»ãƒ†ã‚¹ãƒˆãƒ—ログラムの追加・修正
    1102         - システムコンフィギュレーションファイルからインクルードするコンフィ
    1103           ギュレーションファイルの整理(ボトムアップ順序に).
    1104         - テストプログラムの生成スクリプト(utils/gentest)を作成.
    1105         - ミューテックス機能のテストプログラムを生成スクリプト対応に.
    1106         - ミューテックス機能拡張にtest_mutex7を追加.
    1107 
    1108 ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã‚µãƒ¼ãƒ“スのヘッダファイルのインクルード記述の整理
    1109         - syssvcの下のヘッダファイルは,#include "syssvc/??????.h"でインク
    1110       ルードする(??????.cからインクルードする場合を除く).
    1111         - Makefileから,-I$(SRCDIR)/syssvcを削除.
    1112 
    1113 ãƒ»ã‚«ãƒ¼ãƒãƒ«èµ·å‹•ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®å‡ºåŠ›ï¼ˆbanner)機能の独立
    1114         - syssvc/banner.cfg, banner.hを作成.
    1115         - syslog.cfgから関連する記述を削除.
    1116 
    1117 ãƒ»t_syslog.hとsyslog.hの役割の変更
    1118         - t_syslog.hは,システムログ出力を行うための定義を含むヘッダファイ
    1119           ルとし,システムログ機能を操作するための定義は,syslog.hに移す.
    1120 
    1121 ãƒ»ã‚·ãƒªã‚¢ãƒ«ã‚¤ãƒ³ã‚¿ãƒ•ã‚§ãƒ¼ã‚¹ãƒ‰ãƒ©ã‚¤ãƒã®ãƒ•ãƒ©ãƒƒã‚·ãƒ¥æ–¹æ³•ã®å¤‰æ›´
    1122         - シリアルインタフェースドライバの強制フラッシュ機能は廃止し,未送
    1123           信文字の取出し機能を新設.これを用いた強制フラッシュ処理は,シス
    1124           テムログタスクの終了処理ルーチン側で実施.
    1125 
    1126 ãƒ»ã‚¿ã‚¹ã‚¯ãƒ‡ã‚£ã‚¹ãƒ‘ッチの要否の判定方法の変更
    1127         - タスクディスパッチのå¿
    1128 è¦ãªçŠ¶æ
    1129 ‹ã«ã™ã‚‹é–¢æ•°ã‚’,すべて,タスクディス
    1130           パッチの要否を返すようにし,p_runtskとp_schedtskの比較による判定
    1131           をなるべく使わないように修正.
    1132 
    1133 ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ãƒ­ã‚°è¨˜éŒ²ã®ã‚µãƒ³ãƒ—ルコードの使用方法を規定
    1134         - ポーティングガイドの6.11.2節に,ターゲット依存部でトレースログ記
    1135           録のサンプルコードを使用する方法を規定.
    1136         - DVE68Kターゲット依存部をそれに従うように修正.
    1137 
    1138 ãƒ»TARGETDIR変数の導å
    1139 ¥
    1140         - sample/Makefileで,ターゲット依存部ディレクトリを示す変数
    1141           TARGETDIRを定義.
    1142         - これを使うように,ターゲット依存部を修正.
    1143 
    1144 ãƒ»ãã®ä»–のバグフィックス
    1145         - kernel_rename.def:log_???_entry → log_???_enter
    1146 
    1147 ãƒ»ãã®ä»–の修正
    1148         - T_RLOG → T_SYSLOG_RLOG
    1149         - syssvcの下のヘッダファイルにもthrow()をå
    1150 ¥ã‚Œã‚‹ï¼Ž
    1151         - makerelease:RELEAEディレクトリがなければ作る.
    1152 
    1153 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å
    1154 
    1155 å®Ÿï¼Žã‚³ãƒ¡ãƒ³ãƒˆã®è¿½åŠ ãƒ»ä¿®æ­£ï¼Ž
    1156         - doc/migration.txtを作成(現時点では未完成).
    1157 
    1158 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°ï¼Ž
    1159 
    1160 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®è¦ä¿®æ­£ç®‡æ‰€ï¼ˆ1.1.0 → 1.2.0)
    1161 
    1162 (1) 新しいコンフィギュレータへの対応
    1163 
    1164 ãƒ»target.tf中で,ヘッダファイルと重複した定数値の定義を行っている場合に
    1165 ã€€ã¯ï¼Œtarget_def.cvsに変数記述を行い,重複した定義を削除する.
    1166 
    1167 ãƒ»target_check.tfを作成する.「ターゲット依存部 ポーティングガイド」
    1168 ã€€7.3節参ç
    1169 §ï¼Ž
    1170 
    1171 (2) データ型と定数の変更・追加
    1172 
    1173 ãƒ»BOOLをbool_tに,TRUEとFALSEをそれぞれtrueとfalseに変更する.ER_BOOLな
    1174 ã€€ã©ã‚’変更しないように注意すること.コメント中に記述されたこれらのデー
    1175 ã€€ã‚¿åž‹ã¨å®šæ•°ã‚‚変更すること.
    1176 
    1177 ãƒ»charをchar_tに変更する.ただし,文字列定数が記述されることが多い引数
    1178 ã€€ç­‰ã¯ï¼Œã‚³ãƒ³ãƒ‘イラの警告を避けるために,char *のままとする.ターゲット
    1179 ã€€ä¾å­˜éƒ¨ã§æœ€ä½Žé™å¤‰æ›´ã—なければならないのは,以下の2箇所.
    1180 
    1181         - target_fput_logの引数
    1182         - sio_snd_chrの第2引数
    1183 
    1184 ãƒ»target_stddef.h(またはそこからインクルードされるファイル)に,サイズ
    1185 ã€€ã®æŒ‡å®šã•ã‚ŒãŸæµ®å‹•å°æ•°ç‚¹åž‹ï¼ˆfloat32_tとdouble64_t),その最大値・最小値
    1186 ã€€ã®ãƒžã‚¯ãƒ­ã®å®šç¾©ã‚’追加する.「ターゲット依存部 ポーティングガイド」3.4
    1187 ã€€ç¯€å‚ç
    1188 §ï¼Žé–‹ç™ºç’°å¢ƒãŒGCCでarch/gcc/tool_stddef.hを用いており,float型と
    1189 ã€€double型がそれぞれIEEE754準拠の単精度浮動小数点数と倍精度浮動小数点数
    1190 ã€€ã§ã‚る場合には,arch/gcc/tool_stddef.hをインクルードする前に,
    1191 ã€€TOPPERS_STDFLOAT_TYPE1をマクロ定義すればよい.
    1192 
    1193 (3) トレースログ記録のサンプルコードの使用方法に従った修正(オプション)
    1194 
    1195 ãƒ»ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã‚’,トレースログ記録のサンプルコードを使用するように
    1196 ã€€ä¿®æ­£ã™ã‚‹ï¼Žã€Œã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ ポーティングガイド」6.11.2節参ç
    1197 §ï¼Ž
    1198 
    1199 (4) TARGETDIR変数の使用
    1200 
    1201 ãƒ»Makefileのターゲット依存部で,ターゲット依存部ディレクトリを参ç
    1202 §ã—て
    1203 ã€€ã„る箇所で,$(SRCDIR)/target/$(TARGET)を,$(TARGETDIR)に変更する.
    1204 
    1205 ----------------------------------------------------------------------
    1206 
    1207                 TOPPERS/ASPカーネル
    1208                 Release 1.0.0 から 1.1.0 への変更点
    1209 
    1210 â—‹å¤‰æ›´ç‚¹ã®ãƒªã‚¹ãƒˆ
    1211 
    1212 ãƒ»frsm_tskをカーネルから削除.itron.hにマクロ定義として残す
    1213 
    1214 ãƒ»ã‚«ãƒ¼ãƒãƒ«ã®ãƒˆãƒ¬ãƒ¼ã‚¹ãƒ­ã‚°æ©Ÿèƒ½ã®æ”¹ä¿®
    1215         - トレースログマクロを使う側のファイルで,デフォルト定義を与える.
    1216         - nulltraceを廃止.logtraceを修正.
    1217         - ターゲット依存部でのトレースログ取得方法を標準化.
    1218         - INTHDR_ENTRYとEXCHDR_ENTRYにパラメータを追加.
    1219         - target_putcを,target_fput_logにリネーム.
    1220 
    1221 ãƒ»ã‚·ã‚¹ãƒ†ãƒ ãƒ­ã‚°æ©Ÿèƒ½ã‚’カーネルから外して,システムサービスの位置付けに
    1222         - syslog.c,syslog.h,banner.cを,kernelからsyssvcに移動.
    1223         - システムログ機能のサービスコールの名称にsyslog_を付加.
    1224 
    1225 ãƒ»ã‚·ã‚¹ãƒ†ãƒ ã‚µãƒ¼ãƒ“スのディレクトリの位置付けの明確化
    1226         - logtask.hとserial.hを,includeからsyssvcに移動.
    1227         - vasyslog.cを,libraryからsyssvcに移動.
    1228 
    1229 ãƒ»ãƒªãƒªãƒ¼ã‚¹ãƒ‘ッケージの形æ
    1230 ‹ã‚’æ•´å‚™
    1231         - utils/makereleaseを作成.utils/genmanifestを削除.
    1232         - MANIFESTファイルに,パッケージ名とバージョン番号を記述.
    1233         - MANIFESTファイルのINCLUDE記述を変更.
    1234 
    1235 ãƒ»å‡ºå
    1236 ¥å£å‡¦ç†ã®ç•ªåœ°ã®å¤‰æ•°ï¼ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰åã®å¤‰æ›´
    1237         - 割込みハンドラ/CPU例外ハンドラの出å
    1238 ¥å£å‡¦ç†ã®ç•ªåœ°ï¼ˆFP型)の変数/
    1239           フィールド名をint_entry/exc_entryに変更.コメントも修正.
    1240 
    1241 ãƒ»DVE68K/M68K依存部の修正.
    1242         - target.tf中のエラーメッセージの修正.
    1243         - logtraceを使うように修正.
    1244 
    1245 ãƒ»ãã®ä»–の修正.
    1246         - 固定長メモリプール初期化ブロックの生成に関するバグを修正.
    1247         - configureで,cfgが生成されているかのチェックを厳密化.
    1248         - sample/Makefileにおいて,ライブラリに関する依存記述の修正.
    1249         - sample/sample1.cfgにおいて,システムサービスの定義順を変更.
    1250         - extension/MANIFESTに,MANIFESTを追加.
    1251 
    1252 ãƒ»ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã®å
    1253 
    1254 å®Ÿï¼Žã‚³ãƒ¡ãƒ³ãƒˆã®è¿½åŠ ãƒ»ä¿®æ­£ï¼Ž
    1255 
    1256 ãƒ»ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã®æ›´æ–°ï¼Ž
    1257 
    1258 â—‹ã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã®ä¿®æ­£ç®‡æ‰€ï¼ˆ1.0.0 → 1.1.0)
    1259 
    1260 ãƒ»ã‚«ãƒ¼ãƒãƒ«ã®ãƒˆãƒ¬ãƒ¼ã‚¹ãƒ­ã‚°æ©Ÿèƒ½ã®ä¸­ã§ï¼Œã‚¿ãƒ¼ã‚²ãƒƒãƒˆä¾å­˜éƒ¨ã§å®Ÿè£
    1261 ã™ã‚‹å¿
    1262 è¦ãŒã‚
    1263 ã€€ã‚‹ã‚‚のを実è£
    1264 ã™ã‚‹ï¼Žè©³ã—くは,porting.txtの6.1.2節,6.5.2節,6.6.1節,
    1265 ã€€6.7.1節を参ç
    1266 §ã™ã‚‹ã“と.
    1267 
    1268 ãƒ»INTHDR_ENTRYとEXCHDR_ENTRYに2番目のパラメータが追加されたのに対応する.
    1269 
    1270 ãƒ»TARGET_NAMEとCOPYRIGHT_TARGETを,target_config.hからtarget_syssvc.hに
    1271 ã€€ç§»å‹•ã™ã‚‹ï¼ŽCOPYRIGHT_TARGETはTARGET_COPYRIGHTにリネームする.
    1272 
    1273 ãƒ»target_putcをtarget_fput_logにリネームし,その宣言をtarget_config.hか
    1274 ã€€ã‚‰target_syssvc.hに移動する.関数定義は,target_config.cに置いたまま
    1275 ã€€ã§ã‚ˆã„.関数宣言・定義の上のコメントを修正する.
    1276 
    1277 ãƒ»å‰²è¾¼ã¿ãƒãƒ³ãƒ‰ãƒ©ã®å‡ºå
    1278 ¥å£å‡¦ç†ã®ç•ªåœ°ï¼ˆFP型)の変数/フィールド名をinthdr
    1279 ã€€ã‹ã‚‰int_entryに,CPU例外ハンドラの出å
    1280 ¥å£å‡¦ç†ã®ç•ªåœ°ï¼ˆFP型)の変数/
    1281 ã€€ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰åã‚’exchdrからexct_entryに,それぞれ変更する.これに関連す
    1282 ã€€ã‚‹x_define_inhとx_define_excのコメントを修正する.
    1283 
    1284 ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ãƒ­ã‚°ã‚’記録しない場合には,target_config.hから「#include
    1285 ã€€"nulltrace/trace_config.h"」を削除する.
    1286 
    1287 ãƒ»ãƒˆãƒ¬ãƒ¼ã‚¹ãƒ­ã‚°ã‚’記録する場合には,target_syssvc.hに「#include
    1288 ã€€"logtrace/trace_config.h"」を追加する.また,target_config.h中の
    1289 ã€€ã€Œ#include "logtrace/trace_config.h"」の位置を前の方に移動する.
    1290 
    1291 ãƒ»MANIFESTとE_PACKAGEを作成/修正する.MANIFEST中に,å¿
    1292 è¦ã«å¿œã˜ã¦ï¼Œ
    1293 ã€€PACKAGEディレクティブとVERSIONディレクティブを追加する.また,
    1294 ã€€INCLUDEディレクティブのパラメータを,ディレクトリ名からファイル名に変
    1295 ã€€æ›´ã™ã‚‹ï¼Žã‚¿ãƒ¼ã‚²ãƒƒãƒˆã‚·ã‚¹ãƒ†ãƒ æ¯Žã«ï¼ŒE_PACKAGEを作成する.詳しくは,
    1296 ã€€user.txtの2章とporting.txtの9.1節を参ç
    1297 §ã™ã‚‹ã“と.
    1298 
    1299 ----------------------------------------------------------------------
     956        - sample/Makefileを新しいコンフィギュレータに対応させる.
     957        - ミューテックス機能拡張でコンフィギュレータのmakeを不要に.
     958
     959・データ型と定数の変更・追加
     960        - BOOL型をbool_t型に変更.
     961                BOOL → bool_t,TRUE → true,FALSE → false
     962                従来の定義をitron.hに追加.
     963        - char型をchar_t型に変更.
     964                ただし,文字列定数が記述されることが多い引数等は,コンパイラの
     965                警告を避けるために,char *のままとする.
     966        - float32_t, double64_tの追加.
     967
     968・テストプログラムの追加・修正
     969        - システムコンフィギュレーションファイルからインクルードするコンフィ
     970          ギュレーションファイルの整理(ボトムアップ順序に).
     971        - テストプログラムの生成スクリプト(utils/gentest)を作成.
     972        - ミューテックス機能のテストプログラムを生成スクリプト対応に.
     973        - ミューテックス機能拡張にtest_mutex7を追加.
     974
     975・システムサービスのヘッダファイルのインクルード記述の整理
     976        - syssvcの下のヘッダファイルは,#include "syssvc/??????.h"でインク
     977      ルードする(??????.cからインクルードする場合を除く).
     978        - Makefileから,-I$(SRCDIR)/syssvcを削除.
     979
     980・カーネル起動メッセージの出力(banner)機能の独立
     981        - syssvc/banner.cfg, banner.hを作成.
     982        - syslog.cfgから関連する記述を削除.
     983
     984・t_syslog.hとsyslog.hの役割の変更
     985        - t_syslog.hは,システムログ出力を行うための定義を含むヘッダファイ
     986          ルとし,システムログ機能を操作するための定義は,syslog.hに移す.
     987
     988・シリアルインタフェースドライバのフラッシュ方法の変更
     989        - シリアルインタフェースドライバの強制フラッシュ機能は廃止し,未送
     990          信文字の取出し機能を新設.これを用いた強制フラッシュ処理は,シス
     991          テムログタスクの終了処理ルーチン側で実施.
     992
     993・タスクディスパッチの要否の判定方法の変更
     994        - タスクディスパッチの必要な状態にする関数を,すべて,タスクディス
     995          パッチの要否を返すようにし,p_runtskとp_schedtskの比較による判定
     996          をなるべく使わないように修正.
     997
     998・トレースログ記録のサンプルコードの使用方法を規定
     999        - ポーティングガイドの6.11.2節に,ターゲット依存部でトレースログ記
     1000          録のサンプルコードを使用する方法を規定.
     1001        - DVE68Kターゲット依存部をそれに従うように修正.
     1002
     1003・TARGETDIR変数の導入
     1004        - sample/Makefileで,ターゲット依存部ディレクトリを示す変数
     1005          TARGETDIRを定義.
     1006        - これを使うように,ターゲット依存部を修正.
     1007
     1008・その他のバグフィックス
     1009        - kernel_rename.def:log_???_entry → log_???_enter
     1010
     1011・その他の修正
     1012        - T_RLOG → T_SYSLOG_RLOG
     1013        - syssvcの下のヘッダファイルにもthrow()を入れる.
     1014        - makerelease:RELEAEディレクトリがなければ作る.
     1015
     1016・ドキュメントの充実.コメントの追加・修正.
     1017        - doc/migration.txtを作成(現時点では未完成).
     1018
     1019・バージョン番号の更新.
     1020
     1021○ターゲット依存部の要修正箇所(1.1.0 → 1.2.0)
     1022
     1023(1) 新しいコンフィギュレータへの対応
     1024
     1025・target.tf中で,ヘッダファイルと重複した定数値の定義を行っている場合に
     1026 は,target_def.cvsに変数記述を行い,重複した定義を削除する.
     1027
     1028・target_check.tfを作成する.「ターゲット依存部 ポーティングガイド」
     1029 7.3節参照.
     1030
     1031(2) データ型と定数の変更・追加
     1032
     1033・BOOLをbool_tに,TRUEとFALSEをそれぞれtrueとfalseに変更する.ER_BOOLな
     1034 どを変更しないように注意すること.コメント中に記述されたこれらのデー
     1035 タ型と定数も変更すること.
     1036
     1037・charをchar_tに変更する.ただし,文字列定数が記述されることが多い引数
     1038 等は,コンパイラの警告を避けるために,char *のままとする.ターゲット
     1039 依存部で最低限変更しなければならないのは,以下の2箇所.
     1040
     1041        - target_fput_logの引数
     1042        - sio_snd_chrの第2引数
     1043
     1044・target_stddef.h(またはそこからインクルードされるファイル)に,サイズ
     1045 の指定された浮動小数点型(float32_tとdouble64_t),その最大値・最小値
     1046 のマクロの定義を追加する.「ターゲット依存部 ポーティングガイド」3.4
     1047 節参照.開発環境がGCCでarch/gcc/tool_stddef.hを用いており,float型と
     1048 double型がそれぞれIEEE754準拠の単精度浮動小数点数と倍精度浮動小数点数
     1049 である場合には,arch/gcc/tool_stddef.hをインクルードする前に,
     1050 TOPPERS_STDFLOAT_TYPE1をマクロ定義すればよい.
     1051
     1052(3) トレースログ記録のサンプルコードの使用方法に従った修正(オプション)
     1053
     1054・ターゲット依存部を,トレースログ記録のサンプルコードを使用するように
     1055 修正する.「ターゲット依存部 ポーティングガイド」6.11.2節参照.
     1056
     1057(4) TARGETDIR変数の使用
     1058
     1059・Makefileのターゲット依存部で,ターゲット依存部ディレクトリを参照して
     1060 いる箇所で,$(SRCDIR)/target/$(TARGET)を,$(TARGETDIR)に変更する.
     1061
     1062----------------------------------------------------------------------
     1063
     1064                TOPPERS/ASPカーネル
     1065                Release 1.0.0 から 1.1.0 への変更点
     1066
     1067○変更点のリスト
     1068
     1069・frsm_tskをカーネルから削除.itron.hにマクロ定義として残す
     1070
     1071・カーネルのトレースログ機能の改修
     1072        - トレースログマクロを使う側のファイルで,デフォルト定義を与える.
     1073        - nulltraceを廃止.logtraceを修正.
     1074        - ターゲット依存部でのトレースログ取得方法を標準化.
     1075        - INTHDR_ENTRYとEXCHDR_ENTRYにパラメータを追加.
     1076        - target_putcを,target_fput_logにリネーム.
     1077
     1078・システムログ機能をカーネルから外して,システムサービスの位置付けに
     1079        - syslog.c,syslog.h,banner.cを,kernelからsyssvcに移動.
     1080        - システムログ機能のサービスコールの名称にsyslog_を付加.
     1081
     1082・システムサービスのディレクトリの位置付けの明確化
     1083        - logtask.hとserial.hを,includeからsyssvcに移動.
     1084        - vasyslog.cを,libraryからsyssvcに移動.
     1085
     1086・リリースパッケージの形態を整備
     1087        - utils/makereleaseを作成.utils/genmanifestを削除.
     1088        - MANIFESTファイルに,パッケージ名とバージョン番号を記述.
     1089        - MANIFESTファイルのINCLUDE記述を変更.
     1090
     1091・出入口処理の番地の変数/フィールド名の変更
     1092        - 割込みハンドラ/CPU例外ハンドラの出入口処理の番地(FP型)の変数/
     1093          フィールド名をint_entry/exc_entryに変更.コメントも修正.
     1094
     1095・DVE68K/M68K依存部の修正.
     1096        - target.tf中のエラーメッセージの修正.
     1097        - logtraceを使うように修正.
     1098
     1099・その他の修正.
     1100        - 固定長メモリプール初期化ブロックの生成に関するバグを修正.
     1101        - configureで,cfgが生成されているかのチェックを厳密化.
     1102        - sample/Makefileにおいて,ライブラリに関する依存記述の修正.
     1103        - sample/sample1.cfgにおいて,システムサービスの定義順を変更.
     1104        - extension/MANIFESTに,MANIFESTを追加.
     1105
     1106・ドキュメントの充実.コメントの追加・修正.
     1107
     1108・バージョン番号の更新.
     1109
     1110○ターゲット依存部の修正箇所(1.0.0 → 1.1.0)
     1111
     1112・カーネルのトレースログ機能の中で,ターゲット依存部で実装する必要があ
     1113 るものを実装する.詳しくは,porting.txtの6.1.2節,6.5.2節,6.6.1節,
     1114 6.7.1節を参照すること.
     1115
     1116・INTHDR_ENTRYとEXCHDR_ENTRYに2番目のパラメータが追加されたのに対応する.
     1117
     1118・TARGET_NAMEとCOPYRIGHT_TARGETを,target_config.hからtarget_syssvc.hに
     1119 移動する.COPYRIGHT_TARGETはTARGET_COPYRIGHTにリネームする.
     1120
     1121・target_putcをtarget_fput_logにリネームし,その宣言をtarget_config.hか
     1122 らtarget_syssvc.hに移動する.関数定義は,target_config.cに置いたまま
     1123 でよい.関数宣言・定義の上のコメントを修正する.
     1124
     1125・割込みハンドラの出入口処理の番地(FP型)の変数/フィールド名をinthdr
     1126 からint_entryに,CPU例外ハンドラの出入口処理の番地(FP型)の変数/
     1127 フィールド名をexchdrからexct_entryに,それぞれ変更する.これに関連す
     1128 るx_define_inhとx_define_excのコメントを修正する.
     1129
     1130・トレースログを記録しない場合には,target_config.hから「#include
     1131 "nulltrace/trace_config.h"」を削除する.
     1132
     1133・トレースログを記録する場合には,target_syssvc.hに「#include
     1134 "logtrace/trace_config.h"」を追加する.また,target_config.h中の
     1135 「#include "logtrace/trace_config.h"」の位置を前の方に移動する.
     1136
     1137・MANIFESTとE_PACKAGEを作成/修正する.MANIFEST中に,必要に応じて,
     1138 PACKAGEディレクティブとVERSIONディレクティブを追加する.また,
     1139 INCLUDEディレクティブのパラメータを,ディレクトリ名からファイル名に変
     1140 更する.ターゲットシステム毎に,E_PACKAGEを作成する.詳しくは,
     1141 user.txtの2章とporting.txtの9.1節を参照すること.
     1142
     1143----------------------------------------------------------------------
Note: See TracChangeset for help on using the changeset viewer.