Patents by Inventor Nadim Abdo
Nadim Abdo 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: 8233499Abstract: The present invention extends to methods, systems, and computer program products for controlling the transfer of terminal server data. In some embodiments, contending request to send terminal server data are resolved by a flow control module situated between a terminal server protocol and a transport/network protocol. The flow control module utilizes channel priorities along with amounts of previously sent data per channel to determine how to distribute bandwidth in a relatively controlled manner between contending channels. The flow control module can be configured to intercept communication between terminal server protocol and a transport/network protocol to facilitate bandwidth distribution. In other embodiments, data is simultaneously sent over multiple channels of terminal server connection. A first write operation obtains a lock on a corresponding channel but the channel lock does not prevent write operations on other channels.Type: GrantFiled: June 15, 2009Date of Patent: July 31, 2012Assignee: Microsoft CorporationInventors: Makarand V. Patwardhan, Nadim Abdo, Mahesh S. Lotlikar, Hammad Butt, Costin Hagiu
-
Patent number: 8140610Abstract: Bitmap transfer-based display remoting by a server coupled to a client is described. Specifically, an application executing on the server implements operations to render a portion of a graphical user interface (GUI). The server decomposes corresponding rendering-based command(s) into simple bitmap raster operations commands. The server sends the bitmap-based commands to the client. The client, responsive to receiving the commands, respectively stores and draws bitmaps from an offscreen display surface, as directed by the server, to an onscreen display surface to present the GUI portion to a user. Logic at the client to store and present the GUI portion are independent of any client-implemented display remoting cache management logic. The client operations are also independent of determinations and processing of graphical object semantics beyond bitmap semantics. Such management and semantic determinations and processing are implemented and maintained respectively at and by the server.Type: GrantFiled: May 31, 2007Date of Patent: March 20, 2012Assignee: Microsoft CorporationInventors: Nadim Abdo, Wilhelm R. Schmieder
-
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
-
Publication number: 20110227935Abstract: A bitmap transfer-based display remoting by a server coupled to a client is described. Specifically, an application executing on the server implements operations to render a portion of a graphical user interface (GUI). The server decomposes corresponding rendering-based command(s) into simple bitmap raster operations commands. The server sends the bitmap-based commands to the client. The client, responsive to receiving the commands, respectively stores and draws bitmaps from an offscreen display surface, as directed by the server, to an onscreen display surface to present the GUI portion to a user. Logic at the client to store and present the GUI portion are independent of any client-implemented display remoting cache management logic. The client operations are also independent of determinations and processing of graphical object semantics beyond bitmap semantics. Such management and semantic determinations and processing are implemented and maintained respectively at and by the server.Type: ApplicationFiled: May 31, 2011Publication date: September 22, 2011Applicant: Microsoft CorpoartionInventors: Nadim Abdo, Wilhelm R. Schmieder
-
Publication number: 20100131669Abstract: A method for offloading remote terminal services processing tasks to a peripheral device that would otherwise be performed in a computer system's processor and memory. In one embodiment, the disclosed method is utilized in a layered network model, wherein computing tasks that are typically performed in network applications are instead offloaded to a peripheral such as a network interface card (NIC).Type: ApplicationFiled: November 26, 2008Publication date: May 27, 2010Applicant: Microsoft CorporationInventors: NK Srinivas, Robert Wilhelm Schmieder, Nadim Abdo
-
Patent number: 7653749Abstract: A server computer provides objects such as bitmaps representing graphics image for processing by a client computer or device. The object may be of any arbitrary size or format, and is converted to a data structure that can be received by the client computer. Synchronized metadata may be included in the data structure, where such metadata data is used by an application in the client computer or device.Type: GrantFiled: May 22, 2006Date of Patent: January 26, 2010Assignee: Microsoft CorporationInventors: Paul L Coleman, Wilhelm Schmieder, John Parsons, Nadim Abdo, Joy Chik
-
Publication number: 20090248885Abstract: The present invention extends to methods, systems, and computer program products for controlling the transfer of terminal server data. In some embodiments, contending request to send terminal server data are resolved by a flow control module situated between a terminal server protocol and a transport/network protocol. The flow control module utilizes channel priorities along with amounts of previously sent data per channel to determine how to distribute bandwidth in a relatively controlled manner between contending channels. The flow control module can be configured to intercept communication between terminal server protocol and a transport/network protocol to facilitate bandwidth distribution. In other embodiments, data is simultaneously sent over multiple channels of terminal server connection. A first write operation obtains a lock on a corresponding channel but the channel lock does not prevent write operations on other channels.Type: ApplicationFiled: June 15, 2009Publication date: October 1, 2009Applicant: Microsoft CorporationInventors: Makarand V. Patwardhan, Nadim Abdo, Mahesh S. Lotlikar, Hammad Butt, Costin Hagiu
-
Patent number: 7548547Abstract: The present invention extends to methods, systems, and computer program products for controlling the transfer of terminal server data. In some embodiments, contending request to send terminal server data are resolved by a flow control module situated between a terminal server protocol and a transport/network protocol. The flow control module utilizes channel priorities along with amounts of previously sent data per channel to determine how to distribute bandwidth in a relatively controlled manner between contending channels. The flow control module can be configured to intercept communication between terminal server protocol and a transport/network protocol to facilitate bandwidth distribution. In other embodiments, data is simultaneously sent over multiple channels of terminal server connection. A first write operation obtains a lock on a corresponding channel but the channel lock does not prevent write operations on other channels.Type: GrantFiled: March 31, 2006Date of Patent: June 16, 2009Assignee: Microsoft CorporationInventors: Makarand V. Patwardhan, Nadim Abdo, Mahesh S. Lotlikar, Hammad Butt, Costin Hagiu
-
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
-
Publication number: 20080313545Abstract: Systems and methods (“tools”) are described that enable a user to access and interact with a remote desktop or application without the need to install a plug-in or software in addition to a web browser. In some embodiments, the tools include double buffering graphics that display the remote desktop or application, and caching images that are repeated. These tools may also include identifying the portion of the desktop or application that has changed and then transmitting the changed portion.Type: ApplicationFiled: June 13, 2007Publication date: December 18, 2008Applicant: MICROSOFT CORPORATIONInventors: Jeson Patel, Nadim Abdo, Robert-Wilhelm Schmieder
-
Publication number: 20080301566Abstract: bitmap transfer-based display remoting by a server coupled to a client is described. Specifically, an application executing on the server implements operations to render a portion of a graphical user interface (GUI). The server decomposes corresponding rendering-based command(s) into simple bitmap raster operations commands. The server sends the bitmap-based commands to the client. The client, responsive to receiving the commands, respectively stores and draws bitmaps from an offscreen display surface, as directed by the server, to an onscreen display surface to present the GUI portion to a user. Logic at the client to store and present the GUI portion are independent of any client-implemented display remoting cache management logic. The client operations are also independent of determinations and processing of graphical object semantics beyond bitmap semantics. Such management and semantic determinations and processing are implemented and maintained respectively at and by the server.Type: ApplicationFiled: May 31, 2007Publication date: December 4, 2008Applicant: Microsoft CorporationInventors: Nadim Abdo, Wilhelm R. Schmieder
-
Patent number: 7439937Abstract: The present invention is directed to appropriately rendering terminal server graphical data at multiple client side monitors. In some embodiments, a client sends client side monitor configuration for a plurality of monitors to a server. The server simulates a virtual desktop for the plurality of monitors based on the client side monitor configuration. Graphical data generated for the simulated virtual desktop is converted to drawing commands and returned to the client for rendering. In other embodiments, a separate terminal server session is established for each of a plurality client side monitors. Drawing commands for a specified client side monitor is sent from the terminal server to the client over the corresponding session for the client side monitor.Type: GrantFiled: April 14, 2006Date of Patent: October 21, 2008Assignee: Microsoft CorporationInventors: Ido M. Ben-Shachar, John E. Parsons, Pui Loi Joy Chik, Nadim Abdo, Nelly Porter, Robert-Wilhelm Schmieder
-
Publication number: 20080250424Abstract: Described are systems and methods for implementing seamless window support for applications, such as applications based on Windows® Presentation Foundation (WPF). Seamless support for WPF applications can be implemented by remoting information associated with structural representation of the applications from a remote server to a remote client. The structural representation may be replicated at the client in accordance with the structural information. The replicated structural representation is utilized to render visual content associated with the application by local rendering mechanisms at the client.Type: ApplicationFiled: April 4, 2007Publication date: October 9, 2008Applicant: MS1 - Microsoft CorporationInventors: Ivan Brugiolo, Leonardo Blanco, Nadim Abdo, Dorin Oreste Ungureanu
-
Publication number: 20080244458Abstract: 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: ApplicationFiled: March 30, 2007Publication date: October 2, 2008Applicant: Microsoft CorporationInventors: Ivan Brugiolo, Leonardo Blanco, Nadim Abdo
-
Publication number: 20080238929Abstract: Methods and systems for local themeing of remote applications is disclosed. In an implementation, a redirection surface is defined by a server corresponding to a remote application executed by a client. The client sends to the server, a set of theme metrics and parts corresponding to the client and non-client area in the redirection surface. The server utilizes the theme metrics to render the contents of part of the redirection surface. The rendered contents are utilized by the client to re-render the client area of the redirection surface. The non-client area is rendered locally at the client based on local client theme settings.Type: ApplicationFiled: March 30, 2007Publication date: October 2, 2008Inventors: Nadim Abdo, Ivan Brugiolo, Leonardo Blanco
-
Publication number: 20070244967Abstract: The present invention is directed to appropriately rendering terminal server graphical data at multiple client side monitors. In some embodiments, a client sends client side monitor configuration for a plurality of monitors to a server. The server simulates a virtual desktop for the plurality of monitors based on the client side monitor configuration. Graphical data generated for the simulated virtual desktop is converted to drawing commands and returned to the client for rendering. In other embodiments, a separate terminal server session is established for each of a plurality client side monitors. Drawing commands for a specified client side monitor is sent from the terminal server to the client over the corresponding session for the client side monitor.Type: ApplicationFiled: April 14, 2006Publication date: October 18, 2007Applicant: Microsoft CorporationInventors: Ido Ben-Shachar, John Parsons, Pui Joy Chik, Nadim Abdo, Nelly Porter, Robert-Wilhelm Schmieder
-
Publication number: 20070237077Abstract: The present invention extends to methods, systems, and computer program products for controlling the transfer of terminal server data. In some embodiments, contending request to send terminal server data are resolved by a flow control module situated between a terminal server protocol and a transport/network protocol. The flow control module utilizes channel priorities along with amounts of previously sent data per channel to determine how to distribute bandwidth in a relatively controlled manner between contending channels. The flow control module can be configured to intercept communication between terminal server protocol and a transport/network protocol to facilitate bandwidth distribution. In other embodiments, data is simultaneously sent over multiple channels of terminal server connection. A first write operation obtains a lock on a corresponding channel but the channel lock does not prevent write operations on other channels.Type: ApplicationFiled: March 31, 2006Publication date: October 11, 2007Applicant: Microsoft CorporationInventors: Makarand Patwardhan, Nadim Abdo, Mahesh Lotlikar, Hammad Butt, Costin Hagiu
-
Publication number: 20070220168Abstract: Embodiments provide for efficient encoding and rendering of remote graphic displays by applying one or more of the following: (1) field encoding for identifying fields of a graphics set such that commonalities of various fields across different graphics languages are identified; (2) resource caching, which treats heterogeneous resources in a homogeneous way when it comes to storing them; (3) determining the type of encoding for remoting items within a graphics set based upon the types of compression mechanisms supported by a remote device; (4) improving responsiveness by rendering with partially sent resources; (5) a mechanism for determining what portions (if any) of a graphics set should be sent to a remote device and in what order; and (6) use of dedicated resources already on a remote device in order to eliminate the transfer of a resource between a local device and the remote device when rendering such resource.Type: ApplicationFiled: March 15, 2006Publication date: September 20, 2007Applicant: Microsoft CorporationInventors: John Parsons, Joy Chik, Nadim Abdo, Robert Schmieder
-
Publication number: 20070046980Abstract: A server computer provides objects such as bitmaps representing graphics image for processing by a client computer or device. The object may be of any arbitrary size or format, and is converted to a data structure that can be received by the client computer. Synchronized metadata may be included in the data structure, where such metadata data is used by an application in the client computer or device.Type: ApplicationFiled: May 22, 2006Publication date: March 1, 2007Applicant: Microsoft CorporationInventors: Paul Coleman, Wilhelm Schmieder, John Parsons, Nadim Abdo, Joy Chik
-
Publication number: 20070050471Abstract: A client device that includes a scaled remote protocol platform to support communication using a particular remote protocol A software and hardware platform independent micro core or micro client exposes interfaces in the client device to applications to support remote communication. The micro core may be extended to include additional features or service as needed by the client device.Type: ApplicationFiled: April 24, 2006Publication date: March 1, 2007Applicant: Microsoft CorporationInventors: Jeson Patel, Nadim Abdo, Nelly Porter, Joy Chik