Abstract:
Disclosed is a file management method for a file system that has a storage device to save data blocks and a main memory of computer, the storage device and the main memory being provided with a management block to save in-use information, in-transition information, and information about expansion to an adjacent data block. The method has the steps of: checking the in-use information of the management block on the main memory when securing a second data block so as to store data relating to a first data block; initializing a management area of the second data block; storing the position of the first data block into the management area of the second data block; storing the position of the second data block into a management area of the first data block; copying the information of the management block on the main memory to the management block on the storage device; and removing the in-transition information.

Description:
FIELD OF THE INVENTION 
     This invention relates to a file system that the self-repair by file management is allowed during the operation of a computer system, and more particularly to, a file management method for file systems that allows the self-repair during the operation of system even when there occurs an inconsistency due to the stop of system. 
     BACKGROUND OF THE INVENTION 
     At present, there are a variety of file systems, such as the UNIX file system, that are used on computers. However, if the system stops when the structure of file system is being changed as in case of addition or removal of file, there may occur an inconsistency in the structure of file system and thereby some access to the file may not be allowed. Also, it is difficult to repair the inconsistency in the structure of file system during the operation of system, therefore many systems need to conduct the repair procedure of file system for a long time before using the file system. Since there are some systems such as a switching exchange system that it is undesirable to do the repair of file system for such a long time during the processing to re-start the system, a file system that the self-repair is allowed even during the operation of system has been desired. 
     FIG. 1 illustrates an inconsistency in a conventional structure of file system. For example, files  34 ,  36  each consist of five data blocks (each of which is composed of multiple physical blocks to retain data). In the file system, it is assumed that file  36  is made after the system re-starts by reason that the system stops when file  34  is being changed. In this case, file  34  and file  36  may use a same data block  38  under the influence of the stop of the system. If the content of file  36  is rewritten while the data block overlaps each other, the content of file  34  must be altered. In such a state, it is impossible to guarantee the content of file. This state is the inconsistency in the structure of file system. 
     Japanese patent application laid-open No. 10-63555 (1998) discloses a file management method for file system. In the file management method disclosed, its area-allotting block number list always saves the number of a head block of file. In each block of data storage area, data and its next-linked block number or an identifier to represent an empty block is recorded. The file management program allots an additional empty block when adding new data to file. 
     Thus, when the system re-starts after the file-writing processing is discontinued, the file management program traces a head block number in area and the next block number of each block to an empty block, thereby restoring its file management table. 
     Some file systems such as the UNIX file system use an area, such as i node (index node), for managing the data block. This i node enables the file system to know the position of a data block. In such a file system, if the system stops when the structure of file system is being changed, there may occur a discordance between a data block on magnetic disk to store data and data block information of the i node for file management. In the conventional file systems, the occurrence of discordance must cause an inconsistency. So, it is necessary for the file system to conduct the repair procedure during the re-start processing of the system in order to solve the inconsistency. However, there is a problem that the repair procedure conducted by the file system takes a considerable time. 
     Also, in the file management method disclosed in Japanese patent application laid-open No. 10-63555, when re-starting the system, it is required to restore the file processing. 
     SUMMARY OF THE INVENTION 
     Accordingly, it is an object of the invention to provide a file management method for file system that allows the self-repair during the operation of system even when there occurs an inconsistency due to the stop of system. 
     According to the invention, a file management method for a file system that a storage device is provided with a plurality of data blocks to store data, and the storage device and the main memory of a computer is provided with a management block to save in-use information about whether a data block is in use or not, in-transition information about whether the content of data block is being changed or not, and information about whether an adjacent data block is used as a sequential area or not, comprises the steps of: 
     checking the in-use information of the management block on the main memory when securing a second data block so as to store data relating to a first data block, when an unused area is found, setting the in-transition information of the unused area to be in transition and the in-use information to be in use; 
     initializing an area to manage a data block in the second data block; 
     storing the position of the first data block into the area to manage a data block in the second data block; 
     storing the position of the second data block into an area to manage a data block in the first data block; 
     copying the information of the management block on the main memory to the management block on the storage device; and 
     removing the in-transition information. 
     According to another aspect of the invention, a file management method for a file system that a storage device is provided with a plurality of data blocks to store data, and the storage device and the main memory of a computer is provided with a management block to save in-use information about whether a data block is in use or not, in-transition information about whether the content of data block is being changed or not, and information about whether an adjacent data block is used as a sequential area or not, comprises the steps of: 
     checking the in-use information of the management block on the main memory when storing data continuously into an adjacent area to a data block, when the unused adjacent area is found, setting the in-use information to be in use and information about whether a continuous area is continuously expanded to be continuously expanded; 
     copying the information of the management block on the main memory to the management block on the storage device; and 
     storing information about up to which position of the area to store data effective data is saved into the area to manage the data block in the data block. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The invention will be explained in more detail in conjunction with the appended drawings, wherein: 
     FIG. 1 is a diagram illustrating an inconsistency in the conventional structure of file system; 
     FIG. 2 is a diagram showing components on magnetic disk provided in this invention; 
     FIG. 3 is a diagram showing a composition of data block according to the invention; 
     FIG. 4 is a diagram showing a method of securing a data area according to the invention; 
     FIG. 5 is a diagram showing an operation that a data block is newly secured according to the invention; 
     FIG. 6 is a diagram showing an operation that a data block is released according to the invention; 
     FIG. 7 is a diagram showing an operation that a data block is continuously expanded according to the invention; and 
     FIG. 8 is a diagram showing an operation that a data block is newly expanded according to the invention. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     In a file management method for file system according to the invention, as shown in FIG. 2, there are provided data blocks  12  to save data and a management block  14  to manage the status of data blocks  12  by bit map, as components on a magnetic disk  10 . 
     For example, it is assumed that a file to require five data blocks uses data blocks  12 - 1 , . . . ,  12 - 5 . Here, its management block indicates that these data blocks are in use. The data blocks  12 - 1 ,  12 - 2  and  12 - 3  are secured in series. Since the file system confirmed that adjacent data blocks were in use, it was not able to secure further series of blocks. Therefore, the file system saves data using data blocks  12 - 4  and  12 - 5  that are located distantly. It is assumed that the data are stored in the order of data blocks  12 - 1 , . . .  12 - 5 , starting from the head part. 
     In the conventional methods using i node, the position of a data block can be known from the i node, but the position of i node to know the position of a data block cannot be known from the data block (this is called one-way link). Therefore, in these methods, when there occurs an inconsistency in the file system, it is impossible to check whether a data block that will be managed by a certain i node is managed by another i node during the operation of system. Thus, it is required to conduct the repair procedure during the re-start processing of system. 
     In contrast with this, in the file management method for file system according to the invention, the data block itself also has a management area that saves the position of a data block knowing the position of that data block (this is called two-way link). Thus, data blocks are connected with each other by the two-way link. 
     The preferred embodiment according to the invention will be explained in detail referring to FIGS. 2 to  4 . FIG. 2 is a diagram showing the components on magnetic disk provided in this invention. FIG. 3 is a diagram showing a composition of data block according to the invention. FIG. 4 is a diagram showing a method of securing a data area according to the invention. 
     Physical blocks on the magnetic disk  10  include the data blocks  12  to save data and the management block  14  to manage the status of data blocks  12  by bit map. The management block  14  is composed of a use state management area  16  to store information about whether a data block  12  to be managed is in use or not, a transient state management area  18  to store information about whether a data block  12  is in transition (being secured or released) or not, and a continuous expansion state management area  20  to store information about whether a data block  12  is secured as one of continuous data blocks. A management block  14 - 1  corresponds to a management block  14 - 2  that is copied on a main memory therefrom. 
     Also, as shown in FIG. 3, the data block  12  is composed of a data area  22  to save file data, and a management area  24  to save information of data block. The management area  24  is composed of a referring-block management area  26  to save the position of a data block (or data blocks) which refers to the data block  12  (i.e., a data block which saves the position of the data block  12 ), and a referred-block management area  28  to save the position of a data block (or data blocks) to which the data block  12  refers (i.e., a data block whose position is saved by the data block  12 ). 
     Also, the file system provides an additional management area by expanding the management area  24  when the management area  24  becomes short of space. Thus, the file system is further composed of an expansion management area  30  to save the position of the additionally-expanded management area (or areas), and a data position management area  32  to store information about which position of data area the end of data is located. 
     To expand the data block  12 , as shown in FIG. 4, there are two ways, one is to expand as one continuous data block and the other is to secure an area at a new place since it is impossible to expand the area continuously. 
     First, the way of securing a continuous data block is explained. At the beginning, there is the data block  12  composed of a management area  24  and a data area  22 - 1 . After that, as the data increases, it becomes impossible to store the data by only the data area  22 - 1 . In this case, when its next data block (a data block located next to the data area  22 - 1  viewing from the management area  24 ) is not used, the file system allots that area as a second data area  22 - 2  to be managed by the management area  24 . The expansion method that one management area thus manages multiple continuous data areas to save data of the same file is called continuous expansion. 
     Second, the way of securing area at a new place is explained. At the beginning, as shown in FIG. 4, there is the data block  12  composed of a management area  24 - 1  and a data area  22 - 1 . After that, as the data increases, it becomes impossible to store the data by only the data area  22 - 1 . Here, it is assumed that its next data block is in use and therefore it is impossible to conduct the continuous expansion. In this case, at a new place, a data block  12 - 2  composed of a management area  24 - 2  and a data area  22 - 2  is secured. The expansion method that data of the same file is thus saved is called newly expanded. 
     The operations of the embodiment according to the invention will be explained below referring to FIGS. 5 to  8 . FIG. 5 is a diagram showing an operation that a data block is newly secured according to the invention. FIG. 6 is a diagram showing an operation that a data block is released according to the invention. FIG. 7 is a diagram showing an operation that a data block is continuously expanded according to the invention. FIG. 8 is a diagram showing an operation that a data block is newly expanded according to the invention. 
     The operation to newly secure a data block according to the invention is explained in FIG.  5 . Herein, the operation to secure a data block  12 - 1  is explained. The file system seeks an unused data block based on the use state management area  16  of a management block  14 - 1  on the main memory ({circle around (1)} in FIG.  5 ). If there is the unused data block  12 - 1 , the file system saves in-use information and in-transition information into positions for managing the data block  12 - 1  of the use state management area  16  and transient state management area  18 , respectively, in the management block  14 - 1  on the main memory ({circle around (2)} in FIG.  5 ). 
     The file system initializes the management area of the data block  12 - 1 , and if there exists a data block  12 - 2  that will refer to (i.e., save the position of) the data block  12 - 1 , then stores the position of the data block  12 - 2  into the referring-block management area  26  of the data block  12 - 1  ({circle around (3)} in FIG.  5 ). The file system copies the management block  14 - 1  on the main memory to a management block  14 - 2  on the magnetic disk  10  ({circle around (4)} in FIG.  5 ). Further, if there exists the data block  12 - 2  that will refer to (i.e., save the position of) the data block  12 - 1 , then the file system stores the position of the data block  12 - 1  into the referred-block management area  28  of the data block  12 - 2  ({circle around (5)} in FIG.  5 ). Finally, it removes the in-transition information from the transient state management area  18  in the management block  14 - 1  on the main memory ({circle around (6)} in FIG. 5) 
     The copying of the management block  14 - 1  on the main memory to the management block  14 - 2  on the magnetic disk  10  is conducted when the magnetic disk  10  is subject to copying next time or after a certain time passes without being copied. Thereby, the operation to secure the data block can be made faster. 
     Here, a case that after steps {circle around (1)} and {circle around (2)} in FIG. 5 the system stops is considered. In this case, since only the management block  14 - 1  on the main memory is changed, after re-starting the system, the management block  14 - 2  on the magnetic disk  10  is copied onto the main memory. Therefore, there occurs no inconsistency in the structure of file system. 
     In a case that the system stops after step {circle around (3)}, the fact is only that the management area of the data block  12 - 1  is initialized and then the data block  12 - 1  saves the position of the data block  12 - 2 . Therefore, since the management area is initialized again when this data block is secured newly, there occurs no inconsistency in the structure of file system. 
     In a case that the system stops after step {circle around (4)}, the data block  12 - 1  is not referred to from any block (i.e., the position of the data block  12 - 1  is not saved at any block) and, after re-starting the system, it is only impossible for any block to use the data block  12 - 1 . Therefore, there occurs no inconsistency in the structure of file system. 
     In a case that the system stops after steps {circle around (5)} and {circle around (6)}, even when the system operates as is after re-starting the system, there occurs no inconsistency in the structure of file system. Although taken here is the case that the data block  12 - 1  is referred to by the data block  12 - 2  (i.e., the position of the data block  12 - 1  is saved at the data block  12 ), when no data block refers to the data block  12 - 1 , there occurs no inconsistency in the structure of file system even if the system stops at any step. 
     The way of restoring an unavailable data block is explained. To restore the state in the case that the system stops after step {circle around (4)}, the management block  14 - 2  on the magnetic disk  10  is copied onto the main memory after re-starting the system, so that the in-transition information is stored into a position for managing the data block  12 - 1  in the management block  14 - 1  on the main memory. 
     Here, the position of the data block  12 - 2  is saved in the referring-block management area  26  of the data block  12 - 1 . In this case, when checking the referred-block management area  28  of the data block  12 - 2  that is saved in the referring-block management area  26  of the data block  12 - 1 , it is known that the position of the data block  12 - 1  is not saved. Now, by setting the management block  14 - 1  on the main memory back to the sate of step {circle around (1)}, it comes to the same state as the case that the system stops after step {circle around (3)} and therefore the restoring is enabled. 
     To restore the state in the case that the system stops after steps {circle around (5)} and {circle around (6)}, the management block  14 - 2  on the magnetic disk  10  is copied onto the main memory after re-starting the system, so that the in-transition information is stored into a position for managing the data block  12 - 1  in the management block  14 - 1  on the main memory. 
     Here, the position of the data block  12 - 2  is saved in the referring-block management area  26  of the data block  12 - 1 . In this case, when checking the referred-block management area  28  of the data block  12 - 2  that is saved in the referring-block management area  26  of the data block  12 - 1 , it is known that the position of the data block  12 - 1  is saved. Now, by setting the management block  14 - 1  on the main memory back to the sate of step {circle around (6)}, it comes to the state before the system stops and therefore the restoring is enabled. 
     The operation to release a data block according to the invention is explained in FIG.  6 . Herein, an example of releasing a data block  12 - 1  is explained. 
     The file system saves in-transition information into a position for managing the data block  12 - 1  to be deleted of the transient state management area  18  in the management block  14 - 1  on the main memory (the change from step {circle around (1)} to step {circle around (2)} in FIG.  6 ). Then, the file system copies the management block  14 - 1  on the main memory to a management block  14 - 2  on the magnetic disk  10  ({circle around (3)} in FIG.  6 ). If there exists a data block  12 - 2  that saves the position of the data block  12 - 1 , then the file system deletes the position of the data block  12 - 1  from the referred-block management area  28  of the data block  12 - 2  ({circle around (4)} in FIG.  6 ). Finally, it removes the stored in-use information from the use state management area  16  and the stored in-transition information from the transient state management area  18  for managing the data block  12 - 1  in the management block  14 - 1  on the main memory ({circle around (5)} in FIG. 6) 
     The copying of the management block  14 - 1  on the main memory to the management block  14 - 2  on the magnetic disk  10  is conducted when the magnetic disk  10  is subject to copying next time or after a certain time passes without being copied. Thereby, the operation to secure the data block can be made faster. 
     Here, a case that after steps {circle around (1)} and {circle around (2)} in FIG. 6 the system stops is considered. In this case, since only the management block  14 - 1  on the main memory is changed, after re-starting the system, the management block  14 - 2  on the magnetic disk  10  is copied onto the main memory. Therefore, there occurs no inconsistency in the structure of file system. 
     In a case that the system stops after step {circle around (3)}, since the data block  12 - 1  is in use and is therefore not secured newly, there occurs no inconsistency in the structure of file system. 
     In a case that the system stops after steps {circle around (4)} and {circle around (5)}, the data block  12 - 1  is not referred to from any block (i.e., the position of the data block  12 -l is not saved at any block) and, after re-starting the system, it is only impossible for any block to use the data block  12 - 1 . Therefore, there occurs no inconsistency in the structure of file system. 
     Although taken here is the case that the data block  12 - 1  is referred to by the data block  12 - 2  (i.e., the position of the data block  12 - 1  is saved at the data block  12 ), when no data block refers to the data block  12 - 1 , there occurs no inconsistency in the structure of file system even if the system stops at any step. 
     The way of restoring an unavailable data block is explained. To restore the state in the case that the system stops after step {circle around (3)}, the management block  14 - 2  on the magnetic disk  10  is copied onto the main memory after re-starting the system, so that the in-transition information is stored into a position for managing the data block  12 - 1  in the management block  14 - 1  on the main memory. 
     Here, if there exists a data block that is saved in the referring-block management area  26  of the data block  12 - 1 , it corresponds to this case. In this case, when checking the referred-block management area  28  of the data block  12 - 2  that is saved in the referring-block management area  26  of the data block  12 - 1 , it is known that the position of the data block  12 - 1  is saved. Now, by setting the management block  14 - 1  on the main memory back to the sate of step {circle around (1)}, it comes to the same state as before the system stops and therefore the restoring is enabled. 
     To restore the state in the case that the system stops after steps {circle around (4)} and {circle around (5)}, the management block  14 - 2  on the magnetic disk  10  is copied onto the main memory after re-starting the system, so that the in-transition information is stored into the management block  14 - 1  on the main memory. 
     Here, if there exists a data block that is saved in the referring-block management area  26  of the data block  12 - 1 , by checking the referred-block management area  28  of the data block  12 - 2  that is saved in the referring-block management area  26  of the data block  12 - 1 , it is known that the position of the data block  12 - 1  is not saved. Now, by setting the management block  14 - 1  on the main memory to the sate of step {circle around (5)}, the restoring is enabled. 
     The operation to expand continuously a data block according to the invention is explained in FIG.  7 . Taken here is a case that a data block  12 - 1  is expanded continuously to secure a data block  12 - 2 . 
     First, based on the content of the use state management area  16  in the management block  14 - 1  on the main memory, it is checked whether any in-use information is not stored for the data block  12 - 2  next to the data block  12 - 1  ({circle around (1)} in FIG.  7 ). 
     If no in-use information is stored, the file system stores in-use information into a position for managing unused data block  12 - 2  of the use state management area  16  in the management block  14 - 1  on the main memory, and stores in-continuous-expansion information into a position for managing the data block  12 - 2  of the continuous expansion state management area  20  ({circle around (2)} in FIG.  7 ). 
     The file system copies the management block  14 - 1  on the main memory to the management block  14 - 2  on the magnetic disk  10  ({circle around (3)} in FIG.  7 ). Finally, data is saved, and up to which position of the data area effective data is saved is set to the data position management area  32  ({circle around (4)} in FIG.  7 ). Thereby, the continuous expansion operation of data block can be made faster. 
     Here, a case that after steps {circle around (1)} and {circle around (2)} in FIG. 7 the system stops is considered. In this case, since only the management block  14 - 1  on the main memory is changed, after re-starting the system, the management block  14 - 2  on the magnetic disk  10  is copied onto the main memory. Therefore, there occurs no inconsistency in the structure of file system. 
     In a case that the system stops after step {circle around (3)}, since the data block  12 - 2  is substantially managed, as a continuous expansion data block, by the management area of the data block  12 - 1 , there occurs no inconsistency in the structure of file system. Therefore, in conducting the continuous expansion, there occurs no unavailable data block. 
     The operation to expand newly a data block according to the invention is explained in FIG.  8 . Taken here is a case that a data block  12 - 1  is expanded newly to secure a data block  12 - 2 . 
     First, based on the content of the use state management area  16  in the management block  14 - 1  on the main memory, it is checked whether any in-use information is not stored for a data block next to the data block  12 - 1 . If no in-use information is stored, then it is possible to conduct the continuous expansion of data block. Namely, the operation to expand newly the data block is applied to a case that in-use information is stored and therefore it is impossible to expand continuously the data block. 
     The file system seeks an unused data block based on the use state management area  16  of the management block  14 - 1  on the main memory ({circle around (1)} in FIG.  8 ). Then, the file system stores in-use information into a position for managing the unused data block  12 - 2  sought of the use state management area  16  in the management block  14 - 1  on the main memory, and stores in-transition information into a position for managing the unused data block  12 - 2  of the transient state management area  18  in the management block  14 - 1  on the main memory ({circle around (2)} in FIG.  8 ). 
     The file system initializes the management area of the newly-secured data block  12 - 2 , and saves the position of the data block  12 - 1  into the referring-block management area  26  of the data block  12 - 2  ({circle around (3)} in FIG. 8) 
     The file system saves data into the data block  12 - 2 , and up to which position of the data area effective data is saved is set to the data position management area  32  ({circle around (4)} in FIG.  8 ). Then, the management block  14 - 1  on the main memory is copied to the management block  14 - 2  on the magnetic disk  10  ({circle around (5)} in FIG.  8 ). Then, the file system stores the position of the data block  12 - 2  into the referred-block management area  28  of the data block  12 - 1  ({circle around (6)} in FIG.  8 ). Finally, it removes the in-transition information at a position for managing the data block  12 - 2  of the transient state management area  18  in the management block  14 - 1  on the main memory ({circle around (7)} in FIG.  8 ). 
     The copying of the management block  14 - 1  on the main memory to the management block  14 - 2  on the magnetic disk  10  is conducted when the magnetic disk  10  is subject to copying next time or after a certain time passes without being copied. Thereby, the operation to secure the data block can be made faster. 
     Here, a case that after steps {circle around (1)} and {circle around (2)} in FIG. 8 the system stops is considered. In this case, since only the management block  14 - 1  on the main memory is changed, after re-starting the system, the management block  14 - 2  on the magnetic disk  10  is copied onto the main memory. Therefore, there occurs no inconsistency in the structure of file system. 
     In a case that the system stops after step {circle around (3)}, the fact is only that the management area of the data block  12 - 2  is initialized and then the data block  12 - 2  saves the position of the data block  12 - 1 . Therefore, since the management area is initialized again when this data block is secured newly, there occurs no inconsistency in the structure of file system. 
     In a case that the system stops after step {circle around (4)}, although data is saved into the data block  12 - 2 , the data area of the data block  12 - 1  is not changed. In the management block  14 - 1  copied onto the main memory after re-starting the system, the data block  12 - 2  is unused. Therefore, it can be handled similarly to the case of after step {circle around (3)}. So, there occurs no inconsistency in the structure of file system. 
     In a case that the system stops after step {circle around (5)}, since the data block  12 - 2  is not referred to from any data block (i.e., the position of the data block  12 - 2  is saved at any data block), after restarting the system it is only impossible to use the data block  12 - 2 . So, there occurs no inconsistency in the structure of file system. 
     In a case that the system stops after steps {circle around (6)} and {circle around (7)}, even when the system operates as is after re-starting the system, there occurs no inconsistency in the structure of file system. 
     The way of restoring an unavailable data block is explained. To restore the state in the case that the system stops after step {circle around (5)}, the management block  14 - 2  on the magnetic disk  10  is copied onto the main memory after re-starting the system, so that the in-transition information is stored in the management block  14 - 1  on the main memory. 
     Here, there is a data block saved in the referring-block management area  26  of the data block  12 - 2 . In this case, when checking the referred-block management area  28  of the data block  12 - 1  that is saved in the referring-block management area  26  of the data block  12 - 2 , it is known that the position of the data block  12 - 2  is not saved. Now, by setting the management block  14 - 1  on the main memory back to the sate of step {circle around (1)}, it comes to the same state as the case that the system stops after step {circle around (4)} and therefore the restoring is enabled. 
     To restore the state in the case that the system stops after steps {circle around (6)} and {circle around (7)}, the management block  14 - 2  on the magnetic disk  10  is copied onto the main memory after re-starting the system, so that the in-transition information is stored into a position for managing the data block  12 - 2  in the management block  14 - 1  on the main memory. 
     Here, there is a data block saved in the referring-block management area  26  of the data block  12 - 2 . In this case, when checking the referred-block management area  28  of the data block  12 - 1  that is saved in the referring-block management area  26  of the data block  12 - 2 , it is known that the position of the data block  12 - 2  is not saved. Now, by setting the management block  14 - 1  on the main memory back to the sate of step {circle around (7)}, it comes to the state before the system stops and therefore the restoring is enabled. 
     Meanwhile, it is also possible to conduct the securing and release of data block by combining these basic patterns. 
     Advantages of the Invention: 
     In this invention, the data block is managed while being divided into data area and management area, thereby saving information about from which block it is referred to, and the management block to manage the state of data block by bit map is provided. Therefore, even if the system stops when the structure of system is changed, there occurs no inconsistency in the structure of file system. 
     Also, in this invention, the data block is managed while being divided into data area and management area, thereby saving information about from which block it is referred to, and the management block to manage the state of data block by bit map is provided with the transient state management area, by checking this area part to be restored can be found. Therefore, even if an unavailable data block is yielded in the structure of file system due to the stop of system in changing the structure of system, it can be restored. 
     Although the invention has been described with respect to specific embodiment for complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modification and alternative constructions that may be occurred to one skilled in the art which fairly fall within the basic teaching here is set forth.