WO2020241545A1 - 情報処理装置 - Google Patents
情報処理装置 Download PDFInfo
- Publication number
- WO2020241545A1 WO2020241545A1 PCT/JP2020/020468 JP2020020468W WO2020241545A1 WO 2020241545 A1 WO2020241545 A1 WO 2020241545A1 JP 2020020468 W JP2020020468 W JP 2020020468W WO 2020241545 A1 WO2020241545 A1 WO 2020241545A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- metadata
- file
- processing unit
- storage device
- block
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/137—Hash-based
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/45—Controlling the progress of the video game
- A63F13/49—Saving the game status; Pausing or ending the game
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/73—Authorising game programs or game devices, e.g. checking authenticity
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/164—File meta data generation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1847—File system types specifically adapted to static storage, e.g. adapted to flash memory or SSD
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/08—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
Definitions
- the present invention relates to a technique for managing files.
- the information processing device has a block processing unit that divides a file generated by an application into a plurality of data blocks and stores the data in the storage device, and each of the plurality of data blocks. It includes a metadata processing unit that stores the first metadata including information for specifying the storage location and a hash value in the storage device, and a metadata switching unit that sets the use of the first metadata for file access. ..
- the block processing unit stores the updated data block in another storage location, and the metadata processing unit stores each of the plurality of data blocks including the updated data block.
- the second metadata including the information for specifying the location and the hash value is stored in the storage device, and the metadata switching unit sets to use the second metadata for file access.
- FIG. 1 shows an information processing system 1 according to an embodiment of the present invention.
- the information processing device 10 is wirelessly or wiredly connected to the input device 6 operated by the user, and the input device 6 outputs operation information indicating the operation result of the user to the information processing device 10.
- the information processing device 10 receives the operation information from the input device 6, it reflects it in the processing of the OS (system software) or the application, and outputs the processing result from the output device 4.
- the information processing device 10 may be a game device that executes a game program
- the input device 6 may be a device that supplies user operation information to the information processing device 10 such as a game controller.
- the input device 6 is configured to have a plurality of input units such as a plurality of push-type operation buttons, an analog stick capable of inputting an analog amount, and a rotary button.
- the auxiliary storage device 2 is a large-capacity storage device such as an SSD (solid state drive), may be a built-in storage device, or is an external storage device connected to the information processing device 10 by USB (Universal Serial Bus) or the like. You may.
- the output device 4 may be a television having a display for outputting an image and a speaker for outputting audio, or may be a head-mounted display.
- the access point (hereinafter referred to as "AP") 8 has the functions of a wireless access point and a router, and the information processing device 10 connects to the AP 8 via wireless or wired, and is a server on an external network such as the Internet. Can be connected to communicate with.
- FIG. 2 shows the hardware configuration of the information processing device 10.
- the information processing device 10 includes a main power button 20, a power ON LED 21, a standby LED 22, a system controller 24, a clock 26, a device controller 30, a media drive 32, a USB module 34, a flash memory 36, a wireless communication module 38, and wired communication. It includes a module 40, a subsystem 50, and a main system 60.
- the main system 60 includes a main CPU (Central Processing Unit), a memory and memory controller which are main storage devices, a GPU (Graphics Processing Unit), and the like.
- the GPU is mainly used for arithmetic processing of game programs. These functions may be configured as system-on-chip and formed on one chip.
- the main CPU has a function of executing a game program recorded in the auxiliary storage device 2.
- the subsystem 50 includes a sub CPU, a memory as a main storage device, a memory controller, and the like, does not have a GPU, and does not have a function of executing a game program.
- the number of circuit gates of the sub CPU is smaller than the number of circuit gates of the main CPU, and the operating power consumption of the sub CPU is smaller than the operating power consumption of the main CPU.
- the sub CPU operates even while the main CPU is in the standby state, and its processing function is limited in order to keep the power consumption low.
- the main power button 20 is an input unit for inputting operations from the user, and is provided on the front surface of the housing of the information processing device 10 to turn on or off the power supply to the main system 60 of the information processing device 10. Manipulated for.
- the power ON LED 21 lights up when the main power button 20 is turned on, and the standby LED 22 lights up when the main power button 20 is turned off.
- the system controller 24 detects the user pressing the main power button 20. When the main power button 20 is pressed while the main power is off, the system controller 24 acquires the pressing operation as an "on instruction", while the main power is on when the main power is on. When the button 20 is pressed, the system controller 24 acquires the pressing operation as an "off instruction”.
- the clock 26 is a real-time clock that generates current date and time information and supplies it to the system controller 24, subsystem 50, and main system 60.
- the device controller 30 is configured as an LSI (Large-Scale Integrated Circuit) that executes information transfer between devices like a south bridge. As shown in the figure, devices such as a system controller 24, a media drive 32, a USB module 34, a flash memory 36, a wireless communication module 38, a wired communication module 40, a subsystem 50, and a main system 60 are connected to the device controller 30. Ru.
- the device controller 30 absorbs the difference in electrical characteristics and the difference in data transfer speed of each device, and controls the timing of data transfer.
- the media drive 32 is a drive device that mounts and drives software such as a game and a ROM medium 44 that records license information, and reads a program, data, or the like from the ROM medium 44.
- the ROM medium 44 is a read-only recording medium such as an optical disk, a magneto-optical disk, or a Blu-ray disc.
- the USB module 34 is a module that connects to an external device with a USB cable.
- the USB module 34 may be connected to the auxiliary storage device 2 with a USB cable.
- the flash memory 36 is an auxiliary storage device that constitutes an internal storage.
- the wireless communication module 38 uses a communication protocol such as a Bluetooth (registered trademark) protocol or an IEEE802.11 protocol to wirelessly communicate with an input device 6, for example.
- the wireless communication module 38 may be compatible with the digital mobile phone system.
- the wired communication module 40 communicates with an external device by wire and connects to an external network via, for example, AP8.
- FIG. 3 shows a functional block for realizing the metadata update function of the information processing device 10.
- the processing unit 100 is configured in the main system 60, and includes an execution unit 102 and a file system 110.
- the file system 110 includes a block processing unit 112, a metadata processing unit 114, a metadata switching unit 116, and a file reading unit 118.
- the configuration of the processing unit 100 is realized by the CPU, memory, programs loaded in the memory, storage, etc. of any computer, but here, the functional blocks realized by their cooperation are drawn. ing. Therefore, it will be understood by those skilled in the art that these functional blocks can be realized in various ways by hardware only, software only, or a combination thereof.
- the execution unit 102 executes the game program and outputs the game image and the game sound from the output device 4.
- the file system 110 saves the save data in the auxiliary storage device 2.
- the block processing unit 112 divides the save data file generated by the game program into a plurality of data blocks and stores them in the auxiliary storage device 2.
- the game program of the embodiment generates a plurality of save data files A to Z.
- a process in which the file system 110 stores and updates the file A supplied from the game program will be described.
- the block processing unit 112 divides the file A into a plurality of data blocks A1, A2, A3, and A4, and stores the file A in the auxiliary storage device 2.
- a save data area for storing save data is secured in advance in the auxiliary storage device 2, and the block processing unit 112 allocates a vacant storage location to each data block and stores each data block.
- the metadata processing unit 114 has a function of calculating the hash value of the data block, and calculates the hash value of each data block.
- the metadata processing unit 114 stores metadata including information (location information) and a hash value for specifying each storage location of the plurality of data blocks in the save data area.
- the metadata processing unit 114 may manage the location information and the hash value of each data block in the form of a table (file A).
- the location information may be any information that can specify the storage location of the data block, and is typically a page number that specifies the relative position of the page in the SSD, such as the data size and block offset for calculating the page number. It may be information.
- the metadata processing unit 114 stores metadata including the location information and hash value of the table for file A in the save data area.
- This metadata may be managed in the form of superblocks.
- FIG. 3 shows the table for file A and the data blocks A1 to A4 of the file A, the other tables and data blocks for files B to Z are also stored in the save data area. Therefore, the superblock is configured to include information for accessing all files A to Z.
- the metadata processing unit 114 stores the metadata including the location information and the hash value of the super block in the save data area.
- This metadata is a reference pointer for accessing the superblock, and when the file system 110 accesses the reference pointer, all files A to Z can be accessed via the superblock.
- the metadata switching unit 116 sets the metadata used for file access. By selecting the reference pointer, the metadata switching unit 116 sets the metadata including the super block and the table (file A) as the metadata used for file access.
- the file reading unit 118 refers to the reference pointer selected by the metadata switching unit 116 and outputs the instructed save data. read out.
- the block processing unit 112 divides the file A'into a plurality of data blocks A1, A2', A3, and A4. In this case, when the updated file A'is compared with the file A before the update, the data block A2 is changed to the data block A2', and the other data blocks A1, A3, and A4 are not updated. Therefore, the block processing unit 112 stores the updated data block A2'in another vacant storage location.
- FIG. 4 schematically shows the storage state of the save data area when the file A is updated to the file A'.
- the "superblock 1" and “reference pointer 1" in FIG. 4 represent the “superblock” and “reference pointer” shown in FIG.
- the block processing unit 112 stores the updated data block A2'in a vacant storage location. Since the data blocks A1, A3, and A4 were not updated, the block processing unit 112 does not write the data blocks A1, A3, and A4 to the vacant storage location.
- the metadata processing unit 114 stores metadata including information (location information) and a hash value for specifying each storage location of a plurality of data blocks including the updated data block A2'in a save data area of the storage device.
- the metadata processing unit 114 stores the location information and the hash value of each data block in the save data area as a table (file A').
- the table (file A') stores the updated data block A2'and the storage locations of the data blocks A1, A3, and A4 that have already been stored in the save data area and have not been updated. Contains metadata containing information and hash values to identify.
- the metadata processing unit 114 stores metadata including the location information and hash value of the table for file A'in the save data area. This metadata may be managed in the form of superblocks.
- the metadata processing unit 114 stores the metadata including the location information and the hash value of the table for the file A'and the files B to Z in the save data area as "super block 2".
- the metadata processing unit 114 stores the metadata including the location information and the hash value of the super block 2 in the save data area.
- This metadata is a reference pointer 2 for accessing the super block 2, and when the file system 110 accesses the reference pointer 2, the files A', B to Z are accessed via the super block 2. Is possible.
- file management is performed in which the data block A2 is deleted at the same time when the data block A2'is written, and the metadata related to the file A is deleted at the same time when the metadata related to the file A'is written. ing. Therefore, if the system goes down due to a power failure while writing multiple types of metadata, updated metadata and unupdated metadata will be mixed, and the metadata will not be consistent after the system is restored. Can occur. In this case, the file system cannot access the newly written save data or the previously written save data, and as a result, the save data is lost.
- the file system 110 of the embodiment when writing the updated data block and the corresponding metadata, the already stored data block and metadata are not deleted. Therefore, even if a trouble such as a power failure occurs while writing the updated data block and metadata, at least the consistent stored data block and metadata remain in the save data area. Therefore, it is possible to avoid the situation where the save data is completely lost.
- the metadata switching unit 116 sets the metadata used for file access to the metadata including the super block 2 and the table (file A'). To do.
- FIG. 5 shows a state in which the metadata used for file access has been changed to the metadata including the superblock 2 and the table (file A').
- the metadata switching unit 116 sets the metadata including the super block 2 and the table (file A') as the metadata used for file access.
- the file reading unit 118 refers to the reference pointer 2 selected by the metadata switching unit 116, and the instructed save data. Is read.
- the block processing unit 112 After the metadata switching unit 116 sets to use the metadata including the super block 2 and the table (file A') for file access, the block processing unit 112 saves the data block A2 before the update in the data area. The metadata processing unit 114 deletes the metadata before the update from the save data area.
- FIG. 6 shows a state in which the data block and metadata before the update are deleted.
- file A has been explained above, but in save data, multiple files may be linked.
- file B is the data indicating the game stage at the time of saving
- file C is the data indicating the information of the weapon possessed by the player character at the time of saving.
- the save data update process it is necessary to ensure that file B and file C are updated at the same time, and it is necessary to avoid a situation in which file B can be updated but file C cannot be updated. ..
- the metadata switching unit 116 executes the metadata switching process when it receives a permission instruction for permitting the reflection of the update from the game program.
- a permission instruction for permitting the reflection of the update from the game program For the case where the files B and C are linked will be described.
- the game program supplies the update instruction of the files B and C and the permission instruction for permitting the reflection of the update to the file system 110 in this order.
- the instructions from the game program are executed in the file system 110 in the order of the instructions, and the file system 110 updates the file B according to the update instruction of the file B, updates the file C according to the update instruction of the file C, and so on. After that, commit according to the permission instruction to make the updated files B and C accessible.
- the block processing unit 112 stores the updated data block in the file B in a vacant storage location, and the metadata processing unit 114 is updated.
- the metadata corresponding to the file B is stored in an empty storage location.
- the block processing unit 112 stores the updated data block in the file C in a vacant storage location, and the metadata processing unit 114 stores the metadata corresponding to the updated file C in a vacant storage location.
- the metadata switching unit 116 sets to use the updated metadata for file access by selecting a new reference pointer.
- the metadata switching unit 116 executes the metadata switching process on condition that the update instruction of the files B and C supplied before the supply of the permission instruction is executed. This process introduces the concept of transaction management into file update, and realizes that files B and C are updated without contradiction.
- the game program outputs a series of instructions to the file system 110, but the block processing unit 112 does not write the update-instructed file to the auxiliary storage device 2 until the game program outputs the permission instruction, but buffers it. It may be stored in a memory (not shown).
- the application outputs the permission instruction
- the block processing unit 112 starts writing the file stored in the buffer memory to the auxiliary storage device 2.
- the auxiliary storage device 2 is an SSD, since the SSD enables parallel writing of data, the writing time can be shortened by writing a plurality of files cached in the buffer memory to the SSD in parallel.
- the block processing unit 112 needs to write the oldest file to the SSD before that.
- the file system 110 can keep save data of a plurality of generations by leaving old metadata without deleting it when receiving a permission instruction.
- an example of a save data file has been described, but the file type is not limited to that.
- the present invention can be used as a technique for managing files.
- 1 Information processing system, 2 ... Auxiliary storage device, 10 ... Information processing device, 100 ... Processing unit, 102 ... Execution unit, 110 ... File system, 112 ... Block Processing unit, 114 ... Metadata processing unit, 116 ... Metadata switching unit, 118 ... File reading unit.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- General Business, Economics & Management (AREA)
- Business, Economics & Management (AREA)
- Software Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
ブロック処理部112は、アプリケーションが生成したファイルを複数のデータブロックに分割して補助記憶装置2に記憶する。メタデータ処理部114は、複数のデータブロックのそれぞれの記憶場所を特定するための情報およびハッシュ値を含む第1メタデータを補助記憶装置2に記憶する。ファイルが更新された際に、ブロック処理部112は、更新があったデータブロックを別の記憶場所に記憶する。メタデータ処理部114は、更新があったデータブロックを含む複数のデータブロックのそれぞれの記憶場所を特定するための情報およびハッシュ値を含む第2メタデータを補助記憶装置2に記憶する。メタデータ切替部116は、ファイルアクセスに第2メタデータを使用することを設定する。
Description
本発明は、ファイルを管理する技術に関する。
ゲームなどのアプリケーションは、現在の状態を示す各種データを記憶装置に保存するセーブ機能をもつ。ファイルシステムは、セーブデータを記憶装置に記憶する際、同時にファイルの記憶場所や改竄チェック用のハッシュ値など様々なメタデータも記憶装置に記憶する。
メタデータの種類が多くなり、データサイズが大きくなると、メタデータの更新に、ある程度の時間が必要となる。メタデータの更新中に電源断などのトラブルが発生すると、メタデータ同士の関係が不整合となってセーブデータを消失する可能性がある。そこでファイルシステムにおいて、メタデータを不整合を生じさせることなく更新する技術の開発が望まれている。
上記課題を解決するために、本発明のある態様の情報処理装置は、アプリケーションが生成したファイルを複数のデータブロックに分割して記憶装置に記憶するブロック処理部と、複数のデータブロックのそれぞれの記憶場所を特定するための情報およびハッシュ値を含む第1メタデータを記憶装置に記憶するメタデータ処理部と、ファイルアクセスに第1メタデータを使用することを設定するメタデータ切替部とを備える。ファイルが更新された際に、ブロック処理部は、更新があったデータブロックを別の記憶場所に記憶し、メタデータ処理部は、更新があったデータブロックを含む複数のデータブロックのそれぞれの記憶場所を特定するための情報およびハッシュ値を含む第2メタデータを記憶装置に記憶し、メタデータ切替部は、ファイルアクセスに第2メタデータを使用することを設定する。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
図1は、本発明の実施例にかかる情報処理システム1を示す。
情報処理装置10は、ユーザが操作する入力装置6と無線または有線で接続し、入力装置6はユーザの操作結果を示す操作情報を情報処理装置10に出力する。情報処理装置10は入力装置6から操作情報を受け付けるとOS(システムソフトウェア)やアプリケーションの処理に反映し、出力装置4から処理結果を出力させる。情報処理システム1において情報処理装置10はゲームプログラムを実行するゲーム装置であり、入力装置6はゲームコントローラなど情報処理装置10に対してユーザの操作情報を供給する機器であってよい。入力装置6は複数のプッシュ式の操作ボタンや、アナログ量を入力できるアナログスティック、回動式ボタンなどの複数の入力部を有して構成される。
情報処理装置10は、ユーザが操作する入力装置6と無線または有線で接続し、入力装置6はユーザの操作結果を示す操作情報を情報処理装置10に出力する。情報処理装置10は入力装置6から操作情報を受け付けるとOS(システムソフトウェア)やアプリケーションの処理に反映し、出力装置4から処理結果を出力させる。情報処理システム1において情報処理装置10はゲームプログラムを実行するゲーム装置であり、入力装置6はゲームコントローラなど情報処理装置10に対してユーザの操作情報を供給する機器であってよい。入力装置6は複数のプッシュ式の操作ボタンや、アナログ量を入力できるアナログスティック、回動式ボタンなどの複数の入力部を有して構成される。
補助記憶装置2はSSD(ソリッドステートドライブ)などの大容量記憶装置であり、内蔵型記憶装置であってよく、またUSB(Universal Serial Bus)などによって情報処理装置10と接続する外部記憶装置であってもよい。出力装置4は画像を出力するディスプレイおよび音声を出力するスピーカを有するテレビであってよく、またヘッドマウントディスプレイであってもよい。
アクセスポイント(以下、「AP」とよぶ)8は、無線アクセスポイントおよびルータの機能を有し、情報処理装置10は、無線または有線経由でAP8に接続して、インターネットなどの外部ネットワーク上のサーバと通信可能に接続できる。
図2は、情報処理装置10のハードウェア構成を示す。情報処理装置10は、メイン電源ボタン20、電源ON用LED21、スタンバイ用LED22、システムコントローラ24、クロック26、デバイスコントローラ30、メディアドライブ32、USBモジュール34、フラッシュメモリ36、無線通信モジュール38、有線通信モジュール40、サブシステム50およびメインシステム60を有して構成される。
メインシステム60は、メインCPU(Central Processing Unit)、主記憶装置であるメモリおよびメモリコントローラ、GPU(Graphics Processing Unit)などを備える。GPUはゲームプログラムの演算処理に主として利用される。これらの機能はシステムオンチップとして構成されて、1つのチップ上に形成されてよい。メインCPUは補助記憶装置2に記録されたゲームプログラムを実行する機能をもつ。
サブシステム50は、サブCPU、主記憶装置であるメモリおよびメモリコントローラなどを備え、GPUを備えず、ゲームプログラムを実行する機能をもたない。サブCPUの回路ゲート数は、メインCPUの回路ゲート数よりも少なく、サブCPUの動作消費電力は、メインCPUの動作消費電力よりも少ない。サブCPUは、メインCPUがスタンバイ状態にある間においても動作し、消費電力を低く抑えるべく、その処理機能を制限されている。
メイン電源ボタン20は、ユーザからの操作入力が行われる入力部であって、情報処理装置10の筐体の前面に設けられ、情報処理装置10のメインシステム60への電源供給をオンまたはオフするために操作される。電源ON用LED21は、メイン電源ボタン20がオンされたときに点灯し、スタンバイ用LED22は、メイン電源ボタン20がオフされたときに点灯する。
システムコントローラ24は、ユーザによるメイン電源ボタン20の押下を検出する。メイン電源がオフ状態にあるときにメイン電源ボタン20が押下されると、システムコントローラ24は、その押下操作を「オン指示」として取得し、一方で、メイン電源がオン状態にあるときにメイン電源ボタン20が押下されると、システムコントローラ24は、その押下操作を「オフ指示」として取得する。
クロック26はリアルタイムクロックであって、現在の日時情報を生成し、システムコントローラ24やサブシステム50およびメインシステム60に供給する。デバイスコントローラ30は、サウスブリッジのようにデバイス間の情報の受け渡しを実行するLSI(Large-Scale Integrated Circuit)として構成される。図示のように、デバイスコントローラ30には、システムコントローラ24、メディアドライブ32、USBモジュール34、フラッシュメモリ36、無線通信モジュール38、有線通信モジュール40、サブシステム50およびメインシステム60などのデバイスが接続される。デバイスコントローラ30は、それぞれのデバイスの電気特性の違いやデータ転送速度の差を吸収し、データ転送のタイミングを制御する。
メディアドライブ32は、ゲームなどのソフトウェア、およびライセンス情報を記録したROM媒体44を装着して駆動し、ROM媒体44からプログラムやデータなどを読み出すドライブ装置である。ROM媒体44は、光ディスクや光磁気ディスク、ブルーレイディスクなどの読出専用の記録メディアである。
USBモジュール34は、外部機器とUSBケーブルで接続するモジュールである。USBモジュール34は補助記憶装置2とUSBケーブルで接続してもよい。フラッシュメモリ36は内部ストレージを構成する補助記憶装置である。無線通信モジュール38は、Bluetooth(登録商標)プロトコルやIEEE802.11プロトコルなどの通信プロトコルで、たとえば入力装置6と無線通信する。なお無線通信モジュール38は、デジタル携帯電話方式に対応してもよい。有線通信モジュール40は、外部機器と有線通信し、たとえばAP8を介して外部のネットワークに接続する。
図3は、情報処理装置10のメタデータ更新機能を実現するための機能ブロックを示す。処理部100はメインシステム60に構成され、実行部102およびファイルシステム110を備える。ファイルシステム110は、ブロック処理部112、メタデータ処理部114、メタデータ切替部116およびファイル読出部118を備える。
処理部100の構成は、ハードウエアコンポーネントでいえば、任意のコンピュータのCPU、メモリ、メモリにロードされたプログラム、ストレージなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
実行部102はゲームプログラムを実行して、出力装置4からゲーム画像およびゲーム音声を出力する。ゲームプログラムの実行中、セーブデータの保存指示が、ゲームプログラムからファイルシステム110に供給されると、ファイルシステム110は、セーブデータを補助記憶装置2に保存する。
ブロック処理部112は、ゲームプログラムが生成したセーブデータファイルを複数のデータブロックに分割して補助記憶装置2に記憶する。実施例のゲームプログラムは、複数のセーブデータファイルA~Zを生成するが、以下、ファイルシステム110が、ゲームプログラムから供給されるファイルAを記憶し、更新する処理について説明する。
ブロック処理部112は、ファイルAを複数のデータブロックA1、A2、A3、A4に分割して、補助記憶装置2に記憶する。補助記憶装置2には、予め、セーブデータを格納するためのセーブデータ領域が確保されており、ブロック処理部112は、空いている記憶場所を各データブロックに割り当て、各データブロックを記憶する。
メタデータ処理部114は、データブロックのハッシュ値を算出する機能を有し、各データブロックのハッシュ値を算出する。メタデータ処理部114は、複数のデータブロックのそれぞれの記憶場所を特定するための情報(ロケーション情報)およびハッシュ値を含むメタデータをセーブデータ領域に記憶する。メタデータ処理部114は、各データブロックのロケーション情報およびハッシュ値をテーブル(ファイルA)の形式で管理してよい。ロケーション情報は、データブロックの記憶場所を特定できる情報であればよく、代表的にはSSDにおけるページの相対位置を指定するページ番号であり、ページ番号を算出するためのデータサイズやブロックオフセットなどの情報であってもよい。
メタデータ処理部114は、ファイルA用のテーブルのロケーション情報およびハッシュ値を含むメタデータをセーブデータ領域に記憶する。このメタデータは、スーパーブロックの形式で管理されてよい。なお図3には、ファイルA用のテーブルおよびファイルAのデータブロックA1~A4を示しているが、他のファイルB~Z用のテーブルおよびデータブロックも同様にセーブデータ領域に記憶されている。したがってスーパーブロックは、全てのファイルA~Zにアクセスするための情報を含んで構成されている。
メタデータ処理部114は、スーパーブロックのロケーション情報およびハッシュ値を含むメタデータをセーブデータ領域に記憶する。このメタデータは、スーパーブロックにアクセスするための参照ポインタであり、ファイルシステム110が参照ポインタにアクセスすることで、スーパーブロックを介して、全てのファイルA~Zにアクセスすることが可能となる。
メタデータ切替部116は、ファイルアクセスに使用するメタデータを設定する。メタデータ切替部116は、参照ポインタを選択することで、スーパーブロックおよびテーブル(ファイルA)を含むメタデータを、ファイルアクセスに使用するメタデータに設定する。この状態でファイルシステム110が、ゲームプログラムから、セーブデータの読出指示を受けると、ファイル読出部118が、メタデータ切替部116により選択されている参照ポインタを参照して、指示されたセーブデータを読み出す。
次に、ファイルAがゲームプログラムによりファイルA’に更新されて、更新されたファイルA’をセーブデータ領域に記憶する処理について説明する。ブロック処理部112は、ファイルA’を複数のデータブロックA1、A2’、A3、A4に分割する。この場合、更新されたファイルA’と更新前のファイルAとを比較すると、データブロックA2がデータブロックA2’に変更されており、それ以外のデータブロックA1、A3、A4に更新はない。そこでブロック処理部112は、更新があったデータブロックA2’を、空いている別の記憶場所に記憶する。
図4は、ファイルAがファイルA’に更新されたときのセーブデータ領域の記憶状態を模式的に示す。図3を参照して、図4における「スーパーブロック1」、「参照ポインタ1」は、図3に示す「スーパーブロック」、「参照ポインタ」を表現している。
まずブロック処理部112が、更新があったデータブロックA2’を、空いている記憶場所に記憶する。なおデータブロックA1、A3、A4については更新がなかったため、ブロック処理部112は、データブロックA1、A3、A4を空いている記憶場所に書き込まない。
メタデータ処理部114は、更新があったデータブロックA2’を含む複数のデータブロックのそれぞれの記憶場所を特定するための情報(ロケーション情報)およびハッシュ値を含むメタデータを記憶装置のセーブデータ領域に記憶する。図4において、メタデータ処理部114は、各データブロックのロケーション情報およびハッシュ値を、テーブル(ファイルA’)としてセーブデータ領域に記憶する。図示されるように、テーブル(ファイルA’)は、更新があったデータブロックA2’と、既にセーブデータ領域に記憶されており且つ更新がなかったデータブロックA1、A3、A4のそれぞれの記憶場所を特定するための情報およびハッシュ値を含むメタデータを含む。
メタデータ処理部114は、ファイルA’用のテーブルのロケーション情報およびハッシュ値を含むメタデータをセーブデータ領域に記憶する。このメタデータは、スーパーブロックの形式で管理されてよい。メタデータ処理部114は、ファイルA’、ファイルB~Z用のテーブルのロケーション情報およびハッシュ値を含むメタデータを、「スーパーブロック2」としてセーブデータ領域に記憶する。
メタデータ処理部114は、スーパーブロック2のロケーション情報およびハッシュ値を含むメタデータをセーブデータ領域に記憶する。このメタデータは、スーパーブロック2にアクセスするための参照ポインタ2であり、ファイルシステム110が参照ポインタ2にアクセスすることで、スーパーブロック2を介して、ファイルA’、B~Zにアクセスすることが可能となる。
従来のファイル更新処理では、データブロックA2’を書き込む際に、同時にデータブロックA2を削除し、またファイルA’に関するメタデータを書き込む際に、同時にファイルAに関するメタデータを削除するファイル管理が行われている。そのため複数種類のメタデータを書き込んでいる途中で電源断などによりシステムダウンすると、更新されたメタデータと更新されなかったメタデータが混在して、システム復帰後に、メタデータの整合性がとれなくなる事態が発生しうる。この場合ファイルシステムは、新たに書き込んだセーブデータにも、その前に書き込んでいたセーブデータにもアクセスできず、結果としてセーブデータを消失する。
実施例のファイルシステム110によれば、更新があったデータブロック、および対応するメタデータを書き込むときに、既に記憶されているデータブロックおよびメタデータを削除しない。そのため更新があったデータブロックおよびメタデータの書込中に、電源断などのトラブルが発生した場合であっても、少なくとも整合性のとれる記憶済みのデータブロックおよびメタデータがセーブデータ領域に残っているため、完全にセーブデータが消失する事態を回避できる。
メタデータ切替部116は、更新があったデータブロックおよび対応するメタデータの書込が終了すると、ファイルアクセスに使用するメタデータを、スーパーブロック2およびテーブル(ファイルA’)を含むメタデータに設定する。
図5は、ファイルアクセスに使用するメタデータが、スーパーブロック2およびテーブル(ファイルA’)を含むメタデータに変更された状態を示す。メタデータ切替部116は、参照ポインタ2を選択することで、スーパーブロック2およびテーブル(ファイルA’)を含むメタデータを、ファイルアクセスに使用するメタデータとして設定する。この状態でファイルシステム110が、ゲームプログラムから、セーブデータの読出指示を受けると、ファイル読出部118が、メタデータ切替部116により選択されている参照ポインタ2を参照して、指示されたセーブデータを読み出す。
メタデータ切替部116が、ファイルアクセスに、スーパーブロック2およびテーブル(ファイルA’)を含むメタデータを使用することを設定した後、ブロック処理部112は、更新前のデータブロックA2をセーブデータ領域から削除し、メタデータ処理部114は、更新前のメタデータをセーブデータ領域から削除する。
図6は、更新前のデータブロックおよびメタデータを削除した状態を示す。メタデータ切替部116が参照ポインタを切り換えた後に、更新前のデータブロックおよびメタデータを削除することで、予期せぬシステムダウン時にセーブデータが消失する可能性を低減できる。なお補助記憶装置2がSSDである場合、データの消去は、複数のページが集まったブロックを単位として実施されるため、データブロックやテーブルなどは、SSDにおけるブロックを単位として設定されてよい。
以上、ファイルAの更新処理について説明したが、セーブデータでは、複数のファイルが連携していることがある。たとえば、ファイルBが、セーブ時のゲームステージを示すデータであり、ファイルCが、セーブ時にプレイヤキャラクタが保有している武器の情報を示すデータであるとする。ステージごとに特別な武器を入手できるシナリオをもつゲームでは、セーブデータにおいて、ゲームステージの情報と、保有武器の情報とに矛盾が生じてはいけない。そこでセーブデータの更新処理において、ファイルBとファイルCは、同時に確実に更新されることが必要であり、ファイルBは更新できたが、ファイルCは更新できなかったという事態は回避しなければならない。
そこでメタデータ切替部116は、ゲームプログラムから更新の反映を許可する許可指示を受け取ることを契機として、メタデータの切り替え処理を実行することが好ましい。以下、ファイルB、Cが連携している場合について説明する。
ゲームプログラムは、ファイルB、Cの更新指示と、更新の反映を許可する許可指示とを、この順にファイルシステム110に供給する。ゲームプログラムからの指示は、ファイルシステム110において指示の順番にしたがって実施され、ファイルシステム110は、ファイルBの更新指示にしたがってファイルBを更新し、ファイルCの更新指示にしたがってファイルCを更新し、その後、許可指示にしたがってコミットして、更新されたファイルB、Cをアクセス可能な状態にする。
具体的に、ファイルシステム110はこの一連の指示を受けると、ブロック処理部112が、ファイルBにおいて更新があったデータブロックを空いている記憶場所に記憶し、メタデータ処理部114が、更新されたファイルBに対応するメタデータを空いている記憶場所に記憶する。続いてブロック処理部112は、ファイルCにおいて更新があったデータブロックを空いている記憶場所に記憶し、メタデータ処理部114は、更新されたファイルCに対応するメタデータを空いている記憶場所に記憶する。それからメタデータ切替部116が、新たな参照ポインタを選択することで、更新されたメタデータをファイルアクセスに使用することを設定する。
つまりメタデータ切替部116は、許可指示の供給前に供給されたファイルB、Cの更新指示が実施されたことを条件として、メタデータの切り替え処理を実行する。この処理は、ファイル更新にトランザクション管理の概念を導入したものであり、ファイルBとCとが矛盾なく更新されることを実現する。
なおゲームプログラムは、一連の指示をファイルシステム110に出力するが、ブロック処理部112は、ゲームプログラムが許可指示を出力するまで、更新指示されたファイルを補助記憶装置2に書き込むのではなく、バッファメモリ(図示せず)に記憶してもよい。ブロック処理部112は、アプリケーションが許可指示を出力すると、バッファメモリに記憶したファイルの補助記憶装置2への書込を開始する。補助記憶装置2がSSDである場合、SSDはデータの並列書込を可能とするため、バッファメモリにキャッシュした複数のファイルを並列にSSDに書き込むことで、書き込み時間を短縮できる。このとき、複数のファイルを1つずつSSDに書き込む場合と比較すると、メタデータの書込回数を減らすことができるため、SSDの動作寿命にも好適である。なおキャッシュするデータサイズがバッファメモリのサイズを超える場合には、その前に、ブロック処理部112が、古いファイルからSSDに書き込む必要がある。
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。たとえばファイルシステム110は、許可指示を受けたときに、古いメタデータを削除せずに残しておくことで、複数世代のセーブデータを残しておくことができる。また実施例では、セーブデータファイルの例について説明したが、ファイルの種類はそれに限るものではない。
本発明は、ファイルを管理する技術に利用できる。
1・・・情報処理システム、2・・・補助記憶装置、10・・・情報処理装置、100・・・処理部、102・・・実行部、110・・・ファイルシステム、112・・・ブロック処理部、114・・・メタデータ処理部、116・・・メタデータ切替部、118・・・ファイル読出部。
Claims (8)
- 情報処理装置であって、
アプリケーションが生成したファイルを複数のデータブロックに分割して記憶装置に記憶するブロック処理部と、
複数のデータブロックのそれぞれの記憶場所を特定するための情報およびハッシュ値を含む第1メタデータを記憶装置に記憶するメタデータ処理部と、
ファイルアクセスに第1メタデータを使用することを設定するメタデータ切替部と、を備え、
ファイルが更新された際に、前記ブロック処理部は、更新があったデータブロックを別の記憶場所に記憶し、
前記メタデータ処理部は、更新があったデータブロックを含む複数のデータブロックのそれぞれの記憶場所を特定するための情報およびハッシュ値を含む第2メタデータを記憶装置に記憶し、
前記メタデータ切替部は、ファイルアクセスに第2メタデータを使用することを設定する、
ことを特徴とする情報処理装置。 - 前記メタデータ処理部は、更新があったデータブロックと、既に記憶されており且つ更新がなかったデータブロックのそれぞれの記憶場所を特定するための情報およびハッシュ値を含む第2メタデータを記憶装置に記憶する、
ことを特徴とする請求項1に記載の情報処理装置。 - 前記メタデータ切替部が、ファイルアクセスに第2メタデータを使用することを設定した後、前記ブロック処理部は、更新前のデータブロックを記憶装置から削除し、前記メタデータ処理部は、第1メタデータを記憶装置から削除する、
ことを特徴とする請求項1または2に記載の情報処理装置。 - アプリケーションがファイルの更新指示と、更新の反映を許可する許可指示をこの順に出力すると、許可指示の前の更新指示が実施されたことを条件として、メタデータ切替部が、メタデータの切り替え処理を実行する、
ことを特徴とする請求項1から3のいずれかに記載の情報処理装置。 - アプリケーションが許可指示を出力するまで、前記ブロック処理部は、更新指示されたファイルをバッファメモリに記憶し、
アプリケーションが許可指示を出力すると、前記ブロック処理部は、バッファメモリに記憶したファイルの記憶装置への書込を開始する、
ことを特徴とする請求項4に記載の情報処理装置。 - 記憶装置は、SSDである、
ことを特徴とする請求項1から5のいずれかに記載の情報処理装置。 - ファイルは、ゲームのセーブデータである、
ことを特徴とする請求項1から6のいずれかに記載の情報処理装置。 - コンピュータに、
アプリケーションが生成したファイルを複数のデータブロックに分割して記憶装置に記憶する機能と、
複数のデータブロックのそれぞれの記憶場所を特定するための情報およびハッシュ値を含む第1メタデータを記憶装置に記憶する機能と、
ファイルが更新された際に、更新があったデータブロックを別の記憶場所に記憶する機能と、
更新があったデータブロックを含む複数のデータブロックのそれぞれの記憶場所を特定するための情報およびハッシュ値を含む第2メタデータを記憶装置に記憶する機能と、
ファイルアクセスに第2メタデータを使用することを設定する機能と、
を実現させるためのプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US17/609,812 US12093225B2 (en) | 2019-05-31 | 2020-05-25 | Information processing device |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2019102121A JP7348752B2 (ja) | 2019-05-31 | 2019-05-31 | 情報処理装置 |
| JP2019-102121 | 2019-05-31 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2020241545A1 true WO2020241545A1 (ja) | 2020-12-03 |
Family
ID=73552155
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2020/020468 Ceased WO2020241545A1 (ja) | 2019-05-31 | 2020-05-25 | 情報処理装置 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US12093225B2 (ja) |
| JP (1) | JP7348752B2 (ja) |
| WO (1) | WO2020241545A1 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP7433843B2 (ja) * | 2019-11-05 | 2024-02-20 | 株式会社ソニー・インタラクティブエンタテインメント | 情報処理装置およびファイル生成方法 |
| JP7768165B2 (ja) * | 2023-02-17 | 2025-11-12 | トヨタ自動車株式会社 | 情報処理装置、情報処理プログラム、及び情報処理方法 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015088143A (ja) * | 2013-11-01 | 2015-05-07 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置およびゲームデータのデータ構造 |
| JP2017027203A (ja) * | 2015-07-17 | 2017-02-02 | 株式会社リコー | 記憶媒体制御装置、記憶媒体制御プログラム及び記憶媒体制御方法 |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6684226B1 (en) * | 2000-03-24 | 2004-01-27 | Frontline Software Aps | Method for storing data in one or more files so that both previous and new versions of the data are separately accessible |
| US6857001B2 (en) * | 2002-06-07 | 2005-02-15 | Network Appliance, Inc. | Multiple concurrent active file systems |
| US7457822B1 (en) * | 2002-11-01 | 2008-11-25 | Bluearc Uk Limited | Apparatus and method for hardware-based file system |
| US7917474B2 (en) * | 2005-10-21 | 2011-03-29 | Isilon Systems, Inc. | Systems and methods for accessing and updating distributed data |
| US20100057755A1 (en) * | 2008-08-29 | 2010-03-04 | Red Hat Corporation | File system with flexible inode structures |
| EP2275952A1 (en) * | 2009-07-01 | 2011-01-19 | Thomson Telecom Belgium | Method for accessing files of a file system according to metadata and device implementing the method |
| US9805054B2 (en) * | 2011-11-14 | 2017-10-31 | Panzura, Inc. | Managing a global namespace for a distributed filesystem |
| JP2013222373A (ja) | 2012-04-18 | 2013-10-28 | Fujitsu Ltd | ストレージシステム、キャッシュ制御プログラムおよびキャッシュ制御方法 |
| EP2878348B1 (en) * | 2013-11-01 | 2020-04-29 | Sony Interactive Entertainment Inc. | Information processing device, data structure of game data, program, and recording medium |
| JP2015207145A (ja) | 2014-04-21 | 2015-11-19 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置および差分情報生成装置 |
| CN107430546B (zh) * | 2015-06-26 | 2020-04-21 | 华为技术有限公司 | 一种文件更新方法及存储设备 |
| US10261944B1 (en) * | 2016-03-29 | 2019-04-16 | EMC IP Holding Company LLC | Managing file deletions in storage systems |
| US10061520B1 (en) * | 2016-06-22 | 2018-08-28 | EMC IP Holding Company LLC | Accelerated data access operations |
| US10552374B2 (en) * | 2017-03-31 | 2020-02-04 | VMwre, Inc. | Minimizing file creation and access times using skip optimization |
-
2019
- 2019-05-31 JP JP2019102121A patent/JP7348752B2/ja active Active
-
2020
- 2020-05-25 WO PCT/JP2020/020468 patent/WO2020241545A1/ja not_active Ceased
- 2020-05-25 US US17/609,812 patent/US12093225B2/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015088143A (ja) * | 2013-11-01 | 2015-05-07 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置およびゲームデータのデータ構造 |
| JP2017027203A (ja) * | 2015-07-17 | 2017-02-02 | 株式会社リコー | 記憶媒体制御装置、記憶媒体制御プログラム及び記憶媒体制御方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP7348752B2 (ja) | 2023-09-21 |
| JP2020197787A (ja) | 2020-12-10 |
| US20220226735A1 (en) | 2022-07-21 |
| US12093225B2 (en) | 2024-09-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8977802B2 (en) | Access device, information recording device, controller, real time information recording system, access method, and program | |
| US8914579B2 (en) | Access device, information recording device, controller, and information recording system | |
| WO2004084074A1 (ja) | データ記憶装置、およびデータ記憶装置における管理情報更新方法、並びにコンピュータ・プログラム | |
| JP2013196115A (ja) | メモリシステム | |
| US10166467B2 (en) | Information processing device, data structure of game data, and recording medium | |
| US11875051B2 (en) | Contiguous data storage using group identifiers | |
| US20150126288A1 (en) | Information processing device, program, and recording medium | |
| JP5877186B2 (ja) | 情報処理装置 | |
| US10052555B2 (en) | Information processing device, data structure of game data, and recording medium | |
| US12093225B2 (en) | Information processing device | |
| US7647470B2 (en) | Memory device and controlling method for elongating the life of nonvolatile memory | |
| KR100703807B1 (ko) | 블록 방식의 메모리에서 데이터의 변경 유형에 따라 블록을관리하는 방법 및 장치 | |
| JP6254986B2 (ja) | 情報処理装置、アクセスコントローラ、および情報処理方法 | |
| US11836367B2 (en) | Information processing device and file access method | |
| US20170039110A1 (en) | Computer | |
| JP7433843B2 (ja) | 情報処理装置およびファイル生成方法 | |
| CN113467697B (zh) | 存储器控制器与数据处理方法 | |
| JP2019101989A (ja) | ストレージ制御装置およびプログラム | |
| CN116027984A (zh) | 一种虚拟化gpt分区方法、存储介质及装置 | |
| JP7271410B2 (ja) | 情報処理装置およびファイル記録方法 | |
| JPWO2018186455A1 (ja) | 不揮発性メモリにおける空き容量管理方法、及び不揮発性メモリを含む情報記録装置にデータを記録するアクセス装置、情報記録装置および情報記録システム | |
| JP2008134777A (ja) | ファイル割当テーブルのキャッシュ方法 | |
| TW201120890A (en) | Dual-scope directory for a non-volatile memory storage system | |
| JP2005222531A (ja) | データ記録装置及びデータ記録方法 | |
| JP2011118623A (ja) | データ同期装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20812816 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 20812816 Country of ref document: EP Kind code of ref document: A1 |