JP5220053B2 - Storage medium control device, control program, and control method - Google Patents

Storage medium control device, control program, and control method Download PDF

Info

Publication number
JP5220053B2
JP5220053B2 JP2010099230A JP2010099230A JP5220053B2 JP 5220053 B2 JP5220053 B2 JP 5220053B2 JP 2010099230 A JP2010099230 A JP 2010099230A JP 2010099230 A JP2010099230 A JP 2010099230A JP 5220053 B2 JP5220053 B2 JP 5220053B2
Authority
JP
Japan
Prior art keywords
load
peak
storage medium
garbage collection
calculating
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.)
Active
Application number
JP2010099230A
Other languages
Japanese (ja)
Other versions
JP2011227835A (en
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2010099230A priority Critical patent/JP5220053B2/en
Publication of JP2011227835A publication Critical patent/JP2011227835A/en
Application granted granted Critical
Publication of JP5220053B2 publication Critical patent/JP5220053B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、データを記憶した記憶媒体の制御装置、制御プログラム、及び制御方法に関する。   The present invention relates to a control device, a control program, and a control method for a storage medium storing data.

記憶媒体に記憶されたデータを管理するファイルシステムは、記憶媒体のセクタのうちで、ファイル等のデータを未だ記憶していないセクタの利用状況を「Free」(未使用)とし、データを記憶したセクタの利用状況を「Use」(使用中)とし、かつデータを削除されたセクタの利用状況を「Del」(削除)として、セクタの利用状況を管理している。この利用状況が「Del」であるセクタの数が増加すると、記憶媒体の空き容量が減少するため、セクタの利用状況を「Del」から「Free」に戻して、記憶媒体の空き容量を増加させるガベージコレクション(Garbage Collection)を行う技術が知られている(例えば、特許文献1参照)。   A file system that manages data stored in a storage medium stores the data by setting the usage status of a sector of the storage medium that has not yet stored data such as a file to “Free” (unused). The sector usage status is managed by setting the sector usage status to “Use” (in use) and the sector usage status from which data has been deleted as “Del” (deleted). When the number of sectors whose usage status is “Del” increases, the free space of the storage medium decreases, so the usage status of the sector is returned from “Del” to “Free” to increase the free space of the storage medium. A technique for performing garbage collection is known (see, for example, Patent Document 1).

特開2006−99797号公報JP 2006-99797 A

しかしながら、特許文献1に開示された技術では、例えば、記憶媒体に対するデータの入出力処理などの処理を実行していても、記憶媒体の空き容量が減少するれば、ガベージコレクション(以下単に、GCという)を実行してしまう。このため、CPU(Central Processing Unit)の負荷がガベージコレクションを行うのに十分に低くない場合にGCを実行することで、記憶媒体に対する処理の実行速度が大幅に低下してしまうという問題があった。   However, in the technique disclosed in Patent Document 1, for example, even if processing such as data input / output processing for a storage medium is executed, if the free space of the storage medium decreases, garbage collection (hereinafter simply referred to as GC) Is executed). For this reason, there is a problem that the execution speed of the processing on the storage medium is greatly reduced by executing GC when the load on the CPU (Central Processing Unit) is not low enough to perform garbage collection. .

本発明は、上記実情に鑑みてなされたものであり、その目的とするところは、記憶媒体に対する処理の実行速度の低下を抑制しながらGCを行うことができる記憶媒体の制御装置、制御プログラム、及び制御方法を提供することにある。   The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a storage medium control device, a control program, and a storage medium capable of performing GC while suppressing a decrease in the execution speed of processing on the storage medium. And providing a control method.

上記目的を達成するため、本発明の第1の観点に係る記憶媒体の制御装置は、
記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測手段と、
前記負荷計測手段で計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出手段と、
前記負荷計測手段で計測された負荷が前記所定の閾値を上回った後から前記所定の閾値を下回るまでの時間を、前記ピーク検出手段が検出した負荷ピークの有するピーク幅として算出するピーク幅算出手段と、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク幅算出手段で算出されたピーク幅であって、前記負荷計測手段による今回の計測前において最後に現れた負荷ピークである直前ピークのピーク幅に基づいて予測する負荷予測手段と、
前記所要期間において負荷が低いと前記負荷予測手段で予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクション手段と、
を備えることを特徴とする。
上記目的を達成するため、本発明の第2の観点に係る記憶媒体の制御装置は、
記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測手段と、
前記負荷計測手段で計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出手段と、
前記ピーク検出手段で検出された負荷ピークの有するピーク高を算出するピーク高算出手段と、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク高算出手段で算出されたピーク高であって、前記負荷計測手段による今回の計測前において最後に現れた負荷ピークである直前ピークのピーク高に基づいて予測する負荷予測手段と、
前記所要期間において負荷が低いと前記負荷予測手段で予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクション手段と、
を備えることを特徴とする。
In order to achieve the above object, a storage medium control device according to a first aspect of the present invention provides:
Load measuring means for measuring a load of an arithmetic device that executes processing on the storage medium;
The curve representing the load measured by the measurement means load, and peak detecting means for detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
Peak width calculating means for calculating the time from when the load measured by the load measuring means exceeds the predetermined threshold until it falls below the predetermined threshold as the peak width of the load peak detected by the peak detecting means When,
Whether or not the load of the computing device is lower than a predetermined threshold in the required period required for the computing device to execute garbage collection on the storage medium is determined by the peak width calculated by the peak width calculating means. A load predicting means for predicting based on the peak width of the immediately preceding peak that is the load peak that appears last before the current measurement by the load measuring means;
Garbage collection means for performing garbage collection on the storage medium when the load prediction means predicts that the load is low in the required period;
It is characterized by providing.
In order to achieve the above object, a storage medium control device according to a second aspect of the present invention provides:
Load measuring means for measuring a load of an arithmetic device that executes processing on the storage medium;
The curve representing the load measured by the measurement means load, and peak detecting means for detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
Peak height calculating means for calculating the peak height of the load peak detected by the peak detecting means;
Whether or not the load of the computing device is lower than a predetermined threshold in the required period required for the computing device to execute garbage collection on the storage medium is determined by the peak height calculated by the peak height calculating means. A load predicting means for predicting based on the peak height of the immediately preceding peak that is the load peak that appears last before the current measurement by the load measuring means;
Garbage collection means for performing garbage collection on the storage medium when the load prediction means predicts that the load is low in the required period;
It is characterized by providing.

上記目的を達成するため、本発明の第3の観点に係る記憶媒体の制御プログラムは、
コンピュータを、
記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測手段、
前記負荷計測手段で計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出手段、
前記負荷計測手段で計測された負荷が前記所定の閾値を上回った後から前記所定の閾値を下回るまでの時間を、前記ピーク検出手段が検出した負荷ピークの有するピーク幅として算出するピーク幅算出手段、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク幅算出手段で算出されたピーク幅であって、前記負荷計測手段による今回の計測前において最後に現れた負荷ピークである直前ピークのピーク幅に基づいて予測する負荷予測手段、
前記所要期間において負荷が低いと前記負荷予測手段で予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクション手段、
として機能させることを特徴とする。
上記目的を達成するため、本発明の第4の観点に係る記憶媒体の制御プログラムは、
コンピュータを、
記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測手段、
前記負荷計測手段で計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出手段、
前記ピーク検出手段で検出された負荷ピークの有するピーク高を算出するピーク高算出手段、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク高算出手段で算出されたピーク高であって、前記負荷計測手段による今回の計測前において最後に現れた負荷ピークである直前ピークのピーク高に基づいて予測する負荷予測手段、
前記所要期間において負荷が低いと前記負荷予測手段で予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクション手段、
として機能させることを特徴とする。
In order to achieve the above object, a storage medium control program according to a third aspect of the present invention provides:
Computer
Load measuring means for measuring a load of an arithmetic device that executes processing on a storage medium;
The curve representing the load measured by the load measuring means, a peak detecting means for detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
Peak width calculating means for calculating the time from when the load measured by the load measuring means exceeds the predetermined threshold until it falls below the predetermined threshold as the peak width of the load peak detected by the peak detecting means ,
Whether or not the load of the computing device is lower than a predetermined threshold in the required period required for the computing device to execute garbage collection on the storage medium is determined by the peak width calculated by the peak width calculating means. A load predicting means for predicting based on the peak width of the immediately preceding peak which is the load peak appearing last before the current measurement by the load measuring means;
Garbage collection means for performing garbage collection on the storage medium when the load prediction means predicts that the load is low in the required period;
It is made to function as.
In order to achieve the above object, a storage medium control program according to a fourth aspect of the present invention provides:
Computer
Load measuring means for measuring a load of an arithmetic device that executes processing on a storage medium;
The curve representing the load measured by the load measuring means, a peak detecting means for detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
Peak height calculating means for calculating the peak height of the load peak detected by the peak detecting means;
Whether or not the load of the computing device is lower than a predetermined threshold in the required period required for the computing device to execute garbage collection on the storage medium is determined by the peak height calculated by the peak height calculating means. A load predicting means for predicting based on the peak height of the immediately preceding peak which is the load peak last appearing before the current measurement by the load measuring means;
Garbage collection means for performing garbage collection on the storage medium when the load prediction means predicts that the load is low in the required period;
It is made to function as.

上記目的を達成するため、本発明の第5の観点に係る記憶媒体の制御方法は、
記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測ステップと、
前記負荷計測ステップで計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出ステップと、
前記負荷計測ステップで計測された負荷が前記所定の閾値を上回った後から前記所定の閾値を下回るまでの時間を、前記ピーク検出ステップで検出した負荷ピークの有するピーク幅として算出するピーク幅算出ステップと、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク幅算出ステップで算出されたピーク幅であって、前記負荷計測ステップによる今回の計測前において最後に現れた負荷ピークである直前ピークのピーク幅に基づいて予測する負荷予測ステップと、
前記所要期間において負荷が低いと前記負荷予測ステップで予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクションステップと、
を有することを特徴とする。
上記目的を達成するため、本発明の第6の観点に係る記憶媒体の制御方法は、
記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測ステップと、
前記負荷計測ステップで計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出ステップと、
前記ピーク検出ステップで検出された負荷ピークの有するピーク高を算出するピーク高算出ステップと、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク高算出ステップで算出されたピーク高であって、前記負荷計測ステップによる今回の計測前において最後に現れた負荷ピークである直前ピークのピーク高に基づいて予測する負荷予測ステップと、
前記所要期間において負荷が低いと前記負荷予測ステップで予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクションステップと、
を有することを特徴とする。
In order to achieve the above object, a storage medium control method according to a fifth aspect of the present invention provides:
A load measuring step for measuring a load of an arithmetic device that executes processing for the storage medium;
The curve representing the load measuring load measured in step, a peak detection step of detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
A peak width calculating step for calculating a time from when the load measured at the load measuring step exceeds the predetermined threshold to when the load falls below the predetermined threshold as a peak width of the load peak detected at the peak detecting step. When,
Whether or not the load of the arithmetic device is lower than a predetermined threshold in the required period required for the arithmetic device to execute garbage collection on the storage medium is determined by the peak width calculated in the peak width calculating step. A load prediction step for predicting based on the peak width of the immediately preceding peak that is the load peak that appeared last before the current measurement by the load measuring step;
A garbage collection step for performing garbage collection on the storage medium when the load is predicted to be low in the required period in the load prediction step;
It is characterized by having.
In order to achieve the above object, a storage medium control method according to a sixth aspect of the present invention includes:
A load measuring step for measuring a load of an arithmetic device that executes processing for the storage medium;
The curve representing the load measuring load measured in step, a peak detection step of detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
A peak height calculating step for calculating a peak height of the load peak detected in the peak detecting step;
Whether or not the load on the computing device is lower than a predetermined threshold in the required period required for the computing device to execute garbage collection on the storage medium is determined by the peak height calculated in the peak height calculating step. A load prediction step for predicting based on the peak height of the immediately preceding peak that is the load peak that appeared last before the current measurement by the load measuring step;
A garbage collection step for performing garbage collection on the storage medium when the load is predicted to be low in the required period in the load prediction step;
It is characterized by having.

本発明に係る記憶媒体の制御装置、制御プログラム、及び制御方法によれば、記憶媒体に対する処理の実行速度の低下を抑制しながらGCを行うことができる。   According to the storage medium control device, the control program, and the control method according to the present invention, it is possible to perform GC while suppressing a decrease in the execution speed of processing for the storage medium.

図1(a)は、本発明の第1実施形態に係る記憶媒体の制御装置の一例を表すハードウェア構成図である。図1(b)は、本発明の第1実施形態に係る記憶媒体の制御装置が有する機能の一例を表す機能ブロック図である。FIG. 1A is a hardware configuration diagram illustrating an example of a storage medium control device according to the first embodiment of the present invention. FIG. 1B is a functional block diagram illustrating an example of functions of the storage medium control device according to the first embodiment of the present invention. 図2(a)は、フラッシュメモリの一構成例を表す図である。図2(b)は、フラッシュメモリが有するセクタの一構成例を表す図である。FIG. 2A is a diagram illustrating a configuration example of the flash memory. FIG. 2B is a diagram illustrating a configuration example of sectors included in the flash memory. 図3(a)は、情報算出部が実行する情報算出処理の一例を表すフローチャートである。図3(b)は、負荷統計情報算出部が実行する負荷統計情報算出処理の一例を表すフローチャートである。図3(c)は、負荷関連情報算出部が実行する負荷関連情報算出処理開始の一例を表すフローチャートである。FIG. 3A is a flowchart illustrating an example of information calculation processing executed by the information calculation unit. FIG. 3B is a flowchart illustrating an example of load statistical information calculation processing executed by the load statistical information calculation unit. FIG. 3C is a flowchart illustrating an example of the start of the load related information calculation process executed by the load related information calculation unit. 図4(a)は、ファイルシステム制御部の一構成例を表す図である。図4(b)は、第1実施形態の負荷統計情報算出部の一構成例を表す図である。図4(c)は、第1実施形態の負荷関連情報算出部の一構成例を表す図である。FIG. 4A is a diagram illustrating a configuration example of the file system control unit. FIG. 4B is a diagram illustrating a configuration example of the load statistical information calculation unit according to the first embodiment. FIG. 4C is a diagram illustrating a configuration example of the load related information calculation unit according to the first embodiment. 第1実施形態において計測される負荷の時間推移の一例を表すグラフである。It is a graph showing an example of the time transition of the load measured in 1st Embodiment. 図6(a)は、ファイルシステム制御部(FS制御部)が実行するファイルシステム制御処理(FS制御処理)の一例を表すフローチャートである。図6(b)は、第1実施形態の負荷予測部が実行する負荷予測処理の一例を表すフローチャートである。FIG. 6A is a flowchart illustrating an example of a file system control process (FS control process) executed by the file system control unit (FS control unit). FIG. 6B is a flowchart illustrating an example of a load prediction process executed by the load prediction unit according to the first embodiment. 実行条件判定部が実行する実行条件判定処理の一例を表すフローチャートである。It is a flowchart showing an example of the execution condition determination process which an execution condition determination part performs. 図8(a)は、第2実施形態の負荷統計情報算出部の一構成例を表す図である。図8(b)は、第2実施形態の負荷関連情報算出部の一構成例を表す図である。図8(c)は、相関係数算出部が実行する相関係数算出処理の一例を表すフローチャートである。FIG. 8A is a diagram illustrating a configuration example of the load statistical information calculation unit according to the second embodiment. FIG. 8B is a diagram illustrating a configuration example of the load related information calculation unit according to the second embodiment. FIG. 8C is a flowchart illustrating an example of the correlation coefficient calculation process executed by the correlation coefficient calculation unit. 図9(a)は、第2実施形態において計測される負荷に対して算出される移動平均値の時間推移の一例を表すグラフである。図9(b)は、ピーク幅とピーク間隔との相関関係を表すグラフである。FIG. 9A is a graph showing an example of the time transition of the moving average value calculated for the load measured in the second embodiment. FIG. 9B is a graph showing the correlation between the peak width and the peak interval. 第2実施形態の負荷予測部が実行する負荷予測処理の一例を表すフローチャートである。It is a flowchart showing an example of the load prediction process which the load prediction part of 2nd Embodiment performs. 図11(a)は、第3実施形態の負荷統計情報算出部の一構成例を表す図である。図11(b)は、第3実施形態の負荷関連情報算出部の一構成例を表す図である。図11(c)は、第3実施形態の負荷関連情報算出部が実行する負荷関連情報算出処理の一例を表すフローチャートである。FIG. 11A is a diagram illustrating a configuration example of the load statistics information calculation unit of the third embodiment. FIG. 11B is a diagram illustrating a configuration example of the load related information calculation unit according to the third embodiment. FIG. 11C is a flowchart illustrating an example of a load related information calculation process executed by the load related information calculation unit of the third embodiment. 第3実施形態の負荷予測部が実行する負荷予測処理の一例を表すフローチャートである。It is a flowchart showing an example of the load prediction process which the load prediction part of 3rd Embodiment performs. 第3実施形態において計測される負荷に対して算出される移動平均値の時間推移の一例を表すグラフである。It is a graph showing an example of the time transition of the moving average value calculated with respect to the load measured in 3rd Embodiment.

以下、本発明の最良の実施形態について添付図面を参照しつつ説明する。   DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, preferred embodiments of the invention will be described with reference to the accompanying drawings.

<第1実施形態>
本発明の第1実施形態に係る制御装置10は、各種のアプリケーションを実行することで、図1(a)に示すような記憶媒体であるフラッシュメモリ(以下単に、メモリという)20へ各種のデータを保存する。また、制御装置10は、メモリ20の空き容量が減少すると、空き容量を増加させるために、メモリ20に対してGC(ガベージコレクション)を実行する。尚、制御装置10は、メモリ20の代わりにハードディスクへデータを保存しても良い。
<First Embodiment>
The control device 10 according to the first embodiment of the present invention executes various applications, thereby transferring various data to a flash memory (hereinafter simply referred to as a memory) 20 that is a storage medium as illustrated in FIG. Save. Further, when the free capacity of the memory 20 decreases, the control device 10 performs GC (garbage collection) on the memory 20 in order to increase the free capacity. Note that the control device 10 may store data in a hard disk instead of the memory 20.

制御装置10は、図1(a)に示すように、CPU(Central Processing Unit)10a、ROM(Read Only Memory)10b、RAM(Random Access Memory)10c、ハードディスク10d、メディアコントローラ10e、USB(Universal Serial Bus)バス10f、LANカード(Local Area Network)10g、ビデオカード10h、LCD(Liquid Crystal Display)10i、キーボード10j、及びポインティングデバイス(以下単に、マウスという)10kを含んで構成される。   As shown in FIG. 1A, the control device 10 includes a CPU (Central Processing Unit) 10a, a ROM (Read Only Memory) 10b, a RAM (Random Access Memory) 10c, a hard disk 10d, a media controller 10e, a USB (Universal Serial). Bus 10f, LAN card (Local Area Network) 10g, video card 10h, LCD (Liquid Crystal Display) 10i, keyboard 10j, and pointing device (hereinafter simply referred to as mouse) 10k.

CPU10aは、ROM10b又はハードディスク10dに保存されたプログラムに従ってソフトウェア処理を実行することで、制御装置10の全体制御を行う演算装置である。RAM10cは、CPU10aによるプログラムの実行時において、処理対象とするデータを一時的に記憶する。   The CPU 10a is an arithmetic device that performs overall control of the control device 10 by executing software processing in accordance with a program stored in the ROM 10b or the hard disk 10d. The RAM 10c temporarily stores data to be processed when the CPU 10a executes the program.

ハードディスク10dは、各種のアプリケーションプログラム(以下単に、アプリという)及びアプリで使用される各種のデータを記憶する。メディアコントローラ10eは、メモリ20に対して各種のデータを入出力する。LANカード10gは、例えば、インタネットなどのコンピュータ通信網を介して接続する装置との間でデータを送受信する。   The hard disk 10d stores various application programs (hereinafter simply referred to as applications) and various data used by the applications. The media controller 10 e inputs and outputs various data to and from the memory 20. The LAN card 10g transmits and receives data to and from devices connected via a computer communication network such as the Internet, for example.

ビデオカード10hは、CPU10aから出力されたデジタル信号に基づいて画像信号を出力する。LCD10iは、ビデオカード10hから出力された画像信号に従って画像を表示する。尚、制御装置10は、LCD10iの代わりに、PDP(Plasma Display Panel)又はEL(Electro Luminescence)ディスプレイを備えても良い。   The video card 10h outputs an image signal based on the digital signal output from the CPU 10a. The LCD 10i displays an image according to the image signal output from the video card 10h. The control device 10 may include a PDP (Plasma Display Panel) or an EL (Electro Luminescence) display instead of the LCD 10i.

キーボード10j及びマウスkは、ユーザの操作に応じた信号を入力する。尚、ウェブ制御装置10は、キーボード10j及びマウスkの代わりにタッチパネルを備えても良い。   The keyboard 10j and the mouse k input signals according to user operations. The web control device 10 may include a touch panel instead of the keyboard 10j and the mouse k.

制御装置10が有するCPU10aは、ハードディスク10dに記憶されたアプリを実行することで、図1(b)のアプリケーション実行部(以下単位、アプリ実行部)11として機能する。また、CPU10aは、メモリ20が記憶する、例えば、電子ファイル(以下単に、ファイルという)などのデータの管理に用いられるファイルステム(以下単に、FSという)を制御する処理を実行することで、ファイルシステム制御部(以下単に、FS制御部という)100として機能する。   The CPU 10a included in the control device 10 functions as the application execution unit (hereinafter referred to as a unit, application execution unit) 11 in FIG. 1B by executing the application stored in the hard disk 10d. Further, the CPU 10a executes a process for controlling a file system (hereinafter simply referred to as FS) used for managing data such as an electronic file (hereinafter simply referred to as a file) stored in the memory 20 to thereby execute a file. It functions as a system control unit (hereinafter simply referred to as FS control unit) 100.

図1(b)のアプリ実行部11は、FS制御部100を介して、メモリ20に保存されたファイルの開閉、書き込み、上書き、及び削除を行う。   The application execution unit 11 illustrated in FIG. 1B performs opening / closing, writing, overwriting, and deletion of a file stored in the memory 20 via the FS control unit 100.

次に、FS制御部100について説明する前に、FS制御部100によって制御されるメモリ20について一旦説明する。
メモリ20は、図2(a)に示すようなブロック21及び22を含む複数のブロックを有する。これらのブロックは、例えば、ブロック21のように複数のセクタを有する。図2に示されたブロック21が有するセクタsc1は、図2(b)に示すように、セクタsc1の利用状況、セクタsc1を識別する論理番号、及びデータを記憶する。
Next, before describing the FS control unit 100, the memory 20 controlled by the FS control unit 100 will be described once.
The memory 20 has a plurality of blocks including blocks 21 and 22 as shown in FIG. These blocks have a plurality of sectors like the block 21, for example. As shown in FIG. 2B, the sector sc1 included in the block 21 shown in FIG. 2 stores the usage status of the sector sc1, a logical number for identifying the sector sc1, and data.

ここで、FS制御部100がメモリ20にファイルを書き込む場合を説明する。
先ず、FS制御部100は、ファイルサイズに応じて、データを未だ記憶していない(つまり、利用状況が「Free」(未使用))のセクタを複数確保すると共に、確保したセクタに対してファイルデータを書き込む。その後、制御装置10は、データを書き込んだセクタの利用状況を「Use」(使用中)に変更する。
Here, a case where the FS control unit 100 writes a file in the memory 20 will be described.
First, according to the file size, the FS control unit 100 secures a plurality of sectors that have not yet stored data (that is, the usage status is “Free” (unused)) and a file for the secured sectors. Write data. Thereafter, the control device 10 changes the usage status of the sector in which the data is written to “Use” (in use).

次に、FS制御部100がメモリ20にファイルを上書きする場合を説明する。
FS制御部100は、更新前のファイルデータなどが書き込まれた(つまり、利用状況が「Use」の)セクタとは別の利用状況が「Free」のセクタに対して、更新後のファイルデータを書き込む。次に、FS制御部100は、更新後のファイルデータを記憶するセクタと、更新前のファイルデータを記憶するセクタとを関連付けた後に、更新前のファイルデータを記憶するセクタの利用状況を「Del」(削除)に変更する。必要に応じて更新前のファイルデータを復旧させることができるようにするためである。
Next, a case where the FS control unit 100 overwrites a file in the memory 20 will be described.
The FS control unit 100 transfers the updated file data to a sector whose usage status is “Free”, which is different from the sector in which the file data before the update is written (that is, the usage status is “Use”). Write. Next, the FS control unit 100 associates the sector that stores the updated file data with the sector that stores the pre-update file data, and then determines the usage status of the sector that stores the pre-update file data as “Del ”(Deleted). This is because the file data before update can be recovered as necessary.

一方で、FS制御部100は、メモリ20からデータを削除する場合には、セクタ単位で利用状況を「Free」とするのではなく、ブロック単位でセクタの利用状況を「Free」とすることで(つまり、あるブロックが有する全セクタの利用状況を一括して「Free」とすることで)、メモリ20が記憶するデータを削除する。   On the other hand, when deleting data from the memory 20, the FS control unit 100 does not set the usage status to “Free” for each sector, but sets the sector usage status to “Free” for each block. In other words, the data stored in the memory 20 is deleted by setting the usage status of all sectors in a certain block to “Free”.

このため、FS制御部100によって、メモリ20が記憶するデータの書き換えが繰り返し行われると、利用状況が「Del」であるセクタが増加し、利用状況が「Free」であるセクタが枯渇する。よって、FS制御部100は、適当な時期において、セクタの利用状況「Del」を「Free」に戻すGCを実行する。   For this reason, when the data stored in the memory 20 is rewritten repeatedly by the FS control unit 100, the sector whose usage status is “Del” increases and the sector whose usage status is “Free” is depleted. Therefore, the FS control unit 100 executes GC to return the sector usage status “Del” to “Free” at an appropriate time.

このため、Fs制御部100は、GCを実行するのに適当な時期に成立するGC実行条件の成否を判断するために用いられる情報を算出する、図3(a)に示すような情報算出処理を実行する。   For this reason, the Fs control unit 100 calculates information used for determining whether or not a GC execution condition established at an appropriate time for executing the GC is satisfied, as shown in FIG. 3A. Execute.

尚、FS制御部100は、図4(a)に示すような負荷計測部110、負荷情報データベース(以下、負荷情報DBという)120、情報算出部130、統計情報データベース(以下、統計情報DBという)140を用いて、例えば、数日に1回、図3(a)の情報算出処理を実行する。   The FS control unit 100 includes a load measurement unit 110, a load information database (hereinafter referred to as load information DB) 120, an information calculation unit 130, and a statistical information database (hereinafter referred to as statistical information DB) as shown in FIG. ) 140, for example, the information calculation process of FIG. 3A is executed once every few days.

