(toppers-users 4658) Re: TOPPERS/JSP i386環境でのTINETの実装について

Masaki Muranaka monamour @ monaka.org
2017年 5月 16日 (火) 20:18:12 JST


こんばんは。

たぶんおそらく、本件の中の人(ただし、過去のある時点において)です。

> JSP1.4以降に対応したIA32ターゲット依存部はリリースされていません。

あの頃は、TOPPERS/OSEK (ATK1) カーネルにとって最も大切な sg.exe を、
理事企業が、シラっとオープンソース化していないまま商売なさっていた時期ですね。

i386/pcat の連中が、あれが許されている風景に対しかなりヤサグレていたので、
TOPPERS 本家への無邪気なコントリビューションを、やんわり拒否していた時期です。
なのでまあ、公式のコードに残っていないとするならば、そんな空気がもたらした
軽微な悲劇でしょう。オープンソース風ライセンスでは、よくあることです。


ぐぐってみたら、JSP 単体では 1.4.3 が動作していたと思われる記録はあります。
http://d.hatena.ne.jp/mitsu48/20080208
私の記憶とも整合しますので、1.4.3 は、少なくとも非公式版では動作しています。

加えて言うならば、1.4.3 ベースの TINET も、記憶が正しければ動いていたはずです。
(おそらく NE2000 は動いている…はず)
おそらく前述の理由から、TOPPERSの公式を追いかけても得るものは少なく、
PizzaFactory3 辺りに含まれるコードのほうが JSP としては価値があるかもしれません。
当時の開発元が現存せず、コードベースが散逸してはおりますが…。


なお、i386/pcat 時点の PC/AT アーキテクチャは SMP 前提ではなく、
APIC は考慮されていません。
建前上、APIC が搭載されているボードでもリセット直後は PIC 互換になるはずで
回避できるはずです。
しかし、BIOSやEFIが頑張っているボードの場合、逃げ道は限られます。
具体的には APIC 対応が必要になりますが、参考資料は…



2017年5月16日 16:56 yasuo kominami(nifty) <ykominami @ nifty.com>:
> 株式会社ヴィッツ
> 毛利様
>
> TOPPERSプロジェクト個人会員の小南です。
> お求めの情報そのものではなく、確認させてもらいたいという趣旨のメールになります。
>
> JSPのIA32ターゲット依存部は、2002年リリースのJSP1.3に含まれていましたが、
> 2003年リリースのJSP1.4からは含まれていません。
> JSP1.4.4.1と書かれているのは2014年リリースの完全版のほうだと思われます。
>
> https://www.toppers.jp/jsp-download.html
>
> 完全版は動作を保証するものではなく、1.4.4.1リリース時点でTOPPERSプロジェクト
> としてメンテナンスしている、していないにかかわらず、動くかもしれないと思われる
> ものも含めています。
> 要は、過去リリースしたものを片っ端からダウンロードして探す手間を省けるとうい
> う程度のものです。
> JSP1.4以降に対応したIA32ターゲット依存部はリリースされていません。
>
> TINETといえば、最近CQ出版から刊行された「TECHI Embedded Software vol56 全部
> ネット接続!Ethernetマイコン・プログラミング」にインタフェース誌の掲載された
> TINETの記事の再録+最新状況についてのコラムがあります。
> ただこれらの記事もTINET 1.2以降が対象です。
>
> 「IA32上でTINETの動作を確認した」という情報はあったとしてもかなり古い時点での
> ものではないかと思います。
> あったとして、「JSP1.3 + TINET1.1.1」ぐらいの組み合わせかもしれません。
>
>
> 2017-05-16 15:58 GMT+09:00 毛利 慶伍 <mouri @ witz-inc.co.jp>:
>>
>> 株式会社ヴィッツの毛利と申します.
>>
>> 現在,i386をターゲットとした
>> TOPPERS/JSP&TINETの実装を行っております.
>>
>> JSPにはIA32向けターゲット依存部が既に存在しており,
>> TINETの依存部ファイルも含まれていました.
>> これを用いて,sampleのechoを動かそうとしましたが,
>> INHNO_IF_EDの定義が存在しないとのエラーが発生しました.
>> INHNO_IF_EDにはLANの割込みに対応するIRQを設定するものだと考えております.
>>
>> そこで疑問なのですが,現在のIA32向けターゲット依存部では,
>> 割込みは16口分(interrupt0~15)が実装されておりました.
>> しかし,ターゲットの説明書には,
>> LANの割込みはIRQ19に対応との記載がありました.
>> おそらく,現在の実装はPICでの動作前提であり,
>> ターゲットの動作にはAPICでの設定が必要と考えております.
>>
>> 以前,こちらのメーリングリストにてIA32上でTINETの動作を
>> 確認したとの記載がありました.
>> その際のJSP上で行いましたPIC,APICの動作設定について,
>> ご教授いただけませんでしょうか.
>>
>> 環境は,
>>  TOPPERS/JSP 1.4.4.1
>>  TINET 1.1.1
>>  ターゲット:i386-pcat
>> となっております.
>>
>> よろしくお願いいたします.
>>
>> --
>>  -----------------------------------------
>>  株式会社ヴィッツ
>>   高信頼性PF開発部
>>    毛利 慶伍 (Mouri Keigo)
>>        Mail:mouri @ witz-inc.co.jp
>>        TEL:052-220-1218
>>  -----------------------------------------
>>
>>
>