Detailed Description
Features and exemplary embodiments of various aspects of the present application will be described in detail below, and in order to make objects, technical solutions and advantages of the present application more apparent, the present application will be further described in detail below with reference to the accompanying drawings and the embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application. It will be apparent to one skilled in the art that the present application may be practiced without some of these specific details. The following description of the embodiments is merely intended to provide a better understanding of the present application by illustrating examples thereof.
It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The multimedia file may be a ppt (powerpoint) file. PPT is presentation graphics software and is mainly used for making slides. The software is capable of creating vivid visual effects and supporting multimedia functions. For example, in a meeting room scenario, a conference speaker can use a meeting file made by the PPT to display the speaker content to the participants. In a teaching scene, a teacher can give lessons by using courseware made by PPT. The courseware is course software which is manufactured according to the requirements of the teaching outline through the links of teaching target determination, teaching content and task analysis, teaching activity structure, interface design and the like.
The storage format of the PPT-like multimedia file is described below by taking courseware as an example. Fig. 1 is a schematic structural diagram of a courseware provided in the present application. As shown in fig. 1, a courseware generally composed of three types of data files, namely a main data file, a page data file and a resource data file. The data formats of the main data file and the page data file are both Extensible Markup Language (XML) formats. For example, the master data file includes information such as overall style data for courseware, total number of pages, and the like. For example, the page data file includes page layout data of the current page, text data, and the like. The resource data files may include pictures, audio, video, etc. files in a courseware page.
Wherein, only one master data file is used for one courseware. The page data file corresponds to a courseware page, namely the number of the page data file corresponds to the number of pages of the courseware. The number of the resource data files is related to the number of the resources such as pictures, audio, videos and the like used by each page in the courseware. If the courseware needs to be saved as a disk file, the data files need to be packaged into a compressed package file to form a final courseware file, namely a storage file of the courseware on the disk.
Courseware files typically use ZIP format. The ZIP file format is a file format for data compression and document storage. As shown in fig. 2, a ZIP file is composed of three parts, a file data storage area, a central directory structure area, and a central directory end area.
The file data storage area is used for storing summary information and file contents of all data files in courseware. Referring to fig. 2, the file data storage area includes n data files:data file 1, data file 2, … …, data file n. n is a positive integer.
The central directory structure area is used for storing index data of each data file in the courseware. The index data of each data file comprises summary information of the data file, an offset address of the data file relative to a first address in the ZIP file, file length of the data file and other information.
The central directory ending area is used for storing index data of the index data of each data file in the central directory structure area. For example, the central directory end area is used to store information such as the number of index data in the central directory structure area (i.e., the number n of central directories), and an offset address of the index data for each data file from the first address in the ZIP file (i.e., the central directory offset), and the total length of data in the central target structure area (i.e., the length of the central directory). Most data of the ZIP file is located in a file data storage area, and only a small part of data is located in a central directory structure area and a central directory ending area.
However, if the user modifies part of the courseware and needs to save again, the latest data file and various resources need to be repackaged to generate a new compressed file. When the courseware contains more data files and more resources, the generated compressed files are also large, and long time is consumed for storing the modified files each time, so that the file storage efficiency is low.
Based on the above, the application provides a file storage method, which can improve the storage efficiency of the modified file. The following describes the file storage method provided by the present application in detail with reference to specific embodiments and accompanying drawings.
Fig. 3 is a schematic flowchart of an embodiment of a file storage method provided in the present application. As shown in fig. 3, a file storage method 300 provided by the present application includes:
step 310, in response to a storage request for a target file, acquiring modification information for the original file, where the target file is a file modified from the original file, and a storage file of the original file includes at least one data file and target index data corresponding to the at least one data file;
step 320, determining new write data based on the modification information, wherein the new write data at least comprises updated target index data;
and step 330, replacing the target index data with the newly written data to obtain a storage file of the target file.
The detailed implementation of each step fromstep 310 to step 330 is described in detail below.
First, a specific implementation ofstep 310 is described.
In an embodiment of the present application, the original file may be a PPT file. Such as courseware, meeting files, etc. During use of the original file, modifications may need to be made to the original file. The target file is the modified file of the original file.
The following takes the original document as an original courseware as an example to describe several cases of modifying the original document:
the first condition is as follows: and modifying the content of the existing page in the original courseware.
In an embodiment of the application, modifying the content of the existing page in the original courseware includes: adding new data to the existing page in the original courseware, deleting the existing data in the existing page in the original courseware, modifying the data in the existing page in the original courseware and the like. Wherein, modifying the data of the existing page in the original courseware can be converted into deleting the existing data in the page and adding new data into the page.
Therefore, the modification of the content of the existing page in the original courseware can be represented as the deletion of the original page data file of the existing page and the addition of the new page data file of the modified existing page.
That is, in the scenario of case one, the modification information of the original file includes the new page data file of the newly added modified existing page and the identifier of the original page data file of the deleted existing page.
Case two: and adding a new page to the original courseware.
In the embodiment of the application, adding a new page to the original courseware can be represented as adding a page data file of the added page and adding a resource data file corresponding to the added page. It should be noted that, if a new page is added to the original courseware, the main data file is also updated (the record of the page is added). Thus, adding a new page to the original courseware also manifested as a deletion of the original master data file of the original courseware and an addition of an updated master data file.
That is, in the scenario of the second case, the modification information of the original file includes the page data file of the newly added page, the resource data file corresponding to the newly added page, the identifier of the original main data file of the deleted original courseware, and the newly added updated main data file.
Case three: and deleting the page in the original courseware.
In an embodiment of the present application, deleting a page in an original courseware may be expressed as deleting an original page data file of the page and an original resource data file corresponding to the page. It should be noted that, if a page in the original courseware is deleted, the main data file is also updated (the record of the page is deleted). Thus, deleting a page in the original courseware also manifested as a deletion of the original master data file for the original courseware and an addition of an updated master data file.
That is, in the scenario of the third scenario, the modification information of the original file includes an identifier of the original page data file of the deleted page, an identifier of the original resource data file corresponding to the deleted page, an identifier of the original master data file of the deleted original courseware, and a newly added updated master data file.
In the embodiment of the application, the modification of the original courseware is to add, delete or modify elements in a page in the courseware, or add or delete the page, and these modification operations are finally reflected as the addition, deletion or modification of three types of data files, namely a main data file, a page data file and a resource data file. These three types of data files are the granularity of storage when courseware is saved to disk. Modification of a data file may be converted to deletion of an existing data file and addition of a new data file. Thus, modifications to the original file may include deletions to existing data files in the original file and additions to new data files. Thus, the modification information of the original file includes the identification of the added data file and the deleted data file.
If the user wants to save the modified original file, that is, the user wants to save the target file, the user can send a storage request for the target file through the device where the original file is located. The device where the original file is located may obtain the obtaining time of the storage request in response to the storage request for the target file. By acquiring the acquisition time of the storage request and the saving time of the original file, all operation records on the original file between the acquisition time of the storage request and the saving time of the original file can be obtained. According to all the operation records of the original file, the data files which are changed after the original file is modified can be counted. By comparing the data file lists before and after the original file is modified, the new data file and the identifier of the deleted data file can be obtained, and the modification information of the original file can be obtained.
In the embodiment of the present application, the storage file of the original file is the corresponding final file when the original file is stored to the disk. Referring to fig. 2, the storage file of the original file includes at least one data file and target index data corresponding to the at least one data file. Wherein the at least one data file includes a main data file, a page data file and a resource data file in the original file. The target index data corresponding to at least one data file comprises first index data and second index data. Wherein the first index data includes index data of each of the at least one data file stored in the central target structure area shown in fig. 2. The second index data includes index data of the first index data, i.e., data in the central directory end area shown in fig. 2.
The specific implementation ofstep 320 is described below.
In an embodiment of the present application, the modification information for the original file includes an identifier of a newly added data file and/or a deleted data file. Whether the modification information includes the identification of the newly added data file or the deleted data file, the target index data needs to be updated based on the modification information of the original file. Thus, the new write data includes at least the updated target index data. Wherein the updated target index data is updated based on the modification information of the original file.
If the target file is to be stored in the disk, the newly added data file needs to be saved. However, in order to improve the storage efficiency of the target file, the deleted data file does not necessarily need to be deleted actually. In the embodiment of the application, the target index data can be updated based on the identifier of the data file to be deleted, and the updated target index data is used as new write data, so that the target file can be stored.
Thus, in some embodiments of the present application,step 320 includes step 3201 and step 3202.
Step 3201, in a case where the modification information includes a newly added data file, obtaining updated target index data based on the modification information, and determining the newly added data file and the updated target index data as the newly written data;
step 3202, when the modification information includes an identifier of the deleted data file, obtaining updated target index data based on the modification information, and determining the updated target index data as the new write data.
In the embodiment of the present application, if the modification information of the original file includes a newly added data file, the newly added data file needs to be written in the back of the file data storage area. If a newly added data file is written behind the file data storage area, the first index data in the central directory structure area needs to be added with the index data of the newly added data file. Since the first index data in the central directory structure area is added with new index data, the second index data in the central directory end area also needs to be updated correspondingly, that is, the target index data needs to be updated based on the newly added data file. Therefore, the newly written data includes the newly added data file and the updated target index data.
However, if the modification information of the original file includes the identifier of the deleted data file, in order to save the saving time of the target file, the data file corresponding to the identifier in the file data storage area does not need to be deleted, and only the target index data may be updated. For example, the index data of the data file that needs to be deleted may be removed from the first index data of the central directory structure area. Since the first index data of the central directory structure area deletes part of the index data, the second index data in the central directory end area also needs to be updated accordingly. That is, the target index data needs to be updated based on the identifier of the deleted data file, so that the deletion of the index data, i.e., the deletion of the mark, is performed on the data file needing to be deleted.
The following describes obtaining updated target index data based on modification information for an original file. In an embodiment of the present application, the target index data includes first index data including index data of each of the at least one data file and second index data including index data of the first index data.
In step 3201 and step 3202, obtaining updated target index data based on the modified data file may include: step A to step C. Step A, updating the first index data based on the modification information to obtain updated first index data; step B, updating the second index data according to the updated first index data to obtain updated second index data; and step C, determining the updated first index data and the updated second index data as updated target index data.
In the step a, when the modified data file includes a newly added data file, the index data of the newly added data file is added to the first index data to obtain updated first index data.
In step a, when the modified data file includes the identifier of the deleted data file, the index data of the deleted data file corresponding to the identifier is deleted from the first index data, and the updated first index data is obtained.
In step a, when the modified data file includes a new data file and a deleted data file, adding the index data of the new data file from the first index data and deleting the index data of the deleted data file corresponding to the identifier from the first index data to obtain updated first index data.
In step B, since the second index data stored in the central directory end area includes the index data of the first index data in the central directory structure area. For example, the central directory ending area is used for storing information such as the number of index data in the central directory structure area, an offset address of the index data of each data file relative to a first address in the ZIP file, and the total data length of the index data in the central directory structure area. If the addition or deletion of the index data of the data file occurs in the first index data, the second index data needs to be updated along with the update of the first index data.
For example, if the updated first index data includes index data of a newly added data file, the number of index data in the central directory structure area increases, the offset address of the index data of each data file with respect to the head address in the ZIP file moves backward, and the total data length of the first index data increases, thereby obtaining updated second index data.
In step C, after both the first index data and the second index data are updated, the updated first index data and the updated second index data are determined as updated target index data.
In some embodiments of the present application,step 330 comprises: and under the condition of keeping at least one data file unchanged, replacing the target index data with newly written data to obtain a storage file of the target file.
In the embodiment of the present application, the modification of the original file is actually to delete and add the data file. For the newly added data file, the data file can be added after the file content of the storage file of the original file. For the deleted data file, the index data of the data file to be deleted can be deleted for processing, so that the existing data file in the storage file of the original file can be reused, and only the deleted data file and the newly added data file are processed. When a user modifies courseware, only a small part of contents are modified usually, and most of the contents are kept unchanged, so that changed data are much less than unchanged data, and the file storage method provided by the application is adopted to obviously improve the storage speed of the file.
A schematic diagram of a storage file of a target file in a case where modification information of an original file includes a newly added data file will be described below with reference to the drawings. Fig. 4 is a schematic diagram of a storage file of a target file provided in the present application. As shown in fig. 4, inside the dotted frame is at least one data file included in the storage file of the original file. Within the dashed box is the newly written data. And when the modification information of the original file comprises the newly added data file, keeping at least one data file in the storage files in the original file unchanged, and then adding newly written data at the end of the file data storage area. Wherein, the newly written data comprises three parts of contents: the data file newly added in the file data storage area, the updated first index data in the new central directory structure area and the updated second index data in the new central directory ending area.
As shown in fig. 4, the modification information for the original file includes the newly added datafile n + 1. The updated first index data includes the first index data in the target index data and the index data of the newly added datafile n + 1. That is, a new "central directory structure area" is formed after adding the index data of the newly added data file n +1 to the original "central directory structure area" in the storage file of the original file. Then, based on the updated first index data, the number of central directories is updated to n +1, and the central directory offset and the central directory length are updated to obtain updated second index data. That is, the number of central directories, the central directory offset, and the central directory length are updated on the basis of the original "central directory end area" in the storage file of the original file, to obtain a new "central directory end area".
It is assumed that a schematic diagram of a storage file of an original file is shown in fig. 2. In the storage file of the target file shown in fig. 4, the data files 1 to n in the dotted line frame are kept unchanged from the storage file of the original file in fig. 2, and then the new write data in the dotted line frame in fig. 4 is added after the file data storage area of the storage file of the original file.
The storage file of the target file in fig. 4 is added with the newly added data file n +1 shown in a gray area and the index data of the data file n +1 compared with the original storage file in fig. 2. The storage file of the target file in fig. 4 has the central directory offset, the central directory length and the central directory number shown in the gray area modified from the original storage file in fig. 2.
A schematic diagram of a storage file of a target file in a case where modification information of an original file includes an identification of a deleted data file will be described below with reference to the drawings. Fig. 5 is a schematic diagram of a storage file of a target file provided in the present application. As shown in fig. 5, inside the dotted frame is at least one data file included in the storage file of the original file. Within the dashed box is the newly written data. And when the modification information of the original file comprises the identification of the deleted data file, keeping at least one data file in the storage file in the original file unchanged, and then adding newly written data at the end of the file data storage area. Wherein the newly written data includes two parts of content: updated first index data in the new central directory structure area and updated second index data in the new central directory end area.
As shown in fig. 5, the modification information to the original file includes an identification of the deleted data file 2. The updated first index data includes data after the index data of the data file 2 is deleted from the first index data in the target index data. That is, a new "central directory structure area" formed after the index data of the data file 2 is deleted on the basis of the original "central directory structure area" in the storage file of the original file. And updating the number of the central directories to n-1 based on the updated first index data, and updating the central directory offset and the central directory length to obtain updated second index data. That is, the number of central directories, the central directory offset, and the central directory length are updated on the basis of the original "central directory end area" in the storage file of the original file, to obtain a new "central directory end area".
In the storage file of the target file shown in fig. 5, the data files 1 to n in the dotted line frame are kept unchanged from the storage file of the original file in fig. 2, and then the new write data in the dotted line frame in fig. 5 is added after the file data storage area of the storage file of the original file.
The storage file of the target file in fig. 5 deletes the index data of the data file 2 compared to the original storage file in fig. 2. The storage file of the target file in fig. 5 has the central directory offset, the central directory length and the central directory number shown in the grey area modified compared to the original storage file in fig. 2.
In the embodiment of the application, after the modification information of the original file is acquired, a list of data files to be deleted and a list of data files to be added can be acquired. For the data file list to be deleted, only the index data of the files are deleted from the central directory structure area, the data in the central directory ending area are corrected, then the original central directory structure area and the original central directory ending area are covered by the new central directory structure area and the new central directory ending area, and the content of the original file data storage area is kept unchanged.
For the data file list to be newly added, the newly added data file needs to be additionally written in the tail part of the original 'file data storage area', the index data of the newly added data file is additionally added in the 'central directory structure area' (the new 'file data storage area' is enlarged, the data of the original 'file data storage area' is kept still), meanwhile, the data of the 'central directory ending area' is corrected, and the new 'central directory structure area' and the 'central directory ending area' are added to the end of the new 'file data storage area'.
In the embodiment of the application, most data of courseware are stored in the file data storage area, the existing file data storage area is directly reused for deleting and adding the data files, and only little data is modified, so that the operation speed is high.
According to the file storage method, the target file is stored in an incremental mode on the basis of the storage file of the original file, the storage file of the original file on the disk is directly modified, and a file copy is not generated on the disk to operate, so that the storage speed of the target file can be obviously increased, and the disk space cannot be excessively occupied in the storage process.
In this embodiment of the present application, in order to further reduce the size of the storage file of the target file, so as to reduce the disk space occupied when saving the target file to the disk, in a case that the modification information includes an identifier of the deleted data file,step 330 includes: and under the condition that the ratio of the size of the deleted data file corresponding to the identifier to the size of the storage file of the original file is larger than a first preset ratio, deleting the deleted data file corresponding to the identifier from the at least one data file, and replacing the target index data with the newly written data to obtain the storage file of the target file.
As an example, the first preset ratio is 10%.
That is, if the original file is modified and more data files are deleted, the target file is still saved in a marked deletion mode, and the data files to be deleted in the "file data storage area" are not actually deleted. Therefore, in order to further reduce the size of the storage file of the target file and reduce the space occupied by the target file when the target file is stored in the disk, the data file to be deleted is deleted from at least one data file under the condition that the ratio of the size of the deleted data file to the size of the storage file of the original file is greater than the first preset ratio, that is, the data in the storage file of the original file is deleted really, so that the size of the courseware file is reduced.
In some embodiments of the present application, in order to avoid that the storage file of the original file is damaged, beforestep 310, the file storage method provided by the present application further includes: storing the target index data in a memory; and/or storing the target index data in a disk.
When a user selects to cancel saving in the saving process of the target file, or when the saving of the target file is interrupted due to sudden power failure of the computer in the saving process of the target file, the stored file of the original file is damaged. Therefore, the target index data can be backed up to avoid damage to the storage file of the original file.
In some embodiments of the present application, when saving the target file to the disk, only the "central directory structure area" and the "central directory end area" of the storage file of the original file need to be modified, and the "file data storage area" does not need to be modified. Therefore, before the original file is modified, if the original 'central directory structure area' and the 'central directory ending area' are backed up, namely the target index data is backed up, when the two situations occur, the original 'central directory structure area' and the 'central directory ending area' data are rewritten into the storage file of the original file, namely the target index data are rewritten into the storage file of the original file, the original file can be restored to the state before modification, and the situation of file damage is avoided.
Before the original file is modified, the original 'central directory structure area' and 'central directory ending area' in the storage file of the original file can be backed up in two ways, namely, the target index data is backed up. The first is to backup target index data in memory. The second backups the target index data on disk. When the target index data is stored in the disk, the backup may be performed in a directory where the storage file of the original file is located, and the backup file name may be "the storage file name of the original file. And if the target file is normally saved, deleting the backup file of the target index data.
For the condition that the user cancels the storage of the target file, the storage file of the original file can be positioned to the initial position of the original central directory structure area, and the data of the original backup central directory structure area and the data of the backup central directory ending area are written, so that the storage file of the original file can be recovered.
And for the condition that the storage of the target file is interrupted due to abnormal power failure, when the user opens the original file next time, the computer judges whether the directory where the storage file of the original file is located has a backup file with the file name of 'the storage file name of the original file, tmp'. And if a backup file with the file name of 'the storage file name of the original file, tmp' exists, reading the backup file to the memory. Then, the storage file of the original file is positioned to the initial position of the original central directory structure area, and the data of the original backup central directory structure area and the data of the backup central directory ending area are written in, so that the storage file of the original file can be restored. And after the storage file of the original file is restored, deleting the backup file of the target index data, and then opening the restored original file.
Fig. 6 is a schematic structural diagram of an embodiment of a file storage device provided in the present application. As shown in fig. 6, the present application provides afile storage device 600 including:
a modificationinformation obtaining module 610, configured to obtain modification information for an original file in response to a storage request for a target file, where the target file is a file modified from the original file, and a storage file of the original file includes at least one data file and target index data corresponding to the at least one data file;
a new writedata determining module 620, configured to determine new write data based on the modification information, where the new write data at least includes updated target index data;
thestorage module 630 is configured to replace the target index data with the newly written data, so as to obtain a storage file of the target file.
In an embodiment of the present application, when saving the modified target file, the new write data may be determined based on modification information for the original file. Wherein the newly written data at least includes the updated target index data. When the target file is stored, the target file can be stored only by replacing the target index data in the storage file of the original file with the newly written data, i.e. the target file is stored in an incremental manner, so that the data volume needing to be stored again is reduced, and the storage efficiency of the modified file is improved.
In some embodiments of the present application, the modification information includes an added data file and/or a deleted data file; wherein the new writedata determining module 620 is configured to:
under the condition that the modification information comprises a newly added data file, obtaining updated target index data based on the modification information, and determining the newly added data file and the updated target index data as newly written data;
and under the condition that the modification information comprises the identification of the deleted data file, obtaining updated target index data based on the modification information, and determining the updated target index data as newly written data.
In some embodiments of the present application, the target index data comprises first index data comprising index data for each of the at least one data file and second index data comprising index data for the first index data; wherein the new writedata determining module 620 is configured to:
updating the first index data based on the modification information to obtain updated first index data;
updating the second index data according to the updated first index data to obtain updated second index data;
and determining the updated first index data and the updated second index data as updated target index data.
In some embodiments of the present application, the new writedata determination module 620 is configured to:
under the condition that the modification information comprises the newly added data file, adding the index data of the newly added data file in the first index data to obtain updated first index data;
and under the condition that the modification information comprises the identification of the deleted data file, deleting the index data of the deleted data file corresponding to the identification from the first index data to obtain the updated first index data.
In some embodiments of the present application, thestorage module 630 is configured to:
and under the condition of keeping at least one data file unchanged, replacing the target index data with newly written data to obtain a storage file of the target file.
In some embodiments of the present application, the modification information includes an identification of the deleted data file;
wherein thestorage module 630 is configured to:
and under the condition that the ratio of the size of the deleted data file corresponding to the identifier to the size of the storage file of the original file is larger than a first preset ratio, deleting the deleted data file corresponding to the identifier from at least one data file, and replacing the target index data with newly written data to obtain the storage file of the target file.
In some embodiments of the present application, thefile storage apparatus 600 further comprises a saving module for:
storing the target index data in a memory;
and/or the presence of a gas in the gas,
and storing the target index data in a disk.
Other details of the file storage apparatus according to the embodiment of the present application are similar to those of the file storage method according to the embodiment of the present application described above with reference to fig. 3 to 6, and are not repeated herein.
The file storage method and apparatus according to the embodiment of the present application described in conjunction with fig. 3 to 6 may be implemented by a file storage device. FIG. 7 is a schematic block diagram of one embodiment of a file storage device according to the present application.
The file storage device 700 may include aprocessor 701 and amemory 702 storing computer program instructions.
Specifically, theprocessor 701 may include a Central Processing Unit (CPU), or an Application Specific Integrated Circuit (ASIC), or may be configured to implement one or more Integrated circuits of the embodiments of the present Application.
Memory 702 may include a mass storage for data or instructions. By way of example, and not limitation,memory 702 may include a Hard Disk Drive (HDD), a floppy Disk Drive, flash memory, an optical Disk, a magneto-optical Disk, tape, or a Universal Serial Bus (USB) Drive or a combination of two or more of these.Memory 702 may include removable or non-removable (or fixed) media, where appropriate. Thememory 702 may be internal or external to the file storage device 700, where appropriate. In a particular embodiment, thememory 702 is non-volatile solid-state memory.
In a particular embodiment, thememory 702 includes Read Only Memory (ROM). Where appropriate, the ROM may be mask-programmed ROM, Programmable ROM (PROM), Erasable PROM (EPROM), Electrically Erasable PROM (EEPROM), electrically rewritable ROM (EAROM), or flash memory or a combination of two or more of these.
The memory may include Read Only Memory (ROM), Random Access Memory (RAM), magnetic disk storage media devices, optical storage media devices, flash memory devices, electrical, optical, or other physical/tangible memory storage devices. Thus, in general, the memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., a memory device) encoded with software comprising computer-executable instructions and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the methods of file storage according to the present disclosure.
Theprocessor 701 realizes any one of the file storage methods in the above embodiments by reading and executing computer program instructions stored in thememory 702.
In one example, the file storage device may also include acommunication interface 703 and abus 710. As shown in fig. 7, theprocessor 701, thememory 702, and thecommunication interface 703 are connected by abus 710 to complete mutual communication.
Thecommunication interface 703 is mainly used for implementing communication between modules, apparatuses, units and/or devices in this embodiment of the application.
Bus 710 includes hardware, software, or both to couple the components of the file storage device to each other. By way of example, and not limitation, a bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a Hypertransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an infiniband interconnect, a Low Pin Count (LPC) bus, a memory bus, a Micro Channel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a video electronics standards association local (VLB) bus, or other suitable bus or a combination of two or more of these.Bus 710 may include one or more buses, where appropriate. Although specific buses are described and shown in the embodiments of the application, any suitable buses or interconnects are contemplated by the application.
In addition, in combination with the file storage method in the foregoing embodiments, the embodiments of the present application may provide a computer storage medium to implement. The computer storage medium having computer program instructions stored thereon; the computer program instructions, when executed by a processor, implement any of the file storage methods in the above embodiments.
It is to be understood that the present application is not limited to the particular arrangements and instrumentality described above and shown in the attached drawings. A detailed description of known methods is omitted herein for the sake of brevity. In the above embodiments, several specific steps are described and shown as examples. However, the method processes of the present application are not limited to the specific steps described and illustrated, and those skilled in the art can make various changes, modifications, and additions or change the order between the steps after comprehending the spirit of the present application.
The functional blocks shown in the above-described structural block diagrams may be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, it may be, for example, an electronic circuit, an Application Specific Integrated Circuit (ASIC), suitable firmware, plug-in, function card, or the like. When implemented in software, the elements of the present application are the programs or code segments used to perform the required tasks. The program or code segments may be stored in a machine-readable medium or transmitted by a data signal carried in a carrier wave over a transmission medium or a communication link. A "machine-readable medium" may include any medium that can store or transfer information. Examples of a machine-readable medium include electronic circuits, semiconductor memory devices, ROM, flash memory, Erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, Radio Frequency (RF) links, and so forth. The code segments may be downloaded via computer networks such as the internet, intranet, etc.
It should also be noted that the exemplary embodiments mentioned in this application describe some methods or systems based on a series of steps or devices. However, the present application is not limited to the order of the above-described steps, that is, the steps may be performed in the order mentioned in the embodiments, may be performed in an order different from the order in the embodiments, or may be performed simultaneously.
Aspects of the present disclosure are described above with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions/acts specified in the flowchart and/or block diagram block or blocks. Such a processor may be, but is not limited to, a general purpose processor, a special purpose processor, an application specific processor, or a field programmable logic circuit. It will also be understood that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware for performing the specified functions or acts, or combinations of special purpose hardware and computer instructions.
As described above, only the specific embodiments of the present application are provided, and it can be clearly understood by those skilled in the art that, for convenience and brevity of description, the specific working processes of the system, the module and the unit described above may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again. It should be understood that the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive various equivalent modifications or substitutions within the technical scope of the present application, and these modifications or substitutions should be covered within the scope of the present application.