Patents by Inventor Yongqi Yang

Yongqi Yang has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 6901499
    Abstract: A flash driver tracks data stored in a flash memory device through the use of logical-to-physical sector mapping. The mapping is stored in a data structure and allows data to be written into the next free physical sector in the flash memory medium. Write operations complete quickly, because there is no need to perform an erase operation in order to write new data on to the flash memory medium. Data loss due to power interruption during a write operation is also minimized by the described implementations. The logical-to-physical sector mapping stored in data structure is backed-up on the flash memory medium. In the event there is a catastrophic power interruption, logical-to-physical sector mapping can easily be reestablished by scanning the backed-up mapping in the flash memory medium. The backed-up information can be stored in a spare portion of a NAND or NOR flash memory medium.
    Type: Grant
    Filed: February 27, 2002
    Date of Patent: May 31, 2005
    Assignee: Microsoft Corp.
    Inventors: Jered Donald Aasheim, Yongqi Yang
  • Publication number: 20040268159
    Abstract: Systems and methods are described for profiling the power consumption of software instructions executing on a processor. A power measurement circuit records power consumption levels of a processor executing various software instructions. A profiling tool tracks and identifies the instructions being executed on the processor and generates an association between the instructions and the power consumed during execution of those instructions. The power profile enables the precise isolation and identification of instructions relative to amounts of power consumed during the execution of those instructions.
    Type: Application
    Filed: June 30, 2003
    Publication date: December 30, 2004
    Applicant: MICROSOFT CORPORATION
    Inventors: Jered Donald Aasheim, Yongqi Yang, Avi Geiger, Jeffrey D. Midkiff
  • Publication number: 20040168018
    Abstract: A flash driver tracks data stored in a flash memory device through the use of logical-to-physical sector mapping. The mapping is stored in a data structure and allows data to be written into the next free physical sector in the flash memory medium. Write operations complete quickly, because there is no need to perform an erase operation in order to write new data on to the flash memory medium. Data loss due to power interruption during a write operation is also minimized by the described implementations. The logical-to-physical sector mapping stored in data structure is backed-up on the flash memory medium. In the event there is a catastrophic power interruption, logical-to-physical sector mapping can easily be reestablished by scanning the backed-up mapping in the flash memory medium. The backed-up information can be stored in a spare portion of a NAND or NOR flash memory medium.
    Type: Application
    Filed: February 27, 2004
    Publication date: August 26, 2004
    Inventors: Jered Donald Aasheim, Yongqi Yang
  • Publication number: 20040078666
    Abstract: A transactional file system developed to function with flash memory is described. The file system performs power-failure detection and ensures data integrity in the event of a power failure. In one described implementation, a power failure event can be detected by a file system, components of the file system, or individual modules in the form or computer-executable instructions and/or logic. Meta-information is stored at a location on a flash medium indicated by a write pointer if a computer device shuts-down according to a normal shutdown mode. During initialization of the computer, a check is performed whether the meta-information is present in the location on the flash medium indicated by the write pointer. If the meta-information is present, then a conclusion is made that the computer shutdown according to the normal shutdown mode.
    Type: Application
    Filed: November 21, 2002
    Publication date: April 22, 2004
    Inventors: Jered Donald Aasheim, Yongqi Yang, John Kalkman
  • Patent number: 6621746
    Abstract: Erase operations are performed on a flash memory device by monitoring the entropic nature of the flash memory device. In one implementation, flash abstraction logic, tracks how many physical sectors are free to receive data; track how many physical sectors contain data that is dirty, and compare whether the physical sectors that are free to receive data outnumber the physical sectors that contain data that is dirty. A compactor performs an erase operation of one or more blocks when the physical sectors that contain data that is dirty outnumber the physical sectors that are free to receive data. In another implementation, the flash abstraction logic tracks how many physical sector addresses are free to receive data, and track when the physical sector addresses that are free to receive data are insufficient in quantity to receive write requests from a file system.
    Type: Grant
    Filed: February 27, 2002
    Date of Patent: September 16, 2003
    Assignee: Microsoft Corporation
    Inventors: Jered Donald Aasheim, Yongqi Yang
  • Publication number: 20030163635
    Abstract: A transactional file system developed to function with flash memory is described. The file system provides for efficient storage of file system meta-information, performs robust transaction logging, and performs other related features. In one described implementation, metadata is stored in-line with data. In another embodiment, a transaction log is maintained by storing transaction information associated with requests to perform file transactions. The transaction information is stored at arbitrary physical sector addresses on the flash medium. In still another embodiment, a transaction log is stored in a physical sector of a flash medium. The transaction log contains transaction information associated with performing a file request. Metadata is written into a spare area of the physical sector indicating that the physical sector contains transaction information.
    Type: Application
    Filed: November 21, 2002
    Publication date: August 28, 2003
    Inventors: Jered Donald Aasheim, Yongqi Yang, John Kalkman
  • Publication number: 20030163633
    Abstract: A system supports flash memory having addressable locations. The system uses a compactor that periodically advances through a circular sequence of the flash memory locations organized as blocks and clears the blocks as it advances through the memory locations. In another described implementation, a system uses a write pointer that advances through the circular sequence of the flash memory locations. The write pointer indicating one or more memory locations that are free to receive data after the write pointer advances. Accordingly, the flash memory medium is organized as a continuous circle of addresses, whereby clear and write operations are handled in a continuous and repeating circular manner to achieve uniform wear leveling through a flash memory medium.
    Type: Application
    Filed: February 27, 2002
    Publication date: August 28, 2003
    Inventors: Jered Donald Aasheim, Yongqi Yang
  • Publication number: 20030163663
    Abstract: One or more secondary data structures are maintained containing mappings of logical flash memory addresses to physical flash memory addresses. Each secondary data structure has a predetermined capacity of mappings. A master data structure is also maintained containing a pointer to each of the one or more secondary data structures. Additional secondary data structures are allocated as needed to provide capacity for additional mappings. One or more counters associated with each of the one or more secondary data structures, respectively, provides an indication of when each of the one or more secondary data structures reaches the predetermined capacity of mappings.
    Type: Application
    Filed: November 21, 2002
    Publication date: August 28, 2003
    Inventors: Jered Donald Aasheim, Yongqi Yang, John Kalkman
  • Publication number: 20030163631
    Abstract: A flash driver tracks data stored in a flash memory device through the use of logical-to-physical sector mapping. The mapping is stored in a data structure and allows data to be written into the next free physical sector in the flash memory medium. Write operations complete quickly, because there is no need to perform an erase operation in order to write new data on to the flash memory medium. Data loss due to power interruption during a write operation is also minimized by the described implementations. The logical-to-physical sector mapping stored in data structure is backed-up on the flash memory medium. In the event there is a catastrophic power interruption, logical-to-physical sector mapping can easily be reestablished by scanning the backed-up mapping in the flash memory medium. The backed-up information can be stored in a spare portion of a NAND or NOR flash memory medium.
    Type: Application
    Filed: February 27, 2002
    Publication date: August 28, 2003
    Inventors: Jered Donald Aasheim, Yongqi Yang
  • Publication number: 20030163630
    Abstract: One or more mapping data structures are maintained containing mappings of logical flash memory addresses to physical flash memory addresses. Each mapping data structure has a predetermined capacity of mappings. A master data structure is also maintained containing a pointer to each of the one or more mapping data structures. Additional mapping data structures are allocated as needed to provide capacity for additional mappings. Each time a mapping data structure is allocated or de-allocated the pointers in the master data structure are changed accordingly.
    Type: Application
    Filed: February 27, 2002
    Publication date: August 28, 2003
    Inventors: Jered Donald Aasheim, Yongqi Yang
  • Publication number: 20030161186
    Abstract: Erase operations are performed on a flash memory device by monitoring the entropic nature of the flash memory device. In one implementation, flash abstraction logic, tracks how many physical sectors are free to receive data; track how many physical sectors contain data that is dirty, and compare whether the physical sectors that are free to receive data outnumber the physical sectors that contain data that is dirty. A compactor performs an erase operation of one or more blocks when the physical sectors that contain data that is dirty outnumber the physical sectors that are free to receive data. In another implementation, the flash abstraction logic tracks how many physical sector addresses are free to receive data, and track when the physical sector addresses that are free to receive data are insufficient in quantity to receive write requests from a file system.
    Type: Application
    Filed: February 27, 2002
    Publication date: August 28, 2003
    Inventors: Jered Donald Aasheim, Yongqi Yang
  • Publication number: 20030163632
    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.
    Type: Application
    Filed: February 27, 2002
    Publication date: August 28, 2003
    Inventors: Jered Donald Aasheim, Yongqi Yang
  • Publication number: 20030163594
    Abstract: An open-architecture transactional file system is described. In one described implementation, a file system comprises a plurality of interchangeable and/or customizable logic layers configured to manage operations on behalf of an application when the application makes data requests to a data source. Functionality associated with the file system is augmentable by substituting and/or modifying one or more of the plurality of interchangeable and/or customizable logic layers, respectively, enabling the file system to function with many different types of data sources.
    Type: Application
    Filed: November 21, 2002
    Publication date: August 28, 2003
    Inventors: Jered Donald Aasheim, Yongqi Yang, John Kalkman
  • Patent number: 6562078
    Abstract: A double-spelling soft keyboard is used to input characters in a non-alphabetic language, such as Chinese. These characters are represented by a combination of one or more of an initial sound, a final sound, and a tone. An initial soft keyboard allows the user to select the initial sound, if present. Based on which initial sound is selected, a final soft keyboard offers the user a choice of final sounds that combine to form valid characters with the initial sound. Tone information may also be supplied by the user. Based on the initial sound, the final sound, and/or the tone, the desired character is predicted. This prediction can also be informed by contextual information, linguistic patterns, and the user's previous input.
    Type: Grant
    Filed: June 29, 1999
    Date of Patent: May 13, 2003
    Assignee: Microsoft Corporation
    Inventors: Yongqi Yang, Dong Li
  • Patent number: 6405362
    Abstract: Automatically installing a software application and automatically removing and releasing resources used by the application is disclosed. In one embodiment of the invention, the computerized system includes an operating system for controlling and maintaining resources on a computer; and an event monitor. The event monitor invokes an autorun program in response to a signal from the operating system that a computer-readable medium has been inserted into the computer. The event monitor also invokes the autorun program upon receipt of a signal that the computer readable medium has been removed from the computer. The autorun program installs an application from the computer readable medium when the medium is inserted and releases resources acquired by the application when the medium is removed.
    Type: Grant
    Filed: November 13, 1998
    Date of Patent: June 11, 2002
    Assignee: Microsoft Corporation
    Inventors: Yung-Ho Shih, Yongqi Yang
  • Patent number: 6292857
    Abstract: A method and mechanism for handling user input. Messages corresponding to the user input are placed in a message queue. An input handler differentiates between messages in the queue, such as handwritten character strokes, which are to be handled in real time, and ordered messages, such as characters, cursor movement and editing commands, which are to be handled in a synchronized order of input. The input handler handles each ordered message only after completion of any previous ordered message, while real time messages are handled regardless of the completion status of the ordered messages. In this manner, handwritten character strokes are immediately written to the display area. Ordered messages, which may correspond to handwritten characters having a recognition delay time associated therewith, are handled in the same order as input by the user regardless of any recognition delay time.
    Type: Grant
    Filed: June 5, 1997
    Date of Patent: September 18, 2001
    Assignee: Microsoft Corporation
    Inventors: Donald D. Sidoroff, Yongqi Yang