JP2020145582A - 情報処理装置、その制御方法、及びプログラム - Google Patents

情報処理装置、その制御方法、及びプログラム Download PDF

Info

Publication number
JP2020145582A
JP2020145582A JP2019040666A JP2019040666A JP2020145582A JP 2020145582 A JP2020145582 A JP 2020145582A JP 2019040666 A JP2019040666 A JP 2019040666A JP 2019040666 A JP2019040666 A JP 2019040666A JP 2020145582 A JP2020145582 A JP 2020145582A
Authority
JP
Japan
Prior art keywords
information processing
storage device
processing device
data
hdd
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019040666A
Other languages
English (en)
Inventor
滝澤 昌弘
Masahiro Takizawa
昌弘 滝澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2019040666A priority Critical patent/JP2020145582A/ja
Priority to KR1020200022674A priority patent/KR20200107802A/ko
Priority to US16/806,179 priority patent/US20200288031A1/en
Publication of JP2020145582A publication Critical patent/JP2020145582A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00925Inhibiting an operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/21Intermediate information storage
    • H04N1/2166Intermediate information storage for mass storage, e.g. in document filing systems
    • H04N1/217Interfaces allowing access to a single user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1239Restricting the usage of resources, e.g. usage or user levels, credit limit, consumables, special fonts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • G06F9/463Program control block organisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1817Buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/40Details not directly involved in printing, e.g. machine management, management of the arrangement as a whole or of its constitutive parts
    • G06K15/4095Secure printing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00002Diagnosis, testing or measuring; Detecting, analysing or monitoring not otherwise provided for
    • H04N1/00026Methods therefor
    • H04N1/00037Detecting, i.e. determining the occurrence of a predetermined state
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00002Diagnosis, testing or measuring; Detecting, analysing or monitoring not otherwise provided for
    • H04N1/00071Diagnosis, testing or measuring; Detecting, analysing or monitoring not otherwise provided for characterised by the action taken
    • H04N1/0009Storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00885Power supply means, e.g. arrangements for the control of power supply to the apparatus or components thereof
    • H04N1/00888Control thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • H04N1/0097Storage of instructions or parameters, e.g. customised instructions or different parameters for different user IDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • G11B19/04Arrangements for preventing, inhibiting, or warning against double recording on the same blank or against other recording or reproducing malfunctions
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B2020/1869Preventing ageing phenomena from causing data loss, e.g. by monitoring the age of record carriers or by recognising wear, and by copying information elsewhere when a record carrier becomes unreliable
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B5/00Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
    • G11B5/012Recording on, or reproducing or erasing from, magnetic disks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B7/00Recording or reproducing by optical means, e.g. recording using a thermal beam of optical radiation by modifying optical properties or the physical structure, reproducing using an optical beam at lower power by sensing optical properties; Record carriers therefor
    • G11B7/002Recording, reproducing or erasing systems characterised by the shape or form of the carrier
    • G11B7/0037Recording, reproducing or erasing systems characterised by the shape or form of the carrier with discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Abstract

【課題】記憶デバイスの故障リスクを低減することができる情報処理装置を提供する。【解決手段】MFP100は、その動作状況に基づいてHDD109への書き込みを許可するか否かが決定される。これにより、格納するデータの容量に関わらず、MFP100の動作状況に基づいてHDD109へ書き込みを行うか否かを制御してHDD109へのアクセス頻度を抑制することができる。また、MFP100がHDD109への書き込みを必須要件とする処理に関する所定の動作を行っている場合、HDD109への書き込みが許可され、MFP100が所定の動作を行っていない場合,HDD109の書き込みが禁止される。【選択図】図1

Description