図3(a)の情報算出処理の実行を開始すると、図4(a)の情報算出部130は、負荷情報DB120が記憶する負荷情報を読み出す(ステップS01)。この負荷情報DB120が記憶する負荷情報は、図1(a)に示したCPU10aの負荷(以下、CPU負荷という)を表す情報である。尚、負荷情報は、負荷情報で表される負荷を負荷計測部110が計測した時刻を表す計測時刻情報と対応付けられて負荷情報DB120に保存されている。   When the execution of the information calculation process of FIG. 3A is started, the information calculation unit 130 of FIG. 4A reads the load information stored in the load information DB 120 (step S01). The load information stored in the load information DB 120 is information representing the load on the CPU 10a (hereinafter referred to as CPU load) shown in FIG. The load information is stored in the load information DB 120 in association with measurement time information indicating the time when the load measurement unit 110 measures the load represented by the load information.

ここで、制御装置10は、例えば、日々の業務に用いられる装置であるため、1日を単位とした所定の処理をアプリの実行によって行う。このため、図1(a)のCPU10aは、メモリ20に保存されたデータに対して定期的に加工を行うため、メモリ20に保存されたファイルを管理するFS(ファイルシステム)に対して定期的にアクセスを行って、メモリ20に対する入出力処理を定期的に行う。よって、CPU負荷は、ほぼ定期的に高負荷状態と低負荷状態とを、1日の間に何度も繰り返す。   Here, since the control device 10 is a device used for daily work, for example, the control device 10 performs predetermined processing in units of one day by executing the application. For this reason, since the CPU 10a in FIG. 1A periodically processes the data stored in the memory 20, the CPU 10a periodically performs processing for the FS (file system) that manages the files stored in the memory 20. To perform input / output processing on the memory 20 periodically. Therefore, the CPU load repeats the high load state and the low load state almost regularly many times during the day.

よって、FS制御部100は、ステップS01の実行時刻から数日前までの時刻に計測された負荷を表す負荷情報を読み出す。尚、負荷は、例えば、OS(Operating System)が計測するCPU使用率で表されても良い。   Therefore, the FS control unit 100 reads the load information indicating the load measured at the time from the execution time of step S01 to several days ago. Note that the load may be represented by, for example, a CPU usage rate measured by an OS (Operating System).

ステップS01が実行された後に、情報算出部130は、実行履歴DB190からGCの実行履歴を表す情報(以下、実行履歴情報という)を読み出す(ステップS02)。尚、実行履歴情報は、GCが開始された時刻を表す情報及び終了された時刻を表す情報を複数含む。   After step S01 is executed, the information calculation unit 130 reads information representing the GC execution history (hereinafter referred to as execution history information) from the execution history DB 190 (step S02). The execution history information includes a plurality of information indicating the time when GC is started and information indicating the time when GC is ended.

その後、情報算出部130は、実行履歴情報で表されるGCの実行時刻において計測された負荷から、GCの実行により発生した負荷を差し引くことで、負荷情報の値を補正する(ステップS03)。尚、GCの実行により発生した負荷は、図1(a)に示したCPU10aの演算処理能力とGCに要する演算量とに基づいて予め設定されている値として良い。   Thereafter, the information calculation unit 130 corrects the value of the load information by subtracting the load generated by the execution of the GC from the load measured at the execution time of the GC represented by the execution history information (step S03). Note that the load generated by the execution of GC may be a value set in advance based on the calculation processing capability of the CPU 10a and the calculation amount required for the GC shown in FIG.

次に、情報算出部130が有する負荷統計情報算出部131は、負荷統計情報を算出する、図3(b)のような負荷統計情報算出処理を実行する(ステップS04)。尚、負荷統計情報とは、各計測時刻において計測された負荷を表す負荷情報に対して各種の統計処理を施して算出される情報をいう。本実施形態において、負荷統計情報算出部131は、負荷情報で表される負荷の相加平均値(つまり、算術平均値)を表す負荷統計情報及び負荷の加重平均値を表す負荷統計情報を算出する。尚、負荷統計情報算出部131は、図4(b)に示すように、平均値算出部131a及び移動平均値算出部131bを有する。   Next, the load statistical information calculation unit 131 included in the information calculation unit 130 executes a load statistical information calculation process as illustrated in FIG. 3B for calculating the load statistical information (step S04). The load statistical information refers to information calculated by performing various statistical processes on the load information representing the load measured at each measurement time. In this embodiment, the load statistical information calculation unit 131 calculates load statistical information that represents an arithmetic average value (that is, arithmetic average value) of the load represented by the load information and load statistical information that represents a weighted average value of the load. To do. The load statistical information calculation unit 131 includes an average value calculation unit 131a and a moving average value calculation unit 131b as illustrated in FIG.

図3(b)に示す負荷統計情報の実行が開始されると、図4(b)の平均値算出部131aは、図3(a)のステップS03で補正された負荷情報によって表される負荷の相加平均値を算出する(ステップS11)。次に、負荷統計情報算出部131は、算出した負荷の平均値を、負荷関連情報算出部132が用いる閾値Thとする(ステップS12)。尚、閾値Thについては後述する。   When the execution of the load statistical information illustrated in FIG. 3B is started, the average value calculation unit 131a illustrated in FIG. 4B performs the load represented by the load information corrected in step S03 illustrated in FIG. Is calculated (step S11). Next, the load statistical information calculation unit 131 sets the calculated average value of the loads as a threshold Th used by the load related information calculation unit 132 (step S12). The threshold Th will be described later.

次に、図4(b)の平均値算出部131bは、図3(a)のステップS03で補正された負荷情報のそれぞれについて、当該負荷情報で表される負荷を計測した計測時刻より所定時間前の時刻から当該計測時刻より所定時間後の時刻までの区間(以下、移動平均区間という)において計測された負荷を表す他の複数の負荷情報と、当該負荷情報との移動平均値を算出する(ステップS13)。これは、図5のような、負荷を表すL軸と、負荷の計測時刻を表すT軸とを有する座標空間に表された負荷の推移を表す曲線Pにおいて、短期的に発生する高周波成分を平滑化し、主要成分である低周波成分を表す曲線MAを取り出すためである。   Next, the average value calculation unit 131b in FIG. 4B performs a predetermined time from the measurement time at which the load represented by the load information is measured for each of the load information corrected in step S03 in FIG. Calculate a moving average value of the load information and a plurality of other pieces of load information representing loads measured in a section from the previous time to a time after the measurement time to a predetermined time (hereinafter referred to as a moving average section). (Step S13). This is because a high-frequency component generated in the short term is represented in a curve P representing a transition of a load represented in a coordinate space having an L-axis representing a load and a T-axis representing a load measurement time as shown in FIG. This is because the curve MA is smoothed and a low-frequency component that is a main component is extracted.

次に、負荷統計情報算出部131は、ステップS11及びステップS13で算出された負荷統計情報を統計情報DB140へ保存する(ステップS14)。その後、負荷統計情報算出部131は、負荷統計情報算出処理の実行を終了する。   Next, the load statistical information calculation unit 131 stores the load statistical information calculated in steps S11 and S13 in the statistical information DB 140 (step S14). Thereafter, the load statistical information calculation unit 131 ends the execution of the load statistical information calculation process.

図3(a)のステップS04が終了した後に、図4(a)の情報算出部130が有する負荷関連情報算出部132は、図3(c)に示すような、負荷関連情報を算出する負荷関連情報算出処理を実行する。尚、負荷関連情報とは、負荷統計情報を用いて検出される負荷ピークに関連した情報をいう。本実施形態では、負荷関連情報算出部132は、負荷ピークの幅(以下、ピーク幅という)を表す負荷関連情報を算出する。   After step S04 in FIG. 3 (a) is completed, the load related information calculation unit 132 included in the information calculation unit 130 in FIG. 4 (a) loads the load related information as shown in FIG. 3 (c). Execute related information calculation processing. The load related information is information related to a load peak detected using load statistical information. In the present embodiment, the load related information calculation unit 132 calculates load related information representing a load peak width (hereinafter referred to as a peak width).

ここで、負荷ピークとは、図5のような曲線MAにおいて、平滑化された負荷(つまり、負荷の移動平均値)が所定の閾値Thよりも大きい部分PKをいい、部分PKの頂点のみをいうのではない。また、ピーク幅とは、平滑化された負荷が閾値Thを上回った時刻t12から負荷が閾値Thを下回る時刻t14までの時間をいう。尚、閾値Thは、この値以上にCPU負荷が増加した状態でGCが実行されると、メモリ20に対する処理の実行速度が低下することを表す。   Here, the load peak means a portion PK in which the smoothed load (that is, the moving average value of the load) is larger than a predetermined threshold Th in the curve MA as shown in FIG. Not that. The peak width refers to the time from time t12 when the smoothed load exceeds the threshold Th to time t14 when the load falls below the threshold Th. Note that the threshold value Th indicates that the execution speed of the process on the memory 20 decreases when the GC is executed in a state where the CPU load is increased beyond this value.

図3(c)の負荷関連情報算出処理の実行が開始されると、図4(c)の負荷関連情報算出部132が有するピーク検出部132aは、図3(b)のステップS13で算出された負荷の移動平均値の推移を表す曲線MAが、ステップS12で定められた閾値Thを超える部分を負荷ピークとして検出する(ステップS21)。次に、ピーク幅算出部132bは、検出された負荷ピークのピーク幅を算出する(ステップS22)。次に、負荷関連情報算出部132は、ステップS22で算出された負荷関連情報を統計情報DB140へ保存する(ステップS23)。その後、負荷関連情報算出部132は、負荷関連情報算出処理の実行を終了する。   When the execution of the load related information calculation process in FIG. 3C is started, the peak detection unit 132a included in the load related information calculation unit 132 in FIG. 4C is calculated in step S13 in FIG. A portion where the curve MA representing the transition of the moving average value of the load exceeds the threshold Th defined in step S12 is detected as a load peak (step S21). Next, the peak width calculation unit 132b calculates the peak width of the detected load peak (step S22). Next, the load related information calculation unit 132 stores the load related information calculated in step S22 in the statistical information DB 140 (step S23). Thereafter, the load related information calculation unit 132 ends the execution of the load related information calculation process.

次に、図4(a)のFS制御部100は、算出された負荷統計情報及び負荷関連情報(以下単に、統計情報という)を用いて、上記のファイルシステムを制御する、図6に示すようなFS制御処理を実行する。   Next, the FS control unit 100 in FIG. 4A uses the calculated load statistical information and load related information (hereinafter simply referred to as statistical information) to control the file system, as shown in FIG. FS control processing is executed.

尚、FS制御部100は、上記の負荷計測部110、負荷情報DB120、情報算出部130、及び統計情報DB140だけでなく、図4(a)の利用セクタ情報取得部150、負荷予測部170、実行条件判定部180、GCスケジュール部185、ガベージコレクション部(以下、GC部という)189、及び実行履歴データベース(以下、実行履歴DBという)190を用いて、例えば、数分に1回、図6(a)のFS制御処理を実行する。   The FS control unit 100 includes not only the load measurement unit 110, the load information DB 120, the information calculation unit 130, and the statistical information DB 140, but also the used sector information acquisition unit 150, the load prediction unit 170, FIG. For example, once every few minutes using the execution condition determination unit 180, the GC schedule unit 185, the garbage collection unit (hereinafter referred to as GC unit) 189, and the execution history database (hereinafter referred to as execution history DB) 190, FIG. The FS control process (a) is executed.

図6(a)のFS制御処理の実行が開始されると、図4(a)の負荷予測部170は、統計情報DB140に保存された閾値Thを含む統計情報を読み出す(ステップS31)。次に、負荷計測部110は、現時点(つまり、ステップS32の実行時点)におけるCPU10aの負荷を計測し、計測した負荷を表す負荷情報を負荷情報DB120に保存する(ステップS32)。   When the execution of the FS control process in FIG. 6A is started, the load prediction unit 170 in FIG. 4A reads out statistical information including the threshold value Th stored in the statistical information DB 140 (step S31). Next, the load measuring unit 110 measures the load of the CPU 10a at the present time (that is, the execution time of step S32), and stores the load information representing the measured load in the load information DB 120 (step S32).

その後、負荷統計情報算出部131は、図3(c)のステップS22で算出された(過去数日において現れたピークの)ピーク幅の平均値を算出し、算出したピーク幅の平均値(以下、平均ピーク幅という)を移動平均区間とする。次に、負荷統計情報算出部131は、現時点から移動平均区間前までにおいて計測された負荷の移動平均値を算出する(ステップS33)。これらの構成によれば、例えば、メモリ20及びメモリ20のユーザのいずれか1つ以上が変化して負荷ピークが有するピーク幅の大きさが変化しても、平均ピーク幅より大きい幅のピーク(つまり、低周波成分)を強調して検出できる。   Thereafter, the load statistical information calculation unit 131 calculates the average value of the peak widths (of peaks that appeared in the past several days) calculated in step S22 of FIG. (Referred to as “average peak width”). Next, the load statistical information calculation unit 131 calculates the moving average value of the load measured from the current time to the moving average section (step S33). According to these configurations, for example, even when any one or more of the memory 20 and the user of the memory 20 changes and the magnitude of the peak width of the load peak changes, a peak with a width larger than the average peak width ( In other words, the low frequency component) can be emphasized and detected.

