2016-03-27 157 views
0

カーナビゲーションシステムが私の車にインストールされており、vxWorks 6.9.3が動作していることが分かりました。vxWorksカーネルシェルの能力

私が達成しようとしているのは、navシステムのいくつかの隠し設定を変更することです。

小さな紹介:Navシステムは、Bluetooth経由でインターネットに接続する機能を持っています。私は小さなWebサーバーをセットアップするだけで、クライアントのIPアドレスを検出できます。ヘッドユニットブラウザーからそのWebサイトを開き、ヘッドユニットのIPアドレスを検出しました。私はそれの開いているネットワークポートをスキャンすることができるよりも。

23ポートが開いていることが判明しました。私はそこでtelnetすることができます。 それは、任意のパスワードやログインを必要としませんでしたし、それが動作システム情報レポート:私は、ここで様々なコマンドを実行してファイルシステムを検査、など しかし、私は、私が何かを変えることができるのか分からないことができWinDriverのVxWorksの6.9.3

を。私はUSBキーからデバイスにファイルを転送する方法を見つけました。

変更したいすべての設定が.sqliteファイルに保存されていることがわかりました。それらのいくつかはgzipされ、.infファイルにチェックサムがあります。チェックサム計算のアルゴリズムは独自のものなので、デバイスからusb-keyに.sqliteファイルを転送したり、gzipより何かを変更したり、新しいチェックサムを計算することはできません。

私は、OSが何らかの形で.sqliteファイルをメモリ内でやりとりすることができると思います。 したがって、vxWorksカーネルシェルを使用するデバイスでsqliteシェルを開く方法はありますか? はいの場合、それは私が望むものを達成するのには完璧で十分です。

これが実現できない場合、vxWorksカーネルシェルの可能性に関するアドバイスをいただけますか?

+0

チェックサムはOSとは関係ありません。チェックサムを計算するコンポーネントと対話する必要があります。 –

+0

@ CLそうだと思います。しかし、私がtelnetセッションに参加しているとき、un UNIXのような定期的な「commads」はありません。 C関数呼び出しのように見えるあらかじめ定義されたコマンドはほとんどありません。 すなわち:コピー "source"、 "target" ファイルをコピーします。引数の間にこのカンマがあることに注目してください。 そして、私はこのようなコマンドの完全なリストを得ることができないので、チェックサム計算プログラムを探します。 –

+0

ファイルを転送できると述べましたが、.sqlite dbを取得して内容を変更して戻してみました。ファイルが転送されたら、新しい.sqllite dbが読み込まれるようにデバイスを再起動します。また、lukasで述べたようにlkupの機能を使って、例えばlkup "sql"のパブリック関数をチェックします。また、cmdコマンドを使用してvxWorksコマンドインタープリタを実行しているかどうかを確認してください。 –

答えて

2

VxWorksシェルで使用できるコマンドは、ロードされたアプリケーションとカーネル自体によって異なります。シェルから、VxWorksによってロードされたすべての「パブリック関数」を呼び出すことができます。関数呼び出しをCのような構文で入力すると、シェルは引数を解析してスタックにプッシュし、Cの通常の関数呼び出しと同様に関数のアドレスにジャンプします。

funtion existsは、を含むすべての関数を名前に含めます(大文字小文字を区別します)。lkup "foo"です。しかし、要求されたパラメータについては何も教えてくれません。シェルを介してすべてのパラメータを関数に渡していない場合、関数呼び出しを実行する前にintepreterがいくつかのゼロをスタックにプッシュします。これは非常に奇妙な結果につながり、システムに損傷を与える可能性があります(機能に依存します)。

プログラムをロードできる場合は、symLibの機能を使用して、 VxWorks sysSymTbl

+0

これは非常に便利です、機能 –

関連する問題