JP2010072854A - 情報処理装置の支援装置、支援方法、およびコンピュータプログラム - Google Patents

情報処理装置の支援装置、支援方法、およびコンピュータプログラム Download PDF

Info

Publication number
JP2010072854A
JP2010072854A JP2008238385A JP2008238385A JP2010072854A JP 2010072854 A JP2010072854 A JP 2010072854A JP 2008238385 A JP2008238385 A JP 2008238385A JP 2008238385 A JP2008238385 A JP 2008238385A JP 2010072854 A JP2010072854 A JP 2010072854A
Authority
JP
Japan
Prior art keywords
job
leak
executed
amount
memory
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.)
Pending
Application number
JP2008238385A
Other languages
English (en)
Other versions
JP2010072854A5 (ja
Inventor
Hiroshi Inoue
拓 井上
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2008238385A priority Critical patent/JP2010072854A/ja
Priority to US12/534,926 priority patent/US9135070B2/en
Publication of JP2010072854A publication Critical patent/JP2010072854A/ja
Publication of JP2010072854A5 publication Critical patent/JP2010072854A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/504Resource capping
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Exposure Of Semiconductors, Excluding Electron Or Ion Beam Exposure (AREA)
  • Debugging And Monitoring (AREA)
  • Exposure And Positioning Against Photoresist Photosensitive Materials (AREA)

Abstract

【課題】メモリリークによる情報処理装置のメモリ枯渇を予測することを目的とする。
【解決手段】本発明にかかる支援装置は、実行済みのジョブにおける設定と、実行済みのジョブが引き起こしたメモリリークのリーク量と、実行済みのジョブが使用したメモリのピーク量と、を関連付けて記憶する。情報処理装置に投入される予定のジョブ群と該ジョブ群のそれぞれを実行する際の設定とを取得する。ジョブ群に含まれるジョブに対して、記憶された設定と取得した設定とを比較して、情報処理装置でジョブが実行された場合のリーク量及びピーク量を予測する。ジョブ群に含まれるジョブであって、ジョブの予測されたピーク量とジョブに先行して実行されるジョブの予測されたリーク量との合計値が、ジョブ群の実行に許容される情報処理装置のメモリ容量を上回るようなジョブが存在するか否かを判定する。
【選択図】図2

Description

本発明は、情報処理装置の支援装置、支援方法、およびコンピュータプログラムに関する。
情報処理装置において、ソフトウェアがメモリを利用する際に、オペレーティングシステム等のメモリ管理機構からメモリ領域を獲得し、メモリを使用した後に解放する。メモリ領域獲得/解放の手段として、C言語ではライブラリ関数のmalloc/free、C++言語ではnew/delete演算子などが広く用いられている。ソフトウェアがメモリ使用後に使用したメモリ領域を解放し忘れた場合には、情報処理装置が終了するまで該メモリ領域は使用されることなく情報処理装置の資源を無駄に占有し続ける。この現象はメモリリーク(以下、単にリークと呼ぶ)と呼ばれ、ソフトウェアのメモリ解放忘れのバグによって発生する。一般に、プログラムの構造を静的に調べる静的解析による検査方法では、リークを検出することが難しく、誤検出率が高い。また、プログラムが実際に動いている状態を調べる動的解析に関して、単一プロセス内でのメモリリークのチェックを行う市販ツールが広く利用されている。ここでプロセスとは、オペレーティングシステムが管理するソフトウェアの実行単位である。しかし、複数のプロセスから構成され、プロセス間で共有メモリを利用してデータ共有を行うソフトウェアにおいては、あるプロセスが獲得した共有メモリ上の領域を他のプロセスが解放する場合がある。この場合には、単一プロセス内のチェックだけではメモリリークを正確に検出することは出来ない。
ソフトウェアは通常、出荷前のテスト工程にてバグの発見・除去がされてから製品として出荷される。しかしながら工業用製造装置ソフトの中には、出荷前のテスト工程でメモリ解放忘れのバグを完全に除去することが極めて困難なものもある。例えば半導体ウェハの焼き付けを行う半導体露光装置では、露光条件と手順とを記したレシピと、装置設定の組み合わせによって装置の動作が決定される。これらの組み合わせは多量のパラメータを持ち、工場ラインの生産計画に基づいてソフトウェア出荷後にユーザによって作成されるという特徴がある。どのような組み合わせを必要とするかはユーザにより異なるため、メモリ解放忘れのバグを完全に除去するためには、テスト工程にてすべての設定の組み合わせをチェックする必要がある。しかし、多量のパラメータを持つ場合には、このチェックを行うことは現実的でない。
メモリ解放忘れのバグを含むソフトウェアを連続動作させると、リークの発生により情報処理装置の利用可能なメモリ領域が徐々に減少する。その結果、情報処理装置は性能が低下すると同時に動作が不安定になる。そのような場合には、情報処理装置の性能と安定性とを回復するために、該情報処理装置を停止・再起動しメモリ領域を初期化する等の措置をとらなければならない。しかし、半導体露光装置は一旦生産計画に基づき生産を開始すると数週間に渡って稼動し続けることを前提としており、安易に情報処理装置を再起動することは出来ない。再起動すると初期化処理やハードウェアの調整処理を行う必要があり、その間工場ラインの他装置も一時停止して生産量の調整を行わなければならないためである。また、半導体露光装置には複数のウェハから成るロット単位で作業内容の指示が投入されるが、ロットを処理中に再起動を行った場合には、ロット中の一部のウェハを破棄せざるを得ないことがある。このように情報処理装置の再起動が突然発生するとユーザは大きな損害を被る。一方、再起動が必要になる時期が予め事前に予測されていれば、ユーザはその予測に基づいて生産計画の見直し、最適化を図ることが出来る。そのため、情報処理装置の再起動が必要になる時期を精度良く予測する技術が求められている。
図21Aおよび図21Bを用いて、情報処理装置のメモリリークによる影響を説明する。図21Aは、リークを引き起こすジョブが存在しない場合のメモリ使用の状況を説明する図である。この図において、情報処理装置においてJ1からJ6までのジョブが実行されるとする。メモリ使用量2101は、ジョブJ1を実行する際に必要となるメモリ量である。いずれのジョブもメモリ使用量がメモリ上限を超えないため、メモリが枯渇することはない。
一方、図21Bは、リークを引き起こすジョブが存在する場合のメモリ使用の状況を説明する図である。ジョブJ1の終了後にメモリリーク2102が発生する。このメモリ領域は、ジョブJ2を実行する場合にはまったく使用できない領域となってしまうため、ジョブJ2が必要とするメモリ容量はリークが発生しない場合と比べて、多くなってしまう。さらに、リークが累積し、ジョブJ4に実行において、リーク量の合計値とジョブJ4の使用するメモリ量との合計が、メモリ上限を超えてしまう。この場合には、システムが不安定になり、情報処理装置が停止してしまうおそれもある。
情報処理装置のメモリ枯渇の予測について、既存の有効な技術は存在しない。他の分野の技術で情報処理装置のメモリ枯渇の予測に適用可能なものとして、消耗材の消耗度の検出と寿命の予測とが考えられる。
特許文献1には電池の使用開始時からの使用モードと動作時間を記録し、予め出荷時に記憶された消耗度を用いて電池の残り寿命を算出する方法が記載されている。また特許文献2と特許文献3とには、プリンタに投入される印刷ジョブに必要な消耗材の見込み分量を実際の消耗品残量と比較して、該印刷ジョブを完遂可能かどうか判断する方法が記載されている。しかしこれらの方法では、消耗度を製造時の理論値や設計値に基づき定めていて、出荷後の想定外の要因による消耗を考慮していない。そのため、半導体露光装置のように出荷後に初めてリークが発生したような場合には、適用することが出来ない。また、これらの方法は、将来にわたる使用計画を考慮していないため、予め寿命を予測することが出来ない。
特許文献4には生産計画を考慮して工場の成形機の部品交換を自動発注する方法が記載されている。しかし、成形機の消耗度を製造時の理論値や設計値に基づき定めているため、やはり膨大な設定パラメータの組み合わせを出荷前に網羅できない場合に対応できない。
特開平08−220199号公報 特開2005−250302号公報 特開2004−168062号公報 特開2005−258585号公報
本発明は、メモリリークによる情報処理装置のメモリ枯渇を予測することを目的とする。
上記課題に鑑みて、本発明にかかる支援装置は、ジョブを指定された設定に従って実行する情報処理装置を支援する支援装置であって、
実行済みのジョブにおける設定と、該実行済みのジョブが引き起こしたメモリリークのリーク量と、該実行済みのジョブが使用したメモリのピーク量と、を関連付けて記憶する記憶手段と、
前記情報処理装置に投入される予定のジョブ群と該ジョブ群のそれぞれを実行する際の設定とを取得する取得手段と、
前記ジョブ群に含まれるジョブに対して、前記記憶手段に記憶された設定と前記取得手段が取得した設定とを比較して、前記情報処理装置で該ジョブが実行された場合のリーク量及びピーク量を予測する予測手段と、
該ジョブ群に含まれるジョブであって、該ジョブの前記予測されたピーク量と該ジョブに先行して実行されるジョブの前記予測されたリーク量との合計値が、該ジョブ群の実行に許容される前記情報処理装置のメモリ容量を上回るようなジョブが存在するか否かを判定する判定手段とを備える。
上述の手段により、メモリリークによる情報処理装置のメモリ枯渇を予測することが可能となる。
以下、添付の図面に沿って本発明の実施形態について説明する。本発明はジョブを指定された設定に基づいて実行する情報処理装置を支援する支援装置に適用される。以下の実施形態ではこのような情報処理装置として、半導体露光装置を扱う。半導体露光装置において実行されるジョブは一つ以上の機能に細分化されるが、ジョブと機能との組み合わせを一つのジョブと扱うことで、上記のような情報処理装置とみなすことができる。
<第1の実施形態>
〔ハードウェア構成〕
図1を用いて、本実施形態における支援装置100のハードウェア構成を説明する。図1は、本実施形態における支援装置100のハードウェア・ブロック図の一例である。CPU101は、バス102を介して支援装置100の各構成要素の制御を司る。ROM103は、バス102を介してCPU101からアクセス可能な読み出し専用メモリであり、後述する各種プログラム等を格納する。RAM104は、読み書き可能なメモリRAMであり、各種データ等を格納する。ROM103に格納されるプログラムは実行時にRAM104に読み出されるが、ROM103上に配置したまま実行することも出来る。
入力装置110はユーザからの入力を受け付けるキーボード、マウス、タブレット等であり、入力インターフェイス105を介してバス102に接続される。出力装置120はCRT,LCD等のディスプレイ、更にはプリンタ、プロッタ等であり、出力インターフェイス106を介してバス102に接続される。外部記憶装置130はHDD、FDD、CD−ROMドライブ、MDドライブ等であり、外部記憶装置インターフェイス107を介してバス102に接続される。外部記憶装置130からRAM104に各種プログラムを読み出しても良い。通信インターフェイス108は、支援対象の装置である半導体露光装置140との通信を提供する。図1において、支援装置100は半導体露光装置140と独立した装置として表現されているが、支援装置100は半導体露光装置140の一部であってもかまわない。
〔ソフトウェア構成〕
図2を用いて、本実施形態における支援装置100のソフトウェア構成を説明する。図2は、本実施形態における支援装置100のソフトウェア・ブロック図の一例である。支援装置100はプログラムとして、リークパターン解析プログラム201、実行予定機能算出プログラム202、およびメモリ枯渇判定プログラム203を備える。さらに、支援装置100はデータとして、ジョブ履歴204、リーク履歴205、パターン限定情報206、リークパターン207、生産計画208、ジョブ定義情報209、実行予定機能210、許容メモリ量211、およびメモリ枯渇情報212を備える。本実施形態では各種プログラムと各種データとがすべて単一の支援装置100に配置されるものとして説明を行う。しかし、これらの一部を他のコンピュータ・ノードに配置し、複数のコンピュータ・ノードを用いて一連の処理を行ってもよい。
リークパターン解析プログラム201は、半導体露光装置140に過去に投入されたジョブの実行結果に基づいて、半導体露光装置140でリークが発生する設定およびリーク量・ピーク量を算出する。具体的には、ジョブ履歴204、リーク履歴205、およびパターン限定情報206を入力として、リークパターン207を出力する。ジョブ履歴204は、過去に半導体露光装置に投入されたジョブの設定に関する情報である。リーク履歴205は、過去に半導体露光装置に投入されたジョブの実行において使用されたメモリのピーク量と引き起こされたメモリリークのリーク量に関する情報である。パターン限定情報206は、リークパターン207を作成する際に対象とする設定を限定する情報である。リークパターン207は、過去に実行したジョブの実行履歴から、リークの発生した機能と設定との組み合わせに関する情報を抽出したものである。
実行予定機能算出プログラム202は、ユーザが半導体露光装置140で実行を予定しているジョブに基づいて、実際に半導体露光装置140で実行される機能を算出する。具体的には、生産計画208およびジョブ定義情報209を入力として、実行予定機能210を出力する。生産計画208は、半導体露光装置140に投入される予定のジョブについて情報であり、例えば半導体露光装置140のユーザによって作成される。ジョブ定義情報209は、ジョブの詳細を定義した情報である。実行予定機能210は、実際に半導体露光装置140で実行される機能とその順番とを規定した情報である。
メモリ枯渇判定プログラム203は、実行を予定しているジョブを実行した場合に、半導体露光装置140のメモリを枯渇してしまうか否かを判定するプログラムである。具体的には、リークパターン207、実行予定機能210、および許容メモリ量211を入力として、メモリ枯渇情報212を出力する。許容メモリ量211は、半導体露光装置ソフトがジョブを実行する際に使用を許容されるメモリ容量である。メモリ枯渇情報212は、メモリの枯渇が発生するか否か、さらには発生する場合にどのジョブのどの機能においてメモリが枯渇するかについての情報である。
以上のように、半導体露光装置140で使用されるソフトウェアが出荷された後に、ユーザによる使用で蓄積された情報に基づいてメモリの枯渇を判定する。続いて、各プログラムの動作と各データの内容との詳細について説明する。
〔リークパターン解析プログラムとその入出力データ〕
リークパターン解析プログラム201は、半導体露光装置140に過去に投入されたジョブの実行結果に基づいて、半導体露光装置140でリークが発生する設定およびリーク量・ピーク量を算出する。まず、入力データであるジョブ履歴204、リーク履歴205、およびパターン限定情報206について説明する。
図3A、図3Bを用いてジョブ履歴204について説明する。ジョブ履歴204は、過去に半導体露光装置に投入されたジョブの設定に関する情報である。ジョブ履歴204は半導体露光装置140に記憶され、支援装置100は半導体露光装置140からジョブ履歴204を取得してもよい。また、支援装置100がジョブ履歴204を記憶してもよい。ジョブ履歴204はパラメータ情報300と実行機能情報310とを含む。
図3Aはパラメータ情報300の一例を説明する図である。パラメータ情報300は図3Aに示すような表で表現することができるが、この表現形式に限られない。以下に説明するその他の情報についても同様に表で表現することができるが、この表現形式に限られない。また、各情報の値が直接記載されているが、各々いくつかのファイルまたはデータベース・テーブルに分散して保持されていても良い。
パラメータ情報300は、半導体露光装置140に投入されたジョブごとにレコードが作成される。パラメータ情報300は、投入されたジョブが完了するごとに、そのジョブに関するレコードが追加される。パラメータ情報300は、ジョブID301、ジョブ種302、パラメータ設定303、およびジョブ関連情報304を含む。ジョブID301は半導体露光装置140に投入されたジョブごとに一意に割り当てられた識別子である。ジョブ種302は実行されたジョブの種類である。同一のジョブ種302であっても、異なるジョブとして投入された場合には、異なるジョブID301が付与される。パラメータ設定303はジョブの実行の際に指定されたパラメータの設定値であり、多くのパラメータはセル306のように値が設定されるが、セル305のように値が設定されないこともあるパラメータもある。ジョブ関連情報304はジョブの作成者等のようなジョブに関連する情報である。
図3Bは実行機能情報310の一例を説明する図である。実行機能情報310は半導体露光装置140に記憶され、支援装置100は半導体露光装置140から実行機能情報310を取得してもよい。また、支援装置100が実行機能情報310を記憶してもよい。実行機能情報310は、半導体露光装置140に過去に投入された実行済みのジョブごとにレコードが作成される。実行機能情報310は、投入されたジョブが完了するごとに、そのジョブに関するレコードが追加される。ジョブID311およびジョブ種312は、図3Aで説明したジョブID301およびジョブ種302とそれぞれ同じである。機能実行履歴313は、それぞれのジョブにおいて実行された機能とその実行順番との履歴である。一つのジョブに同一名の機能が複数回繰り返し含まれることがある。例えばレコード314のジョブにおいて、「搬送」、「計測1」、「露光」が繰り返し実行されている。これは、一つのジョブにおいて複数枚のウェハの露光を行う場合や、計測を繰り返し行う場合があるためである。
図4A、図4Bを用いてリーク履歴205について説明する。リーク履歴205は、過去に半導体露光装置に投入されたジョブの実行において使用されたメモリ量と発生したリーク量に関する情報である。リーク履歴205は半導体露光装置140に記憶され、支援装置100は半導体露光装置140からリーク履歴205を取得してもよい。また、支援装置100がリーク履歴205を記憶してもよい。リーク履歴205は、リーク機能情報400とリーク量情報410とを含む。
図4Aはリーク機能情報400の一例を説明する図である。リーク機能情報400は、それぞれのジョブで実行された機能ごとにレコードが作成される。リーク機能情報400は、投入されたジョブが完了するごとに、そのジョブの機能に関するレコードが追加される。
リーク機能情報400は、ジョブID401、ジョブ種402、機能名403、実行順番404、リーク発生405、パラメータ設定406、およびジョブ関連情報407を含む。ジョブID401、ジョブ種402、パラメータ設定406、およびジョブ関連情報407は、図3Aの対応するそれぞれと同じである。機能名403は、それぞれのジョブにおいて実行された機能の名称である。実行順番404は、それぞれのジョブにおいて機能が実行された順番である。リーク発生405は、それぞれの機能においてリークが発生したか否かを示すフラグである。このフラグにより、例えば、ジョブID401が「00010」のジョブの3番目に実行した「露光」でリークが発生したことがわかる。
図4Bはリーク量情報410の一例を説明する図である。リーク量情報410は、それぞれのジョブでリークが発生した機能ごとにレコードが作成される。リーク量情報410は、投入された機能の実行が終了するごとに、該機能に関するレコードが追加される。リーク量情報410は、ジョブID411、機能名412、実行順番413、ピーク量414、およびリーク量415を含む。ジョブID411、機能名412、および実行順番413は、図4Aの対応するそれぞれと同じである。ピーク量414は、当該機能の実行において半導体露光装置140が使用したメモリの最大使用量である。リーク量415は、当該機能の実行によって半導体露光装置140に引き起こされたメモリリークのリーク量である。
半導体露光装置140はジョブに含まれるそれぞれの機能を実行する際に、各時点における使用メモリ量を追跡し、その最大値をピーク量414とする。また、機能の実行終了時点で解放されていないメモリ領域をメモリリークが引き起こされたメモリ領域であるとみなして、リーク量415として記録するとともに、リークされたメモリ領域を解放する。
パターン限定情報206は、リークパターン207を作成する際に対象とする設定を限定する情報である。パターン限定情報206はユーザが支援装置100に対して指定してもよいし、支援装置100が自動的に指定してもよい。例えば半導体露光装置140を構成するソフトウェアの一部のモジュールを更新した直後には、該モジュールが参照するパラメータをパターン限定情報206で指定し、運用実績のない該モジュールのリークを重点的にチェックする等のユースケースが考えられる。
続いて、出力データであるリークパターン207について説明する。図5は本実施形態におけるリークパターン207の一例を説明する図である。リークパターン207は、過去に実行したジョブの実行履歴から、リークの発生した機能と設定との組み合わせに関する情報を抽出したものである。リークパターン207は、リークの発生した機能と条件との組み合わせごとにレコードが作成される。ジョブ種501と機能名502とはそれぞれ、リークが発生したジョブの種類と機能との名称とである。リーク条件503は、リークが発生した機能を実行した際に指定した設定である。ピーク量504とリーク量505とはそれぞれ、リークの発生した機能を実行した際に使用されたメモリのピーク量と発生したリーク量とである。
続いて、図6、図8、および図9を用いて、リークパターン解析プログラム201の動作を説明する。図6は本実施形態におけるリークパターン解析プログラム201の動作の一例を示すフローチャートである。この動作はリークパターン解析プログラム201をCPU101が処理することによって実行される。
ステップS601で、図4Aに示すリーク機能情報400から、同一のジョブ種402と同一の機能名403との組み合わせごとにレコードを抽出してサブリーク機能情報を作成する。この結果、ジョブの種類数に機能の種類数を掛けた数のサブリーク機能情報が生成される。例として、ジョブ種402が「キャリブレーション」で、機能名403が「計測3」である組み合わせについて作成したサブリーク機能情報700を図7に示す。図7はサブリーク機能情報の一例を説明する図である。サブリーク機能情報700のリーク発生405を参照してリークが発生したレコードを特定し、該レコードをそれぞれt〜tで表し、該レコード全体をTで表す。例えば、レコード701がtに対応する。各レコードはそれぞれN種類のパラメータを有するとし、それぞれのパラメータ名をp〜pと表す。例えば、「パラメータA702」がpに対応する。レコードtのパラメータ値をtk,1〜tk,Nとする。例えば、セル703のパラメータ値A1がt1,1に対応する。
図6に戻り、ステップS601で生成されたすべてのサブリーク機能情報に対して、ステップS602とステップS603とを実行する。ステップS602では、リークが発生したパラメータ条件を抽出する。ステップS603では、リークの発生した機能ごとに、メモリのリーク量と使用量とを算出する。以下にこれらの処理を詳細に説明する。
図8を用いて、図6に示すステップS602の処理の詳細を説明する。図8は本実施形態におけるリーク条件抽出処理の動作の一例を説明するフローチャートである。本実施形態において、機能を実行した際のリークの発生の有無は、パラメータの組み合わせだけに依存するものとする。つまり、同じパラメータの組み合わせであれば、どの順番で機能を実行してもリークが発生するものとする。この場合には、パラメータの組み合わせのみがリーク条件となる。なお、リーク条件がジョブシーケンス中の機能の実行順番に依存する場合については第2の実施形態で扱う。
ステップS801で、リーク条件のパラメータ名の候補を表す変数Rに、パラメータ設定406のパラメータ名全体の集合{p,…,p}を初期値として与える。変数Rにはパラメータ設定406のような動作ロジックに直接影響を与えるパラメータのみを指定し、ジョブ関連情報407のようなリーク発生とは無関係なパラメータは指定しない。
ステップS802で、パターン限定情報206に基づいて、変数Rを更新する。例えば、パターン限定情報206として、pα、pβ、…、pωのみにリーク条件を限定する指定が行われた場合には、R:=R∩{pα,pβ,…,pω}とする。一方、パターン限定情報206として、pα、pβ、…、pωをリーク条件から除外するように指定された場合には、R:=R−{pα,pβ,…,pω}とする。
ステップS803で、ジョブ・機能の組み合わせに対してリークが発生する条件の集合を表す変数Cを、空集合に初期化する。
リークが発生したレコードtのそれぞれに対して、ステップS804を繰り返す。ステップS804で、リークが発生したレコードにおけるパラメータ値の組み合わせを変数Cに和集合として追加する。例えばR={pα、pβ、‥、pω}の場合、レコードtについてのパラメータ値の組み合わせは、pα=tk,α∧pβ=tk,β∧…∧pω=tk,ωとなる。以上により、図5に示すような、ジョブ種501と機能名502との組み合わせごとのリーク条件503が抽出される。
なお、上記の例では複数の候補の中からパラメータ値を択一選択しているが、あらかじめ領域分割などを行うことによって、パラメータ値が任意の数値や文字列を取り得る場合でも択一選択するケースに帰着することが出来る。

続いて、図9を用いて、図6に示すステップS603の処理の詳細を説明する。図9は本実施形態におけるリーク量・ピーク量算出処理の動作の一例を説明するフローチャートである。本実施形態では、リーク条件毎に発生するリーク量とピーク量とは略一定値であるとする。
ステップS901で、抽出されたリーク条件を満たすサブリーク機能情報のレコードを抽出する。
ステップS902で、ジョブID401、機能名403、および実行順番404をキーとして、リーク量情報410を参照して、それぞれのレコードに関連付けられたピーク量414およびリーク量415を求める。
ステップS903で、ピーク量414とリーク量415とのそれぞれの平均値を算出する。
以上により、図5に示すような、ジョブ種501と機能名502との組み合わせごとのピーク量504とリーク量505とが抽出される。上述のリークパターン解析プログラム201の処理により、図5に示すリークパターン207が生成される。なお、ステップS903において、平均値を算出する代わりに最大値または最小値利用してもよい。
〔実行予定機能算出プログラムとその入出力データ〕
実行予定機能算出プログラム202は、ユーザが半導体露光装置140で実行を予定しているジョブに基づいて、実際に半導体露光装置140で実行される機能を算出する。まず、入力データである生産計画208およびジョブ定義情報209について説明する。
図10は、生産計画208の一例を説明する図である。生産計画208は、半導体露光装置140に投入される予定のジョブについて情報である。生産計画208は、投入される予定のジョブごとにレコードが作成される。生産計画208は、ジョブを投入するユーザが生成してもよいし、半導体露光装置140内のアプリケーションが自動的に生成してもよい。また、生産計画208は支援装置100に直接入力されてもよいし、半導体露光装置140に入力された生産計画208を支援装置100が取得してもよい。

生産計画208は、投入順番1001、ジョブ種1002、およびレシピID1003を含む。投入順番1001は、半導体露光装置に投入される予定のジョブの投入される順番である。ジョブ種1002は、半導体露光装置に投入される予定のジョブの種類である。レシピID1003は、投入するジョブのレシピを特定する識別子である。レシピとはジョブの実行の際の半導体露光装置の設定のことで、ジョブ定義情報209に詳細が定義される。
図11Aおよび図11Bは、ジョブ定義情報209の一例を説明する図である。ジョブ定義情報209は、それぞれのジョブの設定の詳細についての情報である。ジョブ定義情報209は、それぞれの設定の詳細ごとにレコードが定義される。ジョブ定義情報209は半導体露光装置140において管理され、支援装置100は半導体露光装置140からジョブ定義情報209を取得できる。
図11Aはレシピ情報1100の一例を説明する図である。レシピ情報1100は、レシピID1101および設定名1102を含む。レシピID1101は、レシピの種類を特定する識別子である。設定名1102は半導体露光装置140の設定の名称であり、例えば「露光照明モード」、「レクチルデータ」、「レイアウト」などがある。設定名1102の設定の詳細については、別の表で規定される。
図11Bはレクチルデータ設定1110の一例を説明する図である。レクチルデータ設定1110は「レクチルデータ」についてのパラメータを規定する。レクチルデータ1111は「レクチルデータ」の種類を特定する識別子である。パラメータ設定1112は「レクチルデータ」で使用されるパラメータの設定値である。
これ以上の説明は省略するが、「露光照明モード」や「レイアウト」などのその他の設定についてもレクチルデータ設定1110と同様の表が定義される。これらの表を用いて、レシピID1003をキーとして、ジョブ種1002に記載されたジョブを実行する際のパラメータ設定を取得できる。
続いて、出力データである実行予定機能210について図12を用いて説明する。実行予定機能210は、実際に半導体露光装置140で実行される機能とその順番とを規定した情報である。図12は実行予定機能210の一例を説明する図である。実行予定機能210は、投入されるジョブの機能ごとにレコードが作成される。投入順番1201は、半導体露光装置140に投入するジョブの順番である。ジョブ種1202は、投入するジョブの種類である。機能名1203は、それぞれのジョブにおいて実行される機能の名称である。実行順番1204は、機能を実行する順番である。パラメータ設定1205は、それぞれのジョブを実行する際に使用されるパラメータの設定値である。半導体露光装置140は、投入順番1201および実行順番1204で与えられた順番に、パラメータ設定1205で与えられた設定で、機能名1203の機能を実行していく。
続いて、図13を用いて、実行予定機能算出プログラム202の動作を説明する。図13は本実施形態における実行予定機能算出プログラム202の動作の一例を示すフローチャートである。この動作は実行予定機能算出プログラム202をCPU101が処理することによって実行される。
ステップS1301で、生産計画208と実行予定機能210とに基づいて、図14に示す実行パラメータ情報1400を生成する。図14は、実行パラメータ情報1400の一例を説明する図である。実行パラメータ情報1400は、投入される予定のジョブとそれぞれのジョブで指定されるパラメータ設定値とを対応付ける情報である。投入順番1401とジョブ種1402とは、図10に示す生産計画208の投入順番1001とジョブ種1002とにそれぞれ対応する。パラメータ設定1403は、生産計画208のレシピID1003をキーとして抽出したそれぞれのジョブに関するパラメータ設定値である。また、生産計画208に記載されていないジョブであっても、露光プロセス上の調整やメンテナンスのために必要な「キャリブレーション」のようなジョブが自動的に挿入されてもよい。
図13に戻り、ステップS1302で、実行パラメータ情報1400に基づいて、図15に示す機能実行順番1500を生成する。図15は、機能実行順番1500の一例を説明する図である。機能実行順番1500は、投入される予定のそれぞれのジョブで実行される機能とその順番とを規定する情報である。投入順番1501とジョブ種1502とは、図10に示す生産計画208の投入順番1001とジョブ種1002とにそれぞれ対応する。実行機能1503は、それぞれのジョブで実行される機能とその順番とであり、設定されたパラメータによって決定される。
図13に戻り、ステップS1303で、機能実行順番1500に基づいて、実行予定機能210を生成する。
〔メモリ枯渇判定プログラムとその入出力データ〕
メモリ枯渇判定プログラム203は、実行を予定しているジョブを実行した場合に、半導体露光装置140のメモリを枯渇してしまうか否かを判定するプログラムである。入力データであるリークパターン207、実行予定機能210、および許容メモリ量211のうち、まだ説明していない許容メモリ量211について説明する。許容メモリ量211は、生産計画208で実行を予定しているジョブを実行するために、半導体露光装置140で使用可能なメモリ容量である。例えば、半導体露光装置140全体のメモリ容量から、ジョブの実行前に半導体露光装置140が使用中のメモリ量を引いた値としてもよい。さらに、その値から、所定の安全定数を引くなどして、設計値を考慮した補正を行ってもよい。
出力データであるメモリ枯渇情報212は、生産計画208で指定されたジョブを実行する際に、許容メモリ量211を使い切るか否か、そして使い切る場合にはどのジョブのどの機能の実行時点で使い切るかに関する情報である。
続いて、図16を用いて、メモリ枯渇判定プログラム203の動作を説明する。図16はメモリ枯渇判定プログラム203の動作の一例を示すフローチャートである。この動作はメモリ枯渇判定プログラム203をCPU101が処理することによって実行される。
ステップS1601で、各時点におけるメモリリーク量の合計値を表す変数Aを0に初期化する。
ステップS1602で、実行予定機能210から、未選択の機能のうち、最先の順番の機能を実行機能として選択する。最先の順番は、ジョブの投入順番1201と機能の実行順番1204とによって定まる。
ステップS1603で、選択した実行機能がリークパターン207のリーク条件503を満たすか否かを判定する。満たす場合(ステップS1603において「YES」)には、ステップS1604に移行する。満たさない場合(ステップS1603において「NO」)には、ステップS1606に移行する。
ステップS1604で、先行する機能において発生が予測されたリーク量の合計値であるAと、実行機能のピーク量504との合計が、許容メモリ量211を上回るか否かを判定する。上回る場合(ステップS1604において「YES」)には、ステップS1608に移行する。この場合はメモリが枯渇することになるため、ステップS1608で、ジョブの投入順番1201と機能の実行順番1204とを支援装置100のユーザに通知して処理を終了する。
上回らない場合(ステップS1604において「NO」)には、ステップS1605に移行する。ステップS1605で、Aに実行機能のリーク量505を加算する。
ステップS1606で、実行予定機能210に未選択の機能があるか否かを判定する。未選択の機能がない場合(ステップS1606において「NO」)には、ステップS1607で、予定しているジョブを実行してもメモリは枯渇しない旨を支援装置100のユーザに通知する。未選択の機能がある場合(ステップS1606において「YES」)には、ステップS1602に戻る。
以上により、過去に実行したジョブの履歴に基づいて、これから実行する予定のジョブ群を実行した場合に、半導体露光装置140のメモリを枯渇するか否かを判定することができる。さらに、枯渇する場合には、どのジョブのどの機能で枯渇するかも判定できるため、それにあわせて半導体露光装置140の再起動等の対策をユーザがとることが可能となる。
なお本実施形態では、リーク条件503の信頼度を1としているが、ノイズや反例が混じっている場合に対応するために、確率的あるいは統計的な処理を含めてもよい。また、ジョブの機能はシーケンシャルに実行されるものとしたが、部分的に並列に実行されることを考慮してメモリ枯渇情報212を算出しても良い。また、支援装置100は半導体露光装置140を稼動させながらオンラインで同時並行に処理を行っても良いし、半導体露光装置140の稼動を停止した状態でバッチ処理を行っても良い。
<第2の実施形態>
第1の実施形態では、メモリリークを引き起こす設定であるリーク条件が、ジョブ種と機能名とパラメータ設定値との組み合わせから決まる場合について説明を行った。本実施形態では更に、リーク条件がジョブ中の機能の実行順番に依存する場合について説明する。第1の実施形態と重複する内容の説明は省略し、本実施形態に固有の内容を中心に説明する。
図17は本実施形態におけるリーク機能情報1700の一例を説明する図である。同一ジョブ・同一機能・同一パラメータ設定値の組み合わせでも、リークが発生している場合としていない場合とがある。そのため、機能の前後関係やジョブ内の位置をリーク条件として含めることで、より精度の高いメモリ枯渇判定を行うことを可能とする。
図18は本実施形態におけるリークパターン解析プログラム201の動作の一例を示すフローチャートである。この動作はリークパターン解析プログラム201をCPU101が処理することによって実行される。図7との違いは、ステップS1801で、制御情報1701を抽出する処理を行っている点である。制御情報1701とは、ジョブ内の機能の繰り返しの相違や、ジョブ内における機能の登場位置に関する情報である。
図19を用いて、図18のステップS1801の詳細について説明する。図19は、制御情報抽出処理の動作の一例を説明するフローチャートである。
ステップS1901で、それぞれのジョブにおいて、機能の組の繰り返しが存在するか否かを判定する。例えば、図17において、ジョブID401が「00020」のジョブには、「搬送」、「計測1」、「計測2」、「露光」の機能の組が繰り返し登場している。また、ジョブID401が「00030」のジョブには繰り返しが存在しない。繰り返しが存在しない場合(ステップS1901において「NO」)には、ステップS1902に移行して、繰り返しがないことを制御情報1701とする。例えば、レコード1704がこれに該当する。
繰り返しが存在する場合(ステップS1901において「YES」)には、ステップS1903に移行する。ステップS1903で、他の繰り返しと相違があるか否かを判定する。例えば、図17において、ジョブID401が「00010」のジョブの、実行順番404が「9」〜「12」の機能は、「計測3」が間に含まれているので、他の繰り返し部分と相違する。相違点がある場合(ステップS1903において「YES」)には、ステップS1904に移行して、相違点があることを制御情報1701とする。例えば、レコード1702がこれに該当する。
相違点が存在しない場合(ステップS1903において「NO」)には、ステップS1905に移行する。ステップS1905で、ジョブ内で最初に登場する繰り返しであるか否かを判定する。最初に登場する繰り返しである場合(ステップS1905において「YES」)には、ステップS1906に移行して、最初に登場する繰り返しであることを制御情報1701とする。例えば、レコード1705がこれに該当する。この制御情報1701の抽出は、最初の繰り返しである場合にのみリークを発生する機能があるときに有効である。
最初に登場する繰り返しでない場合(ステップS1905において「NO」)には、ステップS1907に移行する。ステップS1907で、ジョブ内で最後に登場する繰り返しであるか否かを判定する。最後に登場する繰り返しである場合(ステップS1907において「YES」)には、ステップS1908に移行して、最後に登場する繰り返しであることを制御情報1701とする。例えば、レコード1703がこれに該当する。この制御情報1701の抽出は、最後の繰り返しである場合にのみリークを発生する機能があるときに有効である。最後に登場する繰り返しでない場合(ステップS1907において「NO」)には、終了する。
図20は本実施形態におけるリークパターン2000の一例を説明する図である。リーク条件2001に制御情報1701が反映されていることがわかる。詳細な説明は省略するが、実行予定機能210についても制御情報1701が反映される。
以上のように、機能の前後関係やジョブ内の位置をリーク条件として含めることで、より精度の高いメモリ枯渇判定を行うことが可能となる。なお本実施の形態において、制御情報として繰り返しの有無、他の繰り返しとの相違点、繰り返しが最初もしくは最後であるか否か、を挙げたが、他の指針に基づく項目を付け加えても良い。また制御情報の抽出順番を入れ替えてもよい。
<その他の実施形態>
なお、本発明は、複数の機器(例えばホストコンピュータ、インターフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
また、本発明の目的は、前述した機能を実現するコンピュータプログラムのコードを記録した記憶媒体を、システムに供給し、そのシステムがコンピュータプログラムのコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたコンピュータプログラムのコード自体が前述した実施形態の機能を実現し、そのコンピュータプログラムのコードを記憶した記憶媒体は本発明を構成する。また、そのプログラムのコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した機能が実現される場合も含まれる。
さらに、以下の形態で実現しても構わない。すなわち、記憶媒体から読み出されたコンピュータプログラムコードを、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込む。そして、そのコンピュータプログラムのコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行って、前述した機能が実現される場合も含まれる。
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するコンピュータプログラムのコードが格納されることになる。
本発明の実施形態における支援装置100のハードウェア・ブロック図の一例である。 本発明の実施形態における支援装置100のソフトウェア・ブロック図の一例である。 本発明の実施形態におけるパラメータ情報300の一例を説明する図である。 本発明の第1の実施形態における実行機能情報310の一例を説明する図である。 本発明の第1の実施形態におけるリーク機能情報400の一例を説明する図である。 本発明の第1の実施形態におけるリーク量情報410の一例を説明する図である。 本発明の実施形態におけるリークパターン207の一例を説明する図である。 本発明の第1の実施形態におけるリークパターン解析プログラム201の動作の一例を示すフローチャートである。 本発明の実施形態におけるサブリーク機能情報の一例を説明する図である。 本発明の実施形態におけるリーク条件抽出処理の動作の一例を説明するフローチャートである。 本発明の実施形態におけるリーク量・ピーク量算出処理の動作の一例を説明するフローチャートである。 本発明の実施形態における生産計画208の一例を説明する図である。 本発明の実施形態におけるレシピ情報1100の一例を説明する図である。 本発明の実施形態におけるレクチルデータ設定1110の一例を説明する図である。 本発明の第1の実施形態における実行予定機能210の一例を説明する図である。 本発明の実施形態における実行予定機能算出プログラム202の動作の一例を示すフローチャートである。 本発明の第1の実施形態における実行パラメータ情報1400の一例を説明する図である。 本発明の第1の実施形態における機能実行順番1500の一例を説明する図である。 本発明の実施形態におけるメモリ枯渇判定プログラム203の動作の一例を示すフローチャートである。 本発明の第2の実施形態におけるリーク機能情報1700の一例を説明する図である。 本発明の第2の実施形態におけるリークパターン解析プログラム201の動作の一例を示すフローチャートである。 本発明の第2の実施形態における制御情報抽出処理の動作の一例を説明するフローチャートである。 本発明の第2の実施形態におけるリークパターン2000の一例を説明する図である。 リークを引き起こすジョブが存在しない場合のメモリ使用の状況を説明する図である。 リークを引き起こすジョブが存在する場合のメモリ使用の状況を説明する図である。
符号の説明
100 支援装置
101 CPU
102 バス
103 ROM
104 RAM
105 入力インターフェイス
106 出力インターフェイス
107 外部記憶装置インターフェイス
108 通信インターフェイス
110 入力装置
120 出力装置
130 外部記憶装置
140 半導体露光装置

Claims (7)

  1. ジョブを指定された設定に従って実行する情報処理装置を支援する支援装置であって、
    実行済みのジョブにおける設定と、該実行済みのジョブが引き起こしたメモリリークのリーク量と、該実行済みのジョブが使用したメモリのピーク量と、を関連付けて記憶する記憶手段と、
    前記情報処理装置に投入される予定のジョブ群と該ジョブ群のそれぞれを実行する際の設定とを取得する取得手段と、
    前記ジョブ群に含まれるジョブに対して、前記記憶手段に記憶された設定と前記取得手段が取得した設定とを比較して、前記情報処理装置で該ジョブが実行された場合のリーク量及びピーク量を予測する予測手段と、
    該ジョブ群に含まれるジョブであって、該ジョブの前記予測されたピーク量と該ジョブに先行して実行されるジョブの前記予測されたリーク量との合計値が、該ジョブ群の実行に許容される前記情報処理装置のメモリ容量を上回るようなジョブが存在するか否かを判定する判定手段と
    を備える支援装置。
  2. 前記判定手段は、前記許容されるメモリ容量を上回るようなジョブが存在する場合に、前記ジョブ群の中で最先の順番に実行される予定のジョブを前記支援装置のユーザに通知することを特徴とする請求項1に記載の支援装置。
  3. 前記設定は、ジョブを実行する際のパラメータ値の組み合わせを含むことを特徴とする請求項1又は2に記載の支援装置。
  4. 前記予測手段は、前記予測するリーク量及びピーク量を、前記記憶手段に記憶されたリーク量及びピーク量のそれぞれの平均値に基づいて予測することを特徴とする請求項1乃至3のいずれか1項に記載の支援装置。
  5. 前記予測手段は、前記予測するリーク量及びピーク量を、前記記憶手段に記憶されたリーク量及びピーク量のそれぞれの最大値又は最小値に基づいて予測することを特徴とする請求項1乃至3のいずれか1項に記載の支援装置。
  6. ジョブを指定された設定に従って実行する情報処理装置を支援する支援方法であって、
    実行済みのジョブにおける設定と、該実行済みのジョブが引き起こしたメモリリークのリーク量と、該実行済みのジョブが使用したメモリのピーク量と、を関連付けて記憶手段に記憶する記憶工程と、
    取得手段が、前記情報処理装置に投入される予定のジョブ群と該ジョブ群のそれぞれを実行する際の設定とを取得する取得工程と、
    前記ジョブ群に含まれるジョブに対して、前記記憶工程において記憶された設定と前記取得工程において取得した設定とを比較して、前記情報処理装置で該ジョブが実行された場合のリーク量及びピーク量を予測する予測工程と、
    判定手段が、該ジョブ群に含まれるジョブであって、該ジョブの前記予測されたピーク量と該ジョブに先行して実行されるジョブの前記予測されたリーク量との合計値が、該ジョブ群の実行に許容される前記情報処理装置のメモリ容量を上回るようなジョブが存在するか否かを判定する判定工程と
    を備える支援方法。
  7. コンピュータを請求項1乃至5のいずれか1項に記載の支援装置として機能させるためのコンピュータプログラム。
JP2008238385A 2008-09-17 2008-09-17 情報処理装置の支援装置、支援方法、およびコンピュータプログラム Pending JP2010072854A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008238385A JP2010072854A (ja) 2008-09-17 2008-09-17 情報処理装置の支援装置、支援方法、およびコンピュータプログラム
US12/534,926 US9135070B2 (en) 2008-09-17 2009-08-04 Preventing memory exhaustion of information processing apparatus based on the predicted peak memory usage and total memory leakage amount using historical data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008238385A JP2010072854A (ja) 2008-09-17 2008-09-17 情報処理装置の支援装置、支援方法、およびコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2010072854A true JP2010072854A (ja) 2010-04-02
JP2010072854A5 JP2010072854A5 (ja) 2011-10-06

Family

ID=42008400

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008238385A Pending JP2010072854A (ja) 2008-09-17 2008-09-17 情報処理装置の支援装置、支援方法、およびコンピュータプログラム

Country Status (2)

Country Link
US (1) US9135070B2 (ja)
JP (1) JP2010072854A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101612780B1 (ko) * 2009-11-13 2016-04-18 삼성전자주식회사 컴퓨팅 시스템 및 컴퓨팅 시스템의 메모리 관리 방법
CN105008814B (zh) * 2013-03-04 2017-09-29 三菱电机株式会社 空调机的管理装置和方法
CN104182332B (zh) * 2013-05-21 2017-09-29 华为技术有限公司 判断资源泄漏、预测资源使用情况的方法及装置
US9081968B2 (en) * 2013-12-11 2015-07-14 International Business Machines Corporation Quantitative analysis of information leakage vulnerabilities

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001331368A (ja) * 2000-05-19 2001-11-30 Oki Electric Ind Co Ltd メモリ解放漏れ判定方法
JP2004005305A (ja) * 2002-06-03 2004-01-08 Hitachi Ltd メモリ使用容量の監視方法及び計算機システム
JP2006285871A (ja) * 2005-04-04 2006-10-19 Canon Inc 情報処理装置、制御方法、プログラム、及び記憶媒体

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0418638A (ja) * 1990-05-11 1992-01-22 Fujitsu Ltd 静的メモリ割当て処理方法
JPH08220199A (ja) 1995-02-13 1996-08-30 Casio Comput Co Ltd 電池寿命監視装置
US6863364B2 (en) 2002-11-19 2005-03-08 Hewlett-Packard Development Company, L.P. Systems and methods for estimating pages remaining for a printing device component
US7257692B2 (en) * 2003-10-01 2007-08-14 Lakeside Software, Inc. Apparatus and method for detecting memory leaks
JP2005250302A (ja) 2004-03-08 2005-09-15 Fuji Xerox Co Ltd 画像形成装置、画像編集指示装置、およびプログラム
JP2005258585A (ja) 2004-03-09 2005-09-22 Sumitomo Heavy Ind Ltd 成形機の部品自動発注方法、システム及びプログラム
US20050204342A1 (en) * 2004-03-11 2005-09-15 International Business Machines Corp. Method, system and article for detecting memory leaks in Java software
US7487321B2 (en) * 2004-04-19 2009-02-03 Cisco Technology, Inc. Method and system for memory leak detection
US20050268268A1 (en) * 2004-06-01 2005-12-01 Tera Systems, Inc. Methods and systems for structured ASIC electronic design automation
US20050273756A1 (en) * 2004-06-04 2005-12-08 Xing-Ping Zhou Memory management method for multifunction peripheral
US7162605B2 (en) * 2004-06-24 2007-01-09 International Business Machines Corporation Method and system for obtaining memory usage information for a heap when a peak live count is updated
US20060085156A1 (en) * 2004-10-18 2006-04-20 Kolawa Adam K Method and system for predicting memory leaks from unit testing
US7398369B2 (en) * 2004-10-28 2008-07-08 International Business Machines Corporation Memory leakage management
FR2881246B1 (fr) * 2005-01-21 2007-03-23 Meiosys Soc Par Actions Simpli Procede perdictif de gestion, de journalisation ou de rejeu d'operations non deterministes au sein du deroulement d'un processus applicatif
US20060271929A1 (en) * 2005-05-27 2006-11-30 Computer Associates Think, Inc. Method and system for providing job forecasting in a computer system
US8713179B2 (en) * 2005-10-04 2014-04-29 International Business Machines Corporation Grid computing accounting and statistics management system
US20070136402A1 (en) * 2005-11-30 2007-06-14 International Business Machines Corporation Automatic prediction of future out of memory exceptions in a garbage collected virtual machine
US7475214B2 (en) * 2006-08-16 2009-01-06 International Business Machines Corporation Method and system to optimize java virtual machine performance
US8037477B2 (en) * 2007-01-23 2011-10-11 Hewlett-Packard Development Company, L.P. Efficient detection of sources of increasing memory consumption
US7793161B2 (en) * 2007-05-29 2010-09-07 International Business Machines Corporation Method and apparatus to anticipate memory exhaustion in an open services gateway initiative environment
CN101339533B (zh) * 2007-07-04 2012-10-10 国际商业机器公司 基于分区的诊断Java系统的内存泄漏的方法及装置
JP2009129134A (ja) * 2007-11-22 2009-06-11 Hitachi Ltd ストレージ管理システム、性能監視方法及び管理サーバ
EP2686770A4 (en) * 2011-03-15 2015-08-26 Ericsson Telefon Ab L M DETECTION OF RESOURCE LEAKAGE

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001331368A (ja) * 2000-05-19 2001-11-30 Oki Electric Ind Co Ltd メモリ解放漏れ判定方法
JP2004005305A (ja) * 2002-06-03 2004-01-08 Hitachi Ltd メモリ使用容量の監視方法及び計算機システム
JP2006285871A (ja) * 2005-04-04 2006-10-19 Canon Inc 情報処理装置、制御方法、プログラム、及び記憶媒体

Also Published As

Publication number Publication date
US20100070974A1 (en) 2010-03-18
US9135070B2 (en) 2015-09-15

Similar Documents

Publication Publication Date Title
CN107908421B (zh) 软件代码版本管理与发布的方法及装置
EP2885701B1 (en) Predicting software build errors
EP2972821B1 (en) Application compatibility checking in a distributed computing environment
US8340948B1 (en) Fleet performance optimization tool for aircraft health management
US11055178B2 (en) Method and apparatus for predicting errors in to-be-developed software updates
US20160378647A1 (en) Development supporting system
US10911447B2 (en) Application error fingerprinting
WO2014013558A1 (ja) 計算機、ガイド情報提供方法及び記録媒体
CN101206589A (zh) 用于执行库存扫描的方法与系统
US10437815B2 (en) Identification of code object dependencies
US9621679B2 (en) Operation task managing apparatus and method
JP6094593B2 (ja) 情報システム構築装置、情報システム構築方法および情報システム構築プログラム
JP2010072854A (ja) 情報処理装置の支援装置、支援方法、およびコンピュータプログラム
JP2010003224A (ja) テスト情報管理サーバ、テスト情報管理方法、およびプログラム
JP6525275B2 (ja) 管理装置、情報処理方法、及びプログラム
JP6596287B2 (ja) プラント保全支援システム
US11031125B2 (en) Identification of structural parts in error handling of medical devices
JP6451417B2 (ja) デバッグ支援装置、デバッグ支援システム、デバッグ支援方法、および、デバッグ支援プログラム
JP4144885B2 (ja) アプリケーション・オブジェクトの再利用方法
CN110447018B (zh) 操作管理服务器、开发操作支持系统及其方法以及存储其程序的非暂时性计算机可读介质
US9910666B1 (en) Implementing locale management on PaaS: live locale object update
JP2009252167A (ja) テスト項目生成装置、テスト項目生成システム、テスト項目生成方法、およびテスト項目生成プログラム
Staron et al. Industrial self-healing measurement systems
Ab-Samat et al. Reduction of response time during machine breakdown: a case study in semiconductor industry
JP6546569B2 (ja) データ処理プログラム及びデータ処理方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110823

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121001

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130306

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130325