次に、負荷関連情報算出部132は、ステップS33で算出された移動平均値の時間推移を表す曲線から、ステップS31で読み出された閾値Thを超える負荷ピークを検出する(ステップS34)。その後、負荷予測部170は、現時点よりも後の時点における負荷を予測する、図6(b)に示すような負荷予測処理を実行する。   Next, the load related information calculation unit 132 detects a load peak that exceeds the threshold Th read in step S31 from the curve representing the time transition of the moving average value calculated in step S33 (step S34). Thereafter, the load prediction unit 170 performs a load prediction process as shown in FIG. 6B, in which a load at a time later than the current time is predicted.

ここで、図5に示した時刻t11を例に挙げ、この時刻に実行される負荷予測処理について説明する。
図6(b)の負荷予測処理の実行が開始されると、負荷予測部170は、時刻t11に計測された負荷の移動平均値が負荷ピークを形成する(つまり、閾値Thより大きい)か否かを判断し(ステップS41)、負荷ピークを形成しないと判断する(ステップS41;No)。
Here, the time t11 shown in FIG. 5 is taken as an example, and the load prediction process executed at this time will be described.
When the execution of the load prediction process in FIG. 6B is started, the load prediction unit 170 determines whether or not the moving average value of the load measured at time t11 forms a load peak (that is, greater than the threshold Th). Is determined (step S41), and it is determined that a load peak is not formed (step S41; No).

次に、負荷予測部170は、時刻t11において、時刻t11に計測された負荷の移動平均値は、前回(つまり、時刻t11よりも前の時刻t10)に計測された負荷の移動平均値よりも大きいため、負荷の移動平均値が減少中でない(つまり、増加中である)と判断する(ステップS42;No)。次に、負荷予測部170は、現在の時刻t11から、GCの実行に要する所要時間を経過するまでにおいて、GCを実行するCPU10aの負荷が高負荷であると予測する(ステップS45)。現在、負荷の移動平均値が増加中だからである。その後、負荷予測部170は、負荷予測処理の実行を終了する。   Next, at time t11, the load prediction unit 170 determines that the moving average value of the load measured at time t11 is greater than the moving average value of the load measured last time (that is, time t10 before time t11). Since it is large, it is determined that the moving average value of the load is not decreasing (that is, increasing) (step S42; No). Next, the load predicting unit 170 predicts that the load of the CPU 10a that executes GC is a high load from the current time t11 until the time required for execution of GC elapses (step S45). This is because the moving average value of the load is currently increasing. Thereafter, the load prediction unit 170 ends the execution of the load prediction process.

尚、CPU10aの負荷が高負荷(低負荷)であるとは、CPU10aがメモリ20に対してGCを実行した場合に、CPU10aによるメモリ20に対する入出力処理の実行速度が所定値よりも低下する程に(低下しない程に)、CPU10aの負荷が高い(低い)ことをいう。   Note that the load of the CPU 10a is high (low load) means that when the CPU 10a executes GC on the memory 20, the execution speed of the input / output processing on the memory 20 by the CPU 10a decreases below a predetermined value. This means that the load on the CPU 10a is high (low).

次に、図5の時刻t13を例に挙げて、この時刻において実行される負荷予測処理について説明する。
図6(b)の負荷予測処理の実行が開始されると、負荷予測部170は、時刻t13に計測された負荷の移動平均値が負荷ピークを形成すると判断する(ステップS41;Yes)。次に、負荷予測部170は、現在の時刻t13から上記の所要時間を経過するまでにおいて、CPU負荷が高負荷であると予測し(ステップS45)、負荷予測処理の実行を終了する。
Next, taking time t13 in FIG. 5 as an example, load prediction processing executed at this time will be described.
When the execution of the load prediction process of FIG. 6B is started, the load prediction unit 170 determines that the moving average value of the load measured at time t13 forms a load peak (step S41; Yes). Next, the load prediction unit 170 predicts that the CPU load is high until the required time elapses from the current time t13 (step S45), and ends the execution of the load prediction process.

次に、図5の時刻t15を例に挙げて、この時刻において実行される負荷予測処理について説明する。
図6(b)の負荷予測処理の実行が開始されると、ステップS41の処理を実行した後に、負荷予測部170は、負荷の移動平均値が減少中であると判断する(ステップS42;Yes)。次に、負荷予測部170は、現在の時刻t15から時間Tc前の時刻まで、負荷の移動平均値が閾値Thを常に下回った訳ではないと判断する(ステップS43;No)。その後、負荷予測部170は、現在時刻t15から所要時間を経過するまで、CPU負荷が高負荷であると予測し(ステップS45)、負荷予測処理の実行を終了する。CPU負荷の低下が一時的であるか否かが未確定だからである。
Next, taking time t15 in FIG. 5 as an example, load prediction processing executed at this time will be described.
When the execution of the load prediction process in FIG. 6B is started, after executing the process of step S41, the load prediction unit 170 determines that the moving average value of the load is decreasing (step S42; Yes). ). Next, the load prediction unit 170 determines that the moving average value of the load is not always below the threshold Th from the current time t15 to a time before the time Tc (step S43; No). Thereafter, the load prediction unit 170 predicts that the CPU load is high until the required time elapses from the current time t15 (step S45), and ends the execution of the load prediction process. This is because it is uncertain whether or not the decrease in CPU load is temporary.

次に、図5の時刻t16を例に挙げて、この時刻において実行される負荷予測処理について説明する。
図6(b)の負荷予測処理の実行が開始されると、負荷予測部170は、ステップS41及びステップS42の処理を実行した後に、現在の時刻t15から時間Tc前の時刻まで、負荷の移動平均値が閾値Thを常に下回ったと判断する(ステップS43;Yes)。その後、負荷予測部170は、現在時刻t16から所要時間を経過するまで、CPU負荷が低負荷であると予測し(ステップS44)、負荷予測処理の実行を終了する。CPU負荷が時間Tcに渡って閾値Thを下回ったため、負荷の低下が一時的でない確率が高いと判断されるためである。
Next, taking time t16 in FIG. 5 as an example, load prediction processing executed at this time will be described.
When the execution of the load prediction process of FIG. 6B is started, the load prediction unit 170 moves the load from the current time t15 to a time before the time Tc after executing the processes of step S41 and step S42. It is determined that the average value is always below the threshold Th (Step S43; Yes). Thereafter, the load prediction unit 170 predicts that the CPU load is low until the required time elapses from the current time t16 (step S44), and ends the execution of the load prediction process. This is because the CPU load has fallen below the threshold value Th over time Tc, and therefore it is determined that there is a high probability that the load is not temporarily reduced.

これらの構成によれば、負荷の移動平均値が所定の閾値Thよりも低く低下する場合にCPU負荷が低いと判断するため、GCの所要期間においてCPU負荷が低いか否かを精度良く予測できる。   According to these configurations, it is determined that the CPU load is low when the moving average value of the load falls below a predetermined threshold Th, and therefore it is possible to accurately predict whether the CPU load is low during the required GC period. .

またこれらの構成によれば、所定回数(つまり、所定時間Tc)に渡って所定の閾値Thよりも低い値であった負荷の移動平均値がさらに低下する場合に、CPU負荷が低いと判断するため、GCの所要期間においてCPU負荷が低いか否かをより精度良く予測できる。   In addition, according to these configurations, when the moving average value of the load that has been lower than the predetermined threshold Th for a predetermined number of times (that is, the predetermined time Tc) further decreases, it is determined that the CPU load is low. Therefore, it can be predicted more accurately whether the CPU load is low in the required period of GC.

図6(a)のステップS35で負荷予測処理の実行が終了した後に、図4(a)の利用セクタ情報取得部150は、メモリ20が有するセクタの利用状況を表す利用セクタ情報を、上記のファイルシステム(FS)から取得する(ステップS36)。また、利用セクタ情報取得部150は、取得した利用セクタ情報に基づいて、利用状況が「Free」(空き)のセクタ数(以下単に、空きセクタ数という)「NumFreeSec」及びメモリ20のブロックが有するセクタの数「NumEBSec」を取得する。   After the execution of the load prediction process is completed in step S35 in FIG. 6A, the used sector information acquisition unit 150 in FIG. 4A obtains the used sector information indicating the usage status of the sectors included in the memory 20 as described above. Obtained from the file system (FS) (step S36). Further, the used sector information acquisition unit 150 has the number of sectors whose usage status is “Free” (hereinafter simply referred to as the number of free sectors) “NumFreeSec” and the block of the memory 20 based on the acquired used sector information. Get the number of sectors “NumEBSec”.

次に、実行条件判定部180は、GC実行条件が成立したか否かを判定する、図7に示すような実行条件判定処理を実行する(ステップS37)。   Next, the execution condition determination unit 180 executes an execution condition determination process as shown in FIG. 7 for determining whether or not the GC execution condition is satisfied (step S37).

先ず、メモリ20に十分な空きセクタがある場合に実行される実行条件判定処理について説明する。   First, an execution condition determination process that is executed when there are sufficient free sectors in the memory 20 will be described.

図7に示す実行条件判定処理の実行が開始されると、実行条件判定部180は、以下の式(1)で表される第1条件が成立したか否かを判断する(ステップS51)。   When the execution of the execution condition determination process shown in FIG. 7 is started, the execution condition determination unit 180 determines whether or not a first condition represented by the following expression (1) is satisfied (step S51).

NumEBSec * C > NumFreeSec > NumEBSec・・・(1)
但し、C = 2
NumEBSec * C>NumFreeSec> NumEBSec (1)
Where C = 2

ここで、メモリ20が有するセクタは、ブロック単位で利用状況を「Free」(未使用)に戻される。このため、図2(a)に示すように、GCの実行において、利用状況が「Del」(削除)のセクタを最も多く有するブロック「EBDelMax」を検索した後に、検索されたブロック「EBDelMax」の有するセクタを「Free」に戻す前に、ブロック「EBDelMax」が有する利用状況が「Use」(使用中)のセクタに記憶されたデータを、一旦他の消去ブロックが有する利用状況が「Free」のセクタへ退避(コピー)させる必要がある。このため、空きセクタ数「NumFreeSec」がブロックの有するセクタ数「NumEBSec」を下回ると、GCの実行が不能になってしまう。尚、利用状況「Mov」(移動中)は、セクタに対するデータ書き込み中を表し、「Err」(エラー)は、セクタが利用不能になったことを表す。   Here, the usage status of the sectors of the memory 20 is returned to “Free” (unused) in units of blocks. For this reason, as shown in FIG. 2A, in the execution of GC, after searching for the block “EBDelMax” having the largest number of sectors whose usage status is “Del” (deleted), the searched block “EBDelMax” Before returning the sector to “Free”, the data stored in the sector whose usage status is “Use” (used) in the block “EBDelMax” is temporarily changed to “Free”. It is necessary to save (copy) to the sector. For this reason, when the number of empty sectors “NumFreeSec” is less than the number of sectors “NumEBSec” of the block, the execution of GC becomes impossible. The usage status “Mov” (moving) indicates that data is being written to the sector, and “Err” (error) indicates that the sector has become unusable.

よって、第1条件の成立は、メモリ20の空きセクタ数「NumFreeSec」が、GCの実行に最低限必要な数「NumEBSec」よりは多いため、直ちにGCを実行する必要はないが、あと「NumEBSec」個だけ空きセクタが減少するよりも前に、GCの実行をする必要があることを表す。尚、本実施形態では、変数Cが値「2」である場合について説明したが、これに限定される訳ではなく、当業者は最適な値を決定できる。   Therefore, the first condition is satisfied because the number of empty sectors “NumFreeSec” in the memory 20 is larger than the minimum number “NumEBSec” necessary for the execution of GC, and therefore it is not necessary to immediately execute the GC. "Indicates that it is necessary to execute GC before the number of empty sectors is reduced. In the present embodiment, the case where the variable C is the value “2” has been described. However, the present invention is not limited to this, and a person skilled in the art can determine an optimum value.

ステップS51において、実行条件判定部180は、メモリ20に十分な空きセクタがあるため、第1条件が成立しないと判断する(ステップS51;No)。次に、実行条件判定部180は、以下の式(2)で表される第2条件が成立したか否かを判断する(ステップS52)。   In step S51, the execution condition determining unit 180 determines that the first condition is not satisfied because there are sufficient free sectors in the memory 20 (step S51; No). Next, the execution condition determination unit 180 determines whether or not the second condition represented by the following expression (2) is satisfied (step S52).

NumFreeSec = NumEBSec・・・(2)   NumFreeSec = NumEBSec (2)

尚、第2条件の成立は、メモリ20の空きセクタ数「NumFreeSec」が、GCの実行に最低限必要な数「NumEBSec」に等しいため、直ちにGCを実行する必要あることを表す。   Satisfaction of the second condition indicates that the number of empty sectors “NumFreeSec” in the memory 20 is equal to the minimum number “NumEBSec” necessary for execution of GC, and therefore it is necessary to immediately execute GC.

ステップS52において、実行条件判定部180は、第2条件が成立しなかったと判断し(ステップS52;No)、GC実行条件が不成立と判定する(ステップS53)。GCを実行する必要がない程、メモリ20に空きセクタが多いためである。その後、実行条件判定部180は、実行条件判定処理の実行を終了する。   In step S52, the execution condition determination unit 180 determines that the second condition is not satisfied (step S52; No), and determines that the GC execution condition is not satisfied (step S53). This is because there are so many empty sectors in the memory 20 that it is not necessary to execute GC. Thereafter, the execution condition determination unit 180 ends the execution of the execution condition determination process.

次に、メモリ20に対するファイルの上書きを繰り返し、空きセクタが減少した場合に実行される実行条件判定処理について説明する。   Next, an execution condition determination process executed when the file 20 is repeatedly overwritten on the memory 20 to reduce the number of empty sectors will be described.

