(toppers-users 4141) Re: 最大タスク数の変更について(Re: Re: TOPPERS/SSPのリンクエラーについて)

koizumi yoshiyuki koizumiyoshiyuki @ gmail.com
2013年 9月 24日 (火) 16:28:37 JST


 斎藤様

タスク数を増やす件、ありがとうございました。SSPはいろいろ制約がありますが、cfg上で制約が掛かっていないことを願っています。タスク数はcfgの制約ではないのですね。
SSPはいろんな意味で情報の少ないと感じています。sample1のコマンドの説明もSSPでは削除されてしまったのも残念です。とまあ勝手なことを言っています。

マルチタスクを弄り始めたときタスクの動作が終わるとIDLEで最も高い優先度のプログラムを実行する、ソースみて驚いた記憶があります。割り込みではタスク起動のフラグを立てるだけです。これでもマルチタスクかねと思ったりしましたが、使えそうな気はしましたね。当時は制約タスなる言葉も知らず・・・、懐かしい思い出です。

ありがとうございました。

以上


2013年9月23日 20:32 Naoki Saito <nsaito.nmiri @ gmail.com>:

> お世話になっております.
> 斉藤です.
> お返事遅くなりましてすいません.
>
> > 最大タスク数を16から32に増やしたいのです。
> テンプレートファイル(.tf)の変更だけで良いなら、試行錯誤でできそうです。tfだけで、この辺、とご教授願えれば出来そうな気がしています。
> >
> >
> 尚、タスク番号の件は、お教えいただいた情報を元に、タスク実行カウンタをタスク毎に持たせる事を考えています。タスク起動時にmain_taskがコンソールに出力する値は、タスク1の時0がよいのか1がよいのでしょうか。現行は初期値では1で、タスク番号指定後は0になっています。
>
> 最大タスク数を増やすのでしたら,テンプレートファイルの変更箇所は無いと思います(たしか)
> include/kernel.h の TMAX_TPRI
> kernel/task.c bitmap_search関数,bitmap_search_table配列
> あたりを変更すれば,良いと思います.
>
> ただし,uint_t が32ビット以上であることを前提としてますので
> 最大タスク数を32にしたいけど uint_t が16ビット以下の場合は,
> task.{c,h} 内の関連する変数や関数のデータ型をuint32_t にする必要がでてきます.
> (とくにビットマップを表現する変数とか)
>
> 以上,よろしくお願いします.
>
>
> 2013年9月20日 17:26 koizumi yoshiyuki <koizumiyoshiyuki @ gmail.com>:
>
>> 斎藤さま
>>
>> こいさんです。
>>
>>
>> ソースはssp-1.2.0.tar.gzを展開して、ssp_cq_starm_gcc-20120607.tar.gzのtarget\cq_starm_gccを追加したものです。
>>
>> ターゲットをcq_frk_fm3_gccからcq_starm_gccに変えのに、target部を追加しただけなので、基本部は1.2.0のままなので、extensionの処理には問題はないと思っています。
>>
>> 最大タスク数を16から32に増やしたいのです。
>> テンプレートファイル(.tf)の変更だけで良いなら、試行錯誤でできそうです。tfだけで、この辺、とご教授願えれば出来そうな気がしています。
>>
>> 尚、タスク番号の件は、お教えいただいた情報を元に、タスク実行カウンタをタスク毎に持たせる事を考えています。タスク起動時にmain_taskがコンソールに出力する値は、タスク1の時0がよいのか1がよいのでしょうか。現行は初期値では1で、タスク番号指定後は0になっています。
>>
>> 色々お世話をお掛けしますが、よろしくお願いします。
>>
>>  以上
>>
>>
>>
>> 2013年9月20日 9:58 Naoki Saito <nsaito.nmiri @ gmail.com>:
>>
>>> 斉藤です.
>>> お世話になっております.
>>>
>>> > kernel_cfg.o: In function `_kernel_initialize_object':
>>> > C:\devel\TOPPERS\work\ssp_gcc\ssp\OBJ_APL/kernel_cfg.c:260: undefined
>>> reference to `_kernel_initialize_eventflag'
>>> > C:\devel\TOPPERS\work\ssp_gcc\ssp\OBJ_APL/kernel_cfg.c:261: undefined
>>> reference to `_kernel_initialize_dataqueue'
>>> (以下,略)
>>>
>>> イベントフラグやデータキューついては 1.2.0 からの追加となります.
>>> 従いまして,1.1.1からファイルをコピーする際に,どの範囲のファイルをコピーされたのかが
>>> 気になります.
>>>
>>> >
>>> 小生、マイコンで動作させるc言語の記述部はどうにでも対応しますが、タスクの数は増やすにはコンフィギュレータの修正が必要ですね。こちらは少々敷居が高いのです(努力中ではあります)。
>>>
>>> テンプレートファイル(.tf)を編集したりするのは慣れが必要かもしれませんね.
>>> どのような出力が欲しいのか仰っていただければテンプレートファイルの一例を
>>> お示しする程度であればできるかなと思います.
>>>
>>> 以上です.
>>>
>>>
>>>
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://www.toppers.jp/pipermail/users/attachments/20130924/219bd0db/attachment.html>