Dynamic allocation of computer memory
First Claim
Patent Images
1. A method for writing data to a memory having physical sector addresses that have not been assigned to logical sector addresses, the method comprising:
- receiving a write command having associated therewith a starting logical sector address;
assigning the starting logical sector address to a group of the physical sector addresses;
assigning the group of the physical sector addresses to a group of logical sector addresses;
determining from the group of the physical sector addresses a physical sector address associated with the starting logical sector address; and
writing data to the physical sector address within the group of the physical sector addresses associated with the starting logical sector address.
3 Assignments
0 Petitions
Accused Products
Abstract
A method for processing requests or commands for writing and reading to and from memory that has not been allocated and reserved for one or more volumes, and a method for establishing one or more volumes, where the one or more volumes define an area of the memory that is accumulatively greater than the actual memory capacity, thus allowing for memory to be added at a later time.
124 Citations
36 Claims
-
1. A method for writing data to a memory having physical sector addresses that have not been assigned to logical sector addresses, the method comprising:
-
receiving a write command having associated therewith a starting logical sector address; assigning the starting logical sector address to a group of the physical sector addresses; assigning the group of the physical sector addresses to a group of logical sector addresses; determining from the group of the physical sector addresses a physical sector address associated with the starting logical sector address; and writing data to the physical sector address within the group of the physical sector addresses associated with the starting logical sector address. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system for processing data comprising:
-
a memory having physical sector addresses that have not been assigned to logical sector addresses; and a processor configured to; receive a write command having associated therewith a starting logical sector address; assign the starting logical sector address to a group of the physical sector addresses; assign the group of the physical sector addresses to a group of logical sector addresses; determine from the group of the physical sector addresses a physical sector address associated with the starting logical sector address; and write data to the physical sector address within the group of the physical sector addresses associated with the starting logical sector address. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A method for processing a request or command, having a starting logical sector address, to write data to a memory, where the memory has not been allocated and reserved, the method comprising:
-
grouping physical sector addresses into a plurality of segments; reading the starting logical sector address; selecting a segment from the plurality of segments; associating the segment and physical sector addresses associated therewith, with the starting logical sector address and a plurality of logical sector addresses; determining a physical sector address associated with the starting logical sector address; and writing the data in the memory at the physical sector address. - View Dependent Claims (16, 17, 18)
-
-
19. A system for processing a data write request or command, having a starting logical sector address, comprising:
-
a memory that has not been allocated and reserved; and a processor configured to; group physical sector addresses into a plurality of segments; read the starting logical sector address; select a segment from the plurality of segments; associate the segment and physical sector addresses associated therewith, with the starting logical sector address and a plurality of logical sector addresses; determine a physical sector address associated with the starting logical sector address; and write the data in the memory at the physical sector address. - View Dependent Claims (20, 21, 22)
-
-
23. A method for processing a request or command, having a starting logical sector address, to write data to a memory, where the memory has not been allocated and reserved and is represented as a plurality of segments, the method comprising:
-
reading the starting logical sector address; selecting a first segment from the plurality of segments; selecting a first set of physical sector addresses; associating the first segment and the first set of physical sector addresses to the starting logical sector address; associating the first set of physical sector addresses with a set of logical sector addresses; determining a physical sector address associated with the starting logical sector address; determining a quantity of physical sectors available within the first segment; determining whether the data exceeds the quantity of physical sectors; if the data exceeds the quantity of physical sectors, selecting a second segment from the plurality of segments; selecting a second set of physical sector addresses; associating the second segment and the second set of physical sector addresses to a second starting logical sector address; associating the second set of physical sector addresses with a second set of logical sector addresses; determining a second physical sector address associated with the second starting logical sector address; and writing the data in the memory at the first set of physical sector addresses and the second set of physical sector addresses.
-
-
24. A method for processing a request or command, having a starting logical sector address and a sector count, to write to a memory, where one or more segments having a predetermined number of logical sector addresses has been allocated and reserved for the memory, the method comprising:
-
determining whether the starting logical sector address is within a segment of the one or more segments; if the starting logical sector address is within a segment of the one or more segments, determining the segment that the starting logical sector address is within; determining whether the sector count exceeds the predetermined number of logical sector addresses in the segment that are available; if the sector count does not exceed the predetermined number of logical sector addresses in the segment that are available, writing to the predetermined number of logical sector addresses in the segment that are available; if the sector count does exceed the predetermined number of logical sector addresses in the segment that are available, writing data to the predetermined number of logical sector addresses in the segment that are available, determining a second starting logical sector address and a second sector count, and determining whether the second starting logical sector address is within a second segment of the one or more segments; and if the second starting logical sector address is within the second segment of the one or more segments, writing data to the predetermined number of logical sector addresses in the second segment that are available.
-
-
25. A method for processing a request or command, having a starting logical sector address, to read data from a memory, the method comprising:
-
reading the starting logical sector address; determining whether the starting logical sector address is associated with a segment descriptor; if the starting logical sector address is not associated with the segment descriptor, then generating data and respond to the request or command by returning the generated data; and if the starting logical sector address is associated with the segment descriptor, then reading the data associated with the segment descriptor from the memory. - View Dependent Claims (26, 27)
-
-
28. A system for processing a request or command, having a starting logical sector address, to read data from a memory, the system comprising:
-
a memory for storing data; and a processor configured to; read the starting logical sector address; determine whether the starting logical sector address is associated with a segment descriptor; if the starting logical sector address is not associated with the segment descriptor, then generate data and respond to the request or command by returning the generated data; and if the starting logical sector address is associated with the segment descriptor, then read the data associated with the segment descriptor from the memory. - View Dependent Claims (29, 30)
-
-
31. A method for processing a request or command, having a starting logical sector address and a sector count value, to read data from a memory, the method comprising:
-
reading the starting logical sector address; determining whether the starting logical sector address is associated with a segment descriptor; if the starting logical sector address is not associated with the segment descriptor, then generating data and respond to the request or command by returning the generated data; and if the starting logical sector address is associated with the segment descriptor, then reading the data from a location in memory that is associated with the starting logical sector address and the sector count value, as defined by the segment descriptor. - View Dependent Claims (32, 33)
-
-
34. A system for processing a request or command, having a starting logical sector address and a sector count value, to read data from a memory, the system comprising:
-
a memory for storing data; and a processor configured to; read the starting logical sector address; determine whether the starting logical sector address is associated with a segment descriptor; if the starting logical sector address is not associated with the segment descriptor, then generate data and respond to the request or command by returning the generated data; and if the starting logical sector address is associated with the segment descriptor, then read the data from a location in memory that is associated with the starting logical sector address and the sector count value, as defined by the segment descriptor. - View Dependent Claims (35, 36)
-
Specification