実行条件判定部180は、空きセクタの減少により、第1条件が成立したと判断する(ステップS51;Yes)。次に、実行条件判定部180は、図6(a)のステップS35で予測されたCPU負荷が低負荷であるか否かを判断する(ステップS54)。   The execution condition determination unit 180 determines that the first condition is satisfied due to the decrease in empty sectors (step S51; Yes). Next, the execution condition determination unit 180 determines whether or not the CPU load predicted in step S35 of FIG. 6A is a low load (step S54).

ステップS54において、実行条件判定部180は、予測された負荷が低負荷でないと判断した場合に(ステップS54;No)、GC実行条件が成立しないと判定する(ステップS55)。直ちにGCを実行する必要はないだけでなく、GCを実行すると、メモリ20に対する入出力処理の実行速度が著しく(つまり、所定値より)低下するおそれがあるためである。その後、実行条件判定部180は、実行条件判定処理の実行を終了する。   In step S54, when the execution condition determining unit 180 determines that the predicted load is not low (step S54; No), the execution condition determining unit 180 determines that the GC execution condition is not satisfied (step S55). This is because it is not necessary to immediately execute the GC, and if the GC is executed, the execution speed of the input / output processing with respect to the memory 20 may be significantly reduced (that is, lower than a predetermined value). Thereafter, the execution condition determination unit 180 ends the execution of the execution condition determination process.

逆に、ステップS54において、実行条件判定部180は、予測された低負荷であると判断した場合に(ステップS54;Yes)、GC実行条件が成立したと判定する(ステップS56)。あと「NumEBSec」個だけ空きセクタが減少するよりも前に、GCを実行する必要があるだけでなく、GCを実行しても、メモリ20に対する入出力処理の実行速度が著しく(つまり、所定値より)低下する可能性が低いためである。その後、実行条件判定部180は、実行条件判定処理の実行を終了する。   Conversely, when the execution condition determination unit 180 determines in step S54 that the predicted load is low (step S54; Yes), it determines that the GC execution condition is satisfied (step S56). Before the “NumEBSec” free sectors are reduced, it is not only necessary to execute the GC, but even if the GC is executed, the execution speed of the input / output processing for the memory 20 is remarkably high (that is, a predetermined value). This is because the possibility of lowering is low. Thereafter, the execution condition determination unit 180 ends the execution of the execution condition determination process.

次に、メモリ20に対するファイルの上書きをさらに繰り返し、空きセクタが枯渇した場合に実行される実行条件判定処理について説明する。   Next, a description will be given of an execution condition determination process that is executed when the file 20 is repeatedly overwritten on the memory 20 and empty sectors are exhausted.

実行条件判定部180は、空きセクタの数「NumFreeSec」が減少を続け、1つのブロックが有するセクタ数「NumEBSec」と同じ数になったと判断し、第1条件が成立しないが第2条件が成立すると判断する(ステップS51;No及びステップS52;Yes)。次に、実行条件判定部180は、予測されたCPU負荷の高低を判断せずに、GC実行条件が成立したと判定する(ステップS56)。CPU負荷が高負荷であろうが否が、GCを実行できなくなる前に、GCを実行する必要があるためである。その後、実行条件判定部180は、実行条件判定処理の実行を終了する。   The execution condition determination unit 180 determines that the number of empty sectors “NumFreeSec” continues to decrease and reaches the same number as the number of sectors “NumEBSec” of one block. The first condition is not satisfied but the second condition is satisfied Then, it judges (Step S51; No and Step S52; Yes). Next, the execution condition determination unit 180 determines that the GC execution condition is satisfied without determining the predicted level of CPU load (step S56). This is because it is necessary to execute the GC before the GC cannot be executed whether or not the CPU load is high. Thereafter, the execution condition determination unit 180 ends the execution of the execution condition determination process.

図6(a)のステップS37において実行条件判定処理の実行が終了すると、GCスケジュール部185は、GC実行条件が成立したと判定されたか否かを判断する(ステップS38)。   When execution of the execution condition determination process ends in step S37 of FIG. 6A, the GC schedule unit 185 determines whether it is determined that the GC execution condition is satisfied (step S38).

GC実行条件が成立しなかったと判断されると(ステップS38;No)、FS制御部100は、ステップS32に戻り、上記処理を繰り返す。   If it is determined that the GC execution condition is not satisfied (step S38; No), the FS control unit 100 returns to step S32 and repeats the above processing.

GC実行条件が成立したと判断すると(ステップS38;Yes)、GCスケジュール部185は、GC部189が直ちにGCを行うようにスケジューリングする(ステップS39)。その後、FS制御部100は、ステップS32に戻り、上記処理を繰り返す。また、図4(a)のGC部189は、GCスケジュール部185によって変更されたスケジュールに従って、直ちにGCを実行すると共に、GCの実行履歴情報を、実行履歴DB190に保存する。   If it is determined that the GC execution condition is satisfied (step S38; Yes), the GC scheduling unit 185 schedules the GC unit 189 to perform GC immediately (step S39). After that, the FS control unit 100 returns to step S32 and repeats the above process. Also, the GC unit 189 in FIG. 4A immediately executes the GC according to the schedule changed by the GC schedule unit 185, and stores the GC execution history information in the execution history DB 190.

これらの構成によれば、CPU負荷が低いと予測された時期にメモリ20のGCを行うため、メモリ20に対して図1(a)のCPU10aが実行する処理の実行速度が低下することを防止できる。   According to these configurations, since the GC of the memory 20 is performed at the time when the CPU load is predicted to be low, the execution speed of the process executed by the CPU 10a of FIG. it can.

<変形例1>
本実施形態において、図4(a)の負荷予測部170は、図6(b)に示すように、計測時刻に負荷ピークでなく(ステップS41;No)、負荷が減少中であり(ステップS42;Yes)、計測時刻から所定時間Tc前までにおいて、CPU負荷の移動平均値が閾値Thを下回った場合に(ステップS43;Yes)、CPU負荷は低負荷であると予測する(ステップS44)として説明した。
<Modification 1>
In this embodiment, as shown in FIG. 6B, the load prediction unit 170 in FIG. 4A is not a load peak at the measurement time (step S41; No), and the load is decreasing (step S42). Yes), when the moving average value of the CPU load falls below the threshold Th from the measurement time to the predetermined time Tc (step S43; Yes), the CPU load is predicted to be low (step S44). explained.

しかし、変形例において、負荷予測部170は、計測時刻に負荷ピークでなく、負荷が減少中であれば、計測時刻から所定時間Tc前までにおけるCPU負荷について判断することなく、CPU負荷は低負荷であると予測する。   However, in a modified example, if the load prediction unit 170 is not a load peak at the measurement time and the load is decreasing, the CPU load is low without determining the CPU load before the predetermined time Tc from the measurement time. Predict that

この構成によれば、GCに必要な所要時間において、CPU負荷が十分に低いか否かを少ない計算量かつ短時間で予測できる。   According to this configuration, it is possible to predict whether the CPU load is sufficiently low in a required time required for GC in a short amount of calculation and in a short time.

<変形例2>
本実施形態において、制御装置10は、メモリ20に対してGCを実行するとして説明したが、これに限定される訳ではなく、例えば、図1(a)のハードディスク10dのように、制御装置10が有する記憶媒体に対してGCを実行しても良い。
<Modification 2>
In the present embodiment, the control apparatus 10 has been described as executing GC on the memory 20, but the present invention is not limited to this. For example, as in the hard disk 10d in FIG. You may perform GC with respect to the storage medium which has.

<第2実施形態>
次に、第2実施形態について説明を行う。
第2実施形態に係る制御装置は、ピーク幅とピーク間隔との相関に基づいて、負荷の計測時刻後(以下単に、計測後という)に生じるピーク間隔を予測すると共に、予測したピーク間隔がGCの所要時間よりも長い場合に、計測時刻から所要時間を経過するまでにおいて、CPU負荷が低負荷であると予測する。尚、第1実施形態と共通する部分については詳細な説明を省略する。
Second Embodiment
Next, the second embodiment will be described.
The control device according to the second embodiment predicts the peak interval that occurs after the load measurement time (hereinafter simply referred to as “after measurement”) based on the correlation between the peak width and the peak interval, and the predicted peak interval is the GC. When the required time is longer than the required time, the CPU load is predicted to be low until the required time elapses from the measurement time. Note that detailed description of portions common to the first embodiment is omitted.

第2実施形態に係る制御装置は、第1実施形態に係る制御装置10とほぼ同様の構成を有するが、図8(a)に示す負荷情報算出部231及び図8(b)に示す負荷関連情報算出部232の構成が異なる。   The control device according to the second embodiment has substantially the same configuration as the control device 10 according to the first embodiment, but the load information calculation unit 231 illustrated in FIG. 8A and the load-related information illustrated in FIG. The configuration of the information calculation unit 232 is different.

負荷統計情報算出部231について説明する前に、負荷関連情報算出部232について説明する。
負荷関連情報算出部232は、図8(b)のピーク検出部232a及びピーク幅算出部232bの他に、ピーク間隔算出部232cを有する。本実施形態では、負荷関連情報算出部232は、ピーク幅を表す負荷関連情報の他に、ピーク間隔を表す負荷関連情報をも算出する。
Before describing the load statistical information calculation unit 231, the load related information calculation unit 232 will be described.
The load related information calculation unit 232 includes a peak interval calculation unit 232c in addition to the peak detection unit 232a and the peak width calculation unit 232b in FIG. In the present embodiment, the load related information calculation unit 232 calculates load related information representing a peak interval in addition to load related information representing a peak width.

ここで、ピーク間隔とは、図9に示すような、ピークPK1とピークPK2との間隔WLをいい、負荷の移動平均値が閾値Thを下回った時刻t22から負荷の移動平均値が閾値Thを次に上回る時刻t23までの時間をいう。   Here, the peak interval means an interval WL between the peak PK1 and the peak PK2 as shown in FIG. 9, and the load moving average value is less than the threshold Th from time t22 when the moving average value of the load is less than the threshold Th. This is the next time until time t23.

図8(a)の負荷統計情報算出部231は、平均値算出部231a及び移動平均値算出部231bの他に、相関係数算出部231cを有する。   The load statistical information calculation unit 231 in FIG. 8A includes a correlation coefficient calculation unit 231c in addition to the average value calculation unit 231a and the moving average value calculation unit 231b.

負荷統計情報算出部231は、図3(b)の負荷統計情報算出処理を実行した後に、負荷関連情報算出部232が、上記の負荷関連情報を算出する負荷関連情報算出処理を実行すると、ピーク幅とピーク間隔との相関を表す相関係数を算出する、図8(c)に示すような相関係数算出処理の実行を開始する。   After the load statistical information calculation unit 231 executes the load statistical information calculation process in FIG. 3B, the load related information calculation unit 232 executes the load related information calculation process for calculating the load related information. Execution of the correlation coefficient calculation process as shown in FIG. 8C, which calculates a correlation coefficient representing the correlation between the width and the peak interval, is started.

図8(c)に示す相関係数算出処理の実行を開始すると、相関係数算出部231cは、図9(b)に示すような、負荷関連情報算出部232で算出されたピーク幅と、ピーク間隔との回帰直線RLを算出する(ステップS61)。尚、図9(b)は、横軸でピーク幅を表し、縦軸でピーク間隔を表す座標系に対して、ピーク幅及びピーク間隔を、計測された負荷ピーク毎にプロットした図である。   When the execution of the correlation coefficient calculation process shown in FIG. 8C is started, the correlation coefficient calculation unit 231c, as shown in FIG. 9B, the peak width calculated by the load related information calculation unit 232, A regression line RL with the peak interval is calculated (step S61). FIG. 9B is a diagram in which the peak width and the peak interval are plotted for each measured load peak with respect to a coordinate system in which the horizontal axis represents the peak width and the vertical axis represents the peak interval.

次に、相関係数算出部231cは、回帰直線RLに用いられる相関係数の値に基づいて、ピーク幅とピーク間隔とが正の相関を有するか否かを判断する(ステップS62)。具体例としては、相関係数算出部231cは、相関係数が以下の式(3)を満足する場合に、正の相関があると判断する。   Next, the correlation coefficient calculation unit 231c determines whether or not the peak width and the peak interval have a positive correlation based on the value of the correlation coefficient used for the regression line RL (step S62). As a specific example, the correlation coefficient calculation unit 231c determines that there is a positive correlation when the correlation coefficient satisfies the following expression (3).

0.5 < 相関係数< 1.0・・・(3)   0.5 <correlation coefficient <1.0 (3)

ステップS62において、相関係数算出部231cは、正の相関があると判断した場合には(ステップS62;Yes)、相関係数算出部231cは、例えば、制御装置が有する実行履歴DBからGCの実行履歴情報を取得すると共に、実行履歴情報が表すGCの実行時間の平均値を算出し、算出した平均値をGCの実行に必要な所要時間Gtとする。   In step S62, when the correlation coefficient calculation unit 231c determines that there is a positive correlation (step S62; Yes), for example, the correlation coefficient calculation unit 231c reads the GC from the execution history DB included in the control device. While acquiring execution history information, the average value of the execution time of GC which execution history information represents is calculated, and let the calculated average value be the required time Gt required for execution of GC.

