Patents by Inventor Jinsong Yu
Jinsong Yu 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: 9323693Abstract: Caching of an immutable buffer that has its data and address prevented from changing during the lifetime of the immutable buffer. A first computing entity maintains a cache of the immutable buffer and has a strong reference to the immutable buffer. So long as any entity has a strong reference to the immutable buffer, the immutable buffer is guaranteed to continue to exist for the duration of the strong reference. A second computing entity communicates with the first computing entity to obtain a strong reference to the immutable buffer and thereafter read data from the immutable buffer. Upon reading the data from the cache, the second computing entity demotes the strong reference to a weak reference to the immutable buffer. A weak reference to the immutable buffer does not guarantee that the immutable buffer will continue to exist for the duration of the weak reference.Type: GrantFiled: January 4, 2013Date of Patent: April 26, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Jinsong Yu, Andrew E. Goodsell, F. Soner Terek, Christopher Wellington Brumme, Ahmed Hassan Mohamed
-
Patent number: 9323543Abstract: Enforcing limitations on hardware drivers. The method includes from a system kernel, assigning I/O resources to the system's root bus. From the root bus, the method further includes assigning a subset of the I/O resources to a device bus. Assigning a subset of the I/O resources to a device bus includes limiting the device bus to only be able to assign I/O resources that are assigned to it by the root bus. From the device bus, the method includes assigning I/O resources to a device through a device interface.Type: GrantFiled: January 4, 2013Date of Patent: April 26, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Yaron Weinsberg, Jinsong Yu, John Richardson, Christopher Wellington Brumme, Martin Taillefer
-
Patent number: 9311225Abstract: Communicating between an application and a hardware device. A method includes an application writing data to host physical memory using an application view of the memory. The method further includes mapping the data in the physical memory to a hardware driver view, usable by a hardware driver, without needing to copy the data to a different physical storage location. The method further includes mapping the data to a hardware accessible view accessible by a hardware device without needing to copy the data to a different physical storage location.Type: GrantFiled: January 4, 2013Date of Patent: April 12, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Shaun David Cox, Fehim Soner Terek, Jinsong Yu, Christopher Wellington Brumme, Gregory Michael Neverov
-
Patent number: 9235382Abstract: Input filters correlate to target components. For a given target component, the input filter defines input validation information. The input filter might also define conversions or transformations to be applied to valid input prior to being provided to the target component. At build time, code is accessed that contains the input validation, conversion and transformation and that identifies the associated target component. The information is then used to construct an input filter. At run time, when an input processing component receives an input, the input processing component identifies the target component, accesses the associated input filter, and uses the information contained in the input filter to determine whether the input is valid, and whether and how to convert and transform the value.Type: GrantFiled: September 20, 2013Date of Patent: January 12, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Wen-Ke Chen, Jinsong Yu, Alexander P. Riemann
-
Patent number: 9189446Abstract: The environment and use of an immutable buffer. A computing entity acquires data or generates data and populates the data into the buffer, after which the buffer is classified as immutable. The classification protects the data populated within the immutable buffer from changing during the lifetime of the immutable buffer, and also protects the immutable buffer from having its physical address changed during the lifetime of the immutable buffer. As different computing entities consume data from the immutable buffer, they do so through views provided by a view providing entity. The immutable buffer architecture may also be used for streaming data in which each component of the streaming data uses an immutable buffer. Accordingly, different computing entities may view the immutable data differently without having to actually copy the data.Type: GrantFiled: January 4, 2013Date of Patent: November 17, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Jason Todd Hunter, Jinsong Yu, Martin Taillefer, Gregory Michael Neverov, Dmitry Kakurin, Ahmed Hassan Mohamed, John J. Duffy, Christopher Wellington Brumme, F. Soner Terek
-
Publication number: 20150158659Abstract: An attachment mechanism for a container includes a housing with a locking element extending therefrom. At least one opening extends through the locking element to selectively receive a portion of the container. A resilient member is disposed within the locking element.Type: ApplicationFiled: February 13, 2015Publication date: June 11, 2015Applicant: S.C. Johnson & Son, Inc.Inventors: Scott W. Demarest, Donald J. Schumacher, Christine D. Beilstein, Dirk K. Nickel, Jinsong Yu, Gang Liu, Xiaogang Tan, Yuanheng Liu
-
Publication number: 20150100947Abstract: Build-time resolution and type-enforcing of corresponding references in different code that references the same value. In response to detecting a directive within the code itself that a first reference in first code is to be correlated with a second reference in second code, and in response to detection that the types of the references are the same, a code generation tool generates correlation code that is interpretable to a compiler as allowing a value of a type of the first reference of a compiled-form of the first code to be passed as the same value of the same type of the second reference of a compiled-form of the second code. The first code, the second code, and the generated correlation code may then be compiled. If compilation is successful, this means that the first and second references are already properly resolved as referring to the same value and type-enforced.Type: ApplicationFiled: October 4, 2013Publication date: April 9, 2015Applicant: Microsoft CorporationInventors: Wen-Ke Chen, Jinsong Yu, Alexander P. Riemann
-
Publication number: 20150089471Abstract: Input filters correlate to target components. For a given target component, the input filter defines input validation information. The input filter might also define conversions or transformations to be applied to valid input prior to being provided to the target component. At build time, code is accessed that contains the input validation, conversion and transformation and that identifies the associated target component. The information is then used to construct an input filter. At run time, when an input processing component receives an input, the input processing component identifies the target component, accesses the associated input filter, and uses the information contained in the input filter to determine whether the input is valid, and whether and how to convert and transform the value.Type: ApplicationFiled: September 20, 2013Publication date: March 26, 2015Applicant: Microsoft CorporationInventors: Wen-Ke Chen, Jinsong Yu, Alexander P. Riemann
-
Patent number: 8985398Abstract: A product dispensing system includes an overcap that has a locking element extending therefrom. A container has a product disposed therein. A bracket is attached to the container. The bracket includes at least one flange and at least one slot. The at least one flange extends toward the at least one slot. A resilient member is disposed within the locking element.Type: GrantFiled: February 4, 2011Date of Patent: March 24, 2015Assignee: S.C. Johnson & Son, Inc.Inventors: Scott W. Demarest, Donald J. Schumacher, Christine D. Beilstein, Dirk K. Nickel, Jinsong Yu, Gang Liu, Xiaogang Tan, Yuanheng Liu
-
Publication number: 20140195862Abstract: Handing errors in program execution. The method includes identifying a set including a plurality of explicitly identified failure conditions. The method further includes determining that one or more of the explicitly identified failure conditions has occurred. As a result, the method further includes halting a predetermined first execution scope of computing, and notifying another scope of computing of the failure condition. An alternative embodiment may be practiced in a computing environment, and includes a method handing errors. The method includes identifying a set including a plurality of explicitly identified failure conditions. The method further includes determining that an error condition has occurred that is not in the set including a plurality of explicitly identified failure conditions. As a result, the method further includes halting a predetermined first execution scope of computing, and notifying another scope of computing of the failure condition.Type: ApplicationFiled: January 4, 2013Publication date: July 10, 2014Applicant: MICROSOFT CORPORATIONInventors: Martin Taillefer, Jinsong Yu, John J. Duffy, Sean E. Trowbridge, Alexander D. Bromfield
-
Publication number: 20140195739Abstract: Caching of an immutable buffer that has its data and address prevented from changing during the lifetime of the immutable buffer. A first computing entity maintains a cache of the immutable buffer and has a strong reference to the immutable buffer. So long as any entity has a strong reference to the immutable buffer, the immutable buffer is guaranteed to continue to exist for the duration of the strong reference. A second computing entity communicates with the first computing entity to obtain a strong reference to the immutable buffer and thereafter read data from the immutable buffer. Upon reading the data from the cache, the second computing entity demotes the strong reference to a weak reference to the immutable buffer. A weak reference to the immutable buffer does not guarantee that the immutable buffer will continue to exist for the duration of the weak reference.Type: ApplicationFiled: January 4, 2013Publication date: July 10, 2014Applicant: Microsoft CorporationInventors: Jinsong Yu, Andrew E. Goodsell, F. Soner Terek, Christopher Wellington Brumme, Ahmed Hassan Mohamed
-
Publication number: 20140195834Abstract: Implementing a safe driver that can support high throughput and low latency devices. The method includes receiving a hardware message from a hardware device. The method further includes delivering the hardware message to one or more driver processes executing in user mode using a zero-copy to allow the one or more driver processes to support high throughput and low latency hardware devices.Type: ApplicationFiled: January 4, 2013Publication date: July 10, 2014Applicant: Microsoft CorporationInventors: Yaron Weinsberg, Jinsong Yu, Shaun David Cox, Stanislav Oks, Galen C. Hunt, Christopher Wellington Brumme, John Richardson
-
Publication number: 20140195746Abstract: Communicating between an application and a hardware device. A method includes an application writing data to host physical memory using an application view of the memory. The method further includes mapping the data in the physical memory to a hardware driver view, usable by a hardware driver, without needing to copy the data to a different physical storage location.Type: ApplicationFiled: January 4, 2013Publication date: July 10, 2014Applicant: MICROSOFT CORPORATIONInventors: Shaun David Cox, Fehim Soner Terek, Jinsong Yu, Christopher Wellington Brumme, Gregory Michael Neverov
-
Publication number: 20140196059Abstract: Enforcing limitations on hardware drivers. The method includes from a system kernel, assigning I/O resources to the system's root bus. From the root bus, the method further includes assigning a subset of the I/O resources to a device bus. Assigning a subset of the I/O resources to a device bus includes limiting the device bus to only be able to assign I/O resources that are assigned to it by the root bus. From the device bus, the method includes assigning I/O resources to a device through a device interface.Type: ApplicationFiled: January 4, 2013Publication date: July 10, 2014Applicant: Microsoft CorporationInventors: Yaron Weinsberg, Jinsong Yu, John Richardson, Christopher Wellington Brumme, Martin Taillefer
-
Publication number: 20140195632Abstract: The environment and use of an immutable buffer. A computing entity acquires data or generates data and populates the data into the buffer, after which the buffer is classified as immutable. The classification protects the data populated within the immutable buffer from changing during the lifetime of the immutable buffer, and also protects the immutable buffer from having its physical address changed during the lifetime of the immutable buffer. As different computing entities consume data from the immutable buffer, they do so through views provided by a view providing entity. The immutable buffer architecture may also be used for streaming data in which each component of the streaming data uses an immutable buffer. Accordingly, different computing entities may view the immutable data differently without having to actually copy the data.Type: ApplicationFiled: January 4, 2013Publication date: July 10, 2014Applicant: MICROSOFT CORPORATIONInventors: Jason Todd Hunter, Jinsong Yu, Martin Taillefer, Gregory Michael Neverov, Dmitry Kakurin, Ahmed Hassan Mohamed, John J. Duffy, Christopher Wellington Brumme, F. Soner Terek
-
Publication number: 20140196004Abstract: Automatically generating code used with device drivers for interfacing with hardware. The method includes receiving a machine readable description of a hardware device, including at least one of hardware registers or shared memory structures of the hardware device. The method further includes determining an operating system with which the hardware device is to be used. The method further includes processing the machine readable description on a code generation tool to automatically generate code for a hardware driver for the hardware device specific to the determined operating system.Type: ApplicationFiled: January 4, 2013Publication date: July 10, 2014Applicant: MICROSOFT CORPORATIONInventors: Yaron Weinsberg, Jinsong Yu, Maxim Grabarnik, Davide Massarenti
-
Patent number: 8276145Abstract: The present invention extends to methods, systems, and computer program products for protected mode scheduling of operations. Protected mode (e.g., user mode) scheduling can facilitate the development of programming frameworks that better reflect the requirements of the workloads through the use of workload-specific execution abstractions. In addition, the ability to define scheduling policies tuned to the characteristics of the hardware resources available and the workload requirements has the potential of better system scaling characteristics. Further, protected mode scheduling decentralizes the scheduling responsibility by moving significant portions of scheduling functionality from supervisor mode (e.g., kernel mode) to an application.Type: GrantFiled: June 27, 2008Date of Patent: September 25, 2012Assignee: Microsoft CorporationInventors: Efstathios Papaefstathiou, Jinsong Yu, Stanislav A. Oks
-
Publication number: 20120199613Abstract: A product dispensing system includes an overcap that has a locking element extending therefrom. A container has a product disposed therein. A bracket is attached to the container. The bracket includes at least one flange and at least one slot. The at least one flange extends toward the at least one slot. A resilient member is disposed within the locking element.Type: ApplicationFiled: February 4, 2011Publication date: August 9, 2012Inventors: Scott W. Demarest, Donald J. Schumacher, Christine D. Beilstein, Dirk K. Nickel, Jinsong Yu, Gang Liu, Xiaogang Tan, Yuanheng Liu
-
Patent number: 8078953Abstract: Architecture for a word processing application that facilitates operating on mathematical symbols, expressions, and/or equations input to a word processing document, and returning results back to the document. User input to the document in the form of math symbols, expressions or equations is transformed into a format for processing by a math engine. The engine returns one or more operations to the user that can be performed on the input, including calculating mathematical solutions, graphing equations and viewing steps to solving math problems. A user interface allows the user choose from the possible operations and to interactively manipulate input and graphs in the word application. The results can be inserted directly into the document and also be graded automatically.Type: GrantFiled: July 12, 2007Date of Patent: December 13, 2011Assignee: Microsoft CorporationInventors: William B Kunz, Xin Li, Luke Kelly, Jinsong Yu, Seth R Atkinson, Murray Sargent
-
Patent number: 8073258Abstract: Systems and methods for use in handwriting recognition in computer algebra are provided. One disclosed method includes receiving handwriting input from a user via a handwriting input device, the handwriting input representing a mathematical expression. The method further includes, at a recognizer, processing the handwriting input to recognize a plurality of candidates and ranking the plurality of candidates to form initial candidate data. The method may further include, at an application program, scanning the plurality of candidates for segments that match application-level criteria, and adjusting a rank of one or more of the plurality of candidates based on the matching, to form a processed candidate list. The method may further include displaying the processed candidate list via a graphical user interface.Type: GrantFiled: August 22, 2007Date of Patent: December 6, 2011Assignee: Microsoft CorporationInventors: Jinsong Yu, Seth Atkinson, Xin Li, Luke Kelly, Larry Israel