Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

シリアル通信でCPU使用率100%(機種依存?)

80 views
Skip to first unread message

Yuuichi Naruoka

unread,
Mar 28, 2007, 10:20:31 PM3/28/07
to
 成岡@DTI静岡です。なんとも奇怪な事態に巻き込まれています.

 まずは開発環境からして奇怪です。VB4+5+6.3ランタイム+MS Officeという
環境です。これは何かと言うと前任者がVB4のソースをVB5で再開発したの
ですが、この時どうも開発環境に6.nのランタイムが混じってしまい純粋のVB5
では動かなくなってしまったのです。また一部MS Officeの環境も必須となって
いました。前任者は退社したのでもはや環境の再現ができず、私が6.3ランタイム
適用&一部修正でなんとか動くようにしました。なお開発用ハードはThinkPad
T43上にVirtual PCをインストールし、そこでwin2000を動かして上記環境を構築
しています。

 さて、この環境でシリアルポート経由で外部の組み込みマイコンと通信を行い
つつ機器制御を行うと言うプログラムを開発(と言うか改造)しました。VBを用いて
インストーラを作成、virtualPC上にクリーンなOS環境を用意してインストール&
動作確認を行いOK、だったはずなのですが突然問題が。

 発注主が手持ちのDELL Latitudeにこのインストーラでソフトをインストールし、
機器制御を行おうとしたところ組み込みマイコンの電源を入れただけでPC側の
ソフトがほとんど動かない状態になってしまうのです。タスクマネージャで確認
したところ該当プログラムのCPU使用率がほぼ100%(システム使用分を除く全て)
になっていました。更に社内で昔開発用に使っていたVAIOノート(win2000)にも
インストールしましたがやはり同じ状況です。

 ところが私が昔使っていたThinkPad X22(win2000)にインストールしたところ、
何の問題もなく動きます。もちろんシリアル通信も正常にできます。またこの
問題はvietualPC実行時にも発生したので社内のオリジナルデスクトップPC
(winXP Pro)にVirtualPCをインストールして開発環境を丸ごとコピー、動作確認
を行ったところ正常に動作します。なお同じシステムで別バージョンのプログラム
を開発し、客先のPCにインストールしたものは正常に動いています。

 ここで考えられることは、正常動作しなかった機種は「何らかのプログラム
開発環境がインストールされている」と言うことです。実はT43上で組み込み
マイコンの簡単なエミュレータ(コマンドに対するアンサーを返すだけ)を動かして
みたのですがそれを使った場合は正常に動作するのです。実機との違いは
シリアル通信の制御です(実はここはライブラリを使っているので内容が良く
わかりません)。ただハード的な問題とは思えないのですが、どのような原因が
考えられるでしょうか。

--
成岡@DTI(yn...@jade.dti.ne.jp)

0 new messages