その後、相関係数算出部231cは、図9(b)に示すように、GCの所要時間Gtの2倍の長さを有するピーク間隔と対応したピーク幅を、回帰直線RLを用いて算出すると共に、算出したピーク幅をピーク幅の閾値Twとする(ステップS62)。ピーク間隔とピーク幅とが正の相関を有するので、負荷の計測前において最後に現れた負荷ピーク(以下、直前ピークという)のピーク幅が閾値Twを超えると、直前ピークと計測後において最初に現れる負荷ピーク(以下、直後ピークという)とのピーク間隔は、GCの所要時間よりも長く(約2倍に)なる確率が高いためである。   Thereafter, as shown in FIG. 9B, the correlation coefficient calculation unit 231c calculates the peak width corresponding to the peak interval having a length twice the GC required time Gt using the regression line RL. At the same time, the calculated peak width is set as a peak width threshold Tw (step S62). Since the peak interval and the peak width have a positive correlation, when the peak width of the load peak that appears last before the load measurement (hereinafter referred to as the immediately preceding peak) exceeds the threshold Tw, the immediately preceding peak and the first after the measurement This is because the peak interval between the load peak that appears (hereinafter referred to as the peak immediately after) is likely to be longer (about twice) than the time required for GC.

尚、本実施形態において、GCの所要時間Gtの2倍の長さを有するピーク間隔と対応したピーク幅を閾値Twとして説明したが、この値「2」に限定される訳ではない。また、GCの所要時間Gtの長さ(つまり、1倍の長さ)を有するピーク間隔と対応したピーク幅を閾値Twとするのではなく、GCの所要時間Gtの2倍の長さを有するピーク間隔と対応したピーク幅を閾値Twとすることで、GCの実行直後に次のピークが発生するような、CPU負荷が高い状態が続くことを防止できる。   In the present embodiment, the peak width corresponding to the peak interval having a length twice as long as the GC required time Gt has been described as the threshold value Tw. However, the present invention is not limited to this value “2”. Further, the peak width corresponding to the peak interval having the length of GC required time Gt (that is, a length of 1 time) is not set as the threshold value Tw, but is twice as long as the GC required time Gt. By setting the peak width corresponding to the peak interval as the threshold value Tw, it is possible to prevent a state in which the CPU load is high such that the next peak occurs immediately after the execution of GC.

ステップS62において、相関係数算出部231cは、正の相関がないと判断した場合には(ステップS62;No)、ピーク幅の閾値Twを所定値に設定する(ステップS64)。   In step S62, if the correlation coefficient calculation unit 231c determines that there is no positive correlation (step S62; No), the peak width threshold Tw is set to a predetermined value (step S64).

ステップS63及びS64を実行した後に、相関係数算出部231cは、算出又は設定されたピーク幅の閾値Twを統計情報として、制御装置が有する統計情報DBに保存する(ステップS65)。その後、相関係数算出部231cは、相関係数算出処理の実行を終了する。   After executing Steps S63 and S64, the correlation coefficient calculation unit 231c stores the calculated or set peak width threshold Tw as statistical information in the statistical information DB of the control device (Step S65). Thereafter, the correlation coefficient calculation unit 231c ends the execution of the correlation coefficient calculation process.

本実施形態に係る制御装置は、上記のステップS65などで保存された統計情報を用いて、図6(a)のFS制御処理を実行するが、ステップS35において、図10に示すような負荷予測処理を実行する点で、第1実施形態と異なる。
よって、以下、図9(a)に示す時刻t22を例に挙げて、この時刻において実行される負荷予測処理について説明する。
The control device according to the present embodiment executes the FS control process of FIG. 6A using the statistical information stored in step S65 and the like. In step S35, the load prediction as shown in FIG. It differs from the first embodiment in that processing is executed.
Therefore, the load prediction process executed at this time will be described below by taking the time t22 shown in FIG. 9A as an example.

図10の負荷予測処理の実行が開始されると、制御装置が有する負荷予測部は、図6(b)のステップS41及びS42と同様の処理を実行する(ステップS71及びS72)。次に、負荷予測部は、現在時刻t22において負荷の移動平均値が減少中であると判断した後に(ステップS72;Yes)、現在の時刻t22の直前ピークPK1のピーク幅W1が、図8(c)のステップS63で算出又はステップS64で設定された閾値Twよりも大きいか否かを判断する(ステップS73)。   When the execution of the load prediction process of FIG. 10 is started, the load prediction unit included in the control device executes the same process as steps S41 and S42 of FIG. 6B (steps S71 and S72). Next, after determining that the moving average value of the load is decreasing at the current time t22 (step S72; Yes), the load prediction unit determines that the peak width W1 of the immediately preceding peak PK1 at the current time t22 is as shown in FIG. It is determined whether it is larger than the threshold value Tw calculated in step S63 of c) or set in step S64 (step S73).

ステップS73において、負荷予測部は、負荷ピークPK1のピーク幅W1が閾値Twよりも大きいと判断すると(ステップS73;Yes)、直前ピークPK1と直後ピークPK2とのピーク間隔WLは、GCの所要時間よりも長いと推測する。その後、負荷予測部は、負荷の計測後からGCの所要時間を経過するまでの間、CPU負荷が低負荷であると予測し(ステップS74)、負荷予測処理の実行を終了する。   In step S73, when the load prediction unit determines that the peak width W1 of the load peak PK1 is larger than the threshold value Tw (step S73; Yes), the peak interval WL between the immediately preceding peak PK1 and the immediately following peak PK2 is the time required for GC. I guess it is longer. Thereafter, the load prediction unit predicts that the CPU load is low until the time required for GC elapses after the load is measured (step S74), and ends the execution of the load prediction process.

ステップS73において、負荷予測部は、負荷ピークPK1のピーク幅W1が閾値Tw以下であると判断すると(ステップS73;No)、直前ピークPK1と直後ピークPK2とのピーク間隔WLは、GCの所要時間よりも短いと推測する。その後、負荷予測部は、負荷の計測後からGCの所要時間を経過するまでの間、CPU負荷が高負荷であると予測し(ステップS75)、負荷予測処理の実行を終了する。   In step S73, when the load prediction unit determines that the peak width W1 of the load peak PK1 is equal to or less than the threshold Tw (step S73; No), the peak interval WL between the immediately preceding peak PK1 and the immediately following peak PK2 is the time required for GC. I guess it is shorter. Thereafter, the load prediction unit predicts that the CPU load is high until the time required for GC elapses after the load is measured (step S75), and ends the load prediction process.

通常、ピーク幅が長いピークが終了した後には、長いピーク間隔が訪れる傾向にあるので、これらの構成によれば、直前ピークのピーク幅に基づいて、計測後のGCの所要期間においてCPU負荷が低負荷か否かを精度良く予測できる。   Usually, after a peak with a long peak width ends, a long peak interval tends to come. Therefore, according to these configurations, the CPU load is reduced in the required period of GC after measurement based on the peak width of the immediately preceding peak. Whether the load is low or not can be accurately predicted.

また、これらの構成によれば、ピーク幅とピーク間隔とが相関関係を有する場合に、直前ピークが有するピーク幅に基づいて、CPU負荷が低負荷か否かを予測するため、より精度良く負荷の高低を予測できる。   In addition, according to these configurations, when the peak width and the peak interval have a correlation, it is predicted whether the CPU load is low based on the peak width of the immediately preceding peak. Can be predicted.

これらの構成によれば、ピーク幅と相関係数とに基づいて推測されたピーク間隔がGCに要する所要時間よりも長い場合に、CPU負荷が低負荷であると予測するため、さらに精度良く負荷の高低を予測できる。   According to these configurations, when the peak interval estimated based on the peak width and the correlation coefficient is longer than the required time required for the GC, the CPU load is predicted to be low, so the load is more accurately detected. Can be predicted.

<第3実施形態>
次に、第3実施形態について説明を行う。
第3実施形態に係る制御装置は、直前ピークのピーク高に基づいてCPU負荷が十分に低いか否かを予測する。尚、第1実施形態と共通する部分については詳細な説明を省略する。
<Third Embodiment>
Next, the third embodiment will be described.
The control device according to the third embodiment predicts whether the CPU load is sufficiently low based on the peak height of the immediately preceding peak. Note that detailed description of portions common to the first embodiment is omitted.

第3実施形態に係る制御装置は、第1実施形態に係る制御装置10とほぼ同様の構成を有するが、図11(a)に示す負荷情報算出部331及び図11(b)に示す負荷関連情報算出部332の構成が異なる。   The control device according to the third embodiment has substantially the same configuration as the control device 10 according to the first embodiment, but the load information calculation unit 331 illustrated in FIG. 11A and the load-related information illustrated in FIG. The configuration of the information calculation unit 332 is different.

図11(a)の負荷情報算出部331は、平均値算出部331a及び移動平均値算出部331bの他に、非ピーク平均値算出部331cを有する。非ピーク平均値算出部331cは、図11(b)の負荷関連情報算出部332で検出された負荷ピークを表さず、ピーク間隔を表す負荷の移動平均値に対して相加平均値を算出し、算出した平均値を後述する閾値Tlに設定する。この閾値Tlは、負荷の平均値である閾値Thより低いか又は等しい。   The load information calculation unit 331 in FIG. 11A includes a non-peak average value calculation unit 331c in addition to the average value calculation unit 331a and the moving average value calculation unit 331b. The non-peak average value calculation unit 331c does not represent the load peak detected by the load related information calculation unit 332 in FIG. 11B, but calculates the arithmetic average value for the moving average value of the load representing the peak interval. Then, the calculated average value is set to a threshold value Tl described later. This threshold value Tl is lower than or equal to the threshold value Th that is the average value of the load.

図11(b)の負荷関連情報算出部332は、図11(a)のピーク検出部332a及びピーク高算出部332bの他に、ピーク分類部332c及び低負荷移行時間算出部332dを有する。本実施形態では、負荷関連情報算出部332は、図11(c)に示すような、負荷ピークの高さ(以下、ピーク高という)を表す負荷関連情報の他に、低負荷移行時間を表す負荷関連情報を算出する負荷関連情報算出処理を実行する。   The load related information calculation unit 332 in FIG. 11B includes a peak classification unit 332c and a low load transition time calculation unit 332d in addition to the peak detection unit 332a and the peak height calculation unit 332b in FIG. In the present embodiment, the load related information calculation unit 332 represents the low load transition time in addition to the load related information representing the height of the load peak (hereinafter referred to as peak height) as shown in FIG. A load related information calculation process for calculating the load related information is executed.

ここで、低負荷移行時間とは、図13に示すような、負荷の移動平均値が閾値Thを下回った時刻t31(つまり、負荷ピークが終了した時刻)から、閾値Thよりも低い閾値Tlを最初に下回る時刻t32までの時間をいう。この閾値Tlは、十分に低い値でCPU負荷が安定する場合に計測される値を表し、上記のように非ピーク平均値算出部331cで算出された値に設定される。また、ピーク高は、ピークにおける負荷の移動平均値の最大値で表される。   Here, the low load transition time is a threshold Tl lower than the threshold Th from a time t31 when the moving average value of the load is lower than the threshold Th (that is, a time when the load peak ends) as shown in FIG. The time until the time t32 which falls first is said. The threshold value Tl represents a value measured when the CPU load is stabilized at a sufficiently low value, and is set to a value calculated by the non-peak average value calculation unit 331c as described above. The peak height is represented by the maximum value of the moving average value of the load at the peak.

図11(c)の負荷関連情報算出処理が開始されると、図11(b)のピーク検出部332aは、図3(c)のステップS21と同様の処理を実行する(ステップS81)。次に、ピーク高算出部332bは、ステップS81で検出された負荷ピークのピーク高を算出する(ステップS82)。   When the load related information calculation process of FIG. 11C is started, the peak detection unit 332a of FIG. 11B executes the same process as step S21 of FIG. 3C (step S81). Next, the peak height calculation unit 332b calculates the peak height of the load peak detected in step S81 (step S82).

次に、ピーク分類部332cは、ステップS81で検出された(つまり、過去数日に現れた)負荷ピークが有するピーク高の分布を算出する(ステップS83)。次に、ピーク分類部332cは、算出された分布の下位50%を低レベルのピーク高とし、上位50%を高レベルのピーク高としてレベル分けする(ステップS84)。その後、ピーク分類部332cは、低レベルのピーク高を有する負荷ピークが属する分類を第1分類とし、高レベルのピーク高を有する負荷ピークが属する分類を第2分類とする(ステップS85)。   Next, the peak classification unit 332c calculates the distribution of peak heights of the load peaks detected in step S81 (that is, which appeared in the past few days) (step S83). Next, the peak classification unit 332c classifies the calculated distribution with the lower 50% as the low level peak height and the upper 50% as the high level peak height (step S84). Thereafter, the peak classification unit 332c sets the classification to which the load peak having a low level peak height belongs to the first classification, and sets the classification to which the load peak having a high level peak height belongs to the second classification (step S85).

その後、低負荷移行時間算出部332dは、第2分類に属する負荷ピークの低負荷移行時間を算出する(ステップS86)。次に、低負荷移行時間算出部332dは、図3(c)のステップS23と同様の処理を実行する(ステップS87)。その後、負荷関連情報算出処理の実行が終了される。   Thereafter, the low load transition time calculation unit 332d calculates the low load transition time of the load peak belonging to the second category (step S86). Next, the low load transition time calculation unit 332d executes the same process as step S23 of FIG. 3C (step S87). Thereafter, the execution of the load related information calculation process is terminated.

本実施形態に係る制御装置は、上記のステップS87で保存された負荷関連情報などを用いて、図6(a)のFS制御処理を実行するが、ステップS35において、図12に示すような負荷予測処理を実行する点で、第1実施形態と異なる。
よって、以下、図13に示す時刻t30を例に挙げて、この時刻において実行される負荷予測処理について説明する。
The control device according to the present embodiment executes the FS control process of FIG. 6A using the load related information stored in the above step S87. In step S35, the load as shown in FIG. It differs from the first embodiment in that a prediction process is executed.
Therefore, the load prediction process executed at this time will be described below by taking time t30 shown in FIG. 13 as an example.