本発明は、情報処理装置、その制御方法、及びプログラムに関する。
HDDやSSD等の記憶デバイスを備える情報処理装置としてのMFPが知られている。MFPでは、記憶デバイスに画像データやプログラム等の複数種のデータが格納される。HDDやSSD等の記憶デバイスでは、当該記憶デバイスに対するアクセス回数に制約が設けられている。この記憶デバイスへのアクセス回数が予め定められた所定の回数を超えると、当該記憶デバイスは、故障し易くなる。記憶デバイスの故障リスクを低減するために、記憶デバイスより記憶容量は小さいが寿命が長いDRAMにデータを格納する技術が提案されている。例えば、容量が所定の閾値を越えるデータの格納場所を記憶デバイスに設定し、容量が所定の閾値以下のデータの格納場所を記憶デバイスからDRAMに切り替える(例えば、特許文献1参照)。このようにデータの格納場所を切り替えることで、記憶デバイスへのアクセス頻度を抑制して記憶デバイスの故障リスクを低減することができる。
特開2002−103699号公報
しかしながら、上述したように、データの格納場所の切り替えをデータの容量に基づいて制御すると、例えば、所定の閾値以下の容量のデータを頻繁に記憶デバイスに書き込むような処理を行う際に、その都度、記憶デバイスにアクセスする必要がある。このような処理を行う際、従来では、記憶デバイスへのアクセス頻度が抑制されず、記憶デバイスの故障リスクを低減することができないという問題が生じる。
本発明の目的は、記憶デバイスの故障リスクを低減することができる情報処理装置、その制御方法、及びプログラムを提供することにある。
上記目的を達成するために、本発明の情報処理装置は、アクセス回数に制約が設けられる記憶デバイスを備える情報処理装置であって、前記記憶デバイスへデータを書き込む制御を行う制御手段を備え、前記制御手段は、前記情報処理装置の動作状況に基づいて前記記憶デバイスへの書き込みを許可するか否かを決定することを特徴とする。
本発明によれば、記憶デバイスの故障リスクを低減することができる。
本発明の実施の形態に係る情報処理装置としてのMFPの構成を概略的に示すブロック図である。 図1のMFPによって実行されるHDD書き込み処理の手順を示すフローチャートである。 図2のステップS202の判別を説明するための図である。 図2のステップS203の判別を説明するための図である。 図1のDRAMの記憶領域を説明するための図である。 図1のMFPの動作を説明するためのタイミングチャートである。 図1のMFPのソフトウェアモジュールの構成を説明するためのブロック図である。 図1のMFPによって実行される保持時間制御処理の手順を示すフローチャートである。 図1のMFPによって実行されるディスクバッファ書き込み処理の手順を示すフローチャートである。 図9のステップS903の書き込み処理の手順を示すフローチャートである。
以下、本発明の実施の形態について図面を参照しながら詳述する。なお、本実施の形態では、記憶デバイスを備えるMFPに本発明を適用した場合について説明するが、本発明は、MFPに限られず、アクセス回数に制約が設けられる記憶デバイスを備えるクライアントPC等の情報処理装置に適用してもよい。
図1は、本発明の実施の形態に係る情報処理装置としてのMFP100の構成を概略的に示すブロック図である。
図1において、MFP100は、コントローラ101、HDD109、操作部111、スキャナ117、及びプリンタ121を備える。なお、本実施の形態では、この構成に限られず、少なくともコントローラ101及びHDD109を備える構成であれば良い。MFP100は、画像形成処理を行う画像形成装置である。コントローラ101は、HDD109、操作部111、スキャナ117、及びプリンタ121と接続されている。
コントローラ101は、MFP100のシステム全体を制御する。コントローラ101は、CPU102、DRAM104、DRAMI/F105、ROM106、ROMI/F107、記憶部I/F108、操作部I/F110、及びLANI/F112を備える。また、コントローラ101は、スキャナI/F116、スキャナ画像処理部118、プリンタ画像処理部119、プリンタI/F120、及び電源制御部122を備える。CPU102、DRAMI/F105、ROMI/F107、記憶部I/F108、操作部I/F110、LANI/F112、スキャナI/F116、スキャナ画像処理部118、プリンタ画像処理部119、プリンタI/F120、及び電源制御部122は、システムバス123を介して互いに接続されている。
CPU102は、データを一時的に格納するキャッシュメモリ103を備える。CPU102は、DRAM104等に格納されたプログラムを実行して各種制御を行う。DRAM104は、DRAMI/F105に接続されている。DRAM104は、CPU102の作業領域として、また、データを一時的に格納する領域として使用される。DRAM104は、HDD109より記憶容量は小さいが寿命が長い。DRAMI/F105は、DRAM104をシステムバス123に接続するDRAMコントローラである。ROM106は、ROMI/F107に接続されている。ROM106は、リード専用のメモリであり、プログラムや設定データを格納する。ROMI/F107は、ROM106をシステムバス123に接続するROMコントローラである。記憶部I/F108は、例えば、SATAコントローラである。記憶部I/F108は、HDD109から読み取ったデータをDRAM104に書き込む。また、記憶部I/F108は、DRAM104から読み取ったデータをHDD109に書き込む。HDD109は、アクセス回数に制約が設けられる不揮発性の記憶デバイスである。本実施の形態では、例えば、HDD109のロード/アンロード回数が予め定められた所定の回数を超えると、HDD109が故障し易くなるので、HDD109の寿命の低下を抑制する制御が行われる。
操作部I/F110は、操作部111と接続されている。操作部111は、表示機能と操作機能を有するタッチパネル式のデバイスである。操作部111は、操作部I/F110から取得した表示用の画像データを表示し、また、ユーザが操作部111に入力した情報を操作部I/F110を介してCPU102に送信する。
LANI/F112は、LAN113に接続された外部装置とデータ通信を行う。例えば、LANI/F112は、スキャナ117によって生成されたスキャン画像データをLAN113に接続されたPC114やPC115へ送信する。また、LANI/F112は、PC114やPC115から印刷するための画像データを取得する。スキャナI/F116は、スキャナ117と接続されている。スキャナ117は、載置された原稿を読み取ってスキャン画像データを生成する。当該スキャン画像データは、スキャナI/F116を介してスキャナ画像処理部118に送信される。スキャナ画像処理部118は、取得したスキャン画像データに画像処理を施す。画像処理済みのスキャン画像データは、DRAM104に格納される。プリンタ画像処理部119は、DRAM104に格納された画像データに印刷に必要となる画像処理を施し、画像処理済みの画像データをプリンタI/F120を介してプリンタ121に送信する。プリンタI/F120は、プリンタ121と接続されている。プリンタ121は、取得した画像処理済みの画像データを用紙に印刷する。電源制御部122は、MFP100の各ユニットへの電力の供給を制御する。
図2は、図1のMFP100によって実行されるHDD書き込み処理の手順を示すフローチャートである。図2の処理は、CPU102がROM106やHDD109に格納されたプログラムを実行することによって行われる。図2の処理は、HDD109へのデータの書き込みを要求するHDD書き込みコマンドが発行された際に実行される。
図2において、CPU102は、HDD書き込みコマンドを受信すると(ステップS201でYES)、HDD109への書き込みを必須要件とする処理に関する所定の動作が行われているか否かを判別する。具体的に、CPU102は、ジョブの実行に関する動作が行われているか否かを判別する(ステップS202)。ステップS202では、例えば、図3に示すコピージョブ、SENDジョブ、FAX送信ジョブ、FAX受信ジョブ、プリントジョブ、スキャンジョブ、及びBOXジョブの何れかのジョブの実行に関する動作が行われている場合、CPU102は、ジョブの実行に関する動作が行われていると判別する。一方、上述した何れの動作も行われていない場合、CPU102は、ジョブの実行に関する動作が行われていないと判別する。
コピージョブの実行に関する動作とは、操作部111でコピージョブの実行指示を受け付けてからプリンタ121が最終ページの排紙を完了するまでの動作である。SENDジョブの実行に関する動作とは、操作部111でSENDジョブの実行指示を受け付けてからLAN113に接続された外部装置へのデータ送信を完了するまでの動作である。FAX送信ジョブの実行に関する動作とは、操作部111でFAX送信ジョブの実行指示を受け付けてからFAX送信を完了するまでの動作である。FAX受信ジョブの実行に関する動作とは、FAX受信を開始してからプリンタ121が最終ページの排紙を完了するまでの動作である。プリントジョブの実行に関する動作とは、LAN113に接続された外部装置からのデータ受信を開始してからプリンタ121が最終ページの排紙を完了するまでの動作である。スキャンジョブの実行に関する動作とは、操作部111でスキャンジョブの実行指示を受け付けてから生成したスキャン画像データの格納を完了するまでの動作である。BOXジョブの実行に関する動作とは、ジョブを実行するためのジョブデータの受信を開始してから受信したジョブデータの格納を完了するまでの動作である。
ステップS202の判別の結果、ジョブの実行に関する動作が行われていないとき、CPU102は、MFP100の電源ステートの遷移に関する動作が行われているか否かを判別する(ステップS203)。ステップS203では、例えば、図4に示すように、コールド起動、ホット起動、第1のスリープ移行、第1のスリープ復帰、第2のスリープ移行、第2のスリープ復帰、及びシャットダウンの何れかに関する動作が行われている場合、CPU102は、MFP100の電源ステートの遷移に関する動作が行われていると判別する。一方、上述した何れの動作も行われていない場合、CPU102は、MFP100の電源ステートの遷移に関する動作が行われていないと判別する。
コールド起動及びホット起動に関する動作とは、MFP100が起動処理を開始してからMFP100のホーム画面を構成する全てのアイコンが操作部111に表示されるまでの動作である。第1のスリープ移行に関する動作とは、操作部111にて第1のスリープ状態への移行指示を受け付ける又は第1のスリープタイマ(不図示)による計測において所定の時間を経過してから、第1のスリープ状態に停止させる全てのユニットへの電力の供給を停止させるまでの動作である。第1のスリープ復帰に関する動作とは、操作部111にて第1のスリープ状態からの復帰指示を受け付ける又はジョブデータを受信してから、MFP100のホーム画面を構成する全てのアイコンが操作部111に表示されるまでの動作である。第2のスリープ移行に関する動作とは、操作部111にて第2のスリープ状態への移行指示を受け付ける又は第2のスリープタイマ(不図示)による計測において所定の時間を経過してから、第2のスリープ状態に停止させる全てのユニットへの電力の供給を停止させるまでの動作である。第2のスリープ復帰に関する動作とは、操作部111にて第2のスリープ状態からの復帰指示を受け付ける又はジョブデータを受信してから、MFP100のホーム画面を構成する全てのアイコンが操作部111に表示されるまでの動作である。シャットダウンに関する動作とは、操作部111にてMFP100の電源OFFの指示を受け付ける又はシャットダウンタイマ(不図示)による計測において所定の時間を経過してからMFP100へ電力の供給が停止されるまでの動作である。
ステップS203の判別の結果、MFP100の電源ステートの遷移に関する動作が行われていないとき、CPU102は、HDD109への書き込みを禁止する。CPU102は、HDD書き込みコマンドにおいてHDD109への書き込みが指示されたデータをHDD109ではなく、DRAM104に書き込む(ステップS204)。DRAM104は、図5に示すように、プリント画像データやスキャン画像データを格納する描画領域501、プリント画像データやスキャン画像データに画像処理を施したデータを格納する変換領域502、各種プログラムを格納する制御プログラム領域503等の複数の領域に分割されている。ステップS204では、CPU102は、描画領域501、変換領域502、及び制御プログラム領域503と異なるDRAMバッファ領域504に上記データを書き込む。DRAMバッファ領域504には、HDD書き込みコマンドにおいてHDD109への書き込みが指示された実データ505の他に、データサイズ506やパス507が書き込まれる。データサイズ506は、実データ505のデータ容量である。パス507は、HDD書き込みコマンドにて指定されたデータ格納場所を示すHDD109内のディレクトリ情報である。本実施の形態では、実データ505、データサイズ506、及びパス507は、DRAM104に保持される。以下では、DRAM104に保持された実データ505、データサイズ506、及びパス507の総称をDRAM保持データとする。その後、CPU102は、本処理を終了する。
ステップS202の判別の結果、ジョブの実行に関する動作が行われているとき、又はステップS203の判別の結果、MFP100の電源ステートの遷移に関する動作が行われているとき、CPU102は、ステップS205の処理を行う。ステップS205では、CPU102は、DRAM104にDRAM保持データが格納されているか否かを判別する。例えば、DRAMバッファ領域504に少なくとも1つのデータが格納されている場合、CPU102は、DRAM104にDRAM保持データが格納されていると判別する。一方、DRAMバッファ領域504にデータが格納されていない場合、CPU102は、DRAM104にDRAM保持データが格納されていないと判別する。
ステップS205の判別の結果、DRAM104にDRAM保持データが格納されているとき、CPU102は、DRAM104からDRAM保持データを読み取る(ステップS206)。次いで、CPU102は、DRAM保持データにおける実データ505をHDD109に書き込む(ステップS207)。ステップS207では、CPU102は、DRAM保持データにおけるパス507が示すHDD109内の格納場所に実データ505を書き込む。例えば、DRAM104に複数のDRAM保持データが格納されている場合、CPU102は、ステップS206においてDRAM104に格納された全てのDRAM保持データを読み取る。また、CPU102は、ステップS207において各DRAM保持データにおける実データ505をHDD109に連続で書き込む。次いで、CPU102は、ステップS201で受信したHDD書き込みコマンドに基づいてデータをHDD109に書き込み(ステップS208)、本処理を終了する。
図6は、図1のMFP100の動作を説明するためのタイミングチャートである。図6において、601は、ジョブの状況を示す。602は、MFP100の電源ステートを示す。603は、HDD109へのアクセスが許可されているか否かを示す。604は、HDD書き込みコマンドにて指定されたデータの格納場所を示す。
期間T0〜T1のように、MFP100が起動処理を開始してからMFP100のホーム画面を構成する全てのアイコンが操作部111に表示されるまでの間、MFP100では、HDD109へのアクセスが許可される。この期間に受信したHDD書き込みコマンドにて指定されたデータは、HDD109に書き込まれる(例えば、ステップS208を参照。)。
期間T1〜T2、期間T3〜T4、期間T7〜T8のように、MFP100の電源ステートが遷移せず且つMFP100がジョブ待ち状態である場合、MFP100では、HDD109へのアクセスが禁止される。この期間に受信したHDD書き込みコマンドにて指定されたデータは、DRAM104に書き込まれる(例えば、ステップS204を参照。)。
期間T2〜T3のように、ジョブの実行に関する動作が行われている場合、MFP100では、HDD109へのアクセスが許可される。この期間に受信したHDD書き込みコマンドにて指定されたデータは、HDD109に書き込まれる。また、このとき、例えば、期間T1〜T2にてDRAM104に書き込まれたDRAM保持データにおける実データもHDD109に書き込まれる(例えば、ステップS207を参照。)。
期間T4〜T5、期間T6〜T7、期間T8〜T9のように、電源ステートの遷移に関する動作が行われている場合、MFP100では、HDD109へのアクセスが許可される。この期間に受信したHDD書き込みコマンドにて指定されたデータは、HDD109に書き込まれる。また、このとき、例えば、期間T3〜T4や期間T7〜T8にてDRAM104に書き込まれたDRAM保持データにおける実データもHDD109に書き込まれる。
上述した実施の形態によれば、MFP100の動作状況に基づいてHDD109への書き込みを許可するか否かが決定される。これにより、格納するデータの容量に関わらず、MFP100の動作状況に基づいてHDD109へ書き込みを行うか否かを制御してHDD109へのアクセス頻度を抑制することができる。その結果、HDD109の故障リスクを低減することができる。
また、上述した実施の形態では、MFP100がHDD109への書き込みを必須要件とする処理に関する所定の動作を行っている場合、HDD109への書き込みが許可され、MFP100が所定の動作を行っていない場合、HDD109への書き込みが禁止される。これにより、HDD109への書き込みを必須要件とする処理を滞らせることなく、HDD109へのアクセス頻度を抑制することができる。
さらに、上述した実施の形態では、MFP100が所定の動作を行っていない場合、HDD109へ書き込む指示がなされた実データ505がDRAM104に書き込まれる。すなわち、HDD109への書き込みが禁止された場合、HDD109へ書き込む指示がなされた実データ505がDRAM104に書き込まれる。これにより、HDD109の故障リスクを低減しつつ、MFP100が所定の動作を行っていない際にHDD109へ書き込む指示がなされた実データ505を保持することができる。
上述した実施の形態では、MFP100が所定の動作を行っており且つ実データがDRAM104に格納されている場合、DRAM104に格納されている全ての実データがHDD109へ連続で書き込まれる。これにより、各実データが異なるタイミングでHDD109へ書き込まれる場合よりHDD109へのアクセス回数を軽減することができる。
以上、本発明について、上述した実施の形態を用いて説明したが、本発明は上述した実施の形態に限定されるものではない。例えば、MFP100に設けられる記憶デバイスは、HDD109ではなく、アクセス回数に制約が設けられるSSD等の他の記憶デバイスであっても良い。
また、上述した実施の形態では、DRAM保持データのパス507として、HDD109内の格納場所を示すディレクトリ情報ではなく、HDD109のドライブ名を保持しても良い。例えば、HDD109のディレクトリ構造が/sdb1/data/print/job1/page1.jpgである際に、DRAMバッファ領域504のディレクトリ構造をドライブ名のみ異なる/sda1/data/print/job1/page1.jpgとする。このような構成において、MFP100は、DRAM保持データのパス507として、HDD109のドライブ名を示す『sdb1』を保持する。
上述した実施の形態では、HDD書き込みコマンドにて指定されたデータをDRAM104の所定の領域に保持した後に、当該データをHDD109に書き込む構成において、データをDRAM104の所定の領域に保持する保持時間を制御しても良い。
図7は、図1のMFP100のソフトウェアモジュール700の構成を説明するためのブロック図である。ソフトウェアモジュール700の各処理は、CPU102がROM106やHDD109に格納されたプログラムを実行することによって行われる。
ソフトウェアモジュール700は、モジュールとしてOS(Operating System)701を備える。また、ソフトウェアモジュール700は、アプリケーション層704に、モジュールとして少なくとも1つのアプリケーション、例えば、プリントアプリ705、コピーアプリ706、スキャンアプリ707、及びWebアプリ708を備える。
OS701は、MFP100のシステムを制御するソフトウェアモジュール群の中核となる基本ソフトウェアモジュールである。OS701は、ファイルシステム702、及び切替モジュール703で構成される。なお、本実施の形態では、切替モジュール703がOS701に含まれる構成について説明するが、この構成に限られず、切替モジュール703が、OS701以外の別のモジュールに含まれていても良い。ファイルシステム702は、DRAM104やHDD109に格納されたデータへアクセスする機能や上記データを検索する機能を提供する。切替モジュール703は、HDD109へのアクセスが許可されているか否かに基づいて上記保持時間を制御する。プリントアプリ705は、プリントジョブを実行するためのアプリケーションである。コピーアプリ706は、コピージョブを実行するためのアプリケーションである。スキャンアプリ707は、スキャンジョブを実行するためのアプリケーションである。Webアプリ708は、Webを用いたジョブを実行するためのアプリケーションである。アプリケーション層704における各アプリケーションは、ジョブの実行においてHDD109へデータの書き込みが必要となった際に、HDD書き込みコマンドをファイルシステム702に送信する。
MFP100において、HDD109のセクタサイズは、512バイトや4Kバイトである。アプリケーション層704の各アプリケーションが数バイト等の細かいサイズ単位で頻繁にHDD109にアクセスすると、HDD109へのデータ格納効率や、コントローラ101とHDD109の間のバス伝送効率が悪くなってしまう。このような事態を回避するために、ファイルシステム702は、アプリケーション層704の各アプリケーションから受けたHDD書き込みコマンドにて指定されたデータをDRAM104のディスクバッファ709に一時的に格納し、設定された保持時間を経過した際にディスクバッファ709に格納したデータをHDD109に書き込む。本実施の形態では、ディスクバッファ709として、例えば、図5の領域508,509のような空き領域が割り当てられる。若しくは、予め設定された領域がディスクバッファ709として使用される。
図8は、図1のMFP100によって実行される保持時間制御処理の手順を示すフローチャートである。図8の処理は、CPU102がROM106やHDD109に格納されたプログラムを実行することによって行われる。図8の処理は、例えば、HDD書き込みコマンドが発行された際に実行される。
図8において、CPU102は、ジョブの実行に関する動作が行われているか否かを判別する(ステップS801)。ステップS801では、上述したステップS202と同様の判別処理が行われる。
ステップS801の判別の結果、ジョブの実行に関する動作が行われていないとき、CPU102は、MFP100の電源ステートの遷移に関する動作が行われているか否かを判別する(ステップS802)。ステップS802では、上述したステップS203と同様の判別処理が行われる。
ステップS802の判別の結果、MFP100の電源ステートの遷移に関する動作が行われているとき、又はステップS801の判別の結果、ジョブの実行に関する動作が行われているとき、CPU102は、ディスクバッファ709の保持時間として第1の時間を設定する(ステップS803)。第1の時間は、例えば、5秒程度である。その後、CPU102は、本処理を終了する。
ステップS802の判別の結果、MFP100の電源ステートの遷移に関する動作が行われていないとき、CPU102は、ディスクバッファ709の保持時間として第1の時間より長い第2の時間を設定する(ステップS804)。第2の時間は、例えば、5時間程度である。その後、CPU102は、本処理を終了する。
上述した図8の処理の実行タイミングは、HDD書き込みコマンドが発行されたタイミングに限られない。例えば、上述した図8の処理は、予め設定された所定の間隔で実行されても良い。
また、上述した図8の処理では、ステップS801を実行した後にステップS802を実行することとして説明したが、ステップS801,S802の実行順はこれに限られない。例えば、ステップS802を実行した後にステップS801を実行しても良く、また、ステップS801,S802を並列で実行しても良い。
図9は、図1のMFP100によって実行されるディスクバッファ書き込み処理の手順を示すフローチャートである。図9の処理は、CPU102がROM106やHDD109に格納されたプログラムを実行することによって行われる。図9の処理は、例えば、上述したようなディスクバッファ709へのデータの書き込みを必要とするHDD書き込みコマンド(以下、「バッファHDD書き込みコマンド」という。)が発行された際に実行される。
図9において、CPU102は、バッファHDD書き込みコマンドを受信すると(ステップS901でYES)、バッファHDD書き込みコマンドにて指定されたデータをディスクバッファ709に書き込む(ステップS902)。CPU102は、ディスクバッファ709を構成する複数の記憶領域のうち、上記データが書き込まれた記憶領域に対し、この旨を示すフラグとして『Dirty』を立てる。このとき、CPU102は、上述した図8の保持時間制御処理を並列で実行し、ディスクバッファ709の保持時間を設定する。次いで、CPU102は、後述する図10の書き込み処理を実行し(ステップS903)、ディスクバッファ709に書き込まれたデータをHDD109に書き込む。その後、CPU102は、本処理を終了する。
図10は、図9のステップS903の書き込み処理の手順を示すフローチャートである。
図10において、CPU102は、ディスクバッファ709においてCPU102が参照する記憶領域を示すディスクバッファ番号iを0に初期化する(ステップS1001)。次いで、CPU102は、ディスクバッファ709の複数の記憶領域の中のi番目に対応する記憶領域を特定し、特定した記憶領域のフラグが『Dirty』であるか否かを判別する(ステップS1002)。
ステップS1002の判別の結果、特定した記憶領域のフラグが『Dirty』であるとき、CPU102は、特定した記憶領域にデータが書き込まれた日時を確認する。CPU102は、確認した日時が上述した図8の保持時間制御処理で設定されたディスクバッファ709の保持時間を経過したか否かを判別する(ステップS1003)。
ステップS1003の判別の結果、確認した日時が保持時間を経過しないとき、又はステップS1002の判別の結果、特定した記憶領域のフラグが『Dirty』でないとき、CPU102は、後述するステップS1007の処理を行う。
ステップS1003の判別の結果、確認した日時が保持時間を経過したとき、CPU102は、特定した記憶領域からデータを読み出す(ステップS1004)。次いで、CPU102は、ステップS1004にて読み出したデータをHDD109に書き込む(ステップS1005)。次いで、CPU102は、特定した記憶領域のフラグとして、HDD109へ書き込み済みであることを示す『Clean』を設定し(ステップS1006)、ディスクバッファ番号iをインクリメントする(ステップS1007)。次いで、CPU102は、ディスクバッファ709の全ての記憶領域をチェックしたか否かを判別する(ステップS1008)。
ステップS1008の判別の結果、ディスクバッファ709の何れかの記憶領域をチェックしないとき、CPU102は、ステップS1002の処理に戻る。ステップS1008の判別の結果、ディスクバッファ709の全ての記憶領域をチェックしたとき、CPU102は、本処理を終了する。
上述した本実施の形態では、MFP100が所定の動作を行っている場合、ディスクバッファ709の保持時間として第1の時間が設定され、MFP100が所定の動作を行っていない場合、ディスクバッファ709の保持時間として第1の時間より長い第2の時間が設定される。すなわち、MFP100が所定の動作を行っていない場合、比較的長い時間、ディスクバッファ709にデータが保持され、HDD109へのアクセス頻度が抑制される。これにより、HDD109の故障リスクを低減することができる。
また、上述した本実施の形態では、所定の動作は、ジョブの実行に関する動作を含む。これにより、ジョブの実行を遅滞させることなく、HDD109の故障リスクを低減することができる。
上述した本実施の形態では、所定の動作は、MFP100の電源ステートの遷移に関する動作を含む。これにより、MFP100の電源ステートの遷移を滞らせることなく、HDD109の故障リスクを低減することができる。
また、上述した本実施の形態では、MFP100は、画像形成処理を行う画像形成装置であるので、画像形成処理の実行に伴ってHDD109へ頻繁に画像データの書き込みが必要になっても、HDD109の故障リスクを低減することができる。
本発明は、上述の実施の形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、該システム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出して実行する処理でも実現可能である。また、本発明は、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100 MFP
102 CPU
104 DRAM
109 HDD
709 ディスクバッファ

