Open architecture flash driver
First Claim
1. One or more computer storage media comprising a flash memory driver that is executable by a computer to interface between a file system and one or more flash memory media, the flash memory driver comprising:
- flash abstraction logic that is invokable by the file system to manage flash memory operations without regard to the type of the one or more flash memory media; and
flash media logic configured to interact with different types of the flash memory media, wherein the flash media logic is programmable to permit users to match particular medium requirements of a specific manufacturer;
wherein the flash abstraction logic invokes the flash media logic to perform memory operations that are potentially performed in different ways depending on the type of the flash memory media, and further wherein the flash memory driver is flash memory medium agnostic, and wherein one of the flash memory operations includes performing wear-leveling operations associated with the flash memory medium by way of circular and continuous advancement of a write pointer, and wherein the flash memory driver resides as a component within an operating system of the computer.
2 Assignments
0 Petitions
Accused Products
Abstract
A flash driver architecture openly compatible to operate as interface between most types of file systems and flash memory media regardless of the manufacturer. The flash driver includes a flash abstraction logic that serves as a manager for operating characteristics that are common to the plurality of different types flash memory media. The flash driver may also include a programmable flash medium logic that performs more specific operations in direct communication with the flash memory medium. A user/manufacturer of a computer device can optimally select a set of programmable entry points associated with the flash medium logic to ensure congruent and seamless operation between the file system and flash memory medium selected by the user/manufacturer of the computer.
138 Citations
39 Claims
-
1. One or more computer storage media comprising a flash memory driver that is executable by a computer to interface between a file system and one or more flash memory media, the flash memory driver comprising:
-
flash abstraction logic that is invokable by the file system to manage flash memory operations without regard to the type of the one or more flash memory media; and flash media logic configured to interact with different types of the flash memory media, wherein the flash media logic is programmable to permit users to match particular medium requirements of a specific manufacturer; wherein the flash abstraction logic invokes the flash media logic to perform memory operations that are potentially performed in different ways depending on the type of the flash memory media, and further wherein the flash memory driver is flash memory medium agnostic, and wherein one of the flash memory operations includes performing wear-leveling operations associated with the flash memory medium by way of circular and continuous advancement of a write pointer, and wherein the flash memory driver resides as a component within an operating system of the computer. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A flash driver embodied on a computer-readable storage medium, comprising:
-
flash abstraction logic, interposed between a file system and a flash memory medium, configured to; (a) map a logical sector status from the file system to a physical sector status of the flash memory medium; and (b) maintain memory requirements associated with operating the flash memory medium; wherein the flash driver is located remote from the flash memory medium, and wherein the memory requirements include managing wear-leveling operations associated with the flash memory medium by way of circular and continuous advancement of a write pointer, and wherein the flash driver resides as a component within an operating system of a computer; flash medium logic that is programmable to permit users to match particular medium requirements of a specific manufacturer. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A flash driver embodied on a computer-readable storage medium, comprising:
-
user programmable flash medium logic, configured to read, write and erase data to and from a flash memory medium, wherein the flash medium logic is programmable to permit users to match particular flash medium requirements of a specific manufacturer; and flash abstraction logic, interposed between a file system and flash memory medium to maintain universal requirements for the operation of the flash memory medium; wherein the flash memory driver is flash memory medium agnostic, and wherein the universal requirements include managing wear-leveling operations associated with the flash memory medium by way of circular and continuous advancement of a write pointer, and wherein the flash driver is defined as a component within an operating system. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A computer device that uses a flash memory medium for storage of data, comprising:
-
a file system, configured to control data storage for the computer device; flash media logic, configured to perform physical sector operations to a flash memory medium based on physical sector commands, wherein the flash medium logic comprises a set of programmable entry points that can be implemented by a user to interface with any type of flash memory medium selected, wherein the flash media logic is programmable to permit users to match particular flash medium requirements of a specific manufacturer; and flash abstraction logic, configured to maintain flash memory requirements that are necessary to operate the flash memory medium, wherein the flash memory requirements include managing wear-leveling operations associated with the flash memory medium by way of circular and continuous advancement of a write pointer, wherein the flash media logic and the flash abstraction logic comprise a flash driver. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. In a computer device that uses a flash memory medium for storage of data, a method for driving the flash memory medium, comprising:
-
managing rules associated with operating the flash memory medium in a flash abstraction logic, wherein the flash abstraction logic comprises part of a flash driver; and issuing physical sector commands directly to the flash memory medium from a flash medium logic, wherein the flash medium logic is programmable to permit users to match particular flash medium requirements of a specific manufacturer, and wherein the flash medium logic comprises part of the flash driver; wherein the method is flash memory medium agnostic, and wherein one of the rules includes managing wear-leveling operations associated with the flash memory medium by way of circular and continuous advancement of a write pointer, and wherein the method is performed by way of a component residing within an operating system of the processing device. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36)
-
-
37. A computer storage media for a flash driver, comprising computer-executable instructions that, when executed, direct the flash driver to provide an interface between a file system, selected from one of a plurality of different file systems, and a flash memory medium, selected from one of a plurality of different flash memory media, wherein the flash driver is located as a component within an operating system and is remote from the flash memory medium, and wherein wear-leveling of the flash memory medium is performed by way of circular and continuous advancement of a write pointer, and wherein the flash driver comprises programmable flash medium logic that is programmable to permit users to match particular flash medium requirements of a specific manufacturer.
-
38. A computer storage media for a flash driver, comprising computer-executable instructions that, when executed, direct the flash driver to:
-
provide an interface between a file system, selected from one of a plurality of different files systems, and a flash memory medium, selected from one of a plurality of different flash memory media; and manage a set of characteristics that are common to the plurality of different flash memory media at a flash abstraction logic; wherein the flash driver is flash memory medium agnostic, and wherein wear-leveling of the flash memory medium is performed by way of circular and continuous advancement of a write pointer, and wherein the flash driver resides as a component within an operating system, wherein the instructions provide programmable flash medium logic that is programmable to permit users to match particular flash medium requirements of a specific manufacturer, wherein the flash abstraction logic and the flash medium logic comprise the flash driver.
-
-
39. A computer storage media for a flash driver, comprising computer-executable instructions that, when executed, direct the flash driver to:
-
provide an interface between a file system, selected from one of a plurality of different files systems, and a flash memory medium, selected from one of a plurality of different flash memory media; manage a set of characteristics that are common to the plurality of different flash memory media at a flash abstraction logic; and provide programmable entry points that can be optionally selected by a user to interface with the type of flash memory medium selected; wherein the flash driver is located as a component within an operating system and is remote from the flash memory medium and the flash driver is flash memory medium agnostic, and wherein wear-leveling of a flash memory medium is performed by way of circular and continuous advancement of a write pointer, wherein the instructions provide flash medium logic that is programmable to permit users to match particular flash medium requirements of a specific manufacturer, wherein the flash abstraction logic and the flash medium logic comprise the flash driver.
-
Specification