摘要:
A differential snapshot is established and maintained for a set of files stored on a volume. Copy-on-write operations are avoided for logically insignificant moves of blocks, such as the block rearrangements characteristic of defragmentation utilities. A file system passes a block copy command to lower-level drivers that are to inform the snapshotter that a block move operation is not logically meaningful. When the logically insignificant move is of a block whose data forms part of the data captured in the snapshot virtual volume, and when the move is to a block location that is functioning as logical free space, the snapshotter can simply modify its block bitmap and update translation table entries without needing to perform a copy-on-write.
摘要:
A method for establishing and maintaining a differential snapshot of a set of files stored on a volume is disclosed. The invention achieves processing time and disk space optimizations by avoiding copy-on-write operations for logically insignificant moves of blocks, such as the block rearrangements characteristic of defragmentation utilities. A file system enhancement enabling the passing of a block copy command from the file system to lower-level drivers, is used to inform the snapshotter that a block move operation is not logically meaningful. When the logically insignificant move is of a block whose data forms part of the data captured in the snapshot virtual volume, and when the move is to a block location that is functioning as logical free space, the snapshotter can simply modify its block bitmap and update translation table entries without needing to perform a copy-on-write.
摘要:
A file system enables the real-time correction of detected corruptions to on-disk data. An enhancement to a file system responds in real time to file system corruptions detected on a running volume, and repairs the corruptions at the point where the file system detects them. Upon detection of a corruption by the file system, the system enhancement records information describing the nature of the corruption. A repair scan is defined for each type of corruption encountered. Repair scans can be run at the top level of execution in the current thread in which the corruption is detected, or they may require a dedicated thread to service the repair operation.
摘要:
An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries. The directory entry types can define whether a cluster chain corresponding to a file can be contiguously allocated.
摘要:
A model in which filter drivers are managed to receive callbacks for I/O requests in which the filter drivers have registered an interest. Per-volume instances of filter drivers register with a filter manager for pre-callbacks (for I/O to the file system) and post-callbacks (for I/O from the file system), and identify which I/O requests (e.g., create, read, write) they are registering to receive callbacks. The filter manager orders the instances for callbacks. When an I/O request is received, the filter manager converts the I/O request to callback data and calls the interested filters in the callback order, whereby the filter instances can process the I/O data. As the request returns from the file system, filters desiring post callbacks are called in the reverse order. Efficient context management for the filters and other functions, such as non-reentrant file I/O, are also provided by the model.
摘要:
A system and method for returning a sorted result set of information corresponding to files in a file system that have properties which match user query criteria. A view index of files sorted by at least one property common to those files is provided. The view index may be synchronously or asynchronously updated as files are changed. Upon receipt of query requesting a result set of files corresponding to properties in the query criteria, the view index is compared to determine if the properties are maintained in an order that corresponds to the query criteria. If so, the view index is accessed to locate information of files that have the matching properties, and the result set is returned. The view index may be associated with a view description of the identities and order of the properties. The comparison to determine if a view index corresponds with the criteria may then be performed against the view description.
摘要:
A method in a computer system for loading an operating system into memory through use of a file system that is stored on secondary storage. The operating system is stored on secondary storage as files with file names. Before the operating system is loaded into memory, a bootstrap program loads the file system from secondary storage into memory. The file system is stored at locations in secondary storage that are known to the bootstrap program. The file system also has a mapping of file names of operating system files to locations in secondary storage that contain the operating system files. After loading the file system, the bootstrap program requests the loaded file system to load the operating system files by specifying the file names of the operating system files to be loaded. In response to the request, the file system uses the mapping to retrieve the locations in secondary storage of the operating system files specified by the file names. The loaded file system then loads the operating system files into memory from the retrieved locations of secondary storage. Control can then be transferred to the operating system files.
摘要:
An extensible file system format for portable storage media is provided. The extensible file system format includes the specification of primary and secondary directory entry types that may be custom defined. The primary and secondary directory entry types can be further classified as critical and benign directory entries.
摘要:
Kernel objects for implementing a transaction have a security descriptor applied thereto. The kernel objects include, at least, a transaction object, a resource management object, and an enlistment object. The security descriptor, otherwise known as an access control list, identifies at least one user, an operation to be performed on the kernel object to which the security descriptor is applied, and a right indicating that the identified user is permitted or prohibited to perform the operation.
摘要:
Transactions among kernel objects utilize application program interfaces (APIs) to implement operations on a transaction object and APIs to implement operations on a resource manager object.