図12の負荷予測処理の実行が開始されると、制御装置が有する負荷予測部は、図6(b)のステップS41及びS42と同様の処理を実行する(ステップS91及びS92)。負荷予測部は、図13の時刻t30において、負荷の移動平均値が減少中であると判断する(ステップS92;Yes)と、現在の時刻t30の直前ピークPK1のピーク高h1が、図11(c)のステップS94で分類された上位50%の高レベルであるか否かを判断する(ステップS93)。   When the execution of the load prediction process of FIG. 12 is started, the load prediction unit included in the control device executes the same process as steps S41 and S42 of FIG. 6B (steps S91 and S92). When the load prediction unit determines that the moving average value of the load is decreasing at time t30 in FIG. 13 (step S92; Yes), the peak height h1 of the peak PK1 immediately before the current time t30 is shown in FIG. It is determined whether or not the high level of the top 50% classified in step S94 of c) (step S93).

負荷予測部は、図13に示す直前ピークPK1のピーク高h1が高レベルではない(つまり、低レベル)と判断し(ステップS93;No)、時刻t30より後のGCの所要期間において、CPU負荷が低負荷であると判断する(ステップS95)。通常、低レベルのピークが終了すると、GCを開始するまでに要する時間よりも短い時間で、CPU負荷が安定して低負荷になることが多いためである。その後、負荷予測部は、負荷予測処理の実行を終了する。   The load prediction unit determines that the peak height h1 of the immediately preceding peak PK1 shown in FIG. 13 is not a high level (that is, a low level) (step S93; No), and in the required period of GC after time t30, the CPU load Is determined to have a low load (step S95). This is because, usually, when the low-level peak ends, the CPU load often becomes stable and low in a time shorter than the time required to start GC. Thereafter, the load prediction unit ends the execution of the load prediction process.

次に、図13に示す時刻t31を例に挙げて、この時刻において実行される負荷予測処理について説明する。
図12の負荷予測処理の実行が開始されると、制御装置が有する負荷予測部は、ステップS91及びS92の処理を実行した後に、現在の時刻t31の直前ピークPK1のピーク高h1が上位50%の高レベルであると判断する(ステップS93;Yes)。
Next, taking time t31 shown in FIG. 13 as an example, load prediction processing executed at this time will be described.
When the execution of the load prediction process of FIG. 12 is started, the load prediction unit included in the control device executes the processes of steps S91 and S92, and then the peak height h1 of the peak PK1 immediately before the current time t31 is the top 50%. It is judged that it is the high level (step S93; Yes).

その後、負荷予測部は、直前ピークPK1が終了した時刻t31から、図11(c)のステップS86で算出された、第2分類に属する負荷ピーク(つまり、高レベルのピーク高を有する負荷ピーク)の低負荷移行時間の平均時間Ttを経過したか否かを判断する(ステップS94)。   Thereafter, the load prediction unit calculates the load peak belonging to the second classification (that is, the load peak having a high peak height) calculated in step S86 of FIG. 11C from the time t31 when the immediately preceding peak PK1 ends. It is determined whether or not the average time Tt of the low load transition time has elapsed (step S94).

負荷予測部は、現在時刻がt31であるので、上記の平均時間Ttを経過していないと判断し(ステップS94;No)、現在時刻t30より後のGCの所要期間において、CPU負荷が高負荷であると判断する(ステップS96)。通常、高レベルのピークが終了すると、CPU負荷が安定して低負荷になるために、GCを開始するまでに要する時間よりも長い時間かかるためである。その後、負荷予測部は、負荷予測処理の実行を終了する。   Since the current time is t31, the load predicting unit determines that the above average time Tt has not elapsed (step S94; No), and the CPU load is high during the required period of GC after the current time t30. (Step S96). This is because, normally, when the high level peak ends, the CPU load becomes stable and becomes a low load, and therefore it takes longer than the time required to start GC. Thereafter, the load prediction unit ends the execution of the load prediction process.

次に、図13に示す時刻t32を例に挙げて、この時刻において実行される負荷予測処理について説明する。
図12の負荷予測処理の実行が開始されると、制御装置が有する負荷予測部は、ステップS91からS93の処理を実行した後に、現在時刻t32は、直前ピークPK1が終了した時刻t31から低負荷移行時間の平均時間Ttを経過していると判断する(ステップS94;Yes)。
Next, taking time t32 shown in FIG. 13 as an example, load prediction processing executed at this time will be described.
When the execution of the load prediction process of FIG. 12 is started, the load prediction unit included in the control device executes the processes of steps S91 to S93, and then the current time t32 is a low load from the time t31 when the immediately preceding peak PK1 ends. It is determined that the average time Tt of the transition time has elapsed (step S94; Yes).

次に、負荷予測部は、現在時刻t32より後のGCの所要期間において、CPU負荷が低負荷であると判断する(ステップS95)。通常、高レベルのピークが終了した後に、低負荷移行時間の平均時間Ttだけ経過すれば、CPU負荷が安定して低負荷になるためである。その後、負荷予測部は、負荷予測処理の実行を終了する。   Next, the load predicting unit determines that the CPU load is low in the required period of GC after the current time t32 (step S95). This is because the CPU load becomes stable and low load when the average time Tt of the low load transition time elapses after the high level peak ends. Thereafter, the load prediction unit ends the execution of the load prediction process.

これらの構成によれば、ピーク高が高い負荷ピークが終了した後には、長いピーク間隔が訪れる傾向にあるので、ピーク高に基づいてCPU負荷が低負荷か否かを精度良く予測できる。   According to these configurations, after a load peak with a high peak height ends, a long peak interval tends to come. Therefore, it can be accurately predicted whether the CPU load is low based on the peak height.

またこれらの構成によれば、ピーク高の分布に基づいて直前ピークが有するピーク高の高低を判断するため、例えば、メモリ20及びメモリ20のユーザのいずれか1つ以上が変化して負荷ピークが有するピーク高の傾向が変化しても、ピーク高に基づいてCPU負荷が低負荷か否かを精度良く予測できる。   In addition, according to these configurations, in order to determine the level of the peak height of the immediately preceding peak based on the peak height distribution, for example, any one or more of the memory 20 and the user of the memory 20 change and the load peak is Even if the tendency of the peak height is changed, it can be accurately predicted whether or not the CPU load is low based on the peak height.

また通常、負荷ピークが終了してから、CPU負荷が低い値で安定するまで時間の経過を要する。よって、これらの構成によれば、負荷ピークが終了してから低負荷移行時間を経過した後に、CPU負荷が低負荷であると判断するため、負荷の高低を精度良く予測できる。   Usually, it takes time until the CPU load is stabilized at a low value after the load peak ends. Therefore, according to these configurations, it is determined that the CPU load is low after the low load transition time has elapsed after the load peak ends, and therefore the load level can be accurately predicted.

尚、本発明に係る機能を実現するための構成を予め備えた記憶媒体の制御装置として提供できることはもとより、プログラムの適用により、既存の制御装置を本発明に係る記憶媒体の制御装置として機能させることもできる。すなわち、上記実施形態で例示した制御装置10による各機能構成を実現させるための制御プログラムを、既存の制御装置を制御するコンピューター(CPUなど)が実行できるように適用することで、本発明に係る制御装置10として機能させることができる。   In addition, it is possible to provide a storage medium control apparatus having a configuration for realizing the functions according to the present invention in advance, and to make an existing control apparatus function as a storage medium control apparatus according to the present invention by applying a program. You can also. That is, according to the present invention, a control program for realizing each functional configuration by the control device 10 exemplified in the above embodiment is applied so that a computer (such as a CPU) that controls the existing control device can be executed. It can function as the control device 10.

このようなプログラムの配布方法は任意であり、例えば、メモリカード、CD−ROM、又はDVD−ROMなどの記憶媒体に格納して配布できる他、インターネットなどの通信媒体を介して配布することもできる。   Such a program distribution method is arbitrary. For example, the program can be distributed by being stored in a storage medium such as a memory card, a CD-ROM, or a DVD-ROM, or via a communication medium such as the Internet. .

また、本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。   Various embodiments and modifications of the present invention are possible without departing from the broad spirit and scope of the present invention. Further, the above-described embodiment is for explaining the present invention, and does not limit the scope of the present invention. That is, the scope of the present invention is shown not by the embodiments but by the claims. Various modifications within the scope of the claims and within the scope of the equivalent invention are considered to be within the scope of the present invention.

本発明は、記憶媒体に対して電子ファイルの書き換えを行う制御装置において、記憶媒体に記憶された電子ファイルを管理するファイルシステムの制御を行う制御装置に適する。   The present invention is suitable for a control apparatus that rewrites an electronic file to a storage medium and that controls a file system that manages the electronic file stored in the storage medium.

10 制御装置
10a CPU
10b ROM
10c RAM
10d ハードディスク
10e メディアコントローラ
10f USBバス
10g LANカード
10h ビデオカード
10i LCD
10j キーボード
10k マウス
11 アプリケーション実行部
20 フラッシュメモリ
100 ファイルシステム制御部
110 負荷計測部
120 負荷情報DB
130 情報算出部
131,231,331 負荷統計情報算出部
131a,231a,331a 平均値算出部
131b,231b,331b 移動平均値算出部
132,232,332 負荷関連情報算出部
132a,232a,332a ピーク検出部
132b,232b ピーク幅算出部
140 統計情報DB
150 利用セクタ情報取得部
170 負荷予測部
180 実行条件判定部
185 GCスケジュール部
189 GC部
190 実行履歴DB
231c 相関係数算出部
232c ピーク間隔算出部
331c 非ピーク平均値算出部
333b ピーク高算出部
333c ピーク分類部
333c 低負荷移行時間算出部
PK,PK1,PK2 負荷ピーク
10 control device 10a CPU
10b ROM
10c RAM
10d Hard disk 10e Media controller 10f USB bus 10g LAN card 10h Video card 10i LCD
10j Keyboard 10k Mouse 11 Application execution unit 20 Flash memory 100 File system control unit 110 Load measurement unit 120 Load information DB
130 Information calculation unit 131, 231, 331 Load statistical information calculation unit 131a, 231a, 331a Average value calculation unit 131b, 231b, 331b Moving average value calculation unit 132, 232, 332 Load related information calculation unit 132a, 232a, 332a Peak detection Part 132b, 232b peak width calculation part 140 statistical information DB
150 Utilization Sector Information Acquisition Unit 170 Load Prediction Unit 180 Execution Condition Determination Unit 185 GC Schedule Unit 189 GC Unit 190 Execution History DB
231c correlation coefficient calculation unit 232c peak interval calculation unit 331c non-peak average value calculation unit 333b peak height calculation unit 333c peak classification unit 333c low load transition time calculation unit PK, PK1, PK2 load peak

Claims (11)

