Patents by Inventor Nadim Y. Abdo
Nadim Y. 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).
-
Publication number: 20110185071Abstract: In various embodiments, remote presentation encoding techniques may be modified in such a way that the data can be transmitted over transports without guaranteed packet delivery. In one embodiment, the desktop graphics data may be encoded in individual frames, each frame comprising self-contained graphics elements that fit in a small number of User Datagram Protocol (UDP) protocol data units (PDUs). The PDUs may then be sent to the client on a separate lossy link instead of the lossless link. On the client side, the client may detect which graphic elements within a frame were “lost” as a result of dropped UDP packets and request a refresh from the server through the lossless channel.Type: ApplicationFiled: January 22, 2010Publication date: July 28, 2011Applicant: Microsoft CorporationInventors: Wilhelm R. Schmieder, Tong L. Wynn, Nadim Y. Abdo, Graham Edward Fagg
-
Publication number: 20110185068Abstract: In various embodiments, a remote client is allowed to access at least a part of a connection service located on alternate sources other than the primary remote presentation server. In some embodiments, the remote presentation virtual channels may be split into multiple connections with the purpose of allowing better flow control. Some embodiments may be implemented in a virtual machine environment for cases in which the data to be transferred through a data channel is located in the host virtual machine partition but the remote endpoint is located on the guest virtual machine partition.Type: ApplicationFiled: January 22, 2010Publication date: July 28, 2011Applicant: Microsoft CorporationInventors: Wilhelm R. Schmieder, Nelamangal Krishnaswamy Srinivas, Vladimir K. Stoyanov, Nadim Y. Abdo
-
Patent number: 7966424Abstract: Compression of streaming data is described. In an implementation, a method includes compressing data for communication in a terminal services environment by finding an index in a lookup table that matches an initial sequence in data. The lookup table includes a plurality of entries. Each of the entries is discoverable utilizing a particular one of a plurality of the indices. Each entry references whether a corresponding index is located in a history buffer, and if so, further references one or more locations of the corresponding index in the history buffer. If the corresponding entry of the matching index references a plurality of locations, for each location, a sequence having the matching index is compared with a sequence in the data that includes the initial sequence. A matching sequence is derived from the comparison based on a length and the location of the sequence at each of the locations.Type: GrantFiled: March 15, 2004Date of Patent: June 21, 2011Assignee: Microsoft CorporationInventors: Nadim Y. Abdo, Andrew Kadatch, Michael V. Sliger
-
Publication number: 20110142334Abstract: Systems, methods and computer-readable storage media are disclosed for accelerating bitmap remoting by extracting non-grid tiles from source bitmaps. A server takes a source image, identifies possibly repetitive features, and tiles the image. For each tile that contains part of a possibly repetitive feature, the server replaces that part with the dominant color of the tile. The system then sends to a client a combination of new tiles and features, and indications to tiles and features that the client has previously received and stored, along with an indication of how to recreate the image based on the tiles and features.Type: ApplicationFiled: December 11, 2009Publication date: June 16, 2011Applicant: Microsoft CorporationInventors: Nadim Y. Abdo, Voicu Anton Albu, Charles Lawrence Zitnick, III
-
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: 20100302261Abstract: Systems, methods and computer readable media are disclosed for sending a client graphics data across a remote session for an application, where the application makes fixed function pipeline API calls and the client and server support shader pipeline API calls for the remote session. fixed function pipeline graphics calls from sent from the application are intercepted, wrapped, converted into their fixed function pipeline equivalent graphics call or calls and then sent across the communications network to the client according to a protocol of the remote session.Type: ApplicationFiled: May 29, 2009Publication date: December 2, 2010Applicant: Microsoft CorporationInventors: Nadim Y. Abdo, Max Alan McMullen
-
Publication number: 20100278442Abstract: 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: July 13, 2010Publication date: November 4, 2010Applicant: Microsoft CorporationInventors: John E. Parsons, Joy Chick, Nadim Y. Abdo, Robert Wilhelm Schmieder
-
Publication number: 20100254616Abstract: Systems, methods and computer readable media are disclosed for accelerating the compression of images on a multi-processor computer. In an embodiment, an image is divided into a plurality of slices, each slice having the same width as the image. These slices are provided to a work manager that maintains a thread for each processor. The work manager assigns each slice to a thread for processing in an efficient manner (such as the thread corresponding to the first available processor), and when an indication that the slice has been compressed for each slice is received, the work manager assembles the compressed image.Type: ApplicationFiled: April 1, 2009Publication date: October 7, 2010Applicant: Microsoft CorporationInventors: Nadim Y. Abdo, Voicu Anton Albu
-
Patent number: 7802195Abstract: The present invention extends to methods, systems, and computer program products for dragging and dropping objects between local and remote modules. Terminal server components simulate the functionality of participants in drag and drag operations to facilitate the dragging and dropping of objects between local and remote modules and vice versa. The terminal server components interact locally to communicate with modules participating in a drag and drop operation. The terminal server components also send messages over a terminal server session to relay appropriate drag and drop information to corresponding terminal server components on the other end of the terminal server session.Type: GrantFiled: April 23, 2009Date of Patent: September 21, 2010Assignee: Microsoft CorporationInventors: Elton Saul, Carl M. Carter-Schwendler, Nadim Y. Abdo
-
Publication number: 20100226548Abstract: Systems, methods and computer readable media are disclosed for improving compression efficiency and quality in a remote session via tile image classification and variable encoding. A server determines a set of codecs that are shared by both the server and a corresponding client. Then, when it receives an image, it determines whether classification of the image is required. Where classification of the image is not required, the server sends the client the image, either uncompressed or compressed with a default codec and default fidelity. Where classification of the image is required, the server classifies the image (e.g. the image comprises either text or photograph), and based on that classification determines a codec with which to encode the image, and a fidelity to use on the encoding. The server performs that encoding with the codec and the fidelity, and then sends this encoded image to the client.Type: ApplicationFiled: March 9, 2009Publication date: September 9, 2010Applicant: Microsoft CorporationInventors: Nadim Y. Abdo, Graham Edward Fagg
-
Publication number: 20100228871Abstract: Systems, methods and computer readable media are disclosed for reducing the tearing of display data received across a communications network. A server determines at least two logically related drawing orders in an order heap and warps those orders with a begin marker and an end marker. It sends those wrapped orders across the communications network to a client. The client receives those orders and renders them to a shadow buffer. When the client processes the end marker, it moves the drawing orders in the shadow buffer to a client display surface.Type: ApplicationFiled: March 9, 2009Publication date: September 9, 2010Applicant: Microsoft CorporationInventors: Nadim Y. Abdo, Wilhelm R. Schmieder, Elton Saul, Voicu Anton Albu
-
Publication number: 20100215280Abstract: Systems, methods and computer readable media are disclosed for a vectorized tile differencing algorithm for a remote desktop protocol (RDP). A server executes a CBC-variant vectorized hash algorithm that is used to produce a big key that identifies the tile, and keeps track of these big keys. Where a serial version of the algorithm operates on a single portion of the image at once—such as 32 bits—the vectorized algorithm operates on a plurality of these portions simultaneously. Where the server identifies that a tile has already been sent to a client via RDP because it has a second big key that matches the big key, it sends the big key to the client—which caches received tiles—and the client uses it to access the proper tile for display. Where the server identifies that a tile has not already been sent to the client, it sends the client the tile.Type: ApplicationFiled: February 26, 2009Publication date: August 26, 2010Applicant: Microsoft CorporationInventors: Nadim Y. Abdo, Voicu Anton Albu
-
Publication number: 20100146127Abstract: Techniques are disclosed for a user-mode based remote desktop protocol (RDP) encoding architecture. A user mode desktop application and user mode virtual channel application run in user-mode session space. Virtual channel data from the virtual channel application is marshaled and sent to a RDP encoder process in user-mode system space. There it is converted to RDP protocol data units (PDU) and sent to a remote client across a communications network. Graphics data from the desktop application is sent to a display driver in kernel-mode session space and then to a graphics reflector that marshals the graphics data and sends it to the RDP encoder for a similar transformation.Type: ApplicationFiled: December 9, 2008Publication date: June 10, 2010Applicant: Microsoft CorporationInventors: Wilhelm R. Schmieder, Nelamangal Krishnaswamy Srinivas, Costin Hagiu, Nadim Y. Abdo, Vladimir K. Stoyanov, Ahmed M. Tolba, Gautam Swaminathan, Srinivasa Reddy Neerudu
-
Publication number: 20100141650Abstract: Techniques for improved command level remoting are disclosed.Type: ApplicationFiled: December 8, 2008Publication date: June 10, 2010Applicant: Microsoft CorporationInventors: Nadim Y. Abdo, Onur Filiz, Daniel N. Wood, Max Alan McMullen
-
Publication number: 20100141678Abstract: Various techniques for remoting graphics are described in the claims, drawings, and text forming a part of the present disclosure.Type: ApplicationFiled: December 8, 2008Publication date: June 10, 2010Applicant: Microsoft CorporationInventors: Nadim Y. Abdo, Asael Dror, Max Alan McMullen, Stuart Ray Patrick
-
Publication number: 20100142813Abstract: Techniques are disclosed for compressing image data using the parallel instructions available on a vector processor. In an embodiment, a source image in RGBA format is received. A series of vector processor instructions are used to perform parallel processing steps of splitting the image into separate R, G, B, and A channels, then converting it into a YCoCg colorspace, compressing the Y, Co, and Cg channels separately, then saving an output image corresponding to a compressed version of the source image.Type: ApplicationFiled: December 9, 2008Publication date: June 10, 2010Applicant: Microsoft CorporationInventor: Nadim Y. Abdo
-
Patent number: 7676549Abstract: Techniques relating to enabling accessibility functionality in remote terminal session scenarios are described. In one instance, a process detects a request from an accessibility functionality regarding a display element in a remote terminal session. The process sends a query relating to the request to a component located on a computing device which generated the display element. The process also receives a response to the query.Type: GrantFiled: May 27, 2005Date of Patent: March 9, 2010Assignee: Microsoft CorporationInventors: Brendan McKeon, Makarand V Patwardhan, Nadim Y. Abdo
-
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
-
Patent number: 7617275Abstract: A user at a client may specify a URL including certain parameters necessary to establish a corresponding terminal server connection. A corresponding http request generated by Internet Explorer® is sent to a web server, which in response generates the complete set of parameters required for a terminal server connection using ASP script. The parameters, including terminal server name, terminal server application, log-on user name, log on user-password and screen size are returned within the structure of a URL address. The URL returned corresponds to a web page having embedded ActiveX® controls used to facilitate the desired terminal server connection. Terminal server client software on the client then establishes a terminal server connection using the parameters and ActiveX® functionality.Type: GrantFiled: November 1, 2004Date of Patent: November 10, 2009Assignee: Microsoft CorporationInventors: David E. Zoller, Nadim Y. Abdo, Madan Mohan R. Appiah
-
Patent number: 7613767Abstract: A distributed media session is described, which when executed, resolves a distributed topology from a request to stream data from a source device to a client device over a network. The distributed topology references a plurality of software components that, when executed, fulfill the request. At least one of the plurality of software components is executable on each of the source device and the client device.Type: GrantFiled: July 11, 2003Date of Patent: November 3, 2009Assignee: Microsoft CorporationInventors: Kirt A. Debique, Thomas A. Thornton, Troy D. Batterberry, Nadim Y. Abdo, Alexandre V. Grigorovitch, Dale A. Sather, Roland Y. Ayala, Eduardo P. Oliveira