摘要:
A computer-implemented sorting method for efficiently sorting large data sets in computing environments that include virtual memory and processor caching, the method including determining available physical memory, identifying portions of the data set that each fit in the available physical memory, determining available cache, identifying sub-portions within the portions that each fit in the available cache, sorting each sub-portion, repeating the identifying portions, identifying sub-portions, and sorting for each portion of the data set, and merging the sorted sub-portions and portions such that the data set is sorted. The sorting method avoids the use of virtual memory and seeks to identify sub-portions that fit in available cache.
摘要:
The subject invention relates to systems and methods that enable dynamic programming and execution of an electronic communications dialog. In one aspect, a configurable messaging system is provided. The system includes a configuration file to describe interface options of a computerized dialog session, wherein the configuration file specifies interface activities and state transitions between the interface options within the configuration file. A state controller executes the interface options during communications activities with the dialog session. The configuration file can also describe prompt elements to solicit information from users or applications.
摘要:
A data storage array may be made up of several storage devices, each of which may contain array metadata that may allow portions of the storage array to be used. A system may have a file system manager that may receive and respond to file system commands and a storage device manager that may store data on the several storage devices. Array metadata defining where data is stored within the storage array is stored on each device within the array. A policy engine may identify data to be stored on the array and determine if the data contains array metadata or other types of data and may store the data on every device, devices having specific characteristics, two or more devices, or one device.
摘要:
A thin provisioned storage system may have a file system manager that presents a logical storage system to a user and a storage management system that manages physical storage devices. When a block of data is freed at the logical layer, the file system manager may identify the freed block and send a command to the physical layer. The physical layer may identify the corresponding physical block or blocks and free those blocks on the physical layer. The storage management system may use a table to manage the location of blocks of data across multiple physical storage devices.
摘要:
Backup and restore technology comprising a backup engine, one or more client backup modules coupled to the backup engine via a backup protocol, and a backup database coupled to the backup engine, the backup database including a set of clusters, the set of clusters forming one or more backups, wherein each cluster of the set of clusters is unique such that single-instance storage across clients is achieved.
摘要:
Synchronization services provide a concurrency-safe reader/writer lock supporting a time out feature. The lock can be implemented using lockless data structures to provide efficient synchronization services. Various features such as lock nesting and auto-transformation address common scenarios arising in componentized programs. The lock supports upgrading and suspension, and the time out feature can support an efficient, low-cost optimistic deadlock avoidance scheme. Peculiarities of the reader/writer scenario are addressed in an efficient way to maintain lock stability and consistency, thus providing synchronization services suitable for implementation at the kernel level. In one implementation using event objects, the events are managed for high efficiency and stability of the lock. For multiprocessor machines, a hybrid lock avoids a context switch by behaving as a spin lock before waiting for the lock to become available.
摘要:
A fault tolerant computer system distributes audit trail files containing audit records, across an arbitrary number of disk volumes. After one audit trail file becomes full, audit records are directed toward a next audit trail file stored on a different disk volume. Storage of newly generated audit rotates through the disk volumes in round-robin fashion. Full audit trail files are eventually archived and their space becomes available again for renaming and storage of newly generated audit records. The number of audit records available for on-line recovery after a failure is not limited to the storage capacity of any single disk volume. Furthermore, there is no contention for disk access between archiving of full audit trail files and storage of newly generated audit records.
摘要:
System-critical files are protected from being inadvertently modified or deleted by placing them in a Reserve name space of storage that requires any process seeking modifying access to the Reserve name space to have a "Right" to do so. The right to modifying access is garnered by a process first making a call to a system library procedure that causes a memory-stored data structure associated with the calling process to be modified, identifying the process as one with a Right to make modifying access to the Reserve name space. Any attempt to modify, delete, or create any file residing in the Reserve name space without the Right will be refused.
摘要:
An improved recovery method utilizes sequence numbers to order log records and reduce the excess compensating actions due to a failure during recovery. Next undo records are written to the log after a preset number of compensating actions which include the sequence number of the record currently being scanned. After a failure, all records between the next undo record and the record having the sequence number included in the next undo record are ignored during when the log is scanned backwards.
摘要:
A message transport system may use a publication subscription mechanism to connect nodes and transport messages through the nodes. Each node may establish connections to other nodes, and subscription requests and publication notifications may be passed across the nodes to establish paths for messages. When a message is published, the message may be passed over those connections for which a subscription is active. A path identifier may be added to the message as it is passed between nodes, and the path identifier may be used by a subscribing node for identification of the information being received. When a subscriber notification is removed, the path may be deconstructed across multiple nodes. The nodes may be arranged such that each node is agnostic to any connections past the nodes to which it is connected, and may allow any node to subscribe to any information published within the network.