Patents by Inventor Ivan Brugiolo
Ivan Brugiolo 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: 11977559Abstract: Methods, systems, apparatuses, and computer program products are provided that enable immediate access to data associated with a source blob. The foregoing is achieved by creating a copy-on-read blob based on the source blob and a link blob based on the copy-on-read blob for each virtual machine to be deployed. When creating the copy-on-read blob, the source blob is not copied. Instead, data from the source blob is copied to the copy-on-read blob upon request by a virtual machine. Subsequent requests for that data are retrieved from the copy-on-read blob. Each link blob stores write data provided by its corresponding virtual machine. When a virtual machine requests data, its corresponding link blob is checked for the data. If the data is not stored therein, the copy-on-read blob is checked for the data. If the copy-on-read blob does not store the data, the data is retrieved from the source blob.Type: GrantFiled: November 9, 2021Date of Patent: May 7, 2024Assignee: Microsoft Technology Licensing, LLCInventors: Krishnan Varadarajan, Shane Mainali, Maneesh Sah, Manan Shah, Andrew Edwards, Ivan Brugiolo, Ju Wang, Ovais Khan, Sivakumar Kalva, Venkates P. Balakrishnan
-
Publication number: 20220067065Abstract: Methods, systems, apparatuses, and computer program products are provided that enable immediate access to data associated with a source blob. The foregoing is achieved by creating a copy-on-read blob based on the source blob and a link blob based on the copy-on-read blob for each virtual machine to be deployed. When creating the copy-on-read blob, the source blob is not copied. Instead, data from the source blob is copied to the copy-on-read blob upon request by a virtual machine. Subsequent requests for that data are retrieved from the copy-on-read blob. Each link blob stores write data provided by its corresponding virtual machine. When a virtual machine requests data, its corresponding link blob is checked for the data. If the data is not stored therein, the copy-on-read blob is checked for the data. If the copy-on-read blob does not store the data, the data is retrieved from the source blob.Type: ApplicationFiled: November 9, 2021Publication date: March 3, 2022Inventors: Krishnan VARADARAJAN, Shane MAINALI, Maneesh SAH, Manan SHAH, Andrew EDWARDS, Ivan BRUGIOLO, Ju WANG, Ovais KHAN, Sivakumar KALVA, Venkates P. BALAKRISHNAN
-
Patent number: 11200253Abstract: Methods, systems, apparatuses, and computer program products are provided that enable immediate access to data associated with a source blob. The foregoing is achieved by creating a copy-on-read blob based on the source blob and a link blob based on the copy-on-read blob for each virtual machine to be deployed. When creating the copy-on-read blob, the source blob is not copied. Instead, data from the source blob is copied to the copy-on-read blob upon request by a virtual machine. Subsequent requests for that data are retrieved from the copy-on-read blob. Each link blob stores write data provided by its corresponding virtual machine. When a virtual machine requests data, its corresponding link blob is checked for the data. If the data is not stored therein, the copy-on-read blob is checked for the data. If the copy-on-read blob does not store the data, the data is retrieved from the source blob.Type: GrantFiled: June 12, 2019Date of Patent: December 14, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Krishnan Varadarajan, Shane Mainali, Maneesh Sah, Manan Shah, Andrew Edwards, Ivan Brugiolo, Ju Wang, Ovais Khan, Sivakumar Kalva, Venkates P. Balakrishnan
-
Publication number: 20190347272Abstract: Methods, systems, apparatuses, and computer program products are provided that enable immediate access to data associated with a source blob. The foregoing is achieved by creating a copy-on-read blob based on the source blob and a link blob based on the copy-on-read blob for each virtual machine to be deployed. When creating the copy-on-read blob, the source blob is not copied. Instead, data from the source blob is copied to the copy-on-read blob upon request by a virtual machine. Subsequent requests for that data are retrieved from the copy-on-read blob. Each link blob stores write data provided by its corresponding virtual machine. When a virtual machine requests data, its corresponding link blob is checked for the data. If the data is not stored therein, the copy-on-read blob is checked for the data. If the copy-on-read blob does not store the data, the data is retrieved from the source blob.Type: ApplicationFiled: June 12, 2019Publication date: November 14, 2019Inventors: Krishnan Varadarajan, Shane Mainali, Maneesh Sah, Manan Shah, Andrew Edwards, Ivan Brugiolo, Ju Wang, Ovais Khan, Sivakumar Kalva, Venkates P. Balakrishnan
-
Patent number: 10366104Abstract: Methods, systems, apparatuses, and computer program products are provided that enable immediate access to data associated with a source blob. The foregoing is achieved by creating a copy-on-read blob based on the source blob and a link blob based on the copy-on-read blob for each virtual machine to be deployed. When creating the copy-on-read blob, the source blob is not copied. Instead, data from the source blob is copied to the copy-on-read blob upon request by a virtual machine. Subsequent requests for that data are retrieved from the copy-on-read blob. Each link blob stores write data provided by its corresponding virtual machine. When a virtual machine requests data, its corresponding link blob is checked for the data. If the data is not stored therein, the copy-on-read blob is checked for the data. If the copy-on-read blob does not store the data, the data is retrieved from the source blob.Type: GrantFiled: June 21, 2017Date of Patent: July 30, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Krishnan Varadarajan, Shane Mainali, Maneesh Sah, Manan Shah, Andrew Edwards, Ivan Brugiolo, Ju Wang, Ovais Khan, Sivakumar Kalva, Venkates P. Balakrishnan
-
Publication number: 20180373769Abstract: Methods, systems, apparatuses, and computer program products are provided that enable immediate access to data associated with a source blob. The foregoing is achieved by creating a copy-on-read blob based on the source blob and a link blob based on the copy-on-read blob for each virtual machine to be deployed. When creating the copy-on-read blob, the source blob is not copied. Instead, data from the source blob is copied to the copy-on-read blob upon request by a virtual machine. Subsequent requests for that data are retrieved from the copy-on-read blob. Each link blob stores write data provided by its corresponding virtual machine. When a virtual machine requests data, its corresponding link blob is checked for the data. If the data is not stored therein, the copy-on-read blob is checked for the data. If the copy-on-read blob does not store the data, the data is retrieved from the source blob.Type: ApplicationFiled: June 21, 2017Publication date: December 27, 2018Inventors: Krishnan Varadarajan, Shane Mainali, Maneesh Sah, Manan Shah, Andrew Edwards, Ivan Brugiolo, Ju Wang, Ovais Khan, Sivakumar Kalva, Venkates P. Balakrishnan
-
Patent number: 9886257Abstract: Methods, apparatus, and computer-accessible storage media for remotely updating an executing process that receives I/O requests on I/O port(s), stores write data to a write log on local storage, and uploads data from the write log to remote storage. An update for the process is detected and downloaded, and an updated process is instantiated from the update. The current process is directed to perform a shutdown for update during an update window. In response, the current process saves its current configuration, flushes an in-memory portion of the write log to local storage, and releases its I/O port(s). The updated process loads the saved configuration, detects that the port(s) have been released, and starts accepting I/O requests on the ports. During flushing, the current process flushes current data in memory while continuing to append new write data, stops accepting new write requests, and then flushes the new write data.Type: GrantFiled: April 21, 2014Date of Patent: February 6, 2018Assignee: Amazon Technologies, Inc.Inventors: James Christopher Sorenson, III, Yun Lin, Ivan Brugiolo
-
Patent number: 9239667Abstract: Computer-readable media, computerized methods, and user interfaces (UIs) for manipulating display areas on a GUI workspace by transitioning the display areas from an original state to one of a set of enhanced window states are provided. Initially, an indication to resize a display area is received at an operating system, which consequently invokes an appropriate window state. The indication may include capturing an edge of the display area and vertically dragging the edge to a dock-target region, thereby invoking a vertically-maximized state. Accordingly, configuration settings of the vertically-maximized state are applied such that the display area is stretched to approximately the screen height. In another instance, the indication may include capturing the display area and dragging a display area into a dock-target region, thereby invoking a semi-maximized state.Type: GrantFiled: December 12, 2012Date of Patent: January 19, 2016Assignee: MICROSOFT TECHNOLOGY LICENCING, LLCInventors: David A. Matthews, Mohamed A. M. Sadek, Stephan Hoefnagels, Ivan Brugiolo, Patrice L. Miner
-
Patent number: 8924512Abstract: An extensible remote display infrastructure is described that provides support for a competitive multi-vendor development environment. Application functionality may be partitioned to suit the needs of a given application and client-side functionality may be packaged in dynamic virtual channel plug-ins for remote display clients. Interactive coupling between the remote display clients and the dynamic virtual channel plug-ins may be facilitated by remote display client extensibility repositories. The remote display client extensibility repositories may be located within a communication infrastructure aspect of the extensible remote display infrastructure and, in particular, at a static virtual channel level. Dynamic virtual channel plug-ins may register properties, functionality and/or components with remote display client extensibility repositories at available granularity.Type: GrantFiled: June 15, 2007Date of Patent: December 30, 2014Assignee: Microsoft CorporationInventors: Vladimir Stoyanov, Ivan Brugiolo, Nadim Abdo
-
Patent number: 8706834Abstract: Methods, apparatus, and computer-accessible storage media for remotely updating an executing process that receives I/O requests on I/O port(s), stores write data to a write log on local storage, and uploads data from the write log to remote storage. An update for the process is detected and downloaded, and an updated process is instantiated from the update. The current process is directed to perform a shutdown for update during an update window. In response, the current process saves its current configuration, flushes an in-memory portion of the write log to local storage, and releases its I/O port(s). The updated process loads the saved configuration, detects that the port(s) have been released, and starts accepting I/O requests on the ports. During flushing, the current process flushes current data in memory while continuing to append new write data, stops accepting new write requests, and then flushes the new write data.Type: GrantFiled: June 30, 2011Date of Patent: April 22, 2014Assignee: Amazon Technologies, Inc.Inventors: James Christopher Sorenson, III, Yun Lin, Ivan Brugiolo
-
Patent number: 8527563Abstract: Remoting a display. A method that may be practiced, for example, in a networked computing environment including a local computer system running one or more applications and a remote computer that displays graphical information to a user for the one or more applications at the local computer system. The remote computer includes a number of surfaces. Drawing information including drawing commands is sent to the remote computer. Meta information is sent to the remote computer defining information about which surface from among the number of surfaces the drawing information applies. Composition information is sent to the remote computer defining the display characteristics of the surface.Type: GrantFiled: December 14, 2005Date of Patent: September 3, 2013Assignee: Microsoft CorporationInventor: Ivan Brugiolo
-
Patent number: 8356258Abstract: Computer-readable media, computerized methods, and user interfaces (UIs) for manipulating display areas on a GUI workspace by transitioning the display areas from an original state to one of a set of enhanced window states are provided. Initially, an indication to resize a display area is received at an operating system, which consequently invokes an appropriate window state. The indication may include capturing an edge of the display area and vertically dragging the edge to a dock-target region, thereby invoking a vertically-maximized state. Accordingly, configuration settings of the vertically-maximized state are applied such that the display area is stretched to approximately the screen height. In another instance, the indication may include capturing the display area and dragging a display area into a dock-target region, thereby invoking a semi-maximized state.Type: GrantFiled: February 1, 2008Date of Patent: January 15, 2013Assignee: Microsoft CorporationInventors: David A. Matthews, Mohamed A. M. Sadek, Stephan Hoefnagels, Ivan Brugiolo
-
Publication number: 20130007183Abstract: Methods, apparatus, and computer-accessible storage media for remotely updating an executing process that receives I/O requests on I/O port(s), stores write data to a write log on local storage, and uploads data from the write log to remote storage. An update for the process is detected and downloaded, and an updated process is instantiated from the update. The current process is directed to perform a shutdown for update during an update window. In response, the current process saves its current configuration, flushes an in-memory portion of the write log to local storage, and releases its I/O port(s). The updated process loads the saved configuration, detects that the port(s) have been released, and starts accepting I/O requests on the ports. During flushing, the current process flushes current data in memory while continuing to append new write data, stops accepting new write requests, and then flushes the new write data.Type: ApplicationFiled: June 30, 2011Publication date: January 3, 2013Inventors: James Christopher Sorenson, III, Yun Lin, Ivan Brugiolo
-
Patent number: 8108799Abstract: Described are systems and methods for remoting applications, such as those based on Windows® Presentation Foundation (WPF). The systems and methods are based on remoting information associated with a structural representation. The structural representation corresponds to visual contents or elements of a desktop to be displayed at a remote end or client end, without rendering the contents at a client or remoted end. The information associated with the structural representation or structural information includes data that specifies the placement of the visual contents on the desktop when displayed. The information is used for recreating the structural representation at the client end and displaying the visual contents in conformance with the structural representation.Type: GrantFiled: March 30, 2007Date of Patent: January 31, 2012Assignee: Microsoft CorporationInventors: Ivan Brugiolo, Leonardo Blanco, Nadim Abdo
-
Patent number: 7937452Abstract: A framework for and hosting rendering plug-ins in remote access services is disclosed. The framework provides an interface between the core components of the remote access system and the rendering plug-ins. The framework utilizes public APIs to provide the interface between the core components and the rendering plug-ins. Using the APIs, the framework can allow various existing and new rendering plug-ins to interact with the core components of the remote access system, thereby making an extensible system that can support a variety of rendering plug-ins.Type: GrantFiled: February 19, 2008Date of Patent: May 3, 2011Assignee: Microsoft CorporationInventors: TongLu Wynn, Nadim Y. Abdo, Oreste Dorin Ungureanu, Ivan Brugiolo
-
Publication number: 20090315900Abstract: A method, medium, and system are provided for a generic surface manager which allows graphics surfaces generated according to various existing and/or new graphics protocols to be rendered by a graphics consumer. The generic surface manager functions as an interface between a graphics consumer and one or more applications that generate graphics surfaces. Support is provided for various existing graphics protocols and the generic surface manager can be easily modified to accept surfaces generated according to new graphics protocols. An extensible system is thereby provided that can support a variety of graphics protocols without requiring modifications to be made to the graphics consumer.Type: ApplicationFiled: June 23, 2008Publication date: December 24, 2009Applicant: MICROSOFT CORPORATIONInventors: Oreste Dorin Ungureanu, Younus Aftab, Ivan Brugiolo, Andrei Baioura, Yutaka Nakajima, David R. Blythe
-
Patent number: 7620899Abstract: Embodiments of the invention, are directed to synchronizing the presentation of windows between two computing systems. A client computing system participates in a terminal server session with a server computing system. Both computing systems identifying their own windows display information (e.g., client-side for local windows and server-side for remote windows respectively). The server computing system transmits its windows display information to the client computing system. The client computing system accesses the windows display information of the server computing system. The client computing system formulates combined ordering applicable to the presentation of both local and remote windows at the client computing system. The combined ordering is based on both the client side and the server-side windows display information. The client computing system presents windows in accordance with the formulated combined ordering.Type: GrantFiled: June 30, 2006Date of Patent: November 17, 2009Assignee: Microsoft CorporationInventors: Nadim Y. Abdo, Ivan Brugiolo, Ivan J. Leichtling, Rajneesh Mahajan
-
Publication number: 20090210482Abstract: A framework for and hosting rendering plug-ins in remote access services is disclosed. The framework provides an interface between the core components of the remote access system and the rendering plug-ins. The framework utilizes public APIs to provide the interface between the core components and the rendering plug-ins. Using the APIs, the framework can allow various existing and new rendering plug-ins to interact with the core components of the remote access system, thereby making an extensible system that can support a variety of rendering plug-ins.Type: ApplicationFiled: February 19, 2008Publication date: August 20, 2009Applicant: Microsoft CorporationInventors: Tong Lu Wynn, Nadim Y. Abdo, Dorin Oreste Ungureanu, Ivan Brugiolo
-
Publication number: 20090199128Abstract: Computer-readable media, computerized methods, and user interfaces (UIs) for manipulating display areas on a GUI workspace by transitioning the display areas from an original state to one of a set of enhanced window states are provided. Initially, an indication to resize a display area is received at an operating system, which consequently invokes an appropriate window state. The indication may include capturing an edge of the display area and vertically dragging the edge to a dock-target region, thereby invoking a vertically-maximized state. Accordingly, configuration settings of the vertically-maximized state are applied such that the display area is stretched to approximately the screen height. In another instance, the indication may include capturing the display area and dragging a display area into a dock-target region, thereby invoking a semi-maximized state.Type: ApplicationFiled: February 1, 2008Publication date: August 6, 2009Applicant: Microsoft CorporationInventors: David A. Matthews, Mohamed A.M. Sadek, Stepan Hoefnagels, Ivan Brugiolo
-
Publication number: 20080313549Abstract: An extensible remote display infrastructure is described that provides support for a competitive multi-vendor development environment. Application functionality may be partitioned to suit the needs of a given application and client-side functionality may be packaged in dynamic virtual channel plug-ins for remote display clients. Interactive coupling between the remote display clients and the dynamic virtual channel plug-ins may be facilitated by remote display client extensibility repositories. The remote display client extensibility repositories may be located within a communication infrastructure aspect of the extensible remote display infrastructure and, in particular, at a static virtual channel level. Dynamic virtual channel plug-ins may register properties, functionality and/or components with remote display client extensibility repositories at available granularity.Type: ApplicationFiled: June 15, 2007Publication date: December 18, 2008Applicant: Microsoft CorporationInventors: Vladimir Stoyanov, Ivan Brugiolo, Nadim Abdo