トップ回答者
Windows Embedded Standerd 7 フリーズについて

質問
-
どうぞよろしくお願いします。
会社でWindows Embedded Standerd 7 を構築してテストを行っています。
ApplicationCompatibilityをベースにWindowsUpdateをOFFにし、
使用するユーザ設定を行い、64bit環境用に作成しています。
アプリケーションには.NetFrameWorkを使用してアプリケーションや、IISサーバを立てWeb(C# Silverlight)の
アプリケーションを動作させています。
ここ1年程度OS側に問題はなかったのですが、最近になりまして、起動時や稼働時に突然OSがフリーズするという現象が発生しております。
症状として
マウスカーソルは操作可能
キーボードもAlt+Tabは有効だが画面は切り替わらない(切り替えるための小窓は出ます)
またWindowsキーや他のキーは効かない(タスクマネージャも強制終了もできない)
ディスプレイは表示されているが、フォルダやダイアログを動かすと残像が残るような状態になる
しばらくこのままにしておくと、マウス・キーボードも動作できなくなる
他PCからPingは通り、ディレクトリも確認できる
このような症状が発生して、原因を調査していますが特定に至っていません。
アプリケーション側をまず疑い、メモリリークやハンドルリークなど調査しましたが、現象は変わらずとなっています。
またフリーズ時に各アプリケーションのメモリ使用量から考えても可能性は低いのではないかと思っています。
ディスプレイドライバ関係やBIOS更新も検討しましたが、マザーボードメーカーから現在より新しいものがリリースされておらず、
IntelなどのHPから取得したものではアップデートできませんでした。
解決策や今後の調査についてのアドバイスをご教授いただければ幸いです。
どうぞよろしくお願いします。
回答
-
本件、Windows Embedded 固有の問題として議論されているようですが、この点については確実なのでしょうか?
つまり、現象を確認した環境が「たまたま」Windows Embedded で、通常の Windows Platform でも起こりうる可能性はないのでしょうか?
仮に EWF / FBWF オーバーレイ サイズに起因する問題であった場合、Write Error が発生した時点でエラー ダイアログが表示され、イベント ログに Read / Write に関連するエラー情報が記録されると思うのです。
そのようなエラー通知やログ情報が無いのであれば、Windows Platform でも起こりうる可能性も含めた調査をお勧めします。フリーズ現象の調査は結構手間がかかりますが、私の場合ダンプ解析を実施することで、ほとんどの場合解決できています。
(ただ、ダンプ解析で 100% 原因を究明できるわけではありませんが。。。)
なのでもし問題現象が発生している Windows Embedded 環境で完全ダンプの採取が可能であるならば、キーボード クラッシュでダンプ ファイルを採取し、それをベースに調査されることをお勧めします。
(Windows Embedded でダンプ ファイルを生成させるためには、ダンプ用のコンポーネントが予め含まれている必要があったと思います。)
キーボード クラッシュによるダンプ ファイルの生成方法に関しては、下記サイトが役に立つと思います。---------------------------------------------------------------------
メモリダンプに !analyze -v するまで・前編 ~ ダンプの取り方~
http://blogs.msdn.com/b/jpwdkblog/archive/2009/06/03/analyze-v.aspx2.-3.キーボード操作で作成できるメモリ ダンプ ファイル
その他、任意のタイミングでメモリ ダンプ ファイルを作成したければ以下の技術情報に紹介している方法もあります。
以前は、PS/2キーボードでしか使えない技だったのですが、USB キーボードでもできるようになりました。
設定をしておけば、キーをポンポンと叩くだけで、システムをクラッシュさせ、メモリ ダンプ ファイルを作成することができちゃいます。
この場合、ダンプファイルの STOP コードなどから問題のアタリをつけていくことはできないですが、
PC がハングしている(ように見える)際に、何のプロセスが問題になっているのか特定することができるかもしれません。キーボード操作でメモリ ダンプ ファイルを作成できる Windows の機能
http://support.microsoft.com/default.aspx/kb/244139/ja
---------------------------------------------------------------------(もっともご使用になられている Board PC に、カーネル デバッガ用ホスト PC を接続できる Serial Port / IEEE1394 のいずれかの I/F が存在するのであれば、ライブ デバッグの方がはるかに確実かも。)
すべての返信
-
まず、もう少し詳しい状態を把握しましょう。
一般のPCとは異なり、Embの場合はハードの構成と、EWFのモードがわからないと、
何もわからないのと同じです。次に、PCの動作がおかしい場合、次のことが考えられます。
1.ハードに不具合がある。
2.メモリーが足りない。
3.非常に重い処理が走り続けていて、他の処理が実行できない。
4.それらの複合1.は、まずデバイスドライバの状態を確認します。
2.3.は、タスクマネージャで確認できます。1.の場合はどうにもなりません。新しいPCに構成を移しましょう。
2.の場合は、EWFのモードによっては発生する可能性があります。
構成した人に聞いてみましょう。
3.の場合で、それが重要でないプロセスの場合は、それを落として見ましょう。何れの場合でもないと考えられる場合でも、
HDDとモニタを除くIOを一つひとつ外しながら起動してみて、
改善するかどうかを確かめます。それでもわからない場合は、簡単な構成を作り直して、
起動してみましょう。
現在の情報だけで無理やり判定するとEWFのオーバーレイがたまりすぎて
パーティションの容量が不足してるのではないかと妄想できます。いずれにしても原因と思われる具体的な事象が判明しないとどうにもならないと考えられます。
-
仲澤@失業者さん
返信ありがとうございます。
ハード構成は購入品のボードPCです。
ボードPCにマウス、キーボード、モニタ、イーサネットを接続しています。
EWFモードはFBWFのファイル、ディレクトリ単位での保護を採用しています。
Cドライブを保護しています。
>PCの動作がおかしい場合
>1.ハードに不具合がある。1.は、まずデバイスドライバの状態を確認します。
デバイスドライバ上では異常なデバイスはありません。
>2.メモリーが足りない。
実装8GBで使用しているのはタスクマネージャ確認で最大6~7割程度しようしています。
>3.非常に重い処理が走り続けていて、他の処理が実行できない。
CPU使用率も落ち着いています。タスクマネージャ確認で30程度です。
>4.それらの複合
この内容を切り分けれればいいのですが。。。
IO関係は元々最小限と考えているのでこれ以上外すのは難しい。。。
となるとOS構成を外していくしかないのでしょうか?
-
本件、Windows Embedded 固有の問題として議論されているようですが、この点については確実なのでしょうか?
つまり、現象を確認した環境が「たまたま」Windows Embedded で、通常の Windows Platform でも起こりうる可能性はないのでしょうか?
仮に EWF / FBWF オーバーレイ サイズに起因する問題であった場合、Write Error が発生した時点でエラー ダイアログが表示され、イベント ログに Read / Write に関連するエラー情報が記録されると思うのです。
そのようなエラー通知やログ情報が無いのであれば、Windows Platform でも起こりうる可能性も含めた調査をお勧めします。フリーズ現象の調査は結構手間がかかりますが、私の場合ダンプ解析を実施することで、ほとんどの場合解決できています。
(ただ、ダンプ解析で 100% 原因を究明できるわけではありませんが。。。)
なのでもし問題現象が発生している Windows Embedded 環境で完全ダンプの採取が可能であるならば、キーボード クラッシュでダンプ ファイルを採取し、それをベースに調査されることをお勧めします。
(Windows Embedded でダンプ ファイルを生成させるためには、ダンプ用のコンポーネントが予め含まれている必要があったと思います。)
キーボード クラッシュによるダンプ ファイルの生成方法に関しては、下記サイトが役に立つと思います。---------------------------------------------------------------------
メモリダンプに !analyze -v するまで・前編 ~ ダンプの取り方~
http://blogs.msdn.com/b/jpwdkblog/archive/2009/06/03/analyze-v.aspx2.-3.キーボード操作で作成できるメモリ ダンプ ファイル
その他、任意のタイミングでメモリ ダンプ ファイルを作成したければ以下の技術情報に紹介している方法もあります。
以前は、PS/2キーボードでしか使えない技だったのですが、USB キーボードでもできるようになりました。
設定をしておけば、キーをポンポンと叩くだけで、システムをクラッシュさせ、メモリ ダンプ ファイルを作成することができちゃいます。
この場合、ダンプファイルの STOP コードなどから問題のアタリをつけていくことはできないですが、
PC がハングしている(ように見える)際に、何のプロセスが問題になっているのか特定することができるかもしれません。キーボード操作でメモリ ダンプ ファイルを作成できる Windows の機能
http://support.microsoft.com/default.aspx/kb/244139/ja
---------------------------------------------------------------------(もっともご使用になられている Board PC に、カーネル デバッガ用ホスト PC を接続できる Serial Port / IEEE1394 のいずれかの I/F が存在するのであれば、ライブ デバッグの方がはるかに確実かも。)
-
お馬鹿様、ご返信ありがとうございます。
記載いただいた内容について、投稿前に検討しており
使用している環境では容量の関係でフルダンプを取得することはできませんので、
カーネルデバッガ接続で調査を行っています。
結果から申しますと、インストールしている別のアプリケーションが1つの要因でありそう ということは目星がつきました。
ただ、このアプリケーションがない条件でのフリーズも発生しているため、
目星がという程度で別に要因がある可能性もあると考えています。
本フォーラムについてはカーネルデバッガを使用した調査が進められそうですので、調査時に行き詰りましたら
またこちらでご相談させていただければと思います。
またこちらもおそらくですが FBWF オーバーレイ サイズに起因する問題もなさそうに考えています。
>ただWrite Error が発生した時点でエラー ダイアログが表示され、イベント ログに Read / Writeに関連するエラー情報が記録されると思うのです。>そのようなエラー通知やログ情報が無いのであれば、Windows Platformでも起こりうる可能性も含めた調査をお勧めします。
そのような状態ではないため別途調査を進め、疑問点あれば別フォーラムで質問させていただければと思います。
ありがとうございました。