記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測手段と、
前記負荷計測手段で計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出手段と、
前記負荷計測手段で計測された負荷が前記所定の閾値を上回った後から前記所定の閾値を下回るまでの時間を、前記ピーク検出手段が検出した負荷ピークの有するピーク幅として算出するピーク幅算出手段と、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク幅算出手段で算出されたピーク幅であって、前記負荷計測手段による今回の計測前において最後に現れた負荷ピークである直前ピークのピーク幅に基づいて予測する負荷予測手段と、
前記所要期間において負荷が低いと前記負荷予測手段で予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクション手段と、
を備えることを特徴とする記憶媒体の制御装置。
Load measuring means for measuring a load of an arithmetic device that executes processing on the storage medium;
The curve representing the load measured by the measurement means load, and peak detecting means for detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
Peak width calculating means for calculating the time from when the load measured by the load measuring means exceeds the predetermined threshold until it falls below the predetermined threshold as the peak width of the load peak detected by the peak detecting means When,
Whether or not the load of the computing device is lower than a predetermined threshold in the required period required for the computing device to execute garbage collection on the storage medium is determined by the peak width calculated by the peak width calculating means. A load predicting means for predicting based on the peak width of the immediately preceding peak that is the load peak that appears last before the current measurement by the load measuring means;
Garbage collection means for performing garbage collection on the storage medium when the load prediction means predicts that the load is low in the required period;
A storage medium control device comprising:
前記所定の閾値は、前記演算装置がガベージコレクションを実行すると、前記記憶媒体に対する処理の実行速度が低下する場合に計測される負荷の大きさを表す、
ことを特徴とする請求項1に記載の記憶媒体の制御装置。
The predetermined threshold represents a magnitude of a load measured when an execution speed of processing on the storage medium decreases when the arithmetic device executes garbage collection.
The storage medium control device according to claim 1.
前記負荷計測手段で計測された負荷が前記所定の閾値を下回った後から前記所定の閾値を上回るまでのピーク間隔を算出するピーク間隔算出手段、をさらに備え、
前記負荷予測手段は、前記ピーク間隔算出手段で算出された前記ピーク間隔と、前記ピーク間隔で隔てられた負荷ピークのピーク幅とが相関関係を有する場合に、前記直前ピークのピーク幅に基づいて、前記直前ピークが終了した後の前記所要期間における前記演算装置の負荷が低いか否かを予測する、
ことを特徴とする請求項1又は2に記載の記憶媒体の制御装置。
A peak interval calculating means for calculating a peak interval from when the load measured by the load measuring means falls below the predetermined threshold until it exceeds the predetermined threshold;
The load predicting means, based on the peak width of the immediately preceding peak, when the peak interval calculated by the peak interval calculating means and the peak width of the load peak separated by the peak interval have a correlation. Predicting whether the load on the computing device in the required period after the previous peak ends is low,
The storage medium control device according to claim 1, wherein the storage medium control device is a storage medium control device.
前記負荷予測手段は、前記ピーク幅と前記ピーク間隔との相関と、前記直前ピークが有するピーク幅とに基づいて、前記負荷計測手段による今回の計測後において最初に現れる負荷ピークである直後ピークのピーク間隔を推測すると共に、推測された前記直後ピークのピーク間隔が前記所要期間よりも長い場合に、前記所要期間における前記演算装置の負荷が低いと予測する、
ことを特徴とする請求項3に記載の記憶媒体の制御装置。
Based on the correlation between the peak width and the peak interval, and the peak width of the immediately preceding peak, the load predicting means determines the immediately following peak that is the first load peak that appears after the current measurement by the load measuring means. Estimating the peak interval, and predicting that the load of the computing device in the required period is low when the estimated peak interval of the immediately following peak is longer than the required period.
The storage medium control device according to claim 3.
記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測手段と、
前記負荷計測手段で計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出手段と、
前記ピーク検出手段で検出された負荷ピークの有するピーク高を算出するピーク高算出手段と、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク高算出手段で算出されたピーク高であって、前記負荷計測手段による今回の計測前において最後に現れた負荷ピークである直前ピークのピーク高に基づいて予測する負荷予測手段と、
前記所要期間において負荷が低いと前記負荷予測手段で予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクション手段と、
を備えることを特徴とする記憶媒体の制御装置。
Load measuring means for measuring a load of an arithmetic device that executes processing on the storage medium;
The curve representing the load measured by the measurement means load, and peak detecting means for detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
Peak height calculating means for calculating the peak height of the load peak detected by the peak detecting means;
Whether or not the load of the computing device is lower than a predetermined threshold in the required period required for the computing device to execute garbage collection on the storage medium is determined by the peak height calculated by the peak height calculating means. A load predicting means for predicting based on the peak height of the immediately preceding peak that is the load peak that appears last before the current measurement by the load measuring means;
Garbage collection means for performing garbage collection on the storage medium when the load prediction means predicts that the load is low in the required period;
A storage medium control device comprising:
前記ピーク高算出手段で算出されたピーク高の分布に基づいて、ピーク高が低い負荷ピークが属する第1分類と、前記第1分類よりも高いピーク高を有する負荷ピークが属する第2分類とに、前記直前ピークを分類するピーク分類手段、をさらに備え、
前記負荷予測手段は、前記ピーク分類手段で前記直前ピークが前記第2分類に分類された場合に、前記所要期間における前記演算装置の負荷が低いと予測する、
ことを特徴とする請求項5に記載の記憶媒体の制御装置。
Based on the distribution of peak heights calculated by the peak height calculation means, a first class to which a load peak having a low peak height belongs and a second class to which a load peak having a peak height higher than the first class belongs. And a peak classification means for classifying the immediately preceding peak,
The load predicting means predicts that the load on the arithmetic device in the required period is low when the immediately preceding peak is classified into the second classification by the peak classification means.
The storage medium control device according to claim 5.
前記ピーク分類手段で前記第2分類に分類された負荷ピークが終了してから、前記負荷計測手段で計測された負荷が前記所定の閾値よりも低い他の閾値を下回る値へ移行するまでの低負荷移行時間を算出する低負荷移行時間算出手段、をさらに備え、
前記負荷予測手段は、前記負荷計測手段で計測された負荷が前記所定の閾値を下回ってから、前記低負荷移行時間算出手段で算出された低負荷移行時間の平均時間を経過した後に、前記平均時間を経過した後における前記所要期間において前記演算装置の負荷が低いと予測する、
ことを特徴とする請求項6に記載の記憶媒体の制御装置。
After the load peak classified into the second classification by the peak classifying unit ends, the load measured by the load measuring unit is low until the load shifts to a value lower than another threshold value lower than the predetermined threshold value. A low load transition time calculating means for calculating the load transition time;
The load predicting means, after the load measured by the load measuring means falls below the predetermined threshold, after the average time of the low load transition time calculated by the low load transition time calculating means has elapsed, the average Predicting that the load on the computing device is low in the required period after a lapse of time;
The storage medium control device according to claim 6.
コンピュータを、
記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測手段、
前記負荷計測手段で計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出手段、
前記負荷計測手段で計測された負荷が前記所定の閾値を上回った後から前記所定の閾値を下回るまでの時間を、前記ピーク検出手段が検出した負荷ピークの有するピーク幅として算出するピーク幅算出手段、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク幅算出手段で算出されたピーク幅であって、前記負荷計測手段による今回の計測前において最後に現れた負荷ピークである直前ピークのピーク幅に基づいて予測する負荷予測手段、
前記所要期間において負荷が低いと前記負荷予測手段で予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクション手段、
として機能させることを特徴とする記憶媒体の制御プログラム。
Computer
Load measuring means for measuring a load of an arithmetic device that executes processing on a storage medium;
The curve representing the load measured by the load measuring means, a peak detecting means for detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
Peak width calculating means for calculating the time from when the load measured by the load measuring means exceeds the predetermined threshold until it falls below the predetermined threshold as the peak width of the load peak detected by the peak detecting means ,
Whether or not the load of the computing device is lower than a predetermined threshold in the required period required for the computing device to execute garbage collection on the storage medium is determined by the peak width calculated by the peak width calculating means. A load predicting means for predicting based on the peak width of the immediately preceding peak which is the load peak appearing last before the current measurement by the load measuring means;
Garbage collection means for performing garbage collection on the storage medium when the load prediction means predicts that the load is low in the required period;
A storage medium control program that functions as a storage medium.
コンピュータを、
記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測手段、
前記負荷計測手段で計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出手段、
前記ピーク検出手段で検出された負荷ピークの有するピーク高を算出するピーク高算出手段、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク高算出手段で算出されたピーク高であって、前記負荷計測手段による今回の計測前において最後に現れた負荷ピークである直前ピークのピーク高に基づいて予測する負荷予測手段、
前記所要期間において負荷が低いと前記負荷予測手段で予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクション手段、
として機能させることを特徴とする記憶媒体の制御プログラム。
Computer
Load measuring means for measuring a load of an arithmetic device that executes processing on a storage medium;
The curve representing the load measured by the load measuring means, a peak detecting means for detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
Peak height calculating means for calculating the peak height of the load peak detected by the peak detecting means;
Whether or not the load of the computing device is lower than a predetermined threshold in the required period required for the computing device to execute garbage collection on the storage medium is determined by the peak height calculated by the peak height calculating means. A load predicting means for predicting based on the peak height of the immediately preceding peak which is the load peak last appearing before the current measurement by the load measuring means;
Garbage collection means for performing garbage collection on the storage medium when the load prediction means predicts that the load is low in the required period;
A storage medium control program that functions as a storage medium.
記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測ステップと、
前記負荷計測ステップで計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出ステップと、
前記負荷計測ステップで計測された負荷が前記所定の閾値を上回った後から前記所定の閾値を下回るまでの時間を、前記ピーク検出ステップで検出した負荷ピークの有するピーク幅として算出するピーク幅算出ステップと、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク幅算出ステップで算出されたピーク幅であって、前記負荷計測ステップによる今回の計測前において最後に現れた負荷ピークである直前ピークのピーク幅に基づいて予測する負荷予測ステップと、
前記所要期間において負荷が低いと前記負荷予測ステップで予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクションステップと、
を有することを特徴とする記憶媒体の制御方法。
A load measuring step for measuring a load of an arithmetic device that executes processing for the storage medium;
The curve representing the load measuring load measured in step, a peak detection step of detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
A peak width calculating step for calculating a time from when the load measured at the load measuring step exceeds the predetermined threshold to when the load falls below the predetermined threshold as a peak width of the load peak detected at the peak detecting step. When,
Whether or not the load of the arithmetic device is lower than a predetermined threshold in the required period required for the arithmetic device to execute garbage collection on the storage medium is determined by the peak width calculated in the peak width calculating step. A load prediction step for predicting based on the peak width of the immediately preceding peak that is the load peak that appeared last before the current measurement by the load measuring step;
A garbage collection step for performing garbage collection on the storage medium when the load is predicted to be low in the required period in the load prediction step;
A method for controlling a storage medium, comprising:
記憶媒体に対する処理を実行する演算装置の負荷を計測する負荷計測ステップと、
前記負荷計測ステップで計測された負荷を表す曲線において、所定の閾値を超えた部分を負荷ピークとして検出するピーク検出ステップと、
前記ピーク検出ステップで検出された負荷ピークの有するピーク高を算出するピーク高算出ステップと、
前記演算装置が前記記憶媒体に対するガベージコレクションを実行するのに必要な所要期間において、前記演算装置の負荷が所定の閾値よりも低いか否かを、前記ピーク高算出ステップで算出されたピーク高であって、前記負荷計測ステップによる今回の計測前において最後に現れた負荷ピークである直前ピークのピーク高に基づいて予測する負荷予測ステップと、
前記所要期間において負荷が低いと前記負荷予測ステップで予測された場合に、前記記憶媒体に対するガベージコレクションを行うガベージコレクションステップと、
を有することを特徴とする記憶媒体の制御方法。
A load measuring step for measuring a load of an arithmetic device that executes processing for the storage medium;
The curve representing the load measuring load measured in step, a peak detection step of detecting a portion exceeding the threshold value of Jo Tokoro as the load peak,
A peak height calculating step for calculating a peak height of the load peak detected in the peak detecting step;
Whether or not the load on the computing device is lower than a predetermined threshold in the required period required for the computing device to execute garbage collection on the storage medium is determined by the peak height calculated in the peak height calculating step. A load prediction step for predicting based on the peak height of the immediately preceding peak that is the load peak that appeared last before the current measurement by the load measuring step;
A garbage collection step for performing garbage collection on the storage medium when the load is predicted to be low in the required period in the load prediction step;
A method for controlling a storage medium, comprising:
JP2010099230A 2010-04-22 2010-04-22 Storage medium control device, control program, and control method Active JP5220053B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010099230A JP5220053B2 (en) 2010-04-22 2010-04-22 Storage medium control device, control program, and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010099230A JP5220053B2 (en) 2010-04-22 2010-04-22 Storage medium control device, control program, and control method

Publications (2)

Publication Number Publication Date
JP2011227835A JP2011227835A (en) 2011-11-10
JP5220053B2 true JP5220053B2 (en) 2013-06-26

Family

ID=45043079

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010099230A Active JP5220053B2 (en) 2010-04-22 2010-04-22 Storage medium control device, control program, and control method

Country Status (1)

Country Link
JP (1) JP5220053B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798657B2 (en) 2014-10-15 2017-10-24 Samsung Electronics Co., Ltd. Data storage device including nonvolatile memory device and operating method thereof
US10181352B2 (en) 2015-09-09 2019-01-15 Toshiba Memory Corporation Memory system and method of controlling nonvolatile memory
CN110058794B (en) * 2018-01-19 2022-11-01 上海宝存信息科技有限公司 Data storage device for dynamically executing garbage recovery and operation method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60103471A (en) * 1983-11-10 1985-06-07 Hitachi Ltd Record processing system of computer
JP2001034487A (en) * 1999-07-21 2001-02-09 Matsushita Electric Ind Co Ltd Program executing device, time deciding device and method
JP4018900B2 (en) * 2001-11-22 2007-12-05 株式会社日立製作所 Virtual computer system and program
JP4170675B2 (en) * 2002-06-03 2008-10-22 株式会社日立製作所 Memory usage capacity monitoring method and computer system
KR100690804B1 (en) * 2005-06-13 2007-03-09 엘지전자 주식회사 Method for executing garbage collection of mobile terminal

Also Published As

Publication number Publication date
JP2011227835A (en) 2011-11-10

Similar Documents

Publication Publication Date Title
JP6241144B2 (en) Control program, control method, and control apparatus
US11360817B2 (en) Method and terminal for allocating system resource to application
CN108632330A (en) Cloud resource management system and management method thereof
US20170010963A1 (en) Optimizing memory usage across multiple garbage collected computer environments
TWI599881B (en) Method for adaptively managing a solid state drive, and associated apparatus and associated computer program product
US8407459B2 (en) Information processing apparatus and boot completion notification program
CN105637470B (en) Method and computing device for dirty data management
KR20120102664A (en) Allocating storage memory based on future use estimates
JP6447348B2 (en) Dump data management program, dump data management method, and dump data management device
US20150026428A1 (en) Memory use for garbage collected computer environments
CN106294206B (en) Cache data processing method and device
EP2733606A2 (en) Method for loading a process on an electronic device based on a user event
JP5220053B2 (en) Storage medium control device, control program, and control method
CN105144116A (en) Estimating time remaining for an operation
JP2003015892A (en) Information terminal equipment and application management program
CN105955770A (en) Application program uninstalling method and terminal
CN107766134A (en) The cleaned system method and mobile device of a kind of mobile device
TWI614606B (en) System and methods for increasing useful lifetime of a flash memory device
WO2013080368A1 (en) Information processing device and program
CN112527203A (en) Data rewriting method and system of flash memory, terminal device and storage medium
US10719243B2 (en) Techniques for preserving an expected lifespan of a non-volatile memory
CN113961517A (en) File system management method, electronic device and storage medium
CN107450793A (en) Data processing equipment and data processing method
EP3596598B1 (en) Method of managing applications and computing device using the same
CN112162704A (en) Storage space releasing method and device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120814

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121113

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130111

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: 20130205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130305

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

Free format text: PAYMENT UNTIL: 20160315

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5220053

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250