Claims (10)

  1. アクセス回数に制約が設けられる記憶デバイスを備える情報処理装置であって、
    前記記憶デバイスへデータを書き込む制御を行う制御手段を備え、
    前記制御手段は、前記情報処理装置の動作状況に基づいて前記記憶デバイスへの書き込みを許可するか否かを決定することを特徴とする情報処理装置。
  2. 前記制御手段は、前記情報処理装置が前記記憶デバイスへの書き込みを必須要件とする処理に関する所定の動作を行っている場合、前記記憶デバイスへの書き込みを許可し、前記情報処理装置が前記所定の動作を行っていない場合、前記記憶デバイスへの書き込みを禁止することを特徴とする請求項1記載の情報処理装置。
  3. 記憶デバイスと異なる他の記憶デバイスを更に備え、
    前記制御手段は、前記情報処理装置が前記所定の動作を行っていない場合、前記記憶デバイスへ書き込む指示がなされた実データを前記他の記憶デバイスに書き込む制御を行うことを特徴とする請求項2記載の情報処理装置。
  4. 前記情報処理装置が前記所定の動作を行っており且つ前記実データが前記他の記憶デバイスに格納されている場合、前記制御手段は、前記他の記憶デバイスに格納されている全ての実データを連続で前記記憶デバイスへ書き込む制御を行うことを特徴とする請求項3記載の情報処理装置。
  5. 保持手段と、
    前記保持手段にデータを保持する保持時間を設定する設定手段とを更に備え、
    前記制御手段は、前記保持手段にデータを前記保持時間の間保持した後、当該データを前記記憶デバイスへ書き込む制御を行い、
    前記情報処理装置が前記記憶デバイスへの書き込みを必須要件とする処理に関する所定の動作を行っている場合、前記保持時間として第1の時間が設定され、前記情報処理装置が前記所定の動作を行っていない場合、前記保持時間として前記第1の時間より長い第2の時間が設定されることを特徴とする請求項1記載の情報処理装置。
  6. 前記所定の動作は、ジョブの実行に関する動作を含むことを特徴とする請求項2乃至5のいずれか1項に記載の情報処理装置。
  7. 前記所定の動作は、前記情報処理装置の電源ステートの遷移に関する動作を含むことを特徴とする請求項2乃至6のいずれか1項に記載の情報処理装置。
  8. 前記情報処理装置は、画像形成処理を行う画像形成装置であることを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. アクセス回数に制約が設けられる記憶デバイスを備える情報処理装置の制御方法であって、
    前記記憶デバイスへデータを書き込む制御を行う制御ステップを有し、
    前記制御ステップは、前記情報処理装置の動作状況に基づいて前記記憶デバイスへの書き込みを許可するか否かを決定することを特徴とする情報処理装置の制御方法。
  10. アクセス回数に制約が設けられる記憶デバイスを備える情報処理装置の制御方法をコンピュータに実行させるプログラムであって、
    前記情報処理装置の制御方法は、
    前記記憶デバイスへデータを書き込む制御を行う制御ステップを有し、
    前記制御ステップは、前記情報処理装置の動作状況に基づいて前記記憶デバイスへの書き込みを許可するか否かを決定することを特徴とするプログラム。
JP2019040666A 2019-03-06 2019-03-06 情報処理装置、その制御方法、及びプログラム Pending JP2020145582A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019040666A JP2020145582A (ja) 2019-03-06 2019-03-06 情報処理装置、その制御方法、及びプログラム
KR1020200022674A KR20200107802A (ko) 2019-03-06 2020-02-25 저장 디바이스를 구비하는 정보 처리 장치, 정보 처리 장치에 대한 제어 방법 및 저장 매체
US16/806,179 US20200288031A1 (en) 2019-03-06 2020-03-02 Information processing apparatus equipped with storage device, control method therefor, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019040666A JP2020145582A (ja) 2019-03-06 2019-03-06 情報処理装置、その制御方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2020145582A true JP2020145582A (ja) 2020-09-10

Family

ID=72335536

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019040666A Pending JP2020145582A (ja) 2019-03-06 2019-03-06 情報処理装置、その制御方法、及びプログラム

Country Status (3)

Country Link
US (1) US20200288031A1 (ja)
JP (1) JP2020145582A (ja)
KR (1) KR20200107802A (ja)

Also Published As

Publication number Publication date
US20200288031A1 (en) 2020-09-10
KR20200107802A (ko) 2020-09-16

Similar Documents

Publication Publication Date Title
JP2010211696A (ja) メモリスワップ管理方法、装置およびプログラム
JP5411530B2 (ja) 並列処理プロセッサシステム
JP6875808B2 (ja) 情報処理装置
US20130007367A1 (en) Information processing apparatus and method of controlling same
JP2016206938A (ja) 情報処理システム、情報処理システムのメモリ制御方法、及びプログラム
JP2018063676A (ja) 情報処理装置及びその制御方法、並びにプログラム
JP2011039849A (ja) 情報処理装置及びその制御方法、並びにプログラム
JP2020145582A (ja) 情報処理装置、その制御方法、及びプログラム
JP2018078485A (ja) 情報処理装置および情報処理装置の起動方法
JP2011003060A (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
US9880791B2 (en) Image formation apparatus and non-transitory computer-readable storage medium having stored thereon a program executable on image formation apparatus
US9977739B2 (en) Image processing apparatus, control method for image processing apparatus, and storage medium
JP5704318B2 (ja) 画像形成方法および画像形成装置
JP5414305B2 (ja) 情報処理装置、仮想記憶管理方法及びプログラム
JP5446602B2 (ja) 画像形成装置
JP6489075B2 (ja) 画像形成装置、プログラム及び情報処理方法
JP2010205002A (ja) 画像処理装置
JP2014138265A (ja) 画像形成装置
JP2011068012A (ja) 情報処理装置、その制御方法およびプログラム
JP2018049511A (ja) 情報処理装置及びプログラム
JP2008140045A (ja) 画像処理装置、画像処理プログラム
US9361305B2 (en) Image forming apparatus having a file system
JP5602109B2 (ja) 画像形成装置および画像形成プログラム
JP2008160592A (ja) 画像処理装置
JP2012101479A (ja) 画像形成装置、ハードディスク装置の起動方法、及びプログラム