System using a direct data file system with a continuous logical address space interface
First Claim
Patent Images
1. A computer system, comprising:
- an interface in which data files are identified with addresses in a continuous logical address space that is divided into distinct logical blocks, anda processor operably connected with the interface to cause data of individual files to be identified by addresses of one or more of the distinct logical blocks of the logical address space, the distinct logical blocks selected during the identification to maintain a number of the distinct logical blocks of the logical address space partially containing addresses of data of any one of the files below a preset limit, so that the number of the distinct logical blocks of the logical address space partially containing addresses of data of any one of the files does not exceed said preset limit.
3 Assignments
0 Petitions
Accused Products
Abstract
Data files are assigned addresses within one or more logical blocks of a continuous logical address space interface (LBA interface) of a usual type of flash memory system with physical memory cell blocks. This assignment may be done by the host device which typically, but not necessarily, generates the data files. The number of logical blocks containing data of any one file is controlled in a manner that reduces the amount of fragmentation of file data within the physical memory blocks, thereby to maintain good memory performance. The host may configure the logical blocks of the address space in response to learning the physical characteristics of a memory to which it is connected.
-
Citations
9 Claims
-
1. A computer system, comprising:
-
an interface in which data files are identified with addresses in a continuous logical address space that is divided into distinct logical blocks, and a processor operably connected with the interface to cause data of individual files to be identified by addresses of one or more of the distinct logical blocks of the logical address space, the distinct logical blocks selected during the identification to maintain a number of the distinct logical blocks of the logical address space partially containing addresses of data of any one of the files below a preset limit, so that the number of the distinct logical blocks of the logical address space partially containing addresses of data of any one of the files does not exceed said preset limit. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer system, comprising:
-
an interface in which data files are identified with addresses in a continuous logical address space that is divided into distinct logical blocks, a processor operably connected with the interface to cause data of individual files to be identified by addresses within one or more of the distinct logical blocks of the logical address space, the distinct logical blocks selected during the identification to maintain a number of the distinct logical blocks of the logical address space partially containing addresses of data of any one of the files below a preset limit, wherein the processor further operates to assign a state to individual files having data addressed in the distinct logical blocks of the logical address space, and to select one of the distinct logical blocks of the logical address space in which data of a given file are to be addressed based on the state of the given file, wherein the processor further operates to assign the state to individual files having data addressed in the distinct logical blocks of the logical address space that is based at least in part upon a number of the distinct logical blocks of the logical address space that are partially filled with addresses of data of the individual files, and wherein the processor further operates to assign the state to individual files having data addressed in the distinct logical blocks of the logical address space that is additionally based upon a number of distinct logical blocks of the logical address space partially filled with addresses of data of the file that also contain unused capacity in which additional addresses of data may be designated.
-
-
7. A computer system, comprising:
-
an interface in which data files are identified with addresses in a continuous logical address space that is divided into distinct logical blocks, a processor operably connected with the interface to cause data of individual files to be identified by addresses of one or more of the distinct logical blocks of the logical address space, the distinct logical blocks selected during the identification to maintain a number of the distinct logical blocks of the logical address space partially containing addresses of data of any one of the files below a preset limit, wherein the processor further operates to assign a state to each file having data identified by addresses in the distinct logical blocks of the logical address space, and to select one of the distinct logical blocks of the logical address space in which data of a given file are to be addressed based on the state of the given file, wherein the processor further operates to assign the state to each file having data identified by addresses in the distinct logical blocks of the logical address space that is based at least in part upon a number of distinct logical blocks of the logical address space that are partially filled with addresses of data of the individual files, and wherein the processor further operates to assign the state to each file having data addressed in the distinct logical blocks of the logical address space that is additionally based upon a number of the distinct logical blocks of the logical address space partially filled with addresses of data of the file that also contain addresses of data of one or more other files.
-
-
8. A system having an interface through which data are transferred as file objects, the interface operating with a non-volatile memory system of a type having units of memory cells that are erasable together prior to being reprogrammed, comprising a processor operably connected with the interface that:
-
maintains at the interface a logical address space that is divided into logical blocks, designates a set of a plurality of logical block types in terms of a structure of file data addressed within individual blocks so designated, designates a set of a plurality of permitted file states in terms of a combination of types of one or more logical blocks in which data of individual files so designated are stored, maintains a record of the file states of individual data files addressed within the logical blocks, and designates addresses of data for an individual file to a type of logical block selected according to the current state of the individual file in the record. - View Dependent Claims (9)
-
Specification