2008.02.02
岸本 俊夫

Slush.tini 再構成

 標準の TINI はブート後、Java VM を構築し、TINI 標準のシェルである Slush を 起動します。Slush は etc/.startup ファイルを参照しながら、シリアルサーバ、 FTP サーバ、Telnet サーバを順番に起動します。

 Slush がコマンドラインを受け付けられるようになるまで数秒以上かかります。 これでは電源ランプを点灯するなど、ブート後直ちに実行したい処理が待ち切れません。

 ブート後最優先の処理を実行し、その後 Slush を実行するように変更します。

 使用したハードウェアは TINI390 SIMM ボードと評価用ソケットボード E10、 TINIOS のバージョンは 1.11 です。

1.最優先処理プログラムの作成

  1. ブート後に最優先の処理を実施し、続いて Slush を呼出すプログラムを作成します。 Iniz クラスのソースは次のようになります。

    import java.io.IOException;
    
    public class Iniz
    {
        //--------------------------------------------------------------------------
        public static void main( String[] args )
        {
            //  ここに最優先の処理を記述する。
            //  例えば、電源ランプを点灯する、など。
    
            //  Slush を起動する。
            Runtime runtime = Runtime.getRuntime();
            try {
                Process process = runtime.exec( "Slush.tini" );
            }
            catch (IOException e) {
                System.err.println( e.getMessage() );
                e.printStackTrace();
            }
        }
    }
  2. コンパイルし、TINI 実行形式に変換してください。 次のような .bat ファイルになります。

    set TINI=D:\tini1.11\bin
    set JAVAC=D:\j2sdk1.4.2\bin\javac.exe
    set JAVA=D:\j2sdk1.4.2\bin\java.exe
    
    %JAVAC% -O -target 1.1 -bootclasspath %TINI%\tiniclasses.jar -classpath %TINI%\modules.jar Iniz.java
    %JAVA% -classpath %TINI%\tini.jar BuildDependency -p %TINI%\modules.jar \
         -f Iniz.class -d %TINI%\tini.db -o Iniz.tbin -l -noreflect -t 70100
    pause

    環境変数 TINI、JAVAC、JAVA はご使用の環境に合わせて置き換えてください。

    通常の TINI 実行形式と異なる点は、次の 3つです。

    作成した Iniz.tbin を使用します。

[Top] [Index]

2.Slush.tini のビルド

 Maxim/Dallas が提供する Slush はフラッシュメモリに書込むタイプの .tbin ファイルです。これは Java VM から呼出す形式ではありません。

 次の手順で Slush.tini ファイルを作成します。

  1. Slush のソースファイルを取得してください。

    開発環境を Maxim/Dallas の FTP サイトからダウンロードしてください。

    tini1.11\src\SlushSrc.jar

    適当な展開ソフト(例えば、+Lhaca など)を使用して展開してください。

  2. Slush.tini を作成してください。次のような .bat ファイルを実行します。

    set TINI=D:\tini1.11\bin
    set JAVAC=D:\j2sdk1.4.2\bin\javac.exe
    set JAVA=D:\j2sdk1.4.2\bin\java.exe
    
    dir com\*.java /B /S /ON > files
    %JAVAC% -O -target 1.1 -bootclasspath %TINI%\tiniclasses.jar -classpath %TINI%\modules.jar \
            -d bin @files
    %JAVA% -classpath  %TINI%\tini.jar BuildDependency -f bin -d %TINI%\tini.db \
           -x %TINI%\owapi_dep.txt -o Slush.tini -p %TINI%\modules.jar \
           -add FTPCLIENT;MAILTO -fake -noreflect -ref com.dalsemi.slush.util.FakeMainMaker \
           -ref com.dalsemi.slush.command.SlushCommand -ref com.dalsemi.protocol.mailto.Handler
    pause

    環境変数 TINI、JAVAC、JAVA はご使用の環境に合わせて置き換えてください。

    作成した Slush.tini を使用します。

[Top] [Index]

3.Slush.tini の転送

 作成した Slush.tini を TINI へ FTP 転送します。適当な FTP クライアントソフト(例えば FFFTP)を起動し、Slush.tini を TINI の ルートディレクトリにバイナリ転送してください。

[Top] [Index]

4.Iniz.tbin のロード

 Slush.tini は転送しましたか?

 これを忘れると何もできなくなります。Slush.tini を転送しないで Iniz.tbin を ロードしてしまったときは、同様の手順で Iniz.tbin の代りに Slush.tbin を ロードしてください。そしてもう一度 Slush.tini の転送からやり直しましょう。

  1. ソケットボード E10 に TINI390 SIMM ボードをセットしてください。
  2. E10 の J6 コネクタ(DB9 メス)と PC を RS-232C ストレートケーブルで 接続してください。
  3. E10 のジャンパ J1 をショートさせてください。J1 はボタンソケットのそばに あります。
  4. PC で JavaKit を起動してください。コマンドプロンプトで下記のように 入力してください。ただし TINI 開発環境 TINI1.11 と J2SE SDK の インストールディレクトリはご自分の環境に合わせて読みかえてください。

    > javaw -cp d:\tini1.11\bin\tini.jar;d:\j2sdk1.4.2\jre\lib\ext\comm.jar JavaKit [Enter]
  5. JavaKit ウィンドウの下方の Port Name を RS-232C ストレートケーブルを 接続した COM ポートに設定し、Baud Rate を 115200 に設定し、[OpenPort] を 押してください。
  6. E10 に AC アダプタを接続して電源を投入してください。
  7. JavaKit の DTR を Set にセットし、[Reset] を押してください。うまくいくと 次のメッセージが表示されます。

    TINI loader 05-15-00 17:45
    Copyright (C) 2000 Dallas Semiconductor. All rights reserved.
    
    >
  8. メニュー File -- Load File を実行し、Iniz.tbin を選択し [開く] を 押してください。
    ローディングが始まります。

    Loading File: D:\Example\Iniz.tbin
    
    Please wait ... (ESC to abort).
    
    Load complete
    >
  9. JavaKit で次のように入力し、ローダを終了してください。

    > E   [Enter]

    これで TINI が再起動します。

    Slush.tbin をロードしたときはフラッシュメモリをクリアしますが、 そうするとせっかく転送した Slush.tini が消えてしまいます。 フラッシュメモリはクリアしないでください。

    数秒待つと見慣れたログインプロンプトが JavaKit に表示されるはずです。

  10. AC アダプタを E10 から抜いて電源を OFF し、ジャンパー J1 をオープンして ください。

(C) 2003 by KISHIMOTO Toshio (ALELE.NET), all rights reserved.
このドキュメントに関するお問い合わせは下記まで

/*history*/
0.12003.10.19TKOriginal
1.02008.02.02TK花ライオン用に変更。
/*eof*/