TWI643063B - Detection method - Google Patents
Detection method Download PDFInfo
- Publication number
- TWI643063B TWI643063B TW101107548A TW101107548A TWI643063B TW I643063 B TWI643063 B TW I643063B TW 101107548 A TW101107548 A TW 101107548A TW 101107548 A TW101107548 A TW 101107548A TW I643063 B TWI643063 B TW I643063B
- Authority
- TW
- Taiwan
- Prior art keywords
- value
- application
- operating system
- detection method
- storage unit
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
一種檢測方法,用以檢測一作業系統中之至少一應用程式是否已中斷服務(crashed),而該作業系統中設有一對應該應用程式之第一數值於一儲存單元中;該檢測方法包含有下列步驟:先於一預定時間內發送一訊息請求該應用程式回應,並對該儲存單元中儲存之數值以一預定方式運算後,調整成另一數值;若調整後之數值等於一第二數值時,則重新啟動該作業系統;若該應用程式回應時,則重新設定該儲存單元中之數值為該第一數值。
Description
本發明係與系統檢測有關,更詳而言之是指一種檢測方法。
隨著科技的進步,許多網路裝置搭載作業系統,利用作業系統建立的各種應用程式提供網路裝置的網路服務或使用者介面的設定/操作服務。
然而,當作業系統中的某個應用程式進入無限迴圈或是其他因素造成的中斷服務(crashed)時,因為其他應用程式尚在執行中,必須等到作業系統進行重置動作(Reboot)後,應用程式才可以恢復正常的服務功能,而在重置之前的期間,恐將造成網路裝置的某些功能無法正常提供服務。若該應用程式係提供網路裝置執行重要的服務,則可能造成該網路裝置的癱瘓,而影響網路運作的執行。
有鑑於此,本發明提供一種檢測方法,可在應用程式停止服務時,自動重啟系統來使應用程式重新提供服務。
緣以達成上述目的,本發明提供有一種檢測方法,用以檢測一作業系統中之至少一應用程式是否已中斷服務(crashed),而該作業系統中設有一對應該應用程式之第一數值
於一儲存單元中;該檢測方法包含有下列步驟:A.於一預定時間內發送一訊息請求該應用程式回應,並對該儲存單元中儲存之數值以一預定方式運算後,調整成另一數值;B.若調整後之數值等於一第二數值時,則重新啟動該作業系統;C.若該應用程式回應時,則重新設定該儲存單元中之數值為該第一數值。
依據上述構思,於步驟A中,該訊息係為作業系統中之事件(event)訊息。
依據上述構思,於步驟A中,係依據一系統計時器(System timer)在固定時間產生的計時訊號,於該預定時間內發送該訊息至該應用程式。
依據上述構思,於步驟A中,係以該儲存單元中儲存之數值加上或減去一預設數字之方式,將該儲存單元中儲存之數值調整成另一數值。
依據上述構思,於步驟B中,重新啟動作業系統時,更包括於記錄對應該應用程式的重新啟動系統紀錄(log recorded)。
依據上述構思,於步驟C中,係由該應用程式重新設定該儲存單元中之數值為該第一數值。
依據上述構思,於步驟C中,當該應用程式接收該訊時,將發出一回覆訊號。
依據上述構思,於步驟C中,更包括若該應用程式未回應時,則重新執行步驟A至步驟C。
依據上述構思,於步驟C中,若該應用程式回應時,除重新設定該儲存單元中之數值為該第一數值外,更重新執行步驟A至步驟C。
藉此,透過上述之設計,便可當該作業系統中的某個應用程式進入無限迴圈或是其因素造成的中斷服務(crashed)時,即時地重新啟動(Reboot)該作業系統。
為能更清楚地說明本發明,茲舉較佳實施例並配合圖示詳細說明如後。
請參閱圖1,為本發明較佳實施例檢測方法的流程圖。續參閱圖2,為本發明較佳實施例之作業系統架構,於本實施例中,係以裝載於網路裝置之作業系統進行說明,其中該作業系統可以是Linux作業系統,但不以此為限。該作業系統包含有一系統計時器(System timer)10、一監控程式20以及數個被監控之應用程式31、32。其中,該系統計時器10每經過一固定時間會產生一訊號來達到計時之目的;該監控程式20則於一儲存單元(如記憶體、暫存區等)中具有數個對應各該應用程式31、32之第一數值;以及被監控之應用程式31、32係用於執行特定功能的應用程式,例如提供使用者介面的應用程式、執
行網路位址轉換(Network Address Translation)的應用程式、或執行網路封包轉傳功能的應用程式等,但不以此為限,任何可以在作業系統中執行的各種應用程式皆可。另外,該第一數值係可由與該第二數值的絕對差值大小,設定為各種數值,提供應用程式在中斷服務後至作業系統重置之間具有不同的時間長短,藉以依應用程式所提供的功能重要性,在中斷服務發生時,具有不同的等待重置時間,於本實施例中,該第一數值係以數字10為例,但不以此為限。
請參閱圖3至圖5,當作業系統開始運作時,該監控程式20將依據本發明實施例之該檢測方法檢測該等應用程式31、32是否已中斷服務(crashed)。本發明實施例之監控方法包含有下列步驟:
A.於一預定時間內發送一訊息請求該應用程式回應,並對該儲存單元中儲存之數值以一預定方式運算後,調整成另一數值。於本步驟中,系統計時器10於一預定時間產生一訊號,該監控程式20將依據該系統計時器10產生的訊號,於預定時間內發出該訊息至各監控的應用程式,請求各該應用程式於收到該訊息後發出回應訊息,以回應該監控程式20,並且該監控程式20於發出該訊息後,將該儲存單元中儲存之數值調整為另一數值。於本實施例中,該預定時間可視需求而設定各種時間,例如1分鐘;而該訊息可以是該作業系統之事件(event)訊息,當應用程式收到要求回覆
的事件訊息時,正常運作中的應用程式將依據該事件訊息發出回應訊息;該預定方式為將該數值減去該預設數字的方式,把該數值調整為另一數值,其中該預設數字可以為任何數字,於本實施例中以1為例。請參閱圖3所示,當監控程式20發出訊息後,將對應該監控程式的數值減去預設數字後,得到各個對應被監控程式的第二數字為9。於另一實施例中,當該應用程式接收該訊息後,發出回覆訊息至該監控程式20,並且將該儲存於儲存單元之數值調整為該第一數值。此外,該預設方式亦可以是將該數值加上該預設數字的方式,把該數值調整為另一數值。
B.偵測調整後之數值是否等於一第二數值,若調整後之數值等於一第二數值時,則重新啟動該作業系統。於本步驟中,該監控程式20將在步驟A中依該預定方式運算取得的數值與該第二數值進行比對,以判斷該運算後的數值與該第二數值是否相符,並於相符時,發出作業系統重置的指令,以要求作業系統進行重置的動作。補充說明的是,該第二數值的設定係依據該預定方式而設定為不同的數值,若該預定方式為相加,則該第二數值需設定為大於儲存單元中的初始數值;反之,若該預定方式為相減,則該第二數值需設定為小於初始數值。於本實施例中,該第二數值係為0,因此,當該數值被以預定方式調整至0時,監控程式20將發出作業系統重新啟動的指令,令作業系統進行重置
(Reset),例如暖開機(Warm start)等,但不以此為限。另外,於另一實施例中,當重新啟動作業系統時,監控程式將記錄對應該應用程式的重新啟動系統紀錄(log recorded),藉以供使用者或維修人員分析哪個應用程式經常停止服務而造成該系統的重新啟動,而作為後續作業系統管理的參考依據。
C.偵測各該應用程式31、32是否產生回應;若該應用程式回應時,則重新設定該儲存單元中之數值為該第一數值,並重新執行步驟A至步驟C;若該應用程式未回應時,則重新執行步驟A至步驟C。於本步驟中,監控程式20依據是否接收到應用程式的回覆訊息,偵測各該應用程式31、32是否回應,並於偵測該應用程式回應時,將對應該應用程式的數值,設定為該第一數值;反之,若該應用程式於預設時間內未回應時,則重新執行步驟A至步驟C。請參閱圖4所示,當監控程式20收到應用程式回覆的回應訊息,則將對應該應用程式31之數值設定為10,並繼續執行步驟A至步驟C;當監控程式20未收到應用程式回覆的回應訊息時,則繼續執行步驟A至步驟C。
請參閱圖5,監控程式依據上述的步驟,若應用程式32一直無回應時,監控程式在該預定時間發出訊息時會一直持續將對應該被監控程式32的數值調整至符合第二數字,一旦符合第二數字,該監控程式20則認定應用程式32已停止服務,
而將作業系統重新啟動,來使應用程式32可以重新提供服務。
由上述可知,本發明實施例可以依據不同的應用程式功能,在中斷服務發生時,在適當時間之內可以對作業系統進行重置,解決應用程式中斷服務的問題,不需等到處理器過載的時候才進行重置,而可提供即時及必要的重置動作,避免因重要功能的應用程式中斷時間過久,影響搭載作業系統的裝置功能運行。
以上所述僅為本發明較佳可行實施例而已,舉凡應用本發明說明書及申請專利範圍所為之等效方法變化,理應包含在本發明之專利範圍內。
10‧‧‧系統計時器
20‧‧‧監控程式
31、32‧‧‧應用程式
圖1為本發明較佳實施例之檢測方法流程圖
圖2為使用本發明檢測方法之系統架構圖。
圖3說明本發明較佳實施例之檢測方法的步驟A。
圖4說明本發明較佳實施例之檢測方法的步驟C。
圖5揭示系統之應用程式已被認定停止服務。
Claims (10)
- 一種檢測方法,用以檢測一作業系統中之多個應用程式是否已中斷服務(crashed),而該作業系統中設有多個對應該些應用程式之第一數值於一儲存單元中,且至少兩個對應二該應用程式之第一數值不同;該檢測方法包含有下列步驟:A.於一預定時間內發送一訊息請求各應用程式回應,並對該儲存單元中對應各該應用程式之數值以一預定方式運算後,調整成另一數值;B.若調整後之數值等於一第二數值時,則重新啟動該作業系統;C.若該應用程式回應時,則重新設定該儲存單元中之對應該應用程式之數值為該第一數值。
- 如請求項1所述之檢測方法,其中,於步驟A中,該訊息係為作業系統中之事件(event)訊息。
- 如請求項1所述之檢測方法,其中,於步驟A中,係依據一系統計時器(System timer)在固定時間產生的計時訊號,於該預定時間內發送該訊息至該應用程式。
- 如請求項1所述之檢測方法,其中,於步驟A中,係對該儲存單元中儲存之數值加上或減去一預設數字之方式,將該儲存單元中儲存之數值調整成另一數值。
- 如請求項1所述之檢測方法,其中,於步驟B中,重新啟動作業系統時,更包括於記錄對應該應用程式的重新啟動系統 紀錄(log recorded)。
- 如請求項1所述之檢測方法,其中,於步驟C中,係由該應用程式重新設定該儲存單元中之數值為該第一數值。
- 如請求項1所述之檢測方法,其中,於步驟C中,當該應用程式接收該訊息時,將發出一回覆訊號。
- 如請求項1所述之檢測方法,其中,於步驟C中,更包括若該應用程式未回應時,則重新執行步驟A至步驟C。
- 一種檢測方法,用以檢測一作業系統中之多個應用程式是否已中斷服務(crashed),而該作業系統中設有多個對應該些應用程式之第一數值於一儲存單元中,且至少兩個對應二該應用程式之第一數值不同;該檢測方法包含有下列步驟:A.於一預定時間內發送一事件(event)訊息請求各應用程式回應,並以該儲存單元中對應各該應用程式之數值加上或減去一預設數字之方式,將該儲存單元中儲存之數值調整成另一數值;B.若調整後之數值等於一第二數值時,則重新啟動該作業系統;C.若該應用程式回應時,該應用程式則重新設定該儲存單元中對應該應用程式之數值為該第一數值,並重新執行步驟A至步驟C;若該應用程式未回應時,則重新執行步驟A至步驟C。
- 如請求項9所述之檢測方法,其中,於步驟B中,重新 啟動作業系統時,更包括於記錄對應該應用程式的重新啟動系統紀錄(log recorded)。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW101107548A TWI643063B (zh) | 2012-03-06 | 2012-03-06 | Detection method |
CN2012101174641A CN103309759A (zh) | 2012-03-06 | 2012-04-20 | 一种操作系统中断服务的检测方法 |
US13/785,315 US9495230B2 (en) | 2012-03-06 | 2013-03-05 | Testing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW101107548A TWI643063B (zh) | 2012-03-06 | 2012-03-06 | Detection method |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201337542A TW201337542A (zh) | 2013-09-16 |
TWI643063B true TWI643063B (zh) | 2018-12-01 |
Family
ID=49114851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101107548A TWI643063B (zh) | 2012-03-06 | 2012-03-06 | Detection method |
Country Status (3)
Country | Link |
---|---|
US (1) | US9495230B2 (zh) |
CN (1) | CN103309759A (zh) |
TW (1) | TWI643063B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115437856A (zh) * | 2021-06-01 | 2022-12-06 | 长鑫存储技术有限公司 | 内存测试方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI228650B (en) * | 2003-06-17 | 2005-03-01 | Acer Inc | Application program management system and method thereof |
TWI234112B (en) * | 2003-07-04 | 2005-06-11 | Service & Quality Technology C | Automatic reset method and device for computer failure |
TW200919303A (en) * | 2007-10-26 | 2009-05-01 | Mitac Int Corp | System capable of monitoring multi-thread status and monitoring method thereof |
TW201106152A (en) * | 2009-08-10 | 2011-02-16 | Inventec Corp | Method for detecting hang of computer system |
TW201116995A (en) * | 2009-11-04 | 2011-05-16 | Inventec Corp | Method of monitoring operating system |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6035389A (en) * | 1998-08-11 | 2000-03-07 | Intel Corporation | Scheduling instructions with different latencies |
CN100410891C (zh) * | 2002-12-09 | 2008-08-13 | 联想(北京)有限公司 | 计算机应用软件自纠错自重起方法 |
CN1323355C (zh) * | 2002-12-10 | 2007-06-27 | 中兴通讯股份有限公司 | 一种看门狗实时可调复位方法和装置 |
US20040250155A1 (en) * | 2003-05-19 | 2004-12-09 | Stefan Weichselbaum | Aspect based recovery system and method |
US7424644B2 (en) * | 2005-03-01 | 2008-09-09 | Microsoft Corporation | Method and system for recovering data from a hung application |
US7818625B2 (en) * | 2005-08-17 | 2010-10-19 | Microsoft Corporation | Techniques for performing memory diagnostics |
CN100394399C (zh) * | 2006-02-22 | 2008-06-11 | 迈普(四川)通信技术有限公司 | 一种死循环或类死循环任务检测方法 |
CN100389404C (zh) * | 2006-08-01 | 2008-05-21 | 西安西电捷通无线网络通信有限公司 | 一种计算机应用程序的监控及异常处理方法 |
US8688964B2 (en) * | 2009-07-20 | 2014-04-01 | Microchip Technology Incorporated | Programmable exception processing latency |
US8424000B2 (en) * | 2010-07-30 | 2013-04-16 | Symantec Corporation | Providing application high availability in highly-available virtual machine environments |
CN102141947B (zh) * | 2011-03-30 | 2013-04-24 | 东方通信股份有限公司 | 一种对采用嵌入式操作系统的计算机应用系统中异常任务的处理方法及系统 |
-
2012
- 2012-03-06 TW TW101107548A patent/TWI643063B/zh active
- 2012-04-20 CN CN2012101174641A patent/CN103309759A/zh active Pending
-
2013
- 2013-03-05 US US13/785,315 patent/US9495230B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI228650B (en) * | 2003-06-17 | 2005-03-01 | Acer Inc | Application program management system and method thereof |
TWI234112B (en) * | 2003-07-04 | 2005-06-11 | Service & Quality Technology C | Automatic reset method and device for computer failure |
TW200919303A (en) * | 2007-10-26 | 2009-05-01 | Mitac Int Corp | System capable of monitoring multi-thread status and monitoring method thereof |
TW201106152A (en) * | 2009-08-10 | 2011-02-16 | Inventec Corp | Method for detecting hang of computer system |
TW201116995A (en) * | 2009-11-04 | 2011-05-16 | Inventec Corp | Method of monitoring operating system |
Also Published As
Publication number | Publication date |
---|---|
US20130238284A1 (en) | 2013-09-12 |
TW201337542A (zh) | 2013-09-16 |
US9495230B2 (en) | 2016-11-15 |
CN103309759A (zh) | 2013-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210182136A1 (en) | Fault Processing Method, Related Apparatus, and Computer | |
US20150278046A1 (en) | Methods and systems to hot-swap a virtual machine | |
US10496128B2 (en) | Method for obtaining timestamp and computer device using the same | |
US9210059B2 (en) | Cluster system | |
CN106656604A (zh) | 微服务请求管理方法、微服务控制器及高并发微服务架构 | |
JP4873073B2 (ja) | 情報処理装置及び情報処理装置の障害復旧方法 | |
KR20200078328A (ko) | 소프트웨어 애플리케이션 프로세스를 모니터링하는 시스템 및 방법 | |
WO2010113212A1 (ja) | メモリリーク監視装置、及び方法 | |
TWI643063B (zh) | Detection method | |
WO2015188619A1 (zh) | 物理主机故障检测方法、装置及虚机管理方法、系统 | |
CN113722181A (zh) | 一种服务器的bmc进程监控方法、装置、系统及介质 | |
CN115562900B (zh) | Amd服务器系统安装断电处理方法、装置、设备及介质 | |
JP2007028118A (ja) | ノード装置の故障判断方法 | |
CN113688021B (zh) | 一种负载均衡服务处理方法、装置、设备及可读存储介质 | |
WO2014112039A1 (ja) | 情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラム | |
WO2019041685A1 (zh) | 一种设备机组的控制方法、装置及设备机组 | |
CN111712801A (zh) | 具有联网功能的设备 | |
JP5268820B2 (ja) | 監視装置用プログラムの書き換え方法 | |
TW201303580A (zh) | 監督員系統回復控制技術 | |
JP5716396B2 (ja) | 情報処理装置及び情報処理方法 | |
US7958398B2 (en) | Reference state information generation | |
CN109815064B (zh) | 节点隔离方法、装置、节点设备及计算机可读存储介质 | |
JP2004070458A (ja) | 自己診断機能を持つプログラムと、プログラム監視装置及びその方法と、プログラム監視機能を持つプログラム | |
KR20170079271A (ko) | 헬스 추정 기반 시스템 고장 처리 장치 및 방법 | |
US20200328935A1 (en) | Detecting malfunction of mobile broadband modems based on response patterns |