Patents by Inventor C. Fanning

C. Fanning 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).

  • Publication number: 20120311536
    Abstract: Creating metadata for dynamic code in a descriptive metadata language. The method includes obtaining one or more first data structures defining constructs in a body of dynamic language source code. From the one or more first data structures, identifier information is extracted for one or more of the defined constructs. Knowledge about the constructs is augmented. Metadata about the body of the dynamic language source code is provided, with the source code, in a specific metadata format, to a user.
    Type: Application
    Filed: May 31, 2011
    Publication date: December 6, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Michael C. Fanning, Steven Edward Lucco, Frederico A. Mameri
  • Publication number: 20120311533
    Abstract: Enhancing dynamic code. A method includes obtaining one or more first data structures defining constructs in a body of dynamic language source code. From the one or more first data structures, identifier information is extracted for one or more of the defined constructs. Knowledge about the constructs is augmented. Using the identifier information and augmented knowledge, metadata about the body of the dynamic language source code is generated. The generated metadata is represented as a symbol table. The body of dynamic language source code is visually enhanced based on the symbol table structure.
    Type: Application
    Filed: May 31, 2011
    Publication date: December 6, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Michael C. Fanning, Randy S. Kimmerly, Steven Edward Lucco, Andrew Sterland
  • Publication number: 20120311540
    Abstract: Performing tracing functionality. A method includes collecting runtime information that describes the execution of code. The collected runtime information is correlated to specific lines of code and one or more paths taken to get to specific lines of code. User input is received defining a view preference. A code visualization is provided based on the user input defining a view preference and the act of correlating the collected runtime information to specific lines of code and a path taken to get to the line of code.
    Type: Application
    Filed: June 6, 2011
    Publication date: December 6, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Michael C. Fanning, Timothy Scott Rice, Christopher Paul Schmich
  • Publication number: 20120311535
    Abstract: Analyzing dynamic source code. A method includes accessing a specific metadata format data structure. The data structure was created by obtaining one or more first data structures defining constructs in a body of dynamic language source code. From the one or more first data structures, identifier information is extracted for one or more of the defined constructs. Knowledge about the constructs is augmented. The metadata format data structure is parsed to compute metrics about the metadata format data structure. The metrics about the metadata format data structure are provided to a user.
    Type: Application
    Filed: May 31, 2011
    Publication date: December 6, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Michael C. Fanning, Frederico A. Mameri, Zachary A. Nation
  • Publication number: 20120311546
    Abstract: Transforming dynamic code. The method includes obtaining one or more first data structures defining constructs in a body of dynamic language source code. From the one or more first data structures, identifier information is extracted for one or more of the defined constructs. Knowledge about the constructs is augmented. Using the identifier information and augmented knowledge, metadata is generated about the body of the dynamic language source code. The generated metadata is represented as a symbol table. Using the symbol table, the body of dynamic language source code is transformed.
    Type: Application
    Filed: May 31, 2011
    Publication date: December 6, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Michael C. Fanning, Frederico A. Mameri, Zachary A. Nation
  • Publication number: 20120273848
    Abstract: Each gate structure formed on the substrate includes a gate dielectric, a gate conductor, a first etch stop layer, and a gate cap dielectric. A second etch stop layer is formed over the gate structures, gate spacers, and source and drain regions. A first contact-level dielectric layer and a second contact-level dielectric layer are formed over the second etch stop layer. Gate contact via holes extending at least to the top surface of the gate cap dielectrics are formed. Source/drain contact via holes extending to the interface between the first and second contact-level dielectric layers are subsequently formed. The various contact via holes are vertically extended by simultaneously etching exposed gate cap dielectrics and exposed portions of the first contact-level dielectric layer, then by simultaneously etching the first and second etch stop layers. Source/drain contact vias self-aligned to the outer surfaces gate spacers are thereby formed.
    Type: Application
    Filed: April 28, 2011
    Publication date: November 1, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Su C. Fan, David V. Horak, Charles W. Koburger, III, Shom Ponoth, Chih-Chao Yang
  • Publication number: 20120266141
    Abstract: API description techniques are described for consumption by dynamically-typed languages. In one or more implementations, machine-readable data is parsed to locate descriptions of one or more application programming interfaces (APIs). The descriptions of the one or more application programming interfaces are projected into an alternate form that is different than a form of the machine-readable data.
    Type: Application
    Filed: April 13, 2011
    Publication date: October 18, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Michael C. Fanning, Ani Babaian, Jomo A. Fisher, Anson M. Horton, Lucas J. Hoban
  • Publication number: 20120196754
    Abstract: The present invention provides a method, device and a computer program for haplotyping single cells, such that a sample taken from a pregnant female, without directly sampling the fetus, provides the ability to non-invasively determine the fetal genome. The method can be performed by determining the parental and inherited haplotypes, or can be performed merely on the basis of the mother's genetic information, obtained preferably in a blood or serum sample. The novel device allows for sequence analysis of single chromosomes from a single cell, preferably by partitioning single chromosomes from a metaphase cell into long, thin channels where a sequence analysis can be performed.
    Type: Application
    Filed: December 7, 2011
    Publication date: August 2, 2012
    Applicant: Stanford University
    Inventors: Stephen R. Quake, Hei-Mun C. Fan
  • Patent number: 8202946
    Abstract: A variety of graft copolymers can be formed sodium poly(aspartate) with a wide variety of monomers in an aqueous medium by the use of grafting method in the presence of radical initiator at a temperature of from about five degrees Centigrade to about 100 degrees Centigrade. Graft copolymers at high conversion with molecular weight up to millions can be prepared using this method.
    Type: Grant
    Filed: May 2, 2011
    Date of Patent: June 19, 2012
    Assignee: NanoChem Solutions, Inc.
    Inventors: Damodar R. Patil, Laiduien G. Fan, Joseph C. Fan, Jiangping Yu
  • Patent number: 8130697
    Abstract: The invention is a system, a device, and a method that allows remote mobile unit monitoring. The communication system of the invention includes a plurality of mobile units monitored by a stationary unit. Each of the mobile units has a processor, a memory, and a wireless modem for automatically generating a status report and transmitting the status report in an e-mail format without user intervention. The processor of the mobile unit determines when and whether to send a status report by determining if a predefined condition is fulfilled. The stationary unit, which is primarily a user interface unit, parses the status report in the received e-mail and presents the report to the user. Most of the processing and storage capabilities of the system reside in the individual mobile units.
    Type: Grant
    Filed: February 3, 2004
    Date of Patent: March 6, 2012
    Assignee: Genx Mobile, Inc.
    Inventors: Rodric C. Fan, Edward David Mleczko, Sean Dominic Taylor
  • Publication number: 20110213099
    Abstract: A variety of graft copolymers can be formed sodium poly(aspartate) with a wide variety of monomers in an aqueous medium by the use of grafting method in the presence of radical initiator at a temperature of from about five degrees Centigrade to about 100 degrees Centigrade. Graft copolymers at high conversion with molecular weight up to millions can be prepared using this method.
    Type: Application
    Filed: May 2, 2011
    Publication date: September 1, 2011
    Inventors: Damodar R. Patil, Laiduien G. Fan, Joseph C. Fan, Jiangping Yu
  • Patent number: 7999040
    Abstract: A variety of graft copolymers can be formed sodium poly(aspartate) with a wide variety of monomers in an aqueous medium by the use of grafting method in the presence of radical initiator at a temperature of from about five degrees Centigrade to about 100 degrees Centigrade. Graft copolymers at high conversion with molecular weight up to millions can be prepared using this method.
    Type: Grant
    Filed: September 15, 2008
    Date of Patent: August 16, 2011
    Assignee: Nanochem Solutions, Inc.
    Inventors: Damodar R. Patil, Laiduien G. Fan, Joseph C. Fan, Jiangping Yu
  • Patent number: 7996018
    Abstract: An in-vehicle system comprises a location unit, a frequency selection unit, and a receiving unit. Frequency tuning data is loaded into the selection unit. The frequency tuning data includes a radio signal reception area for each unique frequency in the tuning data. The location unit determines the system location and passes the location information to the frequency selection unit. The selection unit selects tuning data for a particular frequency having a signal reception area that encompasses the present vehicle location, and passes the selected data to the receiving unit. The receiving unit uses the selected tuning data to tune the radio signal.
    Type: Grant
    Filed: November 3, 2000
    Date of Patent: August 9, 2011
    Assignee: Trimble Navigation Limited
    Inventor: Rodric C. Fan
  • Patent number: 7983419
    Abstract: A system and method are disclosed for providing encryption of location data transmitted from a wireless device to a wireline network server. In one embodiment, the wireless device encrypts a payload, adds a header to the payload to form a data packet, encrypts the payload and the header of the data packet, and transmits the encrypted data packet.
    Type: Grant
    Filed: August 9, 2001
    Date of Patent: July 19, 2011
    Assignee: Trimble Navigation Limited
    Inventors: Roderic C. Fan, Anil Tiwari, Ramakrishna Tumuluri
  • Patent number: 7975257
    Abstract: Static and dynamic code analyses are seamlessly, iteratively performed. A software analysis tool integrates the results of dynamic and static analysis and iteratively utilizes results from a previous analysis, or analyses, to augment a current analysis. During a debugging process, information collected at runtime is integrated with static code analysis results. This information is generated and stored as part of the results of the testing and debugging processes. The stored information is subsequently utilized to provide improved analysis results. The software analysis tool eliminates the need for software developers to separately perform static analysis and dynamic analysis.
    Type: Grant
    Filed: June 13, 2006
    Date of Patent: July 5, 2011
    Assignee: Microsoft Corporation
    Inventors: Michael C. Fanning, Nicholas Guerrera
  • Patent number: 7957324
    Abstract: The disclosed network includes two rings, wherein a first ring transmits data in a clockwise direction, and the other ring transmits data in a counterclockwise direction. The traffic is removed from the ring by the destination node. During normal operations (i.e., all spans operational), data between nodes can flow on either ring. Thus, both rings are fully utilized during normal operations. The nodes periodically test the bit error rate of the links (or the error rate is constantly calculated) to detect a fault in one of the links. The detection of such a fault sends a broadcast signal to all nodes to reconfigure a routing table within the node so as to identify the optimum routing of source traffic to the destination node after the fault.
    Type: Grant
    Filed: November 25, 2008
    Date of Patent: June 7, 2011
    Assignee: Adtran, Inc.
    Inventors: Jason C. Fan, Prasad P. Jogalekar, Vinay K. Bannai
  • Publication number: 20110113405
    Abstract: A method to measure the performance of an Application Programming Interface (API) includes selecting a target API and tracking memory allocation for the functional calls of the selected API to generate a list of functions called by the API. The individual functions are then called within the API in isolation and timing and memory allocation data for each are collected and recorded. The recorded results are then bucketized according to a log base 2 method and made accessible by API users to indicate the performance of specific APIs.
    Type: Application
    Filed: January 11, 2011
    Publication date: May 12, 2011
    Applicant: Microsoft Corporation
    Inventors: Nicholas Guerrera, Rico Mariani, Michael C. Fanning, Jan Stephen Gray
  • Patent number: 7929428
    Abstract: The disclosed network includes two rings, wherein a first ring transmits data in a clockwise direction, and the other ring transmits data in a counterclockwise direction. The traffic is removed from the ring by the destination node. During normal operations (i.e., all spans operational), data between nodes can flow on either ring. Thus, both rings are fully utilized during normal operations. The nodes periodically test the bit error rate of the links (or the error rate is constantly calculated) to detect a fault in one of the links. The detection of such a fault sends a broadcast signal to all nodes to reconfigure a routing table within the node so as to identify the optimum routing of source traffic to the destination node after the fault.
    Type: Grant
    Filed: November 25, 2008
    Date of Patent: April 19, 2011
    Assignee: Adtran, Inc.
    Inventors: Jason C. Fan, Prasad P. Jogalekar, Vinay K. Bannai
  • Patent number: 7916723
    Abstract: An automatic network topology identification technique is described herein. Each node in the network periodically or constantly transmits its unique address to its neighboring node. Once a node receives a different message from its neighbor, the node identifies a topology change in the network. In one embodiment, a current topology is associated with a session number. When a change in the topology is detected, the detecting node increments the session number and broadcasts the change in topology. The other nodes, detecting the changed session number, now know that there has been a change in the network. In response, the nodes in the network modify routing tables and other information stored at the node related to the topology. In one embodiment, the technique is used to reassign shortened addresses to each device on the network to support a dual-addressing mode of the network.
    Type: Grant
    Filed: July 1, 2009
    Date of Patent: March 29, 2011
    Assignee: Adtran, Inc.
    Inventors: Jason C. Fan, Prasad P. Jogalekar, Vinay K. Bannai
  • Patent number: 7895579
    Abstract: A method to measure the performance of an Application Programming Interface (API) includes selecting a target API and tracking memory allocation for the functional calls of the selected API to generate a list of functions called by the API. The individual functions are then called within the API in isolation and timing and memory allocation data for each are collected and recorded. The recorded results are then bucketized according to a log base 2 method and made accessible by API users to indicate the performance of specific APIs.
    Type: Grant
    Filed: June 16, 2006
    Date of Patent: February 22, 2011
    Assignee: Microsoft Corporation
    Inventors: Nicholas Guerrera, Rico Mariani, Michael C. Fanning, Jan Stephen Gray