Inventors list

Assignees list

Classification tree browser

Top 100 Inventors

Top 100 Assignees


Based on data size

Subclass of:

711 - Electrical computers and digital processing systems: memory

711100000 - STORAGE ACCESSING AND CONTROL

711170000 - Memory configuring

Patent class list (only not empty are listed)

Deeper subclasses:

Entries
DocumentTitleDate
20110179248ADAPTIVE BANDWIDTH ALLOCATION FOR MEMORY - A device and methods are provided for adaptive bandwidth allocation for memory of a device are disclosed and claimed. In one embodiment, a method includes receiving, by a memory interface of the device, a memory access request from a first client of the memory interface, and detecting available bandwidth associated with a second client of the memory interface based on the received memory access request. The method may further include loading a counter, by the memory interface, for fulfilling the access request, wherein the counter is loaded to include bandwidth associated with the first client and the available bandwidth associated with the second client, and granting the memory access request for the first client based on bandwidth allocated for the counter.07-21-2011
20080307188Management of Guest OS Memory Compression In Virtualized Systems - The present invention provides a system and method for managing compression memory in a computer system. This system includes a hypervisor having means for identifying a operating system having a plurality of memory pages allocated, means for counting the number of a plurality of memory pages allocated, and means for counting a number of free space pages in the compressed memory. The hypervisor further includes means for determining if the number of free space pages is less than a predetermined threshold, and means for increasing the number of free space pages if less than a predetermined threshold.12-11-2008
20090187725Method and Data Processing System for Generating and Applying Patches to a Computer Program Code Concurrently with its Execution - A method and data processing system are disclosed for concurrently loading a plurality of new modules while code of a plurality of modules of an original (i.e., currently running) computer program is loaded and executed on a computer system. The method may comprise allocating a module TLS block for each thread within an initial computer program, wherein the allocated module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded. The method further may comprise providing constant offsets between module TLS block pointers corresponding to the module TLS blocks and the module thread variables for all of the threads. The disclosed method may be used to add modules to the original computer program and/or to apply a concurrent patch by replacing one or more of the plurality of original computer program modules.07-23-2009
20110191565EXTENT SIZE OPTIMIZATION - A method for automatically optimizing an allocation amount for a data set includes receiving an extend request, specifying an allocation amount, for a data set in a storage pool. The method increments a counter in response to receiving the extend request. In the event the counter has reached a threshold value, the method automatically increases the allocation amount of the extend request, such as by multiplying the allocation amount by a multiplier. In the event the allocation amount is larger than a largest free extent in the storage pool, the method automatically decreases the allocation amount of the extend request to correspond to the largest available free extent. Such a method reduces or eliminates the chance that an extend request will fail, and reduces overhead associated with extending and consolidating extents. A corresponding apparatus and computer program product are also disclosed herein.08-04-2011
20090193220MEMORY MANAGEMENT DEVICE APPLIED TO SHARED-MEMORY MULTIPROCESSOR - A plurality of processors are capable of parallel operation. A memory is shared by the plurality of processors. The memory has an allocated memory size indicating the size of an area allocated to an allocatable area in the memory at the request of one of the plurality of processors and a deallocated memory size indicating the size of a deallocated area in the allocated area. One of the plurality of processors compares the allocated memory size with the deallocated memory size, thereby determining whether the memory is reusable.07-30-2009
20110197046STORAGE APPLICATION PERFORMANCE MATCHING - A method for matching storage application performance in a multiple tier storage system is disclosed. Input/output (I/O) activity in the multiple tier storage system is monitored to collect statistical information. The statistical information is recurrently transformed into an exponential moving average (EMA) of the I/O activity having a predefined smoothing factor. Data portions in the multiple tier storage system are sorted into buckets of varying temperatures corresponding to the EMA. At least one data migration plan is recurrently generated for matching the sorted data portions to at least one of an available plurality of storage device classes. One data portion sorted into a higher temperature bucket is matched with a higher performance storage device class of the available plurality of storage device classes than another data portion sorted into a lower temperature bucket.08-11-2011
20100077174Memory allocation to store broadcast information - Methods and systems for allocating memory of user terminals are disclosed. A user terminal may determine a weight for one or more categories, each category being associated with Internet information to be broadcast. The user terminal also may determine an available memory size of memory and may allocate memory to the one or more categories for storing the Internet information based on the weights and the available memory size.03-25-2010
20120265960ELECTRONIC DEVICE, ELECTRONIC TIMEPIECE, AND PROGRAM - A CPU measures time. A memory unit stores the values of the times measured by the CPU as data groups for each measuring of time, and stores the data groups in association with protection information showing whether the data groups are in a protection state or an unprotected state. An input switch receives an instruction as an input. The CPU sets protection information stored in the memory unit on the basis of the instruction received by the input switch. Further, the CPU deletes the data of data groups in an unprotected state from the memory unit, on the basis of the protection information stored in the memory unit, when there is no capacity for storing the measured time values in the memory unit.10-18-2012
20130042085Group-By Size Result Estimation - A method and system for accurately estimating a result size of a Group-By operation in a relational database. The estimate utilizes the probability of union of the columns involved in the operation, as well as the relative cardinality of each column with respect to the other columns in the operation. In addition, the estimate incorporates the use of table filters when indicated such that table filters are applied prior to determining the size of the tables in the operation, as well as including equivalent columns into the list of columns that are a part of the Group-By operation. Accordingly, the estimate of the result size of the operation includes influencing factors that provide an accurate estimation of system memory requirements.02-14-2013
20090157997USING IN-LEAF MULTIPLE TRIANGLE PACKING FOR KD-TREES SIZE REDUCTION - Embodiments of a binary layout and packing scheme are disclosed for storing kd-tree information. Information about triangles belonging to the tree leaf may be stored inside the leaf structure itself. Multiple triangles in a corresponding leaf may be stored in the leaf of the kd-tree structure.06-18-2009
20100332785MEMORY MANAGEMENT SYSTEM AND METHOD THEREOF - A system for managing memory of an electronic device includes a storage unit, a calculation unit, a determination unit, and an allocation unit. The storage unit stores a dynamic allocation list. The calculation calculates a real time usage status of the memory and stores the real time usage status in the storage unit. The determination unit determines whether the electronic device is turned on for the first time. The allocation unit adjusts a partition of the memory according to the dynamic allocation list if the electronic device is not turned on for the first time.12-30-2010
20100106933METHOD AND SYSTEM FOR MANAGING STORAGE CAPACITY IN A STORAGE NETWORK - A system for managing configuration of a storage network having multiple storage resources is disclosed. The system uses a storage management policy to set parameters for detecting storage resource problems in the storage network. The system monitors the storage resources in the storage network based on the storage management policy. Based on the monitoring, the system detects limited storage resource conditions, and identifies one or more potential solutions to the condition. After identifying potential solutions, the system simulates effects on the storage resources of implementing individual solutions. Based on the simulations, the system then implements one or more selected solutions. These solutions may be selected automatically or by a user.04-29-2010
20090125698MEMORY CONTROLLER INCLUDING A HARDWARE COMPRESSION AND DECOMPRESSION ENGINE FOR MANAGING SYSTEM MEMORY AND GRAPHICAL OPERATIONS - An integrated memory controller (IMC) which includes data compression and decompression engines for improved performance. The memory controller (IMC) of the present invention preferably sits on the main CPU bus or a high speed system peripheral bus such as the PCI bus and couples to system memory. The IMC preferably uses a lossless data compression and decompression scheme. Data transfers to and from the integrated memory controller of the present invention can thus be in either two formats, these being compressed or normal (non-compressed). The IMC also preferably includes microcode for specific decompression of particular data formats such as digital video and digital audio. Compressed data from system I/O peripherals such as the hard drive, floppy drive, or local area network (LAN) are decompressed in the IMC and stored into system memory or saved in the system memory in compressed format. Thus, data can be saved in either a normal or compressed format, retrieved from the system memory for CPU usage in a normal or compressed format, or transmitted and stored on a medium in a normal or compressed format. Internal memory mapping allows for format definition spaces which define the format of the data and the data type to be read or written. Software overrides may be placed in applications software in systems that desire to control data decompression at the software application level. The integrated data compression and decompression capabilities of the IMC remove system bottle-necks and increase performance. This allows lower cost systems due to smaller data storage requirements and reduced bandwidth requirements. This also increases system bandwidth and hence increases system performance. Thus the IMC of the present invention is a significant advance over the operation of current memory controllers.05-14-2009
20090125697METHOD AND APPARATUS FOR ALLOCATION OF BUFFER - Provided are a method and apparatus for allocating a storage space that is to be used by a plurality of modules sequentially processing data. The method includes acquiring first capacity information regarding the capacity of a storage space needed for data processing of a first module and second capacity information regarding the capacity of a storage space needed for data processing of a second module that processes data consecutively to the first module, and allocating a first storage space to be used by both the first module and the second module based on at least one of the first capacity information and the second capacity information.05-14-2009
20090125696METHOD FOR PROCESSING A FILE, STORAGE MEDIUM AND PROCESSING ARRANGEMENT - A method for processing a file, a storage medium, and a processing arrangement. The method includes processing a file, the file being stored in a plurality of memory clusters of a storage medium, a portion of the file being modified and stored in a modification memory cluster, and the modified initial clusters being replaced by the respective modification memory clusters.05-14-2009
20130046951PARALLEL DYNAMIC MEMORY ALLOCATION USING A NESTED HIERARCHICAL HEAP - One embodiment of the present invention sets forth a technique for dynamically allocating memory using a nested hierarchical heap. A lock-free mechanism is used to access to a hierarchical heap data structure for allocating and deallocating memory from the heap. The heap is organized as a series of levels of fixed-size blocks, where all blocks at given level are the same size. At each lower level of the hierarchy, a collection of N blocks in the lower level equals the size of a single block at the level above. When a thread requests an allocation, one or more blocks at only one level are allocated to the thread. When threads are finished using an allocation, each thread deallocates the respective allocated blocks. When all of the blocks for a level have been deallocated, defragmentation is performed at that level.02-21-2013
20100070734Resource Reclamation in Data Storage - Managing resource reclamation in data storage systems is provided. A volume deletion metadata recorder records metadata for one or more deleted volumes. A policy engine, responsive to a predetermined policy rule, applies the policy rule to the metadata. The policy engine initiates policy-controlled data storage space reclamation for the one or more deleted volumes. A volume reclaimer, responsive to the policy engine, reclaims data storage space from the one or more deleted volumes. A resource allocator allocates the data storage space to satisfy a minimum requirement for available zeroed extents that comprise a minimum requirement to satisfy needs of late allocated storage volumes.03-18-2010
20110010520Block-Based Non-Transparent Cache - In an embodiment, a non-transparent memory unit is provided which includes a non-transparent memory and a control circuit. The control circuit may manage the non-transparent memory as a set of non-transparent memory blocks. Software executing on one or more processors may request a non-transparent memory block in which to process data. The control circuit may allocate a first block, and may return an address (or other indication) of the allocated block so that the software can access the block. The control circuit may also provide automatic data movement between the non-transparent memory and a main memory system to which the non-transparent memory unit is coupled. For example, the automatic data movement may include filling data from the main memory system to the allocated block, or flushing the data in the allocated block to the main memory system after the processing of the allocated block is complete.01-13-2011
20130067190MEMORY ALLOCATION METHOD, PROGRAM AND SYSTEM - A method for creating a buffer of a special class for accessing a specified memory space. The method includes the steps of: creating, by a processor of the computer system, a buffer of a special class, the buffer including a memory space that the processor is not permitted to access; and creating, by the processor, an accessible buffer of the class in access-permitted memory space by slicing off a portion of a created buffer of the class in response to a designation of the access-permitted memory space and size, where the processor includes: the special class for the buffer for accessing a memory space specified by an absolute address; and a function to create the class by slicing off the portion of the memory space specified by the class.03-14-2013
20110022815STORAGE ALLOCATION - Techniques for storage allocation of a data record are provided. The techniques include attempting to identify a first location for storing a data record, wherein the data record comprises one or more data record attributes, if the first location is identified, selecting the first location for storing the data record, and if the first location is not identified, identifying a second location for storing the data record using a cost penalty function and selecting the second location for storing the data record based on the cost penalty function.01-27-2011
20120233437HIERARCHICAL STORAGE SYSTEM - Pools of a plurality of types of storage devices are configured and are included in different layers. Based on at least one storage device of the same type, the pools of types corresponding to the type are configured. The controller in the storage system carries out storage location change processing in which the storage location of targeted data that has been stored into the targeted first real page allocated to a virtual page in a virtual volume is changed to the second real page that has not been allocated in a pool of the second type different from a pool of the first type including the targeted first real page in the case in which the controller conforms to the prescribed storage location change conditions. A size of a real page is different depending on a type of a pool.09-13-2012
20130166873MANAGEMENT OF LOW-PAGING SPACE CONDITIONS IN AN OPERATING SYSTEM - A virtual memory management unit can implement various techniques for managing paging space. The virtual memory management unit can monitor a number of unallocated large sized pages and can determine when the number of unallocated large sized pages drops below a page threshold. Unallocated contiguous smaller-sized pages can be aggregated to obtain unallocated larger-sized pages, which can then be allocated to processes as required to improve efficiency of disk I/O operations. Allocated smaller-sized pages can also be reorganized to obtain the unallocated contiguous smaller-sized pages that can then be aggregated to yield the larger-sized pages. Furthermore, content can also be compressed before being written to the paging space to reduce the number of pages that are to be allocated to processes. This can enable efficient management of the paging space without terminating processes.06-27-2013
20090144518SYSTEM AND METHOD FOR STORAGE MANAGEMENT - A system and method for monitoring the storage estate of an organization using an interactive website that is configured to produce and display a novel set of key performance indicators (KPIs) related to the storage estate, including KPIs related to data collected from at least one of storage area network data and network attached storage data. In one embodiment, the novel set of KPIs includes one or more of protection efficiency, application efficiency, and snapshot overhead, where protection efficiency is calculated as a ratio of logical addressable data storage volume to total physical volume of data storage for storage area network data of the organization, application efficiency is calculated as a fraction of disk storage allocated to end user devices that is actually used by the end user devices for storage area network data, and snapshot overhead is calculated as a ratio of a volume of storage allocated for replicated copies of data to allocated storage for network attached storage data.06-04-2009
20110040947Apparatus and Method for Memory Management and Efficient Data Processing - Multiple memory pools are defined in hardware for operating on data. At least one memory pool has a lower latency that the other memory pools. Hardware components operate directly on data in the lower latency memory pool.02-17-2011
20090077340STORAGE AREA NETWORK (SAN) FORECASTING IN A HETEROGENEOUS ENVIRONMENT - The present invention provides an approach for SAN forecasting in a heterogeneous environment. Specifically, under the present invention capacity data on the heterogeneous environment is gathered. Capacity management techniques will then be used to analyze the SAN utilization, identify growth trends and patterns. Proactively, plans are made to account for these changes. Thereafter, a Capacity Planning Margin (CPM) will be applied to the forecast to reflect actual customer usage. The CPM adjusted forecasts will then be reviewed. Then, the SAN environment can be monitored by comparing actual vs. planned and return to adjust the forecast accordingly.03-19-2009
20110302388Hierarchical Scalable Memory Allocator - Aspects of the subject matter described herein relate to memory management. In aspects, a hierarchical, customized memory allocator may be created that allocates memory to memory consumers. The memory allocator may use a data structure to classify blocks of memory at each level in the hierarchy according to fill factors of the blocks of memory. Allocations may be based on lifetime characteristics, proximity to consumer, fill factor, and other factors. An allocator may use one or more active blocks to allocate memory to consumers. The number of active blocks for an allocator may depend on contention.12-08-2011
20110302389MEMORY MANAGEMENT METHODS IN A COMPUTER SYSTEM WITH SHARED MEMORY MAPPINGS - A memory management sub-system includes code executable by a processor fir performing selecting a plurality of contexts, and selecting a sample of the separately allocable portions of an address space for each of the contexts. For each of the selected allocable portions, a corresponding portion of the host memory to which the selected allocable portion is mapped is determined, and a count corresponding to a number of separately allocable portions of any context that are commonly mapped to the corresponding portion of the host memory. For each context, a metric is computed that is a function of the counts for that context. Host memory is allocated among the contexts at least in part based on their respective metrics.12-08-2011
20110296133APPARATUS, SYSTEM, AND METHOD FOR CONDITIONAL AND ATOMIC STORAGE OPERATIONS - An apparatus, system, and method are disclosed for implementing conditional storage operations. Storage clients access and allocate portions of an address space of a non-volatile storage device. A conditional storage request is provided, which causes data to be stored to the non-volatile storage device on the condition that the address space of the device can satisfy the entire request. If only a portion of the request can be satisfied, the conditional storage request may be deferred or fail. An atomic storage request is provided, which may comprise one or more storage operations. The atomic storage request succeeds if all of the one or more storage operations are complete successfully. If one or more of the storage operations fails, the atomic storage request is invalidated, which may comprise deallocating logical identifiers of the request and/or invalidating data on the non-volatile storage device pertaining to the request.12-01-2011
20100023724Network Based Virtualization Performance - The disclosed embodiments support improvements in network performance in networks such as storage area networks. This is particularly important in networks such as those implementing virtualization. These improvements, therefore, support improved mechanisms for performing processing in network devices such as switches, routers, or hosts. These improvements include various different mechanisms which may be used separately or in combination with one another. These mechanisms include methods and apparatus for processing traffic in an arbitrated loop, performing striping to support fairness and/or loop tenancy, performing configuration of network devices such as switches to enable virtualization to be performed closest to the storage device (e.g., disk), ascertaining a CPU efficiency that quantifies the impact of virtualization on a processor, and configuring or accessing a striped volume to account for metadata stored in each storage partition.01-28-2010
20100169605ARBITRARY PRECISION FLOATING NUMBER PROCESSING - Techniques for providing arbitrary precision floating number (APFN) processing are disclosed. In some aspects, an APFN store may be used to store a large number (i.e., an APFN) having many significant digits, which in turn may enable a high degree of precision in mathematical operations. An APFN module may be used to create and define the APFN store. The APFN module may enable a user to define a precision (significant digits) for the large number that corresponds to the size of an array of bytes in the APFN store that are allocated for storing the large number. In further aspects, the APFN store may be used to store additional intermediary data and a resultant.07-01-2010
20120131302CONTROL METHOD OF VIRTUAL VOLUMES AND STORAGE APPARATUS - Multiple types of storage devices which have different performance are appropriately allocated to multiple virtual volumes in accordance with the performance requirements of the respective virtual volumes. In cases where, among virtual volumes 05-24-2012
20100115224MEMORY APPARATUSES WITH LOW SUPPLY VOLTAGES - Low supply voltage memory apparatuses are presented. In one embodiment, a memory apparatus comprises a memory and a memory controller. The memory controller includes a read controller. The read controller prevents a read operation to a memory location from being completed, for at least N clock cycles after a write operation to the memory location, where N is the number of clock cycles for the memory location to stabilize after the write operation.05-06-2010
20120110294METHOD OF MEMORY MANAGEMENT FOR SERVER-SIDE SCRIPTING LANGUAGE RUNTIME SYSTEM - A method of memory management includes allocating a portion of a memory as a memory heap including a plurality of segments, each segment having a segment size; performing one or more memory allocations for objects in the memory heap; creating a free list array and class-size array in a metadata section of the memory heap, the class-size array being created such that each element of the size-class array is related a particular one of the plurality of segments and the free list array being created such that each element of the free list array is related to a different size class; and initializing the heap when it is determined that the heap may be destroyed, initializing including clearing the free list array.05-03-2012
20080288738SYSTEMS AND METHODS OF DATA STORAGE MANAGEMENT, SUCH AS PRE-ALLOCATION OF STORAGE SPACE - A system and method for pre-allocating space on a storage medium is described. In some cases, the system receives two or more data items to be stored on a storage medium, pre-allocates a single, contiguous block of space on the medium, and stores the two or more data items within the single, contiguous block of space.11-20-2008
20090276602MEMORY MANAGEMENT SYSTEM FOR REDUCING MEMORY FRAGMENTATION - A memory management system for a process formulated in the C/C++ language in a processing unit includes an allocator which processes memory blocks of predetermined size, for example 64 Kb. Large objects are defined as being objects having a size of between 256 and 64 Kb. For such objects, 64 Kb memory block is considered to be a memory region (“chunk”) able to accommodate several large objects of different sizes. When an object is no longer used by the process, the space freed can be returned to the operating system. Before this, this free space is merged with adjacent free spaces. To search for adjacent free spaces, the Bruijn sequence algorithm is used, applied to the bit field disposed in each predetermined memory region.11-05-2009
20090138672Storage controller and storage controller control method - A storage controller of the present invention can input and output data even when the track size, which is the host management unit, is not consistent with the block size of the storage device. A boundary correction unit adds gap data corresponding to a gap size to data in a buffer memory so that the boundary of the track and boundary of the block inside the storage device match. A guarantee code is added to each logical block received from the host, and these guarantee code-appended blocks are stored in a cache memory. By providing a gap in the storage device every 116 extended logical blocks, the start position of the lead block of a track matches up with the start position of the logical blocks of the storage device.05-28-2009
20120144149CAPACITY MANAGEMENT IN DEDUPLICATION STORAGE SYSTEMS - Various embodiments for capacity management in a deduplication computing storage environment by a processor device are provided. A deduplication storage capacity is estimated as a function of an expected deduplication ratio, the expected deduplication ratio being a combined average of a current deduplication ratio and a configured deduplication ratio, the current deduplication ratio depending on the data currently stored in the deduplication storage, and the configured deduplication ratio being an estimate made at a configuration stage of the deduplication computing storage environment.06-07-2012
20090089533Image Forming Apparatus and Computer-Readable Medium - Disclosed is an image forming apparatus including a communication section connected to a data processing apparatus through a communication line to perform image formation on the basis of data transmitted from the data processing apparatus through the communication section, the apparatus including: a plurality of storage sections each of which has a different free storage capacity and a different access speed; and a control section to obtain data size information of an XPS file from the XPS file including the data size information thereof in a head of a file data, frame, the XPS file being received from the data processing apparatus through the communication section, to select a storage section to store the XPS file from the plurality of storage sections on the basis of the data size information, and to allow the selected storage section to store the XPS file.04-02-2009
20080276063DYNAMIC STACK ALLOCATING METHOD IN MULTI-THREADED OPERATING SYSTEMS - Provided is a method of dynamically reallocating a thread stack in a multi-threaded operating system, and more particularly, a method of dynamically allocating a thread stack of a multi-threaded operating system in an embedded system for wireless sensor nodes. The method includes the steps of: measuring sizes of data and non-data sections of a stack with respect to each thread; determining a new size of the non-data section of each stack based on the size of the data section of the stack measured with respect to each thread; and adjusting the size of the non-data section of each stack to the determined new size. According to the method, even without the source code analysis, an amount of memory spaces to be used can be reduced compared to that of a conventional static stack allocation method.11-06-2008
20090037685FAIR MEMORY RESOURCE CONTROL FOR MAPPED MEMORY - A method system and computer program product for managing memory allocation among plural virtual application environments supported by a common operating system. The technique may include establishing a mapping between a virtual application environment (or processes therein) and a mapping proxy that is reachable via a reverse mapping pathway adapted to facilitate identification of virtual addresses associated with a memory page frame. The virtual application environment (or processes therein) may be identified as an allocation recipient of the memory page frame by traversing the reversing mapping pathway to the mapping proxy. The memory page frame may be reclaimed for allocation to another virtual application environment by invalidating data therein or transferring the data to a storage resource based upon memory usage by the identified virtual application environment.02-05-2009
20090265526Memory Allocation and Access Method and Device Using the Same - A memory allocation method for a direct memory access controller (DMAC) in a limited-memory-size computer system includes the steps of allocating a memory space having continuous memory addresses to form a buffer of the DMAC; dividing the memory space successively into a plurality of first memory blocks and a second memory block, wherein the size of the second memory block is equal to a maximum frame size possibly accessed by the DMAC; and assigning the plurality of first memory blocks and the second memory block to a plurality of descriptors in order, wherein each of the plurality of descriptors is utilized for recording a memory address of a corresponding memory block as a pointers for the corresponding memory block.10-22-2009
20090157998Policy based storage appliance virtualization - An embodiment of the invention provides an apparatus and method for a policy-based storage appliance virtualization that identifies the storage space based on a desired storage management operation type. One example of a storage management operation type is the allocation of storage space from a storage appliance(s) to a host(s). The requested storage space amount to be allocated to a host is first specified in a management console. The management console checks one or more policies and compares the policies with the requested storage space amount and identity of the host, so that the management console identifies the storage space(s) that are available for allocation from a storage appliance(s) to the host. The management console may generate a candidate virtualized storage pool identification that identifies the storage space(s) that are available for allocation from the storage appliance(s) to the host. The server administrator then selects the storage space(s) to be allocated to the host. The policies may also be used as constraints to other storage management operation types besides the above-mentioned storage allocation to hosts.06-18-2009
20100138629STORAGE APPARATUS AND STORAGE AREA ALLOCATION METHOD - A storage apparatus is provided with a storage area for storing data sent from a host computer, and a virtual/logical volume to which a dynamically variable storage area is allocated from within the storage area, the volume being provided to the host computer, and this storage apparatus is configured to include: a pool area generation unit for generating a plurality of pool areas composed from the storage area; a setting unit for setting, for each of the plurality of pool areas generated by the pool area generation unit, an allocation unit size for allocating a storage area from within the storage area provided by the pool area to the virtual/logical volume; a selecting unit for selecting, when data to be stored in the storage area is sent from the host computer, a pool area from among the plurality of pool areas having the allocation unit size set by the setting unit, in accordance with the size of the sent data; and an allocation unit for allocating a storage area from within the storage area provided by the pool area selected by the selecting unit to the virtual/logical volume.06-03-2010
20100138628SYSTEM AND METHOD FOR DYNAMIC MEMORY ALLOCATION - A method for managing the allocation of memory to one or more applications. The method includes allocating a variety of fixed size memory blocks to a requesting application, each of the fixed size memory blocks being free of header information to maximize memory usage. Free, or unused blocks of data of the same fixed size are maintained in a freelist having a number of block roots corresponding to the number of differently fixed size memory blocks. Each block root stores a root pointer to an unused memory block previously allocated to the application. To conserve memory, each unused memory block will store branch pointers to other identically sized unused memory blocks, thereby forming a sequential chain of unused memory blocks with the block root. Therefore, applications requesting the same sized memory block can re-use previously allocated fixed size memory blocks.06-03-2010
20120198199Virtual Storage Mirror Configuration in Virtual Host - A method and a system for configuring mirrors of virtual storage devices in a virtual host includes obtaining a topology connection relationship between the virtual storage devices to be configured with mirrors and the virtual host, where the topology connection relationship is a hierarchical relationship in a tree shape with the virtual host as a root node and the virtual storage devices to be configured with mirrors as leaf nodes, and configuring the mirrors of the virtual storage devices to be configured with mirrors in the virtual host according to the obtained topology connection relationship. The method and the system for configuring mirrors of virtual storage devices in a virtual host can increase reliability.08-02-2012
20090055617Apparatus, System, and Method for Dynamically Allocating Main Memory Among A Plurality of Applications - A method is disclosed for dynamically allocating main memory among applications. The method includes maintaining a first list and a second list, each list having a plurality of pages, maintaining a cache memory module having a selected size, and resizing the selected size by adaptively selecting the first or second list and adding pages to the selected list to increase the selected size and subtracting pages from the selected list to decrease the selected size.02-26-2009
20090024821Device for storing data and method for dividing space for data storing - A device for data storing with logically separated areas has a partition divided into logically separated blocks (01-22-2009
20090198945System and Method For Configuring Storage Resources For Database Storage - A system and method for configuring storage resources for database storage are disclosed. A method may include mapping at least one first tablespace having a first block size to at least one first logical unit. The method may also include mapping the at least one first tablespace and the at least one first logical unit to a first cache having a size equal to the first block size. In addition, the method may include mapping at least one second tablespace having a second block size to at least one second logical unit. The method may further include mapping the at least one second tablespace and the at least one second logical unit to a second cache having a size equal to the second block size.08-06-2009
20090198944SEMICONDUCTOR MEMORY DEVICE - An adaptive semiconductor memory device is used for being inserted into a host for storage. The semiconductor memory device comprises a non-volatile memory and a switch. The switch can be a logical switch or a physical switch that controls the semiconductor memory device to be in compliance with either a first specification version or a second specification version of the semiconductor memory device. The second specification version in comparison with the first specification version is used for higher capacity applications.08-06-2009
20110145538Storage region management method, storage region allocation method and program - A storage area management method for a data storage apparatus partitions an acquired storage area into storage areas with differing power-of-2 sizes and manages each of them. Also, a storage area allocation method receives an allocation request for a storage area that includes a requested allocation size, and acquires an available storage area whose size is the smallest power-of-2 size encompassing the requested allocation size, and obtains a binary expression of the requested allocation size, and in response to the received allocation request, allocates a contiguous storage area comprised of storage areas each of whose size is a power of 2 of a value of a bit position wherein a 1 is set in the binary expression.06-16-2011
20090055616MAINTAINING RESERVED FREE SPACE FOR SEGMENTED LOGICAL VOLUMES - A storage manager application implemented in a first computational device maintains a virtual logical volume having a plurality of segments created by the storage manager application, wherein space is reserved at the end of a physical volume corresponding to the virtual logical volume, and wherein the physical volume comprises a linear storage medium. A request is received to write data, at the first computational device, from a second computational device. The data is written to the reserved space, wherein the writing of the data causes new segments to be created in the reserved space.02-26-2009
20080263307INFORMATION PROCESSING APPARATUS AND METHOD, AND PROGRAM - Disclosed herein is an information processing apparatus, including: setting means for setting, a maximum transfer size; calculation means for subtracting a second data amount from a first data amount to calculate a third data amount; boundary determination means for determining whether this transfer will involve a page boundary being extended across; buffer boundary determination means for determining whether this transfer will involve a buffer size being exceeded; transfer size determination means for determining whether or not the third data amount is equal to or less than the maximum transfer size; and determination means for determining a data amount of data to be transferred within limits of the third data amount, based on a first determination made by the boundary determination means, a second determination made by the buffer boundary determination means, and a third determination made by the transfer size determination means.10-23-2008
20110231628SYSTEM FOR MEMORY INSTANTIATION AND MANAGEMENT - A system for memory instantiation in a programmable logic device (PLD) includes a computing device having a processor and memory coupled with the PLD. The processor is configured to receive memory parameters including at least a data width and a data depth. The processor is also configured to determine a number and sizes of block random access memory (BRAM) primitives required for data storage based on the memory parameters and based on one or more sizes of BRAM primitives available on the programmable logic device. In one example, the processor minimizes a size of the total number of BRAMs required for instantiation on the PLD. The processor is also configured to instantiate the determined number and corresponding sizes of the BRAM primitives in logic for configuration of the programmable logic device to include a device memory within the available BRAM primitives thereof corresponding to the determined number and sizes of the BRAM primitives.09-22-2011
20110145537Data Storage Management in Heterogeneous Memory Systems - A data storage management system is provided, which includes multiple storage entities with differing storage characteristics. A controller is communicatively coupled to each of the multiple storage entities. The controller is configured to associate one or more storage attributes of a received object with one or more of the different storage characteristics, and to store the received object in one or more of the multiple storage entities based on the association of the one or more of the storage attributes of the received object with the one or more of the different storage characteristics.06-16-2011
20110145536MEMORY LEAK DETECTION DURING DYNAMIC MEMORY ALLOCATION - A method to detect memory leaks during dynamic memory allocation comprises generating statistical information regarding allocated chunks in a memory heap during a dynamic memory allocation process, with the statistical information including same-sized chunk information related to the number of allocated chunks being identical in size. The statistical information is monitored to identify a potential memory leak based at least in part on the same-sized chunk information, in response to which an alert signal is generated.06-16-2011
20090198946Computer system and garbage collection method of disk space - A processor of a management computer acquires the free disk space amount of a disk pool, acquires the invalid disk space amount from a plurality of host computers, determines a host computer to which the instruction for the physical disk space collection is issued on the basis of the invalid disk space amount, and judges that the free disk space amount is smaller than a predetermined threshold value before transmitting a GC control request to the determined host computer; another processor generates and transmits invalid disk space position information indicating the position of the invalid disk space in a virtual volume in cases where a host investigation request is received; and the other processor collects the physical disk space of a physical disk allocated to the storage disk space of the virtual volume in the disk pool.08-06-2009
20090249019METHOD OF ALLOCATING PHYSICAL MEMORY IN SPECIFIED ADDRESS RANGE UNDER LINUX SYSTEM PLATFORM - A method of allocating a physical memory in a specified address range under a Linux system platform is applied in a testing process of a physical memory under a Linux operating system. In this method, according to a specified address range and a size of a memory to be allocated, a large amount of physical memories in the system are allocated in a specified address range, and then the information about the allocated memories is transmitted, so as to map, inspect, and release the memories, thereby effectively supporting the test for physical memories under the Linux operating system.10-01-2009
20090254731SYSTEM AND METHOD FOR MEMORY ALLOCATION IN EMBEDDED OR WIRELESS COMMUNICATION SYSTEMS - Systems and methods for an improved memory allocation service in embedded or wireless devices. Memory is allocated using a combination of container memory items and referencing memory items.10-08-2009
20080307187ARRANGEMENTS FOR MEMORY ALLOCATION - In one embodiment a method is disclosed for allocating memory for a processor unit in a group of processing units. The method can include receiving a memory allocation request where the request can indicate a number of binary segments to be stored. The method can determine if the number indicates a nonstandard allocation, and locate an unallocated memory address based on a multiple of the number if the number indicates a nonstandard allocation. The method can also include locating an unallocated memory address from a pool of memory addresses, where the pool of addresses includes the integer multiples of the binary segments and excludes addresses that are two times the number of binary segments such that the address can be utilized to determine the allocation.12-11-2008
20090113162METHODS, SYSTEMS, AND DEVICES FOR MANAGEMENT OF A MEMORY SYSTEM - Methods, devices, and systems for a memory management system within an electronic device are disclosed, such as those wherein the memory management system is external to and compatible with the architecture of currently existing operating systems. One such memory management system may include a power savings manager configured to be invoked by a memory allocation manager. The power savings manager may also be configured to determine whether physical memory blocks should be active or inactive. Furthermore, the memory management system may include a driver configured to activate of deactivate a memory block in response to a system call from the power savings manager.04-30-2009
20100199058Data Set Size Tracking and Management - Specified data sets may be tracked from creation to end-of-life (e.g., deletion). Between creation and end-of-life, data set storage changes may be recorded (i.e., when additional storage is allocated or when some storage is released). During a subsequent allocation cycle, this information may be used in conjunction with user-specified allocation rules to manage or control the data set's initial allocation.08-05-2010
20120198200METHOD AND APPARATUS OF MEMORY OVERLOAD CONTROL - A computer-implemented method, system, apparatus, and article of manufacture for memory overload management. The method includes: collecting memory application information of at least one node of a computer system that is implementing the method; predicting a memory overload period and an overload memory size of a first node where memory overload will occur based on the memory application information; and scheduling a memory space according to the memory overload period and the overload memory size.08-02-2012
20090077341Method and System for Automated Memory Reallocating and Optimization Between Logical Partitions - A method and system for reallocating memory in a logically partitioned environment. The invention comprises a Performance Enhancement Program (PEP) and a Reallocation Program (RP). The PEP allows an administrator to designate several parameters and identify donor and recipient candidates. The RP compiles the performance data for the memory and calculates a composite parameter. For each memory block in the donor candidate pool, the RP compares the composite parameter to the donor load threshold to determine if the memory is a donor. For each memory block in the recipient candidate pool, the RP compares the composite parameter to the recipient load threshold to determine if the memory is a recipient. The RP calculates the recipient workload ratio and allocates the memory from the donors to the recipients. The RP monitors and update the workload statistics based on either a moving window or a discrete window sampling system.03-19-2009
20100250891METHOD AND SYSTEM FOR TRANSFORMATION OF LOGICAL DATA OBJECTS FOR STORAGE - There is provided a system capable of transformation of logical data objects for storage and method of operating thereof. The method comprises: a) identifying among a plurality of requests addressed to the storage device two or more “write” requests addressed to the same logical data object; b) deriving data chunks corresponding to identified “write” requests and transforming the derived data chunks; c) grouping the transformed data chunks in accordance with the order the requests have been received and in accordance with a predefined criteria; d) generating a grouped “write” request to the storage device; and e) providing mapping in a manner facilitating one-to-one relationship between the data in the obtained data chunks and the data to be read from the transformed logical object. The method further comprises obtaining an acknowledging response from the storage device; multiplying the obtained acknowledging response, and sending respective acknowledgements to each source which initiated respective “write” request.09-30-2010
20100217948Methods and systems for data storage - In one general aspect, various embodiments are directed to a method of writing a data block to a memory comprising receiving an electronic write request from an application. A content address of a first data block considering the value for the first data block. A mapping of the first data block to the content address may be written to a logical end of the local block map. The mapping may also be written to a remote block map. If the content address is not present at a local data storage, the value of the first data block may be written to the local data storage at a first location and metadata associating the content address with the first location may be written to the local data storage.08-26-2010
20100138627EFFICIENT ALERT MECHANISM FOR OVERUTILIZATION OF STORAGE RESOURCES - Disclosed is a method of issuing volume level alerts to provide a warning that indicates overutilization of storage resources in a computer system. Volume level checking is performed without the necessity of checking all the volumes, but only upon the occurrence of certain changes so that the only the most problematic volumes are checked. Hence, only a small number of volumes must be checked and only in response to certain identified changes. The method is applicable to any criterion for overutilization of storage resources which satisfies basic persistency rules. The method is also applicable to assessing risk for the use of other resources, such as communication bandwidth, that are supplied by resource providers, or pools of providers, to users of bandwidth. The principles disclosed can be utilized to check resources on an asset by asset basis, using the free space ratio definition provided to assess risk of overutilization of resources.06-03-2010
20100042801Apparatus and method for reallocation of memory in a mobile communication terminal - A mobile terminal includes an apparatus for reallocating memory. The apparatus is configured to determine whether an available memory capacity is less than a threshold value. The apparatus further generates a memory reallocation scenario based on a terminal usage history for each application if the available memory capacity is less than the threshold value.02-18-2010
20100082935COMPUTER SYSTEM AND CAPACITY MANAGEMENT METHOD OF COMPUTER SYSTEM - It is necessary to install a program called an agent in order to keep track of how much a file system on a computer uses a disk. On this account, loads might be applied to a server due to installation work or the agent program to increase primary costs. In addition, software inside a storage device determines and records a target block for data input/output and keeps track of capacity utilization, which might degrade the input/output performance of the storage device. A computer system is provided in which configuration information and operating information are acquired from a storage device, when data input/output is made from a computer to a logical unit, it is determined that the computer uses the logical unit to which input/output is made, and capacity used by the computer is computed.04-01-2010
20100199059MOBILE COMMUNICATION DEVICE AND METHOD FOR DEFRAGGING MIFARE MEMORY - A mobile communication device (08-05-2010
20090240910Storage system, volume allocation method and management apparatus - This storage system includes a virtual storage selection unit for selecting a virtual storage unit to be allocated to a virtual server unit according to a virtual storage search policy table for searching the virtual storage unit based on a parameter input by a user when a command is issued for allocating the volume to the virtual server unit, a volume selection unit for selecting the type of volume to be allocated to the virtual storage unit allocated to the virtual server unit with the virtual storage allocation unit according to a volume type search policy table for searching the type of volume based on the parameter, and a volume allocation unit for creating the volume selected with the volume selection unit based on the parameter and allocating the created volume to the virtual storage unit allocated to the virtual server unit with the virtual storage allocation unit.09-24-2009
20090319751STORAGE AREA DYNAMIC ASSIGNMENT METHOD - A storage system allocates a data storage area in response to an access request from a first computer if the capacity of a first physical storage device configuring a first logical storage area, provided to the first computer, is equal to or lower than a predetermined threshold. The storage system associates the first logical storage area with another physical storage device, which is different from the first physical storage device associated with a second logical storage area provided to the first computer and a second computer, and allocates a data storage area from the another physical storage device if the capacity of the first physical storage device associated with the first logical storage area exceeds the predetermined threshold.12-24-2009
20110131387MANAGING UNALLOCATED STORAGE SPACE USING EXTENTS AND BITMAPS - A computing device executing a file system maintains a search tree that includes extents for managing first regions of unallocated storage space and bitmaps for managing second regions of unallocated storage space. For each region of unallocated storage space, the file system determines whether to manage that region using an extent or a bitmap based on one or more space management criteria.06-02-2011
20090113163Method and apparatus for managing a memory for storing potentially configurable entries in a list - A method and apparatus for managing a memory for storing potentially configurable entries in a list, associated with a resource coupled to a central resource manager, is provided. A number of potentially configurable entries in the list are determined. A block of memory for storing data associated with each potentially configurable entry is allocated from the memory. If the block of memory is insufficient for storing the data, at least one extended block of memory is allocated from the memory, for storing the data.04-30-2009
20120144150DATA PROCESSING APPARATUS - A data processing apparatus may include a data acquisition unit, a plurality of buffer units including a storage capacity and an additional storage capacity, a valid data amount calculation unit that calculates an amount of valid data and outputs valid data information indicating whether or not the data is valid, and a data write control unit that controls writing of the data to one of the plurality of buffer units. The valid data amount calculation unit may determine the number of the units based on the calculated amount of valid data and the additional storage capacity. The data acquisition unit may acquire data included in the units, the number of which is determined by the valid data amount calculation unit. The data write control unit may control whether or not to write the data to one of the plurality of buffer units based on the valid data information.06-07-2012
20120303927MEMORY ALLOCATION USING POWER-OF-TWO BLOCK SIZES - Methods and systems for managing memory allocation requests are disclosed. Generally, the methods and systems relate to splitting and combining twin buffers for allocating memory of appropriate sizes in response to memory requests. One method disclosed is a method of allocating storage space in a memory of a computing system. The method includes receiving a memory allocation request, the memory allocation request defining a requested memory size, and the memory logically segmented into a plurality of blocks. The method also includes determining whether a block having a best-fit size is available from a buffer pool, the buffer pool selected from among the one or more buffer pools and defining a set of available blocks of a common size. The method includes, upon determining that no block having the best-fit size is available in the buffer pool, locating an available block from a second buffer pool from among the one or more buffer pools, the available block having a size twice the best-fit size. The method further includes splitting the available block into a pair of blocks of the best-fit size, and allocating a first of the pair of best-fit size blocks in response to the memory allocation request.11-29-2012
20110016287METHOD FOR IMPLEMENTING ON DEMAND CONFIGURATION CHANGES - A method for implementing on-demand configuration of a logical volume, wherein the method monitors the amount of available storage capacity of the logical storage volume and determines whether the available storage capacity exceeds a predetermined threshold, such as a percentage of available logical storage space. If the method determines that the storage capacity of the logical storage volume is nearing full capacity, the method determines whether configured physical storage space is available. If the method determines that configured physical storage space is available, the method then reconfigures the logical storage volume to include the configured physical storage space. If configured physical storage space is not available, the method locates unconfigured physical storage space, configures the available physical storage space, and reconfigures the logical volume using the configured physical storage space.01-20-2011
20100185829EXTENT CONSOLIDATION AND STORAGE GROUP ALLOCATION - Data is added to a data set to cause a growth in size of the data set, wherein the data set belongs to a storage group, and wherein the data set is comprised of extents. The data set is included into a new storage group, in response to determining that the growth in the size of the data set has caused a predetermined threshold for a size limit of the storage group to be exceeded. The extents of the data set are restructured to satisfy a predetermined condition on the extents of the data set, in response to determining that the growth in the size of the data set has caused the predetermined condition on the extents included in the data set to be not satisfied.07-22-2010
20110040948Apparatus and Method for Efficient Memory Allocation - Incoming data frames are parsed by a hardware component. Headers are extracted and stored in a first location along with a pointer to the associated payload. Payloads are stored in a single, contiguous memory location.02-17-2011
20110119465DATA PROCESSING SYSTEM - The data processing system including: a memory block; a data-processing control block; a demultiplex-processing block; a multiplex-processing block; a decode-processing block; and an encode-processing block. In the system, the demultiplex-processing block, multiplex-processing block, decode-processing block, and encode-processing block each execute a process using memory regions in the memory block. During the execution, the data-processing control block changes a memory region to assign to the processing in response to a processing request based on results of processing which the block concerned executed in response to the preceding processing request. With the data processing system, a memory region can be used effectively even if a memory region size required for processing cannot be determined in advance.05-19-2011
20090313451METHOD OF MEMORY MANAGEMENT FOR SERVER-SIDE SCRIPTING LANGUAGE RUNTIME SYSTEM - A method of operating a memory system includes allocating a portion of a memory unit in a computing system as a memory heap. The heap includes a metadata section and a plurality of segments, each segment having a segment size. The method also includes creating a free list array and class-size array in the metadata section, the class-size array being created such that each element of the size-class array is related a particular one of the plurality of segments and the free list array being created such that each element of the free list array is related to a particular size class, receiving a first memory allocation request for a first object, determining that the first object is a small object, assigning a class to the first object, identifying a first segment to place the first object in by examining the size-class array, subdividing the first segment into multiple portions, determining a first head portion of the first segment, the first head portion representing the first open portion of the segment and being determined by examining the free list array, allocating the first head portion for the first object, receiving a command indicating that a transaction is complete, and clearing the free list array and the size-class array upon receipt of the command.12-17-2009
20100100699Method for Controlling Performance Aspects of a Data Storage and Access Routine - A method for improving the performance of a computerized data storage and access system includes the steps (a) providing a virtual representation of an existing data storage controller accessible to a computing system, (b) providing a configuration interface executable by an operator of the computing system, (c) using the configuration interface, reserving an amount available memory for dedicated use as a data cache and or additional storage space for storing data written to one or more disk drives representing data storage disks of the data storage and access system, (d) intercepting read and write requests to the data storage controller from the central processing unit of the computing system via the virtual representation of the controller, and (e) writing data into the reserved memory or serving data from the reserved memory in lieu of accessing a data storage disk represented by the one or more disk drives.04-22-2010
20090031100MEMORY REALLOCATION IN A COMPUTING ENVIRONMENT - Systems and methods for reallocating memory in a computing environment are provided. The method comprises deallocating first memory space allocated to a first software application in a first execution context, in response to determining that a first page size associated with the first memory space allocation is inappropriate for said first software application within a second execution context; and reallocating second memory space to the first software application responsive to the second execution context, such that a second page size associated with the second memory space allocation is appropriate for the first software application in the second execution context.01-29-2009
20090216989Storage apparatus and storage area allocation method - A storage apparatus is provided with a storage area for storing data sent from a host computer, and a virtual/logical volume to which a dynamically variable storage area is allocated from within the storage area, the volume being provided to the host computer, and this storage apparatus is configured to include: a pool area generation unit for generating a plurality of pool areas composed from the storage area; a setting unit for setting, for each of the plurality of pool areas generated by the pool area generation unit, an allocation unit size for allocating a storage area from within the storage area provided by the pool area to the virtual/logical volume; a selecting unit for selecting, when data to be stored in the storage area is sent from the host computer, a pool area from among the plurality of pool areas having the allocation unit size set by the setting unit, in accordance with the size of the sent data; and an allocation unit for allocating a storage area from within the storage area provided by the pool area selected by the selecting unit to the virtual/logical volume.08-27-2009
20090216988LOW OVERHEAD MEMORY MANAGEMENT SYSTEM AND METHOD - A block of contiguous data storage locations of a memory is divided into pools of memory chunks. The memory chunks in same ones of the pools have equal chunk sizes. The memory chunks in different ones of the pools have different chunk sizes. In each of the pools, the memory chunks are addressable by respective chunk base physical addresses in a respective linear contiguous sequence that starts from a respective pool base physical address. The physical addresses of the memory chunks are translated into corresponding internal handles and vice versa, where each of the internal handles is smaller in size than its corresponding physical address. For each of the pools, an associated pool queue comprising respective ones of the internal handles to allocatable ones of the memory chunks in the pool is maintained.08-27-2009
20090216987METHOD AND APPARATUS FOR ALLOCATING HOST MEMORY FOR A MEMORY-LESS ADD-ON DEVICES - Methods and apparatus for allocating host memory for use by a host channel adapter (HCA) with insufficient on-board memory are disclosed. In one embodiment, a method includes determining when a host memory arrangement which has a host memory updates a system address map associated with the host memory, and obtaining control from a system basic-input-output-system (BIOS) associated with an operating system (OS) of the host memory arrangement when the system address map is updated. The method also includes allocating a first memory block in the host memory using an add-on device after obtaining control from the host memory arrangement. The system address map is updated by the add-on device to indicate that the first memory block has been allocated to the add-on device. Finally, the method includes returning the control to the system BIOS after updating the system address map.08-27-2009
20100070733SYSTEM AND METHOD OF ALLOCATING MEMORY LOCATIONS - In a particular embodiment, a controller is adapted to allocate each memory segment location of a plurality of memory segment locations of a storage media to store data blocks having a particular data block size. Each memory segment location includes one or more storage blocks of the particular data block size. The controller is adapted to write a data block to one or more selected storage blocks of a selected memory segment location based on a size of the data block and an allocated data block size associated with the selected memory segment location.03-18-2010
20100058021Storage system and control method for the same - An externally-connected volume of a main storage is correlated to an AOU volume inside of an external storage. The AOU volume is allocated with a not-yet-used page in a pool in accordance with data writing. When a command is issued to the externally-connected volume for formatting or others, a first controller in the main storage converts the command into a format command or an area deallocation command with respect to the AOU volume in the external storage. As such, the external AOU volume is subjected to a write process in its entirety, thereby being able to prevent any unnecessary page allocation. With such a configuration, the storage system of the present invention can use pages in the pool with good efficiency.03-04-2010
20130013883SYSTEMS AND METHODS FOR PERFORMING MULTI-PATH STORAGE OPERATIONS - Systems and methods for allocating transmission resources within a computer network are provided. In some embodiments of the invention, communication links may be assigned based on predefined preferences or system configuration to facilitate the transfer of data from one point in the network to another. In other embodiments, system operation may be monitored and communication paths be assigned dynamically based on this information to improve system operation and provide improved failover response, load balancing and to promote robust data access via alternative routes.01-10-2013
20110060886Systems and Methods for Selecting Bit Per Cell Density of a Memory Cell Based on Data Typing - Various embodiments of the present invention provide systems and methods for selecting data encoding. As an example, some embodiments of the present invention provide methods that include receiving a data set to be written to a plurality of multi-bit memory cells that are each operable to hold at least two bits. In addition, the methods include determining a characteristic of the data set, and encoding the data set. The level of encoding is selected based at least in part on the characteristic of the data set. In some instances of the aforementioned embodiments, the characteristic of the data set indicates an expected frequency of access of the data set from the plurality of multi-bit memory cells.03-10-2011
20110060887APPARATUS, SYSTEM, AND METHOD FOR ALLOCATING STORAGE - An apparatus, system, and method are disclosed for allocating non-volatile storage. The storage device may present a logical address, which may exceed a physical storage capacity of the device. The storage device may allocate logical capacity in the logical address space. An allocation request may be allowed when there is sufficient unassigned and/or unallocated logical capacity to satisfy the request. Data may be stored on the non-volatile storage device by requesting physical storage capacity. A physical storage request, such as a storage request or physical storage reservation, when there is sufficient available physical storage capacity to satisfy the request. The device may maintain an index to associate logical identifiers (LIDs) in the logical address space with storage locations on the storage device. This index may be used to make logical capacity allocations and/or to manage physical storage space.03-10-2011
20090240911Information processing apparatus and informaiton processing method - An information processing apparatus and an information processing method capable of assigning, to an application, a volume having a performance required by the application while simplifying administration are proposed. A performance and a capacity of each first storage area respectively provided by each storage device as well as a performance and a capacity required for a volume respectively assigned to each application running on a host system are managed, and based on the performance and the capacity of each first storage area and the performance and the capacity required for the volume to be respectively assigned to each application, the volume having the performance and the capacity required by the application is assigned to the application, and when a plurality of the volumes are assigned to one of the applications, the volumes provided in the same storage device are preferentially assigned.09-24-2009
20110153978Predictive Page Allocation for Virtual Memory System - A virtual memory method for allocating physical memory space required by an application by tracking the page space used in each of a sequence of invocations by an application requesting memory space; keeping count of the number of said invocations; and determining the average page space used for each of said invocations from the count and previous average. Then, this average page space is recorded as a predicted allocation for the next invocation. This recorded average space is used for the next invocation. If there is any additional page space required by said next invocation, this additional page space may be accessed through any conventional default page space allocation.06-23-2011
20110153977STORAGE SYSTEMS AND METHODS - Systems and methods for information storage replication are presented. In one embodiment a storage flow control method includes receiving a memory operation indication; performing a pre-reserve allocation process before proceeding with the memory operation, wherein the pre-reserve allocation process includes converting available unallocated memory space to allocated memory space if there is sufficient available unallocated memory space to perform the memory operation; executing the memory operation if the pre-reserve allocation process returns an indication there is sufficient memory space allocated to perform the memory operation; and aborting the memory operation if the pre-reserve allocation process returns an indication there is sufficient memory space allocated to perform the memory operation. In one embodiment, the memory operation is a write operation. The memory operation can be a write operation.06-23-2011
20100325382TRIANGULATED IRREGULAR NETWORK - Methods and other embodiments associated with performing an in-memory triangulation of a large data set are described. One example method for performing in-memory triangulation of a large data set includes partitioning a large geographical information data set into a set of stripes and generating, in-memory, a set of local triangulated irregular networks (TINs) corresponding to members of the set of stripes. Information associated with triangles associated with the set of local TINs are stored.12-23-2010
20080201548SYSTEM HAVING ONE OR MORE MEMORY DEVICES - A system having serially connected memory devices in a ring topology organization to realize high speed performance. The memory devices have dynamically configurable data widths such that the system can operate with up to a maximum common number of active data pads to maximize performance, or to operate with a single active data pad to minimize power consumption. Therefore the system can include a mix of memory devices having different data widths. The memory devices are dynamically configurable through the issuance of a single command propagated serially through all the memory devices from the memory controller in a broadcast operation. Robust operation of the system is ensured by implementing a data output inhibit algorithm, which prevents valid data from being provided to the memory controller when read output control signal is received out of its proper sequence.08-21-2008
20110179247STORAGE SYSTEM AND UTILIZATION MANAGEMENT METHOD FOR STORAGE SYSTEM - A storage system 07-21-2011
20100293354APPARATUS AND METHOD FOR MINIMIZING DATA STORAGE MEDIA FRAGMENTATION - A method of minimizing data storage medium fragmentation, wherein the method provides a data storage library comprising (N) data storage media, wherein (N) is greater than or equal to 1. The method establishes a threshold fragmentation index, and determines, for each value of (i), an actual fragmentation index for an (i)th data storage medium, wherein (i) is greater than or equal to 1 and less than or equal to (N). The method receives a data set from a host computer in communication with the data storage library, and writes the data set to an (i)th data storage medium based upon an (i)th actual fragmentation index.11-18-2010
20110119464DATA STORAGE SYSTEM COMPRISING A MAPPING BRIDGE FOR ALIGNING HOST BLOCK SIZE WITH PHYSICAL BLOCK SIZE OF A DATA STORAGE DEVICE - A data storage system is disclosed comprising a non-volatile memory and a first interface operable to receive a write command from a host, the write command comprising a host write data block having a host logical block size. A block mapping bridge divides the host write data block into a plurality of transfer data blocks, wherein each transfer data block having a device logical block size smaller than the host logical block size. The transfer data blocks are transmitted through a second interface to control circuitry that accumulates the transfer data blocks into a physical data block having a device physical block size equal to a first integer multiple of the device logical block size, wherein the host logical block size is a second integer multiple of the device physical block size. The physical data block is then written to the non-volatile memory.05-19-2011
20120311294STORAGE DEVICE - A storage device includes: a temporary buffer for sequentially storing data configuring a file requested to be written for every reception from outside; a data writing means for immediately separating the data in the temporary buffer into mutually corresponding data portion and marker portion classified by preset criteria and storing into a data storing means in an associated state, and deleting from the temporary buffer; an unseparated data writing means for storing the data that cannot be separated into the data portion and the marker portion among the data in the temporary buffer, into an unseparated data storing means; and a re-separation processing means for separating the data in the unseparated data storing means into the data portion and the marker portion by preset criteria and storing into the data storing means with the data portion and the marker portion associated, and deleting from the unseparated data storing means.12-06-2012
20120311293DYNAMIC MEMORY CACHE SIZE ADJUSTMENT IN A MEMORY DEVICE - Methods for dynamic memory cache size adjustment, enabling dynamic memory cache size adjustment, memory devices, and memory systems are disclosed. One such method for dynamic memory cache size adjustment determines available memory space in a memory array and adjusts a size of a memory cache in the memory array responsive to the available memory space.12-06-2012
20110082997VIRTUALIZED STORAGE SYSTEM AND METHOD OF OPERATING THEREOF - There are provided a storage system and a method of operating thereof. The method comprises: a) representing to a plurality of hosts an available logical address space divided into one or more logical groups (e.g. logical volumes, virtual partitions, snapshots, combinations of a given logical volume and its respective snapshot(s), etc.), and b) mapping between one or more contiguous ranges of addresses related to the logical address space and one or more contiguous ranges of addresses related to the physical address space, wherein said mapping is provided with the help of one or more mapping trees, each tree assigned to a separate logical group in the logical address space. Mapping between contiguous ranges of addresses related to the logical address space and contiguous ranges of addresses related to the physical address space can be a) mapping between LBA and DBA addresses; b) mapping between VUA and VDA addresses; c) mapping between LBA and VDA addresses; and d) mapping between VUA and DBA addresses, wherein virtual unit addresses (VUA) characterize a first virtual layer operable to represent the logical address space, and virtual disk addresses (VDA) characterize a second virtual layer operable to represent the physical storage space.04-07-2011
20100228941Configurable Cache and Method to Configure Same - In a particular embodiment, a cache is disclosed that includes a tag state array that includes a tag area addressable by a set index. The tag state array also includes a state area addressable by a state address, where the set index and the state address include at least one common bit.09-09-2010
20110145539Memory Allocation in a Broker System - Memory allocation in a Broker system for managing the communication between a plurality of clients and a plurality of servers. The method may include allocating memory for a plurality of memory pools; and dividing each memory pool into memory blocks of a size which is specific to the type of a resource. The resource may be related to the communication managed by the Broker.06-16-2011
20100017578Storing Compressed Data - A method of processing data for storage in a storage medium coupled to a processing unit adapted to access data stored in the storage medium as one or more pages of data, each page having a predetermined page size and a corresponding virtual memory address, the method comprising: obtaining a compressed data item including compressed data corresponding to a first memory page of uncompressed data; dividing the compressed data item into an initial part and a supplementary part, the initial part having an initial part size; determining respective second memory locations for the supplementary parts so as to reduce the number of sectors occupied by the supplementary parts; allocating the initial part together with an index data item at a first memory location associated with the first memory page, the index data item being indicative of a second memory location; allocating the supplementary part at the second memory location.01-21-2010
20120151174COMPUTER SYSTEM, MANAGEMENT METHOD OF THE COMPUTER SYSTEM, AND PROGRAM - Provided is a pool capacity monitoring technique capable of appropriately predicting timing of pool capacity depletion even if there is a change in the external environment, such as an addition of a new application and a characteristic change in an existing application. In the present invention, consumption of each medium comprising a pool is predicted every time there is a change in the external environment, such as an addition of an application, to predict the capacity depletion timing of the pool, and the prediction of the capacity depletion period is recalculated. A predicted value of I/O consumption patterns of each application using a virtual volume is calculated for each medium from past consumption patterns stored in a storage.06-14-2012
20120210092DYNAMIC STORAGE REGIONS - A method or system for determining storage location of an isolation region based on a data region sizing specified by a host device. In one implementation, the isolation region comprises a set of storage locations required for isolation of or more data region of the storage device.08-16-2012
20120005450USER CONTROL OF FILE DATA AND METADATA BLOCKS - A method enables a user to control the allocation in a file system of file data and metadata blocks by determining ranges of unallocated contiguous blocks in the file system. The method allocates to the user a metadata storage range of contiguous blocks within one of ranges of unallocated contiguous blocks. The method further allocates to the user a data storage range of contiguous blocks within the range of unallocated contiguous blocks. The method may then allocate to the user ranges of contiguous blocks within the allocated data storage range for storage of respective files.01-05-2012
20120005449ON-ACCESS PREDICTIVE DATA ALLOCATION AND REALLOCATION SYSTEM AND METHOD - A method for predictively allocating space in a database system includes detecting an access request for a data set, evaluating a growth rate of the data set to determine a predicted increase in size of the data set, and in response dynamically altering an attribute of an allocation for the data set. Attributes altered include the size of volumes and the number of volumes comprising the data set. The method may include setting a flag indicating an instruction to rewrite the data set if the evaluation indicates that rewriting is needed to accommodate the predicted increase in size. The method may include rewriting the data set from a lower address space of a volume to a higher address space of the volume if the size of the data set is equal to or greater than an allocation increment of the upper address space. A corresponding apparatus and computer program product are also disclosed herein.01-05-2012
20120005448Demand-Based Memory Management of Non-pagable Data Storage - Management of a UNIX-style storage pools is enhanced by specially managing one or more memory management inodes associated with pinned and allocated pages of data storage by providing indirect access to the pinned and allocated pages by one or more user processes via a handle, while preventing direct access of the pinned and allocated pages by the user processes without use of the handles; scanning periodically hardware status bits in the inodes to determine which of the pinned and allocated pages have been recently accessed within a pre-determined period of time; requesting via a callback communication to each user process to determine which of the least-recently accessed pinned and allocated pages can be either deallocated or defragmented and compacted; and responsive to receiving one or more page indicators of pages unpinned by the user processes, compacting or deallocating one or more pages corresponding to the page indicators.01-05-2012
20110167239METHODS AND APPARATUSES FOR USAGE BASED ALLOCATION BLOCK SIZE TUNING - Methods and apparatuses that maintain an access history of a file allocated with allocation blocks in storage devices are described. In response to receiving a usage request to allocate additional space for the file, an allocation block size may be adjusted or adapted based on the access history. The storage devices may be allocated with one or more allocation blocks using the adapted allocation block size to provide requested space for the file.07-07-2011
20120011340Apparatus, System, and Method for a Virtual Storage Layer - A virtual storage layer (VSL) for a non-volatile storage device presents a large, logical address space having a logical capacity that may exceed the storage capacity of the non-volatile storage device. The VSL implements persistent storage operations within the logical address space; storage operations performed within the logical address space may be persisted on the non-volatile storage device. The VSL maintains storage metadata to allocate ranges of the logical address space to storage entities. The VSL provides for allocation of contiguous logical address ranges, which may be implemented by segmenting logical identifiers into a first portion referencing storage entities, and a second portion referencing storage entity offsets. The VSL persists data on the non-volatile storage device in a sequential, log-based format. Accordingly, storage clients, such as file systems, databases, and other applications, may delegate logical allocations, physical storage bindings, and/or crash-recovery to the VSL.01-12-2012
20120011339STORAGE CONTROL APPARATUS AND CONTROL METHOD FOR VIRTUAL LOGICAL VOLUME - A controller 01-12-2012
20120060012MANAGEMENT OF LOW-PAGING SPACE CONDITIONS IN AN OPERATING SYSTEM - A virtual memory management unit can implement various techniques for managing paging space. The virtual memory management unit can monitor a number of unallocated large sized pages and can determine when the number of unallocated large sized pages drops below a page threshold. Unallocated contiguous smaller-sized pages can be aggregated to obtain unallocated larger-sized pages, which can then be allocated to processes as required to improve efficiency of disk I/O operations. Allocated smaller-sized pages can also be reorganized to obtain the unallocated contiguous smaller-sized pages that can then be aggregated to yield the larger-sized pages. Furthermore, content can also be compressed before being written to the paging space to reduce the number of pages that are to be allocated to processes. This can enable efficient management of the paging space without terminating processes.03-08-2012
20120159112COMPUTER SYSTEM MANAGEMENT APPARATUS AND MANAGEMENT METHOD - The present invention makes it possible for different types of application programs to efficiently use a virtual volume created on a basis of a hierarchized pool. A configuration management part P06-21-2012
20110066823COMPUTER SYSTEM PERFORMING CAPACITY VIRTUALIZATION BASED ON THIN PROVISIONING TECHNOLOGY IN BOTH STORAGE SYSTEM AND SERVER COMPUTER - The management system identifies a server level virtual volume corresponding to a storage level pool on the basis of storage management information and server management information, and displays information relating to the correspondence between the storage level pool and the server level virtual volume. The storage management information represents correspondence between a storage level virtual volume to which a portion of an area is allocated from the storage level pool by thin provisioning technology at the storage level, and the storage level pool. The server management information represents correspondence between a server level virtual volume to which a portion of an area is allocated from the storage level virtual volume belonging to a server level pool by thin provisioning technology at the server level, and the storage level virtual volume.03-17-2011
20110107053Allocating Storage Memory Based on Future Use Estimates - A method for allocating storage memory space is provided. The method involves receiving a request for storage memory allocation for a file of a current size; estimating a future size of the file, different than the current size of the file, based at least on a particular attribute associated with the file; and causing allocation of storage memory space for storage of the file based on the future size of the file.05-05-2011
20110107052Virtual Disk Mapping - A storage area network can include a storage virtualization entity—intelligent storage application resource (iSAR)—either as a separate device in the fabric, or as an integrated module in one or more switches within the fabric. All I/O operations can be re-directed to iSAR for processing. iSAR can segment virtual storage and physical storage into units, where each unit of the virtual storage is mapped to a single unit in physical storage. Data associated with incoming I/O operation can be compressed before being stored in physical storage. iSAR includes overflow reserve storage at the block, sub-page and page level to accommodate changes in compressed data size on subsequent I/O operations. These measures can improve I/O performance and reduce fragmentation. iSAR can also employ deduplication of incoming data stored on physical storage to improve storage efficiency.05-05-2011
20100095082INTERACTING WITH DATA IN HIDDEN STORAGE - Unused storage space within a data storage is utilized to store data while effectively making it appear to the operating system, other programs, and the user that the space is still available or unused. The space used to store the hidden data remains available for use by the operating system, other programs and uses upon a request. File system requests are monitored such that the hidden storage area remains hidden from unauthorized processes as well as to restrict operations within the hidden storage area that are attempted by unauthorized processes.04-15-2010
20100095081EARLY DETECTION OF AN ACCESS TO DE-ALLOCATED MEMORY - Disclosed is a a method of detecting an access to de-allocated memory, comprising: creating a pool of fixed size memory blocks that are a non-zero integer multiple of a page size of a processor; receiving a request for an allocation of a block of memory; recording a set of allocation context information in a fixed size memory block; returning a pointer to an allocation of memory within said fixed size memory block; receiving a request to de-allocate said block of memory; recording a set of de-allocation context information in said fixed size memory block; and, setting an indicator in a page table entry associated with said fixed size memory block to a first value that indicates access to said fixed size memory block is not allowed.04-15-2010
20120124321COMPUTER SYSTEM AND CONTROL METHOD THEREFOR - A physical storage area that is allocated to an unused area of a virtual volume is removed. A management unit sends a request to a server computer to make every piece of data stored in a first logical volume migrate to a second logical volume. The server reads all the data out of the first logical volume and writes the data in the second logical volume. A storage system that includes the first logical volume and the second logical volume allocates a physical storage area to an area of the second logical volume where the data is to be written, and writes the data in the allocated physical storage area. The storage system then deletes the first logical volume.05-17-2012
20120131303Thin Provisioned Space Allocation - A storage monitoring system may reside between a file system and a storage system in a thin provisioned storage system. The storage monitoring system may create space holder files within a volume, where the space holder files contain an address space not backed up with physical storage. As requests for storage space are received from a file system, the storage monitoring system may allocate physical space to the volume by provisioning portions of the physical storage device to the volume and by removing one of the space holder files. The storage monitoring system may present alerts when physical storage space is low, as well as return an amount of physical space available to a volume size request.05-24-2012
20120131301ACCESS APPARATUS AND AVAILABLE STORAGE SPACE CALCULATION METHOD - A method used in an access module that uses a file system to manage a nonvolatile memory of an information recording module enables an available storage space to be calculated in a short time before file data is recorded, and shortens the time required from initialization of the file system to recording. An access module (05-24-2012
20100205396FORMATTING DEVICE - A formatting device (08-12-2010
20120173839STORAGE AREA DYNAMIC ASSIGNMENT METHOD - A storage system allocates a data storage area in response to an access request from a first computer if the capacity of a first physical storage device configuring a first logical storage area, provided to the first computer, is equal to or lower than a predetermined threshold. The storage system associates the first logical storage area with another physical storage device, which is different from the first physical storage device associated with a second logical storage area provided to the first computer and a second computer, and allocates a data storage area from the another physical storage device if the capacity of the first physical storage device associated with the first logical storage area exceeds the predetermined threshold.07-05-2012
20120254579ALLOCATION STRATEGIES FOR DATA STORAGE APPLICATIONS - A physical storage volume can be partitioned into a plurality of master blocks of an equal master block size. Each master block of the plurality of master blocks can be allocated for storage of a single storage page size of a plurality of predefined storage page sizes provided for storage of data by a data storage application. A received page size can be determined for a storage page designated by the data storage application for storage on the physical storage volume, and the storage page can be stored in a free block of a master block of the plurality of master blocks having the single page size equivalent to the received page size. Related methods, systems, and articles of manufacture are also disclosed.10-04-2012
20100287354VSAM SMART REORGANIZATION - Various embodiments for adaptive reorganization of a virtual storage access method (VSAM) data set are provided. In one exemplary embodiment, upon each control interval (CI) split of a plurality of CI splits occurring over a period of time, historical data including a key value for a record causing each CI split is recorded in a data repository. The historical data is analyzed with a predictive algorithm to determine an amount of free space to be allocated to each of a plurality of control intervals generated pursuant to the adaptive reorganization. The predictive algorithm allocates a greater percentage of the free space to a first location of the VVDS having a larger proportion of historically placed key values than a second location of the VVDS having a smaller proportion of the historically placed key values.11-11-2010
20120185665WIRELESSLY CONFIGURABLE MEMORY DEVICE - A configurable memory includes an interface section, a plurality of memory modules, and an internal configuration section. The interface section includes a millimeter wave (MMW) transceiver and interfaces with one or more external components. Each the plurality of memory modules includes a memory MMW transceiver and a plurality of memory cells. The internal configuration section includes a memory management unit and a memory management MMW transceiver. The memory management unit is operable to determine configuration of at least some of the plurality of memory modules to form a memory block, identify an interface MMW transceiver to provide a wireless link to the memory block, and generate a configuration signal based on the determined configuration and the identified interface MMW transceiver. The memory management MMW transmits the MMW configuration signal to the identified interface MMW transceiver and the MMW transceivers of the memory modules.07-19-2012
20120084531ADJUSTING MEMORY ALLOCATION OF A PARTITION USING COMPRESSED MEMORY PAGING STATISTICS - Acceptable memory allocation for a partition is determined during and with minimal impact on normal operation of the partitioned system. The approach includes: collecting, by a processor, statistics on a rate at which pages are transferred between uncompressed and compressed memory spaces of the partition's memory; adjusting size of the uncompressed memory space; and subsequent to the adjusting, continuing with collecting of the statistics, and referencing the resultant statistics in determining an acceptable memory allocation for the partition. In one implementation, the adjusting includes stepwise decreasing size of the uncompressed memory space by reallocating uncompressed memory space to compressed memory space, and repeating the collecting of statistics for a defined measurement period for each adjusted uncompressed memory space size until performance of the partition is negatively impacted by the reallocation of uncompressed memory space to compressed memory space.04-05-2012
20120260058MEMORY MANAGEMENT APPARATUS, MEMORY MANAGEMENT METHOD, AND CONTROL PROGRAM - A memory manager secures memory areas according to requests from programs and sets ranks designated by the programs to the secured memory areas. The memory manager selects a memory area released on the basis of the rank of each memory area, from the secured memory areas, when an available capacity of a main storage device is insufficient. The memory manager releases the selected memory area and secures a new memory area. The present disclosure can be applied to an embedded apparatus.10-11-2012
20090019251DYNAMIC STORAGE POOLS WITH THIN PROVISIONING - A method for data storage, including configuring in a data storage system a volume storage pool as data storage resources available for allocation of volumes in the data storage system. The method also includes defining a threshold value for the volume storage pool. When the allocation of the volumes causes the threshold value to be crossed, the method includes performing an action for managing the volume storage pool.01-15-2009
20120265961STORAGE SYSTEM AND UTILIZATION MANAGEMENT METHOD FOR STORAGE SYSTEM - A storage system 10-18-2012
20120239901DYNAMIC MEASUREMENT AND ADAPTATION OF A COPYING GARBAGE COLLECTOR - An illustrative embodiment of a computer-implemented process for dynamic measurement and adaptation of a parallel copying garbage collector initializes values and data structures, receives an evacuate set, determines whether a new copy block is required and responsive to a determination that a new copy block is required, calculates a size of the new copy block. The computer-implemented process further selects a survivor region from a list of survivor regions to form a selected survivor region, places a lock on the selected survivor region, identifies a number of threads enqueued on the selected survivor region, responsive to a determination that a contention value exceeds a predetermined value, increases a size of the list of survivor regions, evacuates blocks to the selected survivor region and responsive to a determination that more evacuate blocks do not exist, terminates.09-20-2012
20110047344STORAGE SYSTEM FOR A STORAGE POOL AND VIRTUAL VOLUMES - This invention provides a storage system to store data used by computers. A storage system coupled to a computer and a management apparatus, includes storage devices accessed by the computer and a control unit that controls the storage devices, in which the control unit performs the following operations: setting, in the storage devices, a first virtual device including a first logical device; setting a second virtual device which including a second logical device, which is a virtual volume accessed by the computer; allocating an address of the first logical device to the second logical device; and changing the allocation to change storage areas of the virtual volume.02-24-2011
20120272034METHOD AND DEVICE FOR STORING AND READING/WRITING COMPOSITE DOCUMENT - A method and device for storing and reading/writing composite document are disclosed. The method includes: an initial storing area is pre-allocated for an inner controlling stream of the composite document and the initial storing area is continuous sectors or sector clusters; the inner controlling stream is stored in the initial storing area. The patches of a user data stream and the inner controlling stream in the composite document are reduced using the method or device. Correspondingly, pre-allocating storing area makes the probability of continuously storing the user data stream and the inner controlling stream in the composite document increased. The I/O can be optimized by introducing a strategy of reading cache and writing in a batch size, which can improve the efficiency of reading and writing.10-25-2012
20120272033System and Method for Managing Space Allocation within a File System - A chassis management controller includes a root file system, a shared memory, a daemon process module, and an interposer library. The root file system includes a plurality of directories associated with firmware applications of the chassis management controller. The daemon process module is configured to read the parameters of the directories, and to create, in the shared memory, a table including parameters of the directories. The interposer library is configured to intercept an input/output library call for an operation associated with one of the firmware applications, to read table entries associated the one or the firmware applications, to determine whether the operation associated with the input/output library call would result in an over-allocation of a parameter in the entries of the table, and if the operation would not result in the over-allocation, pass the output operation to a standard system library, otherwise to return an out of space error message.10-25-2012
20120324201Effectively limitless apparent free space on storage device - A primary physical storage device has effectively limitless apparent free space. Responsive to receiving a request to dynamically allocate an amount of desired free space on the primary device to store new data on the primary device, and responsive to determining that an amount of actual free space on the primary device is insufficient to permit such allocation, existing data stored on the primary device is moved to a secondary storage device. The first existing data appears to still be stored on the primary device. Responsive to receiving a request to retrieve existing data from the primary device, and to determining that the existing data has been moved to the secondary device, the existing data is moved back to the primary device. The existing data was originally stored on the primary device, and is currently stored on the primary device or has been moved to the secondary device.12-20-2012
20120089804VOLUME ALLOCATING METHOD FOR VIRTUAL COMPUTERS AND COMPUTER SYSTEM USING THE METHOD - Allocation of virtual disk volumes of a size designated by the computer manager to a virtual computer and accessibility from the virtual computer to the virtual disk volumes without requiring intervention by a hypervisor are to be achieved. In a computer, at least one virtual computer to be in execution on the computer, and a computer system in which the virtual computer has volumes for holding data, a virtualization mechanism has a virtual volume allocating unit and a virtual volume information supplying unit, and the virtual computer has a virtual volume driver for converting positional information on virtual volumes. Additionally, the virtualization mechanism holds the virtual volume information together with defining information for the virtual computer to which the virtual volumes have been allocated.04-12-2012
20120089803CACHE INDEX COLORING FOR VIRTUAL-ADDRESS DYNAMIC ALLOCATORS - A method for managing a memory, including obtaining a number of indices and a cache line size of a cache memory, computing a cache page size by multiplying the number of indices by the cache line size, calculating a greatest common denominator (GCD) of the cache page size and a first size class, incrementing, in response to the GCD of the cache page size and the first size class exceeding the cache line size, the first size class to generate an updated first size class, calculating a GCD of the cache page size and the updated first size class, creating, in response to the GCD of the cache page size and the updated first size class being less than the cache line size, a first superblock in the memory including a first plurality of blocks of the updated first size class, and creating a second superblock in the memory.04-12-2012
20110276776Addressing for Huge Direct-Mapped Object Systems - A method, computing system, and computer program product are provided for quickly and space-efficiently mapping an object's address to its home node in a computing system with a very large (possibly multi-petabyte) data set. The addresses of objects comprise three fields: a chunk number, a region sub-index within the chunk, and an offset within the region, with chunks being used to achieve good compromise between small lookup tables and reducing waste of usable virtual address space.11-10-2011
20120096236USING AN ALIAS VOLUME NAME FOR A VOLUME TO ALLOCATE SPACE TO A DATA SET - Provided are a computer program product, system, and method for using an alias volume name for a volume to allocate space to a data set. An assignment of a plurality of volumes to a data set is maintained, wherein the volumes are configured in a storage system. A request is received to extend the data set. A determination is made as to whether one of the volumes previously assigned to the data set has an allocation amount of available space in the storage system in response to the request to extend the data set. An alias volume name is assigned to the data set for the previously assigned volume determined to have the allocation amount of available space, wherein the alias volume name provides an alternative name for the previously assigned volume. The allocation amount of available space is assigned to the data set for the alias volume name.04-19-2012
20120096235Allocation of Storage Space for Critical Data Sets - Described are embodiments of an invention for allocating storage space in a storage system for critical data sets. The computing environment includes at least one server including a processor and memory. The server is coupled to storage. The memory further includes a storage manager including an allocation module and an alert module. The storage manager defines a common area for storing non-critical data sets and critical data sets in the storage group. The storage manager also defines a critical reserve area for storing only critical data sets in the first storage group. A predefined percentage of available storage space is reserved for the critical reserve area. The predefined percentage of available space is determined by comparing the available storage space within the critical reserve area to the storage space in the storage group. Upon allocating additional storage to the storage group, the allocation module allocates an amount of the additional storage space to the critical reserve area such that the predefined percentage of available storage space is maintained in the critical reserve area.04-19-2012
20120331258STORAGE SYSTEM GROUP - There is a journal area and one or more logical volumes comprising a first logical volume. The journal area is a storage area in which is stored a journal data element, which is a data element that is stored in any storage area of a plurality of storage areas configuring a logical volume, or a data element that is written to the storage area. A controller has a size receiver that receives a write unit size, which is the size of a write data element received from a computer, and a size setting unit that sets the received write unit size in a memory for one or more logical volumes. The size of a journal data element stored in a journal area based on the set write unit size is the write unit size.12-27-2012
20120137103AUTOMATED PAGING DEVICE MANAGEMENT IN A SHARED MEMORY PARTITION DATA PROCESSING SYSTEM - Automated paging device management is provided for a shared memory partition data processing system. The automated approach includes managing a paging storage pool defined within one or more storage devices for holding logical memory pages external to physical memory managed by a hypervisor of the processing system. The managing includes: responsive to creation of a logical partition within the processing system, automatically defining a logical volume in the paging storage pool for use as a paging device for the new logical partition, the automatically defining occurring absent use of a filesystem, with the resultant paging device being other than a file in a filesystem; and automatically specifying the logical volume as a paging space device for the new logical partition and binding the paging space device to the new logical partition, wherein the logical volume is sized to accommodate a defined maximum memory size of the new logical partition.05-31-2012
20120151175MEMORY APPARATUS FOR COLLECTIVE VOLUME MEMORY AND METHOD FOR MANAGING METADATA THEREOF - Disclosed are a memory apparatus for a collective volume memory and a method for managing metadata thereof. The memory apparatus for a collective volume memory includes a CVM (Collective Volume Memory) command tool configured to provide a command tool for CVM operation and translate a command input by a user to control the CVM operation; and a CVM engine configured to perform at least one of CVM configuration and initialization, and CVM allocation and access according to data transmitted from the CVM command tool.06-14-2012
20130024643STORAGE APPARATUS AND DATA MANAGEMENT METHOD - To efficiently manage data including control information.01-24-2013
20080235481Managing memory in a system that includes a shared memory area and a private memory area - A method and apparatus for auto-tuning memory is provided. Memory on a computer system comprises at least one shared memory area and at least one private memory area. Addresses in the shared memory area are accessible to multiple processes. Addresses in the private memory area are dedicated to individual processes. Initially, a division in the amount of memory is established between the shared and private memory areas. Subsequently, a new division is determined. Consequently, memory from one memory area is “given” to the other memory area. In one approach, such sharing is achieved by causing the shared and private memory areas to be physically separate from each other both before and after a change in the division. The division of the amount of memory may be changed to a new division by deallocating memory from one of the memory areas and allocating that memory to the other of the memory areas.09-25-2008
20080229048Method and apparatus for chunk allocation in a thin provisioning storage system - Physical storage space in a storage system is not allocated to a segment of a targeted volume until the segment of the volume is first targeted for storing write data. When write data is received, the storage system determines whether the targeted volume is designated for storing a first data type that is accessed frequently by I/O operations or designated for storing a second data type that is accessed less frequently than the first data type. Physical storage space for storing the write data is allocated from a first logical partition of the physical storage designated for storing the first data type when the targeted volume is of the first data type and from a second logical partition of the physical storage designated for storing the second data type when the targeted volume is of the second data type. Allocation of frequently accessed data is controlled and performance bottlenecking avoided.09-18-2008
20130091337RUNTIME TYPE IDENTIFICATION OF NATIVE HEAP ALLOCATIONS - During compilation, a table mapping relative virtual address of a memory-allocating instruction of a native language program to a user type of the instance is created. During execution of the program, a module injected into the process intercepts calls to memory allocating functions and records the virtual address of the instruction calling the memory allocating function and the virtual address of the instance created. When a snapshot of the process heap is requested, the user type of the corresponding compile time instruction is assigned to the created instance. User type and heap information can he used to compute sizes of memory allocations and to aggregate user type instance counts and sizes. Using the static debugging information, a reference graph that displays the nesting of objects in live instances can be computed and displayed.04-11-2013
20130103918Adaptive Concentrating Data Transmission Heap Buffer and Method - An apparatus includes a data container unloading circuit which frees a container either by discarding the contents or transmitting the contents to its destination. A data container loading circuit receives a plurality of submittals of various sizes and selects an appropriately sized free container. If no free container has sufficient capacity the loading circuit blocks all loading until a container of sufficient size becomes available. A container tailor circuit checks for available free space in the buffer and transfers capacity among free containers to resize one to fit an incoming submittal. The mix of container sizes can be adapted over time to reflect the changing sizes of the traffic.04-25-2013
20110238945APPARATUS AND METHOD FOR GENERATING CODE OVERLAY - Provided is an apparatus and method for generating code overlay capable of minimizing the number of memory copies. A static temporal relationship graph (STRG) is generated in which each of functions of a program corresponds to a node of the STRG and a conflict miss value corresponds to an edge of the STRG. The conflict miss value is the maximum number of possible conflict misses between functions. Overlay is generated by selecting at least one function from the STRG, calculating an allocation cost for each region of a memory to be given when the at least one selected function is allocated, and allocating the at least one selected function to a region that has the smallest allocation cost.09-29-2011
20130151808ALLOCATION DEVICE, ALLOCATION METHOD AND STORAGE DEVICE - An allocation device includes a memory which stores a program, and a processor which executes, based on the program, a procedure including determining an allocation of partial memory spaces to physical memory spaces included in each of N number of physical memory devices when number of the physical memory devices is changed, the physical memory space allocation determined based on one or more sets of N partial memory spaces, each partial memory space in a set of N partial memory spaces allocated to each of the N physical memory devices.06-13-2013
20100318759DISTRIBUTED RDC CHUNK STORE - The claimed subject matter provides a system and/or a method that facilitates differential transfer and storage of data for network-based backup architectures. A differential compression component can segment a portion of backup information into one or more blocks. In addition, signatures can be generated for each of the one or more blocks. The differential compression component can identify unique blocks from the one or more blocks based upon the generated signatures and signatures of chunks stored in a distributed chunk store. Moreover, a storage component can transfer the unique blocks of the portion of backup information to the distributed chunk store once identified.12-16-2010
20120284483MANAGING ALLOCATION OF MEMORY PAGES - Allocation of pages of memory is managed in computing environments that include multiple sized memory pools. Responsive to a request for a page of memory, one or more memory pools are searched for an available frame of memory to service the request. The search uses a predefined order of search, which includes multiple types of memory pools in a specific order based on the requested size of the page of memory.11-08-2012
20130191608METHOD FOR NON-VOLATILE MEMORY REALLOCATION FOR INFORMATION STORAGE - A set-top box includes a non-volatile memory for storing application code images. To enable the memory to store an application code image larger than a designated storage area associated therewith, the application code image undergoes separation into primary and secondary parts. The memory undergoes reallocation to create a separate storage area for storing the secondary part of the received information, whereas, while the primary part of the received information gets stored in the designated storage area.07-25-2013
20130198483IMAGE READING APPARATUS - An image reading apparatus includes an image data compression unit, an attribute data compression unit, and a memory. Of image data and attribute data generated by image reading, the image data compression unit compresses the image data. The attribute data compression unit compresses the attribute data. In the memory, a page memory region for storing the image data compressed by the image data compression unit and the attribute data compressed by the attribute data compression unit is secured. And, one of the compressed image data and the compressed attribute data is successively written from the beginning of the page memory region toward the end thereof, while the other of the compressed image data and the compressed attribute data is successively written from the end of the page memory region toward the beginning thereof.08-01-2013
20120066470METHOD AND SYSTEM FOR ALLOCATING MEMORY TO A PIPELINE - A method, and associated system, for allocating memory to a first pipeline that includes a sequence of filters. Each filter is configured to execute a process specific to each filter, receive input data, and generate output data. The output data from each filter, except the last filter in the sequence, serves as the input data to the next filter in the sequence. An optimum memory capacity is allocated to the first pipeline if possible. Otherwise, a guaranteed memory bandwidth is allocated to the first pipeline if possible. Otherwise, extra memory currently allocated to a second pipeline is currently released if the second pipeline not currently performing processing or subsequently released when the second pipeline subsequently completes performing processing that is currently being performed, followed by allocating the extra memory to the first pipeline.03-15-2012

Patent applications in class Based on data size