Patents by Inventor Michael M. Byrd

Michael M. Byrd 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: 7880918
    Abstract: A system and related techniques generate a unified representation of graphical representations, such as documents, graphic images or others, for displaying on a display screen, printing on a printer, faxing via a facsimile machine or outputting in other ways. In embodiments a media integration layer, which may reside in the operating system level, may generate renderings from graphics primitives, and send that rendering via a mediation engine to a device driver, for instance a print engine located in a printer. The device engine may return a preview of the output representation to the media integration layer for adjustments or to accept and print the output, all without a necessity for or reliance upon a device-specific driver in the operating system. Since both the display screen and the output device operate off of the same base representation, neither the display nor output device needs to attempt to emulate the output characteristics of the other, and screen-to-print uniformity may be enhanced.
    Type: Grant
    Filed: May 19, 2004
    Date of Patent: February 1, 2011
    Assignee: Microsoft Corporation
    Inventors: Joseph D. Ternasky, Robert L. C. Parker, Michael M. Byrd, Adam Eversole, Joseph King, Michael Stokes
  • Patent number: 7777902
    Abstract: A system and related techniques generate printing and other output operations via a resolution-independent visual tree object. According to embodiments the operating system or other resource may receive the visual tree object and related data from applications or other sources, and perform logic to scale or process the visual output for resolution, effects or other purposes directly from that object. The operating system or other resource itself may be configured to receive the componentized visual tree object and condition or render that object for output to a printer, facsimile machine, copy machine or other output device. The operating system may serialize or spool that object from the source object in native form, relieving applications of the need to prepare documents or other output objects to generate specified resolutions, effects or to adapt the output to specific output drivers.
    Type: Grant
    Filed: May 19, 2004
    Date of Patent: August 17, 2010
    Assignee: Microsoft Corporation
    Inventors: Joseph D. Ternasky, Robert L. C. Parker, Michael M. Byrd, Adam Eversole, Joseph King, Michael Stokes, Oliver H. Foehr
  • Patent number: 7392533
    Abstract: A system and related techniques detect and manage the set of rights associated with a componentized electronic document, including to separately protect and manage individual text, graphic, audio, video or other parts of a multimedia presentation. Unlike prior digital asset management platforms which could enforce encryption or other protection simply around the entire object, the invention permits individualized control over separate media components, to permit distribution for example of some parts, such as text passages, while preventing unauthorized access or copying of audio, photographic, video or other files or content. The electronic document may maintain a list of media components and the set of rights associated with each such component, and a content server or other source may apply key encryption or other safeguards to guide the delivery of the overall media object or its parts, for instance to view in a browser, print on a printer or otherwise access, manipulate or output the content.
    Type: Grant
    Filed: May 19, 2004
    Date of Patent: June 24, 2008
    Assignee: Microsoft Corporation
    Inventors: Joseph D. Ternasky, Robert L. C. Parker, Michael M. Byrd, Adam Eversole, Joseph King, Michael Stokes
  • Patent number: 7191289
    Abstract: Disclosed is a central cache that is updated without the overhead of locking. Updates are “atomic” in that they cannot be interrupted part way through. Applications are always free to read data in the cache, accessing the data through a reference table. Applications do not directly update the cache, instead, they send update requests to a service routine. To update the cache, the service routine proceeds in two phases. In the first phase, the service routine prepares the new data and adds them to the cache, without updating the reference table. During the first phase, an application accessing the cache cannot “see” the new data because the reference table has not yet been updated. After the first phase is complete, the service routine performs the second phase of the update process: atomically updating the reference table. The two-phase update process leaves the cache, at all times, in a consistent state.
    Type: Grant
    Filed: January 27, 2006
    Date of Patent: March 13, 2007
    Assignee: Microsoft Corporation
    Inventors: David C. Brown, Mikhail V. Leonov, Michael M. Byrd
  • Patent number: 7096143
    Abstract: A system and related techniques automatically exercise the output capabilities of a printer or other output device, and return a log or record of those capabilities to the print manager of a host operating system or other destination. According to embodiments, the host, client or other machine may decide to query a printer, facsimile machine, copy or multifunction machine or other device to determine its range of output capabilities such as available fonts, graphical or rending routines, firmware compatibility or other functions or capabilities. The host may transmit a composite electronic document, containing various components including intermediate language objects which may be interpreted to execute various output processing, such as exercising a set of fonts, scaling, rotating, or other rendering or output functions.
    Type: Grant
    Filed: November 18, 2005
    Date of Patent: August 22, 2006
    Assignee: Microsoft Corporation
    Inventors: Joseph D. Ternasky, Robert L. C. Parker, Michael M. Byrd, Adam Eversole, Joseph King, Michael Stokes
  • Patent number: 7089365
    Abstract: Disclosed is a central cache that is updated without the overhead of locking. Updates are “atomic” in that they cannot be interrupted part way through. Applications are always free to read data in the cache, accessing the data through a reference table. Applications do not directly update the cache, instead, they send update requests to a service routine. To update the cache, the service routine proceeds in two phases. In the first phase, the service routine prepares the new data and adds them to the cache, without updating the reference table. During the first phase, an application accessing the cache cannot “see” the new data because the reference table has not yet been updated. After the first phase is complete, the service routine performs the second phase of the update process: atomically updating the reference table. The two-phase update process leaves the cache, at all times, in a consistent state.
    Type: Grant
    Filed: July 19, 2005
    Date of Patent: August 8, 2006
    Assignee: Microsoft Corporation
    Inventors: David C. Brown, Mikhail V. Leonov, Michael M. Byrd
  • Patent number: 7062402
    Abstract: A system and related techniques automatically exercise the output capabilities of a printer or other output device, and return a log or record of those capabilities to the print manager of a host operating system or other destination. According to embodiments, the host, client or other machine may decide to query a printer, facsimile machine, copy or multifunction machine or other device to determine its range of output capabilities such as available fonts, graphical or rending routines, firmware compatibility or other functions or capabilities. The host may transmit a composite electronic document, containing various components including intermediate language objects which may be interpreted to execute various output processing, such as exercising a set of fonts, scaling, rotating, or other rendering or output functions.
    Type: Grant
    Filed: May 19, 2004
    Date of Patent: June 13, 2006
    Inventors: Joseph D. Ternasky, Robert L. C. Parker, Michael M. Byrd, Adam Eversole, Joseph King, Michael Stokes
  • Patent number: 7020746
    Abstract: Disclosed is a central cache that is updated without the overhead of locking. Updates are “atomic” in that they cannot be interrupted part way through. Applications are always free to read data in the cache, accessing the data through a reference table. Applications do not directly update the cache, instead, they send update requests to a service routine. To update the cache, the service routine proceeds in two phases. In the first phase, the service routine prepares the new data and adds them to the cache, without updating the reference table. During the first phase, an application accessing the cache cannot “see” the new data because the reference table has not yet been updated. After the first phase is complete, the service routine performs the second phase of the update process: atomically updating the reference table. The two-phase update process leaves the cache, at all times, in a consistent state.
    Type: Grant
    Filed: January 28, 2003
    Date of Patent: March 28, 2006
    Assignee: Microsoft Corporation
    Inventors: David C. Brown, Mikhail V. Leonov, Michael M. Byrd
  • Publication number: 20040148463
    Abstract: Disclosed is a central cache that is updated without the overhead of locking. Updates are “atomic” in that they cannot be interrupted part way through. Applications are always free to read data in the cache, accessing the data through a reference table. Applications do not directly update the cache, instead, they send update requests to a service routine. To update the cache, the service routine proceeds in two phases. In the first phase, the service routine prepares the new data and adds them to the cache, without updating the reference table. During the first phase, an application accessing the cache cannot “see” the new data because the reference table has not yet been updated. After the first phase is complete, the service routine performs the second phase of the update process: atomically updating the reference table. The two-phase update process leaves the cache, at all times, in a consistent state.
    Type: Application
    Filed: January 28, 2003
    Publication date: July 29, 2004
    Applicant: Microsoft Corporation
    Inventors: David C. Brown, Mikhail V. Leonov, Michael M. Byrd