摘要:
An apparatus, system, and method are disclosed for executing functions in an event driven environment. A bridge module stores parameters and a proxy function pointer for a proxy function in a bridge structure for a co-routine context executing in a co-routine environment. The proxy function is configured to execute in an event driven environment. The bridge module also stores a bridge pointer for the bridge structure in a bridge pointer register of an event driven context structure. A swap context module swaps to the event driven context. An execute module retrieves the proxy function pointer from the bridge structure using the bridge pointer if the bridge pointer register is not null, executes the proxy function, and stores the results of the proxy function in the bridge structure.
摘要:
A computer system includes a cache and a data storing system. The data storing system uses a write-once read-many (WORM) disk for storing computer data. The disk stores data in addressable so-called continuation chains. The cache stores pages of data in sets; each set being derived from but one of the continuation chains as having addressing affinity. Page replacement of the cache is in two steps. A first step selects the set having a page of data to be cast out. A least recently used (LRU) selection identifies the set. A second step in the page replacement is performed in one of two procedures. A first procedure, such as for sequentially processed data, selects the LIFO or page of data that was last stored in the cache of any pages in the LRU set. In a second procedure, such as for non-sequentially processed data, any one of a plurality of page selection procedures may be used, such as an LRU procedure for identifying the page of the selected set to be cast out of the cache.
摘要:
A network attached storage device comprising a first file system, a first file system driver, a redirection pseudo device driver, a second file system, and a second file system driver. A method using Applicant's network attached storage device to write information to an information storage medium comprising a plurality of storage blocks.
摘要:
A method of enabling state save and debug operations for co-routines for first failure data capture (FFDC) in an event-driven environment. A stack management utility allocates space for a context structure, which includes a state field, and a stack pointer in a buffer. A context management utility initializes a first context structure of a first co-routine and saves a state of the first context structure in response to an execution request for a second co-routine. The context management utility sets a second context structure as a current context. When execution of the current context is complete, the context management utility restores the first context structure of the first co-routine as the current context. If the state field is not set to a valid value, a state save function “state saves” all allocated co-routine stacks and context structures, restores the entire system to a previous valid state, and restarts operations.
摘要:
A method of enabling state save and debug operations for co-routines for first failure data capture (FFDC) in an event-driven environment. A stack management utility allocates space for a context structure, which includes a state field, and a stack pointer in a buffer. A context management utility initializes a first context structure of a first co-routine and saves a state of the first context structure in response to an execution request for a second co-routine. The context management utility sets a second context structure as a current context. When execution of the current context is complete, the context management utility restores the first context structure of the first co-routine as the current context. If the state field is not set to a valid value, a state save function “state saves” all allocated co-routine stacks and context structures, restores the entire system to a previous valid state, and restarts operations.
摘要:
An apparatus, system, and method are disclosed for executing functions in an event driven environment. A bridge module stores parameters and a proxy function pointer for a proxy function in a bridge structure for a co-routine context executing in a co-routine environment. The proxy function is configured to execute in an event driven environment. The bridge module also stores a bridge pointer for the bridge structure in a bridge pointer register of an event driven context structure. A swap context module swaps to the event driven context. An execute module retrieves the proxy function pointer from the bridge structure using the bridge pointer if the bridge pointer register is not null, executes the proxy function, and stores the results of the proxy function in the bridge structure.
摘要:
A system for recording on a rewritable (erasable) optical disk is provided which reduces the data integrity exposure and negative performance impact of separate erase and write passes when writing data to such a disk in a disk drive. In a preferred embodiment, the system includes a non-volatile storage buffer established and maintained by a driver at a level below the file system. Space in the buffer is kept pre-erased for temporarily storing blocks of data transmitted by a host device and destined for sectors in a logical partition on a rewritable optical disk. Mapping and control information are also maintained in the buffer. In a background operation, transparent to the host, the blocks of data are copied from the buffer to their destination sectors in the logical partition. The buffer can be located on the optical disk itself or can be on a separate device, such as non-volatile random access memory or magnetic media. The present invention eliminates data exposure between the erase and write passes of a typical two- or three-pass write operation while enhancing performance by eliminating the erase pass immediately before a write.
摘要:
An apparatus and method for performing parity striping of optical disks for error recovery and data reconstruction. A parity group is created by identifying volumes and then setting a parity flag to indicate whether the data has been updated since a most recent writing of parity information. Parity striping is performed either partially or fully off-line or upon exporting the parity group from the storage array. The striping involves calculating parity, which may be done by Exclusive Or'ing the data and then writing parity to a parity disk. In one embodiment, the invention is implemented with any array of redundant optical disks. In another embodiment the invention is implemented with a redundant array of independent libraries. In either embodiment, striping may be performed when the media is archived to an external shelf. When the invention is implemented with a redundant array of independent libraries, striping may be performed in an intermittent fashion during background time. Intelligence is provided so that the striping method is employed with knowledge regarding the media format. In the case of magneto-optical media this means that the system is capable of recognizing pre-erased sectors. The system utilizes the format to reduce the work of striping and reconstruction. Because the system is programmed to recognize the pre-erased sectors, no error recovery is induced.
摘要:
A write-once read-many (WORM) disk stores data in continuation chains. Each chain being arranged as a plurality of groups of contiguous datastoring areas (such as disk sectors, clusters of sectors, tracks and the like). The groups are separated on the disk. Each recorded area in the chain has a forward pointer to a next succeeding area of the chain, whether such succeeding area is in the same chain or in a next chain. A last succeeding one of the groups includes unrecorded allocated area(s) of the chain. To find the end of the chain, only the last area of each successive group is accessed and read until a last area of a last group is accessed with an indication that such last group area is unrecorded. Then the entire last group is scanned to find the last recorded area of the chain.
摘要:
Policy based data shredding is provided to be executed in a storage controller. A logical volume stored on media, such as magnetic disk drives, may be assigned one or more possible shredding policies. Storing and executing the policies in the controller is more efficient than performing host-based shredding and requires the use of less valuable bandwidth between the host and the controller. In addition, the controller is aware of failures, degradation and offline status of each drive in an array, and is able to thereby terminate or modify a shredding operation if necessary. Each policy includes the number of write passes to be performed on the media location in which the volume is stored and the pattern to write on the media location. The policy may also indicate whether to update a parity area during each of a plurality of write passes or only on the first.