G06F12/0261

Garbage collection integrated with physical file verification

System generates data structure based on unique identifiers of objects in storages and sets indicators in positions corresponding to hashes of unique identifiers of objects. The system copies active objects from one storage to another, if number of active objects in storage does not satisfy threshold, and resets indicators in positions in data structure corresponding to hashes of unique identifiers of active objects copied to the other storage. The system generates another data structure based on unique identifiers created while generating data structure, positions in other data structure corresponding to hashes of the unique identifiers. System sets indicators in positions in the other data structure corresponding to hashes of unique identifiers of data objects in active storages while generating data structure. System resets indicators in positions in data structure corresponding to hashes of the unique identifiers corresponding to indicators set in positions of the other data structure.

Single input graphical user interface control element and method

Described are methods, systems and computer readable media for GUI control elements and associated processing methods.

INTERVAL GARBAGE COLLECTION FOR MULTI-VERSION CONCURRENCY CONTROL IN DATABASE SYSTEMS

Technologies for performing garbage collection in database systems, such as multi-version concurrency control (MVCC) database systems, are described. For example, different garbage collection techniques can be used separately or in various combinations, including interval garbage collection, group garbage collection, table garbage collection, and combinations. For example, a particular type of combination, called hybrid garbage collection, uses technique from interval garbage collection and group garbage collection, or from interval, group, and table garbage collection.

MULTI-PORT QUEUEING CACHE AND DATA PROCESSING SYSTEM INCLUDING THE SAME

In some embodiments, a multi-port queueing cache includes a plurality of first ports, a plurality of second ports, a plurality of request handlers respectively coupled to the plurality of first ports, a cache storage unit coupled to the plurality of second ports, a reserve interface configured to exchange at least one address and at least one reserved cache line number, and a request interface configured to exchange the at least one reserved cache line number and at least one data. The reserve interface and the request interface are disposed between the plurality of request handlers and the cache storage unit. The cache storage unit includes a plurality of cache lines configured to store the plurality of data. The cache storage unit is configured to output a portion of the plurality of addresses, and receive a portion of the plurality of data corresponding to the portion of the plurality of addresses.

Remote data object publishing/subscribing system having a multicast key-value protocol

Described are methods, systems and computer readable media for data object publishing/subscribing via a multicast key-value protocol.

HOST DEVICE
20170351608 · 2017-12-07 · ·

According to one embodiment, a host device is provided. The host device includes a processor that stores a log of a file in plurality of storages using a log -structured file system. The processor selects in which of the plural storages to store a log which is determined to be live in garbage collection which is a process of determining whether the log is live.

MANAGING OBJECTS STORED IN MEMORY
20170344473 · 2017-11-30 ·

In one example in accordance with the present disclosure, a method for managing objects stored in memory may include identifying a first object in a heap. The heap may be accessed by a plurality of mutator threads executing within a first plurality of operating system processes. The method may also include determining that the first object is a reachable object and determining that a first range of memory locations in the heap does not contain any reachable object. The method may also include receiving an allocation request from a second mutator thread from the plurality of mutator threads and allocating a first free chunk of memory including at least a part of the first range of memory locations to the second mutator thread.

OBJECT DESCRIPTORS
20170344468 · 2017-11-30 ·

In one example in accordance with the present disclosure, a method may include identifying, by a first operating system process in a computer system accessing a shared memory heap, a first object at a first memory address in the shared memory heap. The first object may have been previously allocated in the shared memory heap by a second operating system process. The method may also include identifying an object descriptor associated with the first object at a second memory address in the shared memory heap. The object descriptor occupies a number of bits of memory independent of the type. The method may also include determining a size of the first object based on the object descriptor, enumerating, based on the object descriptor, fields associated with the first object and performing an action based on each field of the enumerated fields.

Data storage device performance prediction based on valid fragment count

Systems and methods data storage device performance prediction based on garbage collection resources are described. The data storage device may process host storage operations and determine a valid fragment count parameter for a current or future data block. Based on the valid fragment count parameter a predicted performance value for host storage operations is determined and the host device is notified of the predicted performance value.

Methods for updating reference count and shared objects in a concurrent system

A method for referencing and updating objects in a shared resource environment. A reference counter counts is incremented for every use of an object subtype in a session and decremented for every release of an object subtype in a session. A session counter is incremented upon the first instance of fetching an object type into a session cache and decremented upon having no instances of the object type in use in the session. When both the reference counter and the session counter are zero, the object type may be removed from the cache. When the object type needs to be updated, it is cloned into a local cache, and changes are made on the local copy. The global cache is then locked to all other users, the original object type is detached, and the cloned object type is swapped into the global cache, after which the global cache in unlocked.