TOPPERS LOGO
Loading

 Topics | About Project | ASP3 Kernel | Documents | Download | Community | Report | Contacts | FAQ
  • 会員向けページ
    • メーリングリスト
    • 早期リリース
    • 技術ドキュメント
    • 開発支援
    • 会員情報登録・変更
    • 会員向けイベント情報
  • プロジェクトについて
    • TOPPERSプロジェクトとは
    • TOPPERSのロゴについて
    • TOPPERS公式マスコット「とぱめ」
    • TOPPERSライセンス
    • プロジェクト規則集
    • 貸借対照表
    • プロジェクトの組織
    • 関連団体、プロジェクトメンバ
    • 受賞
    • 入会のススメと申込み方法
    • 開発成果物の利用報告
    • FAQ
    • 問い合わせ・事務局案内図
  • 取り組み
    • ETロボコンへの取組み
    • プレス発表
    • ニュースレター
    • コンテスト
    • 一般向けイベント情報
    • TOPPERSカンファレンス
    • TOPPERS開発者会議
    • 過去の取り組み
      • 公的資金によるプロジェクト
      • ソフトウェア開発委託事業
      • 公募型事業
      • 過去のTOPPERSカンファレンス
      • 過去のTOPPERS開発者会議
  • 開発成果物
    • リアルタイムカーネル
      • TOPPERS/ASP3カーネル
      • TOPPERS/HRP3カーネル
      • TOPPERS/FMP3カーネル
      • TOPPERS/HRMP3カーネル
      • TOPPERS/ASPカーネル
      • TOPPERS/JSPカーネル
      • TOPPERS/FMPカーネル
      • TOPPERS/HRP2カーネル
      • TOPPERS/SSPカーネル
      • TOPPERS/PARK
      • TOPPERS/FDMPカーネル
      • TOPPERS/FI4カーネル
      • TOPPERS/HRPカーネル
      • TOPPERS/ATK1
    • AUTOSAR関連
      • TOPPERS/ATK2
      • TOPPERS/A-RTEGEN
      • TOPPERS/A-COMSTACK
      • TOPPERS/A-WDGSTACK
      • TOPPERS/A-OSBENCH
      • TOPPERS/AKTSP
    • TOPPERS/EV3RT(EV3 Platform)
    • TECS(コンポーネントシステム)
    • TINET(TCP/IPスタック)
    • TOPPERS/ECNL
    • CAN/LIN通信ミドルウェア
    • FatFs for TOPPERS
    • SafeG
    • SafeG64
    • SafeG-M
    • SafeG-Auto
    • MDCOM
    • TOPPERS BASE PLATFORM
    • Athrill
    • TOPPERS Test Suite Package(TOPPERS新世代カーネル)
    • TA2LIB
    • TOPPERS新世代カーネル用コンフィギュレータ
    • その他
      • TOPPERS Builder Bootable CD-ROM イメージ
      • TLV(トレースログ可視化ツール)
      • BridgePoint for JSP1.4
      • TOPPERS C++ APIテンプレートライブラリ
      • TOPPERSカーネルテストスイート(μITRON4.0仕様)
      • Remote Link Loader(RLL)
      • ダイナミックローディングマネージャ(DLM)
      • TOPPERSカーネル向けシミュレーション環境
  • 教育コンテンツ
    • 初級実装セミナー教材
    • 中級実装セミナー教材
    • 基礎1実装セミナー教材
    • 基礎2実装セミナー教材
    • 基礎3実装セミナー教材
    • 基礎ハードウェア基本設計セミナー教材
    • TOPPERS BASE PLATFORM対応基礎1,2,3,1.5、ハードウェア実装ウェブコンテンツ
    • ARM7版基礎1、2、3実装セミナー教材
    • TOPPERS BASE PLATFORM対応版基礎1、2、3セミナー教材
    • 新上級1,2セミナー教材
    • 二足歩行ロボット教材
    • TOPPERS版鹿威し
  • ドキュメント
    • TOPPERS第3世代カーネル統合仕様書
    • TOPPERS新世代カーネル統合仕様書
    • TOPPERS新世代カーネルへのマイグレーションガイド
    • TOPPERS新世代カーネル用コンフィギュレータ関連仕様書
    • 機能分散マルチプロセッサ向けリアルタイムカーネル仕様書
  • ダウンロード
    • ダウンロードページ一覧
  • 関連製品
    • トータルソリューション
    • 開発キット・開発環境・ツール
    • ミドルウェア・ソフトウェア部品
    • サポート・サービス
    • 教育・教材
    • ハードウェア
  • 利用事例
    • 適用事例
    • ユーザ
  • コミュニティ情報
    • ユーザーズフォーラム
    • ソフトウェア
    • 統合開発環境
    • 外部リンク
    • Contributed Software
    • Contributed Software(GitHub)
    • AUTOSAR情報サイト
  • その他の情報
    • 雑誌記事・書籍

TOPPERS/FMPカーネル更新履歴

Release 1.4.1 の Release 1.4.0 との主な違い
  • force_unlock_spin()において,スピンロックを解放後にlock_flgをfalseにしていた問題を修正.
Release 1.4.0 の Release 1.3.1 との主な違い
  • 文字コードをUTF-8に変更.
  • make depend を廃止.
  • オブジェクトファイルを obj 以下に生成するように変更.
Release 1.3.1 の Release 1.3.0 との主な違い
  • ./kernel/wait.c
    • init_wait_queue()において、ロックの返却のためにrelease_tsk_lock() を使っていた問題の修正。
Release 1.3.0 の Release 1.2.3 との主な違い
  • ./kernel/kernel_impl.h
    • 存在しないkerflgのextern宣言を削除。
  • ./kernel/pridataq.c
    • ipsnd_pdq()においてロックを全て解放する前に割込みを許可するパスが存在していた問題を修正。
  • ASP 1.9.1対応
Release 1.2.3 の Release 1.2.0 との主な違い
  • システムログが使用するポート数と実際のポート数の整合性チェック
    • syslog.cでチェックするようにした。
  • 複文をdefineする場合は、do {} while(false)で囲むよう修正
  • ARMCC対応
    • ARM依存部がARMCCに対応した。
  • システムログがグローバル方式時に宣言していたスピンロックを削除
    • SILにより実現しているため不要なので削除
  • CygwinとWindowsのシステム時刻差異問題の対応
    • Makefile で touch に -r を付加
  • テスト用ラベル追加マクロの追加
    • タイミング依存テスト用に追加。
  • トレースログのディフォルトの時間取得方法の修正
    • システムティックの取得方法が古かったため修正。
  • perlのバージョンアップ追従
    • doやgetopt.plがサポートされなくなったためスクリプトを変更。
  • ./kernel/dataqueue.c
    • ipsnd_dtq()/ifsnd_dtq()において、ロックを全て解放する前に割込みを許可するパスが存在していた問題を修正。
  • ./kernel/kernel.tf
    • 使用していないデータ MBXCB _kernel_mbxcb_table[] を削除。
Release 1.2.0 の Release 1.1.1 との主な違い
  • リリース方法をASPと同様に変更
  • コンフィギュレータ 1.7.0対応
  • ASP 1.7.0 対応
  • TTSPによる検証済み
  • 多くのバグの修正(詳細はversion.txtを参照)
Release 1.1.1 の Release 1.1.0 との主な違い
  • apsh2ad_gcc(sh2a_dual_gcc)依存部の追加
  • kzm_ca9_gcc依存部の追加
  • t_rtskの次の起動時の割付けプロセッサのIDを格納するメンバ名の修正
  • サンプルプログラムのグローバルタイマ方式のサポート
  • システムログ出力のマイグレーション対応
  • システムログ出力の共有対応
  • その他ターゲット依存部毎の更新
Release 1.1.0 の Release 1.0.2 との主な違い
  • ロックマクロの見直しと関数化
  • 割込み処理モデルの統合仕様書への追従
  • プロセッサ間を跨ぐAPIの実行時間改善
  • プロセッサ毎に持つターゲット依存の情報のPCBへの統合
  • SH4Aのサポート
  • 細かいバグの修正
Release 1.0.2 の Release 1.0.1 との主な違い
  • porting.txt の修正と追記
  • CHECK_DISPATCH() 使用箇所の変更
    CHECK_TSKCTX_UNL() もしくは CHECK_INTCTX_UNL() に変更 タスクディスパッチ可能状態(dspflg)のチェックをCPUロック状態後にチェックするように変更.該当するAPIは以下の通り
    • dataqueue.c: snd_dtq()
    • dataqueue.c: tsnd_dtq()
    • dataqueue.c: rcv_dtq()
    • dataqueue.c: trcv_dtq()
    • eventflag.c: wai_flg()
    • eventflag.c: twai_flg()
    • mailbox.c: rcv_mbx()
    • mailbox.c: trcv_mbx()
    • mempfix.c: get_mpf()
    • mempfix.c: tget_mpf()
    • pridataq.c: snd_pdq()
    • pridataq.c: tsnd_pdq()
    • pridataq.c: rcv_pdq()
    • pridataq.c: trcv_pdq()
    • semaphore.c: wai_sem()
    • semaphore.c: twai_sem()
    • task_sync.c: slp_tsk()
    • task_sync.c: tslp_tsk()
    • task_sync.c: dly_tsk()
  • CHECK_DISPATCH() の削除
  • CHECK_TSKCTX_UNL()/CHECK_INTCTX_UNL() の変更
    sense_tskctx_unl()/sense_intctx_unl() を呼び出すように変更
  • sense_tskctx_unl()/sense_intctx_unl() の追加
  • sense_context()/[tix]_sense_lock()のマイグレーション対応
    CPUロック解除状態で呼び出されるため,実行中にマイグレーションされて も問題ないように修正.具体的には,CPU ID を取得してCPU固有のデータを アクセスする箇所をCPUロック状態で実行するように変更.
  • CHECK_NONSELF()の削除と使用箇所の修正
    割込み禁止前にチェックすると,マイグレーションされた場合に,異なるプ ロセッサの値を読み込む可能性があるため,割込みロック後にチェックする ように変更.該当するAPIは以下の通り.
    • task_manage.c : ter_tsk() : ジャイアントロック用
    • task_manage.c : ter_tsk() : プロセッサロック・細粒度ロック用
  • CHECK_LOCSPN()の削除
    使用していないため削除.
Release 1.0.1 の Release 1.0.0 との主な違い
  • 共通部
    • ディスパッチ禁止状態のプロセッサのタスクからディスパッチ許可状態の別 プロセッサに mrot_rdq してもローテートされない問題を修正
    • call_texrtn()で他のタスクにディスパッチする際の問題を修正 タスクロックを取得したいたまま,ディスパッチしていたため,解放して呼 び出すように変更.
    • 改行コードをLFに統一.
    • 「CPU例外番号」ないしは「例外番号」を「CPU例外ハンドラ番号」に統一
    • imact_tskでプロセッサIDのチェックが抜けていた問題を修正
    • プロセッサロック時のT_ACQUIRE_NESTED_LOCK_AND_CHECK_RUNNABLEの修正
    • msta_cycでTA_PHS属性でない周期ハンドラの起動時刻を起動位相に修正
    • mact_tskにより起動要求がキューイングされたタスクを ter_tsk しても マイグレーションされない問題を修正
    • バリア同期関連のコードのループ変数を volatile を付加
    • ext_tskでマイグレーションする場合にマイグレーション要求がクリアされ ない問題を修正
    • ref_spnがCPUロック状態で正常終了する問題を修正
    • get_pid/iget_pidがCPUロック状態で正常終了する問題を修正
    • msta_alm()/imsta_alm()/msta_cyc()をTPRC_INI指定で発行すると E_ID が 返る問題を修正
    • imsta_alm() を TPRC_INI 指定で発行しても対象アラームハンドラが起動さ れない問題を修正
    • スピンロックを取得した状態で,loc_cpu()/iloc_cpu()/unl_cpu() /iunl_cpu()を発行すると E_CTX エラーとなる問題を修正
    • try_spn/itry_spnで既にロック獲得されている場合のエラーコードが E_TMOUT になる問題の修正
    • ref_spnで他コアからスピンロックの状態を参照できない問題を修正
    • マクロ名の変更(TPRC_INIT -> TPRC_INI)
    • unl_spn/iunl_spnのエラーコードの修正
    • ena_int/dis_intのチェックに関する修正
    • sus_tskのロックマクロの変更
    • T_ACQUIRE_NESTED_DUAL_LOCK_AND_CHECK_MIG()の修正
    • wait_tmoutが使用するロックマクロの変更
    • ext_tskの使用するロックマクロの変更
    • sus_tskの使用するロックマクロの変更
    • stp_cyc/ref_cycの使用するロックマクロの変更
    • mrot_rdqで使用するロックマクロの修正
    • fsnd_dtqでの使用するロックマクロの修正
    • can_wupでの使用するロックマクロの修正
    • 別プロセッサに所属する実行状態のタスクに対するref_tskを発行した 場合の問題の修正.
    • 未仕様の管理ブロックが生成される問題を修正
  • ARM依存部
    • 「CPU例外番号」ないしは「例外番号」を「CPU例外ハンドラ番号」に統一.
    • 例外フレーム入れる例外前の割込み優先度マスクの値をターゲット依存の 値から外部表現に変更.
  • MPCore依存部
    • CPUEXC3 と CPUEXC4 を修正. サンプルプログラム用の定義(CPUEXC1...) をターゲット依存部に異動
    • INTHDR_ENTRY() でextern宣言を出力しないように変更.
  • AT91SKYEY依存部
    • newlibのサポート.サポートに伴い,SkyEyeはTOPPERSプロジェクトから公 開している SkyEye -V1.2 DeviceManager Extension 2.0.3 以降 が必要とな る.
    • gcovのサポート.
    • lcovのサポート.
    • target_timer_initialize()でタイマ周期にTIMER_CLOCKの値を反映するよう に修正.
    • 性能評価用のマクロをサイクルカウンタの値を取得するように定義.
  • CT11MPCore依存部
    • サンプルプログラム用の定義(CPUEXC1...) をターゲット依存部に異動.
  • Nios II 依存部
    • 「CPU例外番号」ないしは「例外番号」を「CPU例外ハンドラ番号」に統一.
  • テストプログラム関連
    • test/test_mact_tsk{1,2,3} 及び test/test_mig_tsk{1,2}が動作しない問 題を修正.
    • テストライブラリにバリア同期関数を追加
    • チェックポイント表示時にプロセッサIDも同時に表示
    • チェックポイント関数で割込みロック後にプロセッサIDを取得していた問 題を修正
    • チェックポイント関数と完了チェックポイントでのPRCIDの取得をsil関数 に変更
    • test_spin_lock.c の修正.
    • test_mact_tsk2.c の修正.
    • CPU例外のテスト(シングルプロセッサ)を追加.
    • タスク例外のテスト(シングルプロセッサ)を追加.
    • セマフォのテスト(シングルプロセッサ)を追加.
    • システム状態に関するテスト(シングルプロセッサ)を追加.
  • 性能評価プログラム関連
    • sig_semの実行時間計測プログラムの追加

Newsletterのバックナンバーはこちら

Tweets by ToppersJP


Copyright (C) 2000 - 2026 by TOPPERS Project, Inc. All Rights Reserved.