JP4462238B2 - 携帯端末 - Google Patents

携帯端末 Download PDF

Info

Publication number
JP4462238B2
JP4462238B2 JP2006171357A JP2006171357A JP4462238B2 JP 4462238 B2 JP4462238 B2 JP 4462238B2 JP 2006171357 A JP2006171357 A JP 2006171357A JP 2006171357 A JP2006171357 A JP 2006171357A JP 4462238 B2 JP4462238 B2 JP 4462238B2
Authority
JP
Japan
Prior art keywords
monitoring
thread
operating system
program
unstable
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006171357A
Other languages
English (en)
Other versions
JP2008003770A (ja
Inventor
宏幸 佐藤
勉 山下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2006171357A priority Critical patent/JP4462238B2/ja
Publication of JP2008003770A publication Critical patent/JP2008003770A/ja
Application granted granted Critical
Publication of JP4462238B2 publication Critical patent/JP4462238B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

本発明は、オペレーティングシステムによりアプリケーションの動作を管理する携帯端末に関する。
例えばパソコンのOS(Operating System)では、メモリリークなどの不安定要因により、急激に処理速度が低下したり、処理が停止(ロック)したりする場合がある。メモリリークとは、パソコンの動作中に、使用可能なメモリ容量がだんだん減っていく現象で、システムの性能が低下したり、不安定になったりすることの要因となる。
特開平9−179754号公報
特許文献1のものでは、コンピュータ上で実行するユーザ定義タスクの各種外乱による停止時間が許容時間を超過した場合に、ユーザ定義タスクに事象を通知するようにしている。従って、ユーザ定義タスクは、外乱による実行遅れを知ることができるので、対処することが可能となる。
ところで、物流情報或いは在庫情報を管理するための携帯端末にもOSが搭載されており、アプリケーション及びドライバの動作を管理しているものの、OSが不安定要因により、システムの性能が低下したり、不安定となったりした場合に、特許文献1のものでは、これまで内部に蓄積していたデータが消失したり、業務が停止したりする障害が発生する虞がある。
本発明は上記事情に鑑みてなされたもので、その目的は、オペレーティングシステムが不安定状態となった場合でも、その不安定状態で生じる不具合を未然に回避することができる携帯端末を提供することにある。
請求項1の発明によれば、オペレーティングシステムが何らかの要因で不安定状態となると、予測手段が各種診断結果に基づいてオペレーティングシステムは不安定状態となったと予測するようになる。すると、回避策実行手段が予測された不安定状態に応じた所定の回避策を実行するようになるので、不安定状態による不具合を未然に回避する。
また、監視スレッドは、検査用プログラムを定期的に動作させ、その検査用プログラムの開始から終了までに要した時間を動作時間結果エリアに格納している。診断プログラムは、動作時間結果エリアを定期的に監視しており、監視スレッドの動作速度を求め、当該動作速度が所定速度より遅い場合は、不安定状態となったと判断する。
請求項の発明によれば、監視スレッドは、検査用プログラムを定期的に動作させ、その検査用プログラムの開始から終了までに要した時間を最優先監視スレッドに通知している。オペレーティングシステムが不安定となると、検査プログラムの動作速度が遅くなる。最優先監視スレッドは、監視スレッドからの時間通知を定期的にチェックし、検査用プログラムの動作速度を求め、当該検査用プログラムの動作速度が所定速度より遅い場合は、不安定状態となったと判断する。
請求項の発明によれば、ユーザは、オペレーティングシステムが不安定状態となったと判断する所定速度を任意に設定することができる。
請求項の発明によれば、ユーザは、オペレーティングシステムが不安定状態となったことを認識することが可能となる。
請求項の発明によれば、オペレーティングシステムが不安定状態となったときは、オペレーティングシステムを自動的にリセットすることができるので、面倒な操作を行うことなくオペレーティングシステムの不安定状態を解消することができる。
請求項の発明によれば、オペレーティングシステムがリセットされるのに先立って所定データを退避させることができるので、重要なデータが消失してしまうことを防止できる。
請求項の発明によれば、ユーザは、退避する所定データを任意に設定することができる。
以下、本発明を携帯型読取情報端末に適用した実施例について図面を参照して説明する。
図1は、本発明に係る携帯型読取情報端末のハードウェアとソフトウェアの構成を概略的に示している。この図1において、携帯型読取情報端末(携帯端末に相当)1は、CPU2を主体として構成されており、プログラム及びアプリケーション並びにドライバなどのソフトウェア記憶用のROM3、ワークデータ記憶用のRAM4、データ退避用のフラッシュメモリ5などが設けられている。また、携帯型読取情報端末1の上面には、操作部6及び表示器7が設けられている。
携帯型読取情報端末1のソフトウェアは、アプリケーション、オペレーティングシステム(以下、OS)、各ドライバ、割り込み処理とから構成されており、OSにより各ソフトウェアの動作が管理されている。
さて、本実施例の携帯型読取情報端末1には、急激な処理速度の低下や処理の停止(ロック)を事前に予測するために、実施例に対応して以下の予測手段及び回避策実行手段として機能する診断プログラムを搭載している。この診断プログラムは、アプリケーション、ドライバ、割り込み処理に分散して搭載されており、連携して動作するようになっている。
診断プログラム(a)……OSが割当てる処理の優先レベル毎に停止しているかを診断する。
診断プログラム(b)……ドライバやユーザプログラムが確保しているメモリサイズを定期的に診断する。
診断プログラム(c)……携帯型読取情報端末1に搭載している必須の機能が動作しているかどうかを診断する。
診断プログラム(d)……OSが割当てる処理の優先レベル毎に処理速度を診断する。
携帯型読取情報端末1は、これらの診断プログラムの組合せに基づいて決められた条件を満たしたと判断したとき、後述するように停止が近い或いは停止状態などを判断し、警告を表示したり、自動リセットしたりするようになっている。
以下、上記の診断プログラム(a)〜(d)を実行するための参考例及び実施例を順に説明する。
(第1参考例)
上記診断プログラム(a)を説明する第1参考例について図2ないし図9を参照して説明する。図2は、携帯型読取情報端末1のソフトウェア構成を示す概略図である。この図2において、OS8は、例えばWindows(登録商標) CEである。このWindows CEはPDA(Personal Digital Assistant)、或いは組み込み機器向けリアルタイムOSであり、対象となる装置に組込んで使用することを前提としたOSである。ドライバスレッド9、ユーザスレッド10、監視スレッド11は、それぞれプログラムである。スレッドとは、マルチスレッドに対応したOS上で1つのアプリケーションの処理を複数に分割して実行する場合のソフトウェアの実行単位(タスク)である。高度な処理を行なうアプリケーションソフトなどでは、スレッドを複数走らせることにより、同時に複数の処理が実行可能となる。
ドライバスレッド9は、周辺機器を動作させるためのソフトウェアである。つまり、周辺機器の仕様や制御方法は製品によって大きく異なるため、OS8が単独ですべての製品をサポートすることはできないことから、ドライバスレッド9によりOS8が周辺機器を制御するための橋渡しを行なう。
ユーザスレッド10は、アプリケーションプログラムを構成するスレッドで、各スレッドがイベントに応じて動作することによりアプリケーションプログラムとして機能する。
上記診断プログラム(a)は、監視スレッド11と割り込み処理12とから構成されている。
監視スレッド11は、OS8が割り当てる処理の優先レベルに対応して設けられている。つまり、例えばWindows CE 3.0では、256段階の優先レベルの割り込みをサポートしており、動作可能な複数の優先順位のスレッドがある場合、優先順位の高いスレッドが優先的に実行され、優先順位の低いスレッドは、優先順位の高いスレッドの実行が終了してから実行されるようになっている。本参考例では、このスレッドの優先順位を利用して、256段階の優先順位0〜255に対応して256の監視スレッド(以下、優先順位0の監視スレッドを監視スレッド(1)、優先順位1の監視スレッドを監視スレッド(2)、……、優先順位n−1の監視スレッドを監視スレッド(n)と称する)を作成し、各監視スレッド11によりRAM4上の動作状況監視フラグ(図3参照)のうち自己に対応するフラグを定期的(一定時間毎)にセットするようになっている。このような動作状況監視フラグのセットは、OS8に対する割り込み処理により行われる。
尚、アプリケーション或いはドライバのスレッドに設定する優先順位として、複数のスレッドに同一の優先順位を設定することは可能である。
割り込み処理12は、動作状況監視フラグを割り込み処理により定期的に監視し、予め決められた所定時間内に更新されない動作状況監視フラグがある場合は、その動作状況監視フラグ(以下、監視スレッド(1)に対応した動作状況監視フラグを動作状況監視フラグ(1)、監視スレッド(2)に対応した動作状況監視フラグを動作状況監視フラグ(2)、……、監視スレッド(n)に対応した動作状況監視フラグを動作状況監視フラグ(n)と称する)を更新する監視スレッド11より優先順位が同一または上位のスレッドで停止したと判断するようになっている。この場合、予め決められた所定時間は、アプリケーション或いはユーザにより任意に設定可能となっている。
次に、上記構成の作用について説明する。
ユーザが携帯型読取情報端末1の電源を投入すると、OS8が起動する。このとき、OS8は、ドライバスレッド9及び監視スレッド11を起動する。これにより、OS8は、ドライバスレッド9を通じて周辺回路とデータ通信が可能となる。また、監視スレッド11は、動作状況監視フラグ(1),(2)……を定期的にセットする。
図4は、各監視スレッド(1),(2)……の動作を示している。この図4に示すように、例えば監視スレッド(3)は、自己に対応する動作状況監視フラグ(3)をセットしてから、指定時間待機するという動作を繰返すようになっている。また、例えば監視スレッド(252)は、自己に対応する動作状況監視フラグ(252)をセットしてから、指定時間待機するという動作を繰返すようになっている。これにより、各監視スレッド(1),(2)……の動作により動作状況監視フラグ(1),(2)……のうちの対応するフラグが一定時間毎にセットされるようになる。
ユーザが所望のアプリケーションプログラムを起動すると、OS8は、キー操作などのイベントの発生に応じてアプリケーションプログラムに対応したユーザスレッド10(以下、優先順位0のユーザスレッドをユーザスレッド(1)、優先順位1のユーザスレッドをユーザスレッド(2)、……、優先順位nのユーザスレッドをユーザスレッド(n)と称する)を起動したり、周辺機器に対応してドライバスレッド9(以下、優先順位0のドライバスレッドをドライバスレッド(1)、優先順位1のドライバスレッドをドライバスレッド(2)、……、優先順位nのドライバスレッドをドライバスレッド(n)と称する)を起動したりすることによりアプリケーションプログラムを実行する。このようなアプリケーションプログラムとしては、商品に貼付されたラベルのコード読取りによる棚卸管理或いは在庫管理である。
図3は、OS8が起動したプログラムの優先順位を示している。この図3に示すように、監視スレッド(1)及びユーザスレッド(1)並びにドライバスレッド(1)の優先度(優先順位0)が最も高く、次に監視スレッド(2)及びユーザスレッド(2)並びにドライバスレッド(2)の優先度(優先順位1)が続いて設定されている。同様に、優先度(n)に対応して監視スレッド(n+1)及びユーザスレッド(n+1)並びにドライバスレッド(n+1)が設定されている。
ここで、割り込み処理12は、一定間隔で動作する割り込みにより動作状況監視フラグがセットされているかを一定間隔でチェックしている。
図5は、割り込み処理12の動作のうち診断プログラムとしての動作を示すフローチャートである。この図5に示すように、割り込み処理12は、n=1を設定してから(S1)、監視スレッド(1)の動作状況監視フラグ(1)のフラグがセットされているかを判断する(S2)。このとき、フラグがセットされているときは(S3:YES)、監視スレッド(1)は正常に動作していると判断し、監視スレッド(1)の動作状況監視フラグをリセットする(S4)。
次に、n=n+1によりn=2を設定してから(S5)、n=256かを判断し(S6)、n=256でないときは(S6:NO)、ステップ(S2)に移行して上述した動作を繰返す。そして、n=256となったときは(S6:YES)、この後、指定時間後に割り込みが発生するように設定する。指定時間後に割り込みが発生すると、S1からの動作を繰返す。
さて、何れかのユーザスレッド10または何れかのドライバスレッド9が何らかの要因により停止(ロック)すると、同一の優先順位が設定された監視スレッド11が起動されなくなることから、その監視スレッド11により動作状況監視フラグがセットされなくなる。このようにスレッドが動作状況監視フラグのセット状態を更新しなくなった場合は、割り込み処理12は、図5に示すステップS3において、動作状況監視フラグがセットされていないと判断し(S3:NO)、優先順位の処理で問題が発生したと判断する(S8)。
監視スレッド11は、上述したように割り込み処理12が優先順位の処理で問題が発生したと判断したときは、ロックリセット条件が成立したと判断し、図6に示すように携帯型読取情報端末1の表示器7に「ロック警告」というメッセージを表示する。従って、ユーザは、アプリケーションまたはドライバの何れかのスレッドがロックしたことを認識することができる。尚、このようなロック判断としては、特定の優先順位の監視スレッド11が動作しなくなることにより判断するようにしてもよい。
監視スレッド11は、上述のように割り込み処理12がスレッドはロックしたと判断したときは、図7に示すようにRAM4に記憶されている重要情報(機器固有の情報、携帯型読取情報端末1を起動するための情報など)を、図8に示すようにフラッシュメモリ5に退避(コピー)させてから、OS8に対してリセット要求を指令する。
OS8は、監視スレッド11によりリセット要求が指令されたときは、ソフトリセットを実行することにより再起動する。これにより、不安定状態となったスレッドを含む全てのスレッドがリセットされて再起動されるので、スレッドは安定状態で動作するようになる。
そして、OS8は、再起動したときは、図9に示すようにフラッシュメモリ5に退避した重要情報をRAMに復帰させる。
以上の動作により、OS8がリセットされるにしても、重要情報がクリアされてしまうことを防止できるので、ユーザは、携帯型読取情報端末1による作業を中断した作業から続行することができる。
このような参考例によれば、携帯型読取情報端末1のOS8が起動したときは、優先順位が設定された監視スレッド11を起動して動作状況監視フラグを一定間隔でセットすると共に、割り込み処理12により動作状況監視フラグの状態を監視し、不安定となったと判断したときは、OS8をリセットすることにより自動復帰するようにしたので、ユーザが特別な操作を実行する必要はなく、使い勝手に優れている。
また、OS8をリセットする場合は、保存されている重要情報をフラッシュメモリ5にコピーし、OS8が立上ってから重要情報をRAM4に復帰するようにしたので、携帯型読取情報端末1による作業を継続することができる。
さらに、OS8が不安定となったときは、そのことをユーザに報知するようにしたので、ユーザは、OS8が不安定となったことを認識することができ、その要因を解消するように対処することが可能となる。この場合、不安定となった監視スレッド11を報知するようにすれば、ロックしたアプリ/ドライバスレッドを予測することが可能となり、対処が容易となる。
(第2参考例)
次に、上記診断プログラム(a)を説明する第2参考例について図10及び図11を参照して説明するに、第1参考例と同一構成には同一符号を付して説明を省略し、異なる点について説明する。
ソフトウェア構成を示す図10において、診断プログラムは、複数の監視スレッド(1),(2)……と、これらの監視スレッド(1),(2)……を監視するための最優先監視スレッドとからなる。各監視スレッド(1),(2)……は、動作状況を最優先監視スレッドに定期的に通知する。
ユーザスレッド10及びドライバスレッド9の優先度は、第1参考例と同様に、何れかの監視スレッド11の優先度と同一となるように設定されている。
最優先監視スレッドは、各監視スレッド(1),(2)……からの動作状況の通知を定期的にチェックし、決められた所定時間内に動作状況を通知しない監視スレッド(1),(2)……があった場合、その監視スレッド(1),(2)……より優先順位と同一または上位のスレッドでロックしたと判断してユーザに報知する。この場合、予め決められた所定時間は、アプリケーション或いはユーザにより任意に設定可能となっている。
また、ロックしたことを判断した場合は、RAM4に記憶されている重要情報をフラッシュメモリ5に退避してからOS8をリセットすると共に、リセット後に重要情報をRAM4に復帰させるのは第1参考例と同一である。
このような参考例によれば、携帯型読取情報端末1のOS8が起動したときは、優先順位が設定された監視スレッド(1),(2)……を起動して最優先監視スレッドに一定間隔で通知すると共に、最優先監視スレッドにより監視スレッド(1),(2)……からの通知状況を監視するようにしたので、割り込み処理を用いることなくOS8が不安定となったことをユーザに報知することができると共に、OS8の不安定状態を自動的に解消することができる。
(第3参考例)
次に、上記診断プログラム(b)を説明する第3参考例について図12及び図13を参照して説明する。この第3参考例は、メモリリークによる異常に対処するものである。
メモリリークとは、携帯型読取情報端末1の動作中に、使用可能なメモリ容量がだんだん減っていく現象である。OS8やアプリケーションソフトが処理のために占有したメモリ領域を、なんらかの理由で解放しないまま放置してしまうために起きる。多くの場合、OS8のメモリ管理方法に問題があったり、アプリケーションソフトに不具合(バグ)が残っていたりすることが原因である。メモリリークにより利用可能なメモリ領域が減少すると、システムの性能が低下したり、不安定になったりする。
ソフトウェア構成を示す図12において、監視スレッド11としてロック診断プログラムの機能を有する監視スレッドが設定されている。OS8は、各スレッドのメモリ使用サイズを提供するAPI(Application Programming Interface、提供手段に相当)を有している。ロック診断プログラムの機能を有する監視スレッド11は、図13に示すように、OS8に対して各スレッドのメモリ使用サイズを問い合わせ、その応答により各スレッドのメモリ使用サイズを取得する。監視スレッド11は、各スレッドのメモリ使用サイズが予め決められたメモリサイズを超えた場合、ロック状況に近いと判断する。この場合、予め決められたメモリサイズは、アプリケーション或いはユーザの操作により任意に設定可能となっている。
監視スレッド11がメモリサイズは予め決められたメモリサイズを超えたと判断したときは、RAM4に記憶されている重要情報をフラッシュメモリ5に退避してからOS8をリセットすると共に、リセット後に重要情報をRAM4に復帰させるのは第1実施例と同一である。
このような参考例によれば、スレッドの異常動作によりメモリ使用サイズが通常よりも大きくなった場合は、ロック状況であると判断し、そのことをユーザに報知すると共にOS6をソフトリセットするようにしたので、OS8がロックしてしまうことを未然に防止することができる。
尚、OS8がスレッド全体のメモリ使用サイズを提供するAPIを有し、監視スレッド11によるロック診断プログラムは、定期的にOS8に対してスレッド全体のメモリ使用サイズを問い合わせ、その応答によりスレッド全体のメモリ使用サイズを取得し、スレッド全体のメモリ使用サイズが予め決められたメモリサイズを越えた場合、ロック状況に近いと判断するようにしてもよい。この場合、予め決められたメモリサイズは、アプリケーション或いはユーザの操作により任意に設定できるのが望ましい。
(第4参考例)
次に、上記診断プログラム(c)を説明する第4参考例について図14及び図15を参照して説明する。この第4参考例は、携帯型読取情報端末1が有する必須機能が動作しているかに基づいてOS8を判断することを特徴とする。
ソフトウェア構成を示す図14において、ユーザスレッド10またはドライバスレッド9は、それらに組み込まれた必須の機能を実現する必須スレッド(1),(2)……を有すると共に、診断プログラムの機能を備えた割り込み処理12を有している。
必須スレッド(1),(2)……とは、携帯型読取情報端末1が動作中に必ず必ず動作しなければならない処理であり、キー入力を受け付ける、或いはタップ入力を受け付けるなどである。これらの入力が受け付けられなくなった場合は、何らかの障害でロックしていると推定される。
このような必須スレッド(1),(2)……のロックを検出するために、必須スレッド(1),(2)……は、図15に示すように、定期的にRAM4上の動作状況監視フラグをセットする。
診断プログラムを備えた割り込み処理12は、動作状況監視フラグを定期的に監視(ポーリング)し、予め決められた所定時間内に更新されない動作状況監視フラグがある場合、その動作状況監視フラグを更新する必須スレッド(1),(2)……がロックしたと判断してユーザに報知する。この場合、予め決められた所定時間は、アプリケーションまたはユーザの操作により任意に設定可能となっている。
割り込み処理12が必須スレッド(1),(2)……はロック状況に近いと判断したときは、RAM4に記憶されている重要情報をフラッシュメモリ5に退避してからOS8をリセットすると共に、リセット後に重要情報をRAM4に復帰させるのは第1実施例と同一である。
このような参考例によれば、診断プログラムを備えた割り込み処理12は、予め決められた時間内に動作状況を通知しない必須スレッド(1),(2)……があった場合は、当該必須スレッド(1),(2)……がロックしたと判断するようにしたので、携帯型読取情報端末1に必ず設けられている必須スレッド(1),(2)……を利用してロックの監視を行うことができる。
(第5参考例)
次に、上記診断プログラム(c)を説明する第5参考例について図16及び図17を参照して説明する。
ソフトウェア構成を示す図16において、必須スレッド(1),(2)……は、定期的に動作状況を最優先監視スレッドに通知する(図17参照)。最優先監視スレッドは、必須スレッド(1),(2)……からの動作状況の通知を定期的にチェックし、予め決められた所定時間内に動作状況を通知しない必須スレッド(1),(2)……があった場合、その必須スレッド(1),(2)……がロックしたと判断する。
このような参考例によれば、携帯型読取情報端末1のOS8が起動したときは、必須スレッド(1),(2)……を起動して最優先監視スレッドに一定間隔で通知すると共に、最優先監視スレッドにより必須スレッド(1),(2)……からの通知状況に基づいて各プログラムの動作時間を監視するようにしたので、第4参考例のように割り込み処理を用いることなくOS8が不安定となったことをユーザに報知することができると共に、OS8の不安定状態を自動的に解消することができる。
(第実施例)
次に、上記診断プログラム(d)を説明する第実施例について図18及び図19を参照して説明する。この第実施例は、処理速度に基づいてOS8の異常を判断することを特徴とするものである。
第1参考例と同様に、OS8は、起動したときは、各優先順位の監視スレッド(1),(2)……を一定間隔で起動し、決められたプログラムを動作させ、その動作時間を測定する。この結果をRAM4の動作時間結果エリアに保存し、診断プログラムを備えた割り込み処理12でこれらの動作時間を確認し、処理が遅くなっているかどうかを判断する(図19参照)。この判断としては、各優先順位の処理について、予め決められた所定時間よりも長くかかっているかを判断する。
このような実施例によれば、プログラムの実行時間に基づいてロックしているかを判断するようにしたので、ロックするのに先立って対処することが可能となり、早い段階でOS8の不安定状態に対処することができる。
(第実施例)
次に、上記診断プログラム(d)を説明する第実施例について図20及び図21を参照して説明する。この第実施例は、最優先監視スレッドによりプログラムの実行時間を監視することを特徴とする。
ソフトウェア構成を示す図20において、監視スレッド(1),(2)……は、一定間隔毎に動作時間を最優先監視スレッドに通知し、最優先監視スレッドは、監視スレッド(1),(2)……から通知された動作時間に基づいてプログラムの実行時間の遅れを監視するようになっている。
このような実施例によれば、携帯型読取情報端末1のOS8が起動したときは、優先順位が設定された監視スレッド(1),(2)……を起動して最優先監視スレッドに一定間隔で通知すると共に、最優先監視スレッドにより監視スレッド(1),(2)……からの通知状況に基づいてプログラムの実行時間を監視するようにしたので、割り込み処理を用いることなくOS8が不安定となったことをユーザに報知することができると共に、OS8の不安定状態を自動的に解消することができる。
(第実施例)
次に、本発明の第実施例について図22を参照して説明する。この実施例は、携帯型読取情報端末1がアプリケーションをWebサーバからダウンロードしながら実行する構成に適用したものである。
図22は、携帯型読取情報端末1とWebサーバ21を概略的に示している。Webサーバ21には携帯型読取情報端末1の業務アプリケーションとして例えば棚卸しアプリケーション(URL:/tanaoroshi/html)、在庫確認アプリケーション1/5(URL:/zaiko.html)、在庫確認アプリケーション2/5(URL:/zaiko.html)、……が登録されていると共に、通信デバイス22を備えて構成されている。
携帯型読取情報端末1はWebブラウザ23及び通信デバイス24を備えて構成されており、通信デバイス24をインターネット25に接続した状態でWebブラウザを起動することにより通信デバイス24を通じてWebサーバ21にアクセスし、Webサーバ21に登録されている所定の業務プログラムをダウンロードして実行するようになっている。
ここで、携帯型読取情報端末1は、業務プログラムをダウンロードする際は、そのURLをフラッシュメモリ5に一時記憶するようになっている。
ユーザは携帯型読取情報端末1により作業を実行する場合は、携帯型読取情報端末1からWebサーバ21にアクセスし、Webサーバ21からユーザが所望する業務プログラムをダウンロードして実行する。業務プログラムが図22に示す在庫確認プログラムのように分割されている場合は、在庫確認プログラムを携帯型読取情報端末1に順にダウンロードしながら実行するようになっている。
さて、携帯型読取情報端末1に業務プログラムをダウンロードして作業する場合は、フラッシュメモリ5にはダウンロードしている業務プログラムのURLが一時記憶されていることになる。例えば在庫確認アプリケーションをダウンロードしながら在庫確認作業を実行する場合は、フラッシュメモリ5にはアプリケーションの動作位置として在庫確認アプリケーションのうち現在ダウンロードしているURLが一時記憶されている。
携帯型読取情報端末1により在庫確認作業中に、上記各参考例及び実施例で説明した診断プログラムによりOS8がロックしたと判断した場合は、RAM4のデータをフラッシュメモリ5に退避してからOS8に対してリセット要求を指令する。これにより、OS8が再起動するようようなる。このとき、フラッシュメモリ5には動作位置を示すURLが記憶されていると共に、在庫確認作業中に入力したデータが一時記憶されているので、OS8は、動作位置を示すURLに基づいてWebサーバ21から中断した在庫確認アプリケーションを再びダウンロードして実行するようになると共に、フラッシュメモリ5に退避していたデータをRAM4に復帰するようになる。従って、ユーザは、特別な操作を行うことなく中断した棚卸し作業を再開することができる。
このような実施例によれば、携帯型読取情報端末1にサーバから業務プログラムをダウンロードしながら実行する構成において、ダウンロードした業務プログラムの動作位置をフラッシュメモリ5に一時記憶すると共に、OS8がロックしたと判断したときは、業務プログラムの実行中における入力データをフラッシュメモリ5に一時記憶するようにしたので、業務プログラムの実行中に携帯型読取情報端末1のOS8がロックした場合であっても、中断した業務プログラムを再開することができる。従って、携帯型読取情報端末1による業務プログラムの作業中にOS8がロックした場合であっても、ユーザは面倒な作業を行うことなく業務プログラムを再開することができるので、使い勝手に優れている。
本発明は、上記実施例に限定されることなく、例えば携帯型読取情報端末以外の各種携帯端末に適用してもよいなど、要旨を逸脱しない範囲で変形または拡張できる。
本発明の実施例を説明するための携帯型読取情報端末のハードウェア及びソフトウェアの構造を示す図 本発明の第1参考例を示すソフトウェアの構成を示す図 監視スレッドと動作状況監視フラグとの関係を示す図 監視スレッドの動作を示すフローチャート 割り込み処理による診断プログラムの動作を示すフローチャート ロック警告の表示動作を示す図2相当図 ハードウェア構成を示す図 ソフトウェア構成及びハードウェア構成を示す図 図8相当図 本発明の第2参考例を示す図2相当図 図3相当図 本発明の第3参考例を示す図2相当図 監視スレッドの動作を説明するための図 本発明の第4参考例を示す図2相当図 図3相当図 本発明の第5参考例を示す図2相当図 図3相当図 本発明の第実施例を示す図2相当図 図3相当図 本発明の第実施例を示す図2相当図 図3相当図 本発明の第実施例を説明するためのハードウェア及びソフトウェアを示す図
符号の説明
図面中、1は携帯型読取情報端末(携帯端末)、5はフラッシュメモリ、8はオペレーティングシステム、10はOS(提供手段に相当)、11は監視スレッド(予測手段、回避策実行手段)、12は割り込み処理(予測手段、回避策実行手段)である。

Claims (7)

  1. オペレーティングシステムによりアプリケーション及びドライバなどの動作を管理する携帯端末において、
    前記オペレーティングシステムが割当てる処理の優先レベル毎に処理速度を診断し、その診断結果に基づいて前記オペレーティングシステムが不安定状態となったことを予測する予測手段と
    記予測手段が前記オペレーティングシステムは不安定状態となったと予測した場合は、予測された不安定状態に応じた所定の回避策を実行する回避策実行手段とを備え
    前記予測手段は、自己に対応する検査用プログラムを実行する複数の監視スレッドと、割り込み処理する診断プログラムとから構成され、
    前記監視スレッドは、検査用プログラムを定期的に動作させ、その検査用プログラムの開始から終了までに要した時間を動作時間結果エリアに格納し、
    前記診断プログラムは、前記動作時間結果エリアを割り込み処理により定期的に監視し、前記検査用プログラムの開始から終了までに要した時間に基づいて動作速度を求め、当該動作速度が所定速度より遅い場合は、不安定状態となったと判断することを特徴とする携帯端末。
  2. オペレーティングシステムによりアプリケーション及びドライバなどの動作を管理する携帯端末において、
    前記オペレーティングシステムが割当てる処理の優先レベル毎に処理速度を診断し、その診断結果に基づいて前記オペレーティングシステムが不安定状態となったことを予測する予測手段と、
    前記予測手段が前記オペレーティングシステムは不安定状態となったと予測した場合は、予測された不安定状態に応じた所定の回避策を実行する回避策実行手段とを備え、
    前記予測手段は、異なる優先順位が設定された複数の監視スレッドと、これらの監視スレッドを監視する最優先監視スレッドとから構成され、
    前記監視スレッドは、検査用プログラムを定期的に動作させ、その検査用プログラムの開始から終了までに要した時間を前記最優先監視スレッドに通知し、
    前記最優先監視スレッドは、前記監視スレッドからの時間通知を定期的にチェックし、前記検査用プログラムの開始から終了までに要した時間に基づいて動作速度を求め、当該動作速度が所定速度より遅い場合は、不安定状態となったと判断することを特徴とする携帯端末。
  3. 前記所定速度は、アプリケーションまたはユーザの操作により設定可能であることを特徴とする請求項1または2記載の携帯端末。
  4. 前記予測手段が不安定状態となったと判断したときは、そのことをユーザに報知する報知手段を備えたことを特徴とする請求項1ないし3の何れかに記載の携帯端末。
  5. 前記回避策実行手段は、前記予測手段が不安定状態となったと判断したときは、前記オペレーティングシステムに対してリセット要求を指令することを特徴とする請求項ないし4の何れかに記載の携帯端末。
  6. 前記回避策実行手段は、前記予測手段が不安定状態となったと判断したときは、前記オペレーティングシステムにリセット要求を指令するのに先立って、所定データを退避させることを特徴とする請求項記載の携帯端末。
  7. 前記所定データは、アプリケーションまたはユーザの操作により設定可能であることを特徴とする請求項記載の携帯端末。
JP2006171357A 2006-06-21 2006-06-21 携帯端末 Expired - Fee Related JP4462238B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006171357A JP4462238B2 (ja) 2006-06-21 2006-06-21 携帯端末

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006171357A JP4462238B2 (ja) 2006-06-21 2006-06-21 携帯端末

Publications (2)

Publication Number Publication Date
JP2008003770A JP2008003770A (ja) 2008-01-10
JP4462238B2 true JP4462238B2 (ja) 2010-05-12

Family

ID=39008108

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006171357A Expired - Fee Related JP4462238B2 (ja) 2006-06-21 2006-06-21 携帯端末

Country Status (1)

Country Link
JP (1) JP4462238B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5368339B2 (ja) * 2010-02-24 2013-12-18 三菱電機株式会社 データバックアップ装置
DE102011005800A1 (de) * 2010-03-23 2011-09-29 Continental Teves Ag & Co. Ohg Kontrollrechnersystem, Verfahren zur Steuerung eines Kontrollrechnersystems, sowie Verwendung eines Kontrollrechnersystems
JP5378308B2 (ja) * 2010-06-23 2013-12-25 レノボ・シンガポール・プライベート・リミテッド メイン・メモリのバックアップ方法およびデータ保護システム
JP5729767B2 (ja) * 2012-01-06 2015-06-03 Kddi株式会社 スマートフォンの動作安定化方法、動作安定化プログラム及び動作安定化装置。
WO2014132466A1 (ja) 2013-02-28 2014-09-04 日本電気株式会社 ソフトウェア安全停止システム、ソフトウェア安全停止方法、およびプログラム
JP2017004095A (ja) * 2015-06-05 2017-01-05 コニカミノルタ株式会社 画像処理装置および画像処理装置の制御プログラム
JP6859755B2 (ja) * 2017-03-02 2021-04-14 富士通株式会社 情報処理装置、情報処理装置の制御方法および情報処理装置の制御プログラム
AU2017434691B2 (en) * 2017-09-30 2021-05-06 Huawei Technologies Co., Ltd. Method and device for handling timeout of system service
CN112469065A (zh) * 2020-12-23 2021-03-09 北京春笛网络信息技术服务有限公司 一种5g短信一体机的保活检测方法

Also Published As

Publication number Publication date
JP2008003770A (ja) 2008-01-10

Similar Documents

Publication Publication Date Title
JP4462238B2 (ja) 携帯端末
JP4060322B2 (ja) アプリケーション管理装置およびそのソフトウェアを格納した記憶媒体
US7383470B2 (en) Method, system, and apparatus for identifying unresponsive portions of a computer program
JP2014182561A (ja) 計算機システム、プロセス及びスレッドの監視方法
JP5880564B2 (ja) 割込監視装置、およびコンピュータシステム
JP2011008460A (ja) ダンプ出力制御装置、ダンプ出力制御プログラム、ダンプ出力制御方法
JP4653838B2 (ja) 演算処理装置、演算処理装置の制御方法及び制御プログラム
CN111400087B (zh) 一种操作系统的控制方法、终端以及存储介质
KR20100108578A (ko) 컴퓨팅 장치 셧다운 방법, 컴퓨팅 장치 및 컴퓨터 판독가능 저장 매체
JP5133649B2 (ja) 電子機器およびメモリ管理プログラム
JP6352627B2 (ja) コンピュータシステム及びその動作方法
JP2009026182A (ja) プログラム実行システム及び実行装置
CN109062718B (zh) 一种服务器及数据处理方法
JP6051545B2 (ja) Plcシステム、状態表示方法、plc、およびプログラマブル表示器
JP2009020545A (ja) コンピュータの異常監視装置
JP2007156976A (ja) 情報処理システム
JP6232877B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP4571462B2 (ja) マイクロコンピュータ
CN114328138B (zh) 服务器的数据显示方法、装置、服务器及存储介质
JP5906807B2 (ja) 演算処理装置及びストール監視方法
JP2005182594A (ja) コンピュータ及びプログラム
JP4611659B2 (ja) 不正アクセス検出装置、不正アクセス検出方法、プログラム
JP2009290949A (ja) 電源管理システム、無停電電源装置、電源管理方法、電源トレンド予測方法及び電源トレンド予測プログラム
CN117992305A (zh) 虚拟机监测方法、装置、电子设备及存储介质
JP2002251299A (ja) プログラムトレース装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080626

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091020

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091216

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100126

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100208

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130226

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4462238

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130226

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130226

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130226

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140226

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees