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: 20110185071
    Abstract: 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: Application
    Filed: January 22, 2010
    Publication date: July 28, 2011
    Applicant: Microsoft Corporation
    Inventors: Wilhelm R. Schmieder, Tong L. Wynn, Nadim Y. Abdo, Graham Edward Fagg
  • Publication number: 20110185068
    Abstract: 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: Application
    Filed: January 22, 2010
    Publication date: July 28, 2011
    Applicant: Microsoft Corporation
    Inventors: Wilhelm R. Schmieder, Nelamangal Krishnaswamy Srinivas, Vladimir K. Stoyanov, Nadim Y. Abdo
  • Patent number: 7966424
    Abstract: 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: Grant
    Filed: March 15, 2004
    Date of Patent: June 21, 2011
    Assignee: Microsoft Corporation
    Inventors: Nadim Y. Abdo, Andrew Kadatch, Michael V. Sliger
  • Publication number: 20110142334
    Abstract: 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: Application
    Filed: December 11, 2009
    Publication date: June 16, 2011
    Applicant: Microsoft Corporation
    Inventors: Nadim Y. Abdo, Voicu Anton Albu, Charles Lawrence Zitnick, III
  • Patent number: 7937452
    Abstract: 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: Grant
    Filed: February 19, 2008
    Date of Patent: May 3, 2011
    Assignee: Microsoft Corporation
    Inventors: TongLu Wynn, Nadim Y. Abdo, Oreste Dorin Ungureanu, Ivan Brugiolo
  • Publication number: 20100302261
    Abstract: 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: Application
    Filed: May 29, 2009
    Publication date: December 2, 2010
    Applicant: Microsoft Corporation
    Inventors: Nadim Y. Abdo, Max Alan McMullen
  • Publication number: 20100278442
    Abstract: 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: Application
    Filed: July 13, 2010
    Publication date: November 4, 2010
    Applicant: Microsoft Corporation
    Inventors: John E. Parsons, Joy Chick, Nadim Y. Abdo, Robert Wilhelm Schmieder
  • Publication number: 20100254616
    Abstract: 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: Application
    Filed: April 1, 2009
    Publication date: October 7, 2010
    Applicant: Microsoft Corporation
    Inventors: Nadim Y. Abdo, Voicu Anton Albu
  • Patent number: 7802195
    Abstract: 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: Grant
    Filed: April 23, 2009
    Date of Patent: September 21, 2010
    Assignee: Microsoft Corporation
    Inventors: Elton Saul, Carl M. Carter-Schwendler, Nadim Y. Abdo
  • Publication number: 20100226548
    Abstract: 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: Application
    Filed: March 9, 2009
    Publication date: September 9, 2010
    Applicant: Microsoft Corporation
    Inventors: Nadim Y. Abdo, Graham Edward Fagg
  • Publication number: 20100228871
    Abstract: 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: Application
    Filed: March 9, 2009
    Publication date: September 9, 2010
    Applicant: Microsoft Corporation
    Inventors: Nadim Y. Abdo, Wilhelm R. Schmieder, Elton Saul, Voicu Anton Albu
  • Publication number: 20100215280
    Abstract: 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: Application
    Filed: February 26, 2009
    Publication date: August 26, 2010
    Applicant: Microsoft Corporation
    Inventors: Nadim Y. Abdo, Voicu Anton Albu
  • Publication number: 20100146127
    Abstract: 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: Application
    Filed: December 9, 2008
    Publication date: June 10, 2010
    Applicant: Microsoft Corporation
    Inventors: Wilhelm R. Schmieder, Nelamangal Krishnaswamy Srinivas, Costin Hagiu, Nadim Y. Abdo, Vladimir K. Stoyanov, Ahmed M. Tolba, Gautam Swaminathan, Srinivasa Reddy Neerudu
  • Publication number: 20100141650
    Abstract: Techniques for improved command level remoting are disclosed.
    Type: Application
    Filed: December 8, 2008
    Publication date: June 10, 2010
    Applicant: Microsoft Corporation
    Inventors: Nadim Y. Abdo, Onur Filiz, Daniel N. Wood, Max Alan McMullen
  • Publication number: 20100141678
    Abstract: Various techniques for remoting graphics are described in the claims, drawings, and text forming a part of the present disclosure.
    Type: Application
    Filed: December 8, 2008
    Publication date: June 10, 2010
    Applicant: Microsoft Corporation
    Inventors: Nadim Y. Abdo, Asael Dror, Max Alan McMullen, Stuart Ray Patrick
  • Publication number: 20100142813
    Abstract: 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: Application
    Filed: December 9, 2008
    Publication date: June 10, 2010
    Applicant: Microsoft Corporation
    Inventor: Nadim Y. Abdo
  • Patent number: 7676549
    Abstract: 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: Grant
    Filed: May 27, 2005
    Date of Patent: March 9, 2010
    Assignee: Microsoft Corporation
    Inventors: Brendan McKeon, Makarand V Patwardhan, Nadim Y. Abdo
  • Patent number: 7620899
    Abstract: 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: Grant
    Filed: June 30, 2006
    Date of Patent: November 17, 2009
    Assignee: Microsoft Corporation
    Inventors: Nadim Y. Abdo, Ivan Brugiolo, Ivan J. Leichtling, Rajneesh Mahajan
  • Patent number: 7617275
    Abstract: 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: Grant
    Filed: November 1, 2004
    Date of Patent: November 10, 2009
    Assignee: Microsoft Corporation
    Inventors: David E. Zoller, Nadim Y. Abdo, Madan Mohan R. Appiah
  • Patent number: 7613767
    Abstract: 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: Grant
    Filed: July 11, 2003
    Date of Patent: November 3, 2009
    Assignee: Microsoft Corporation
    Inventors: Kirt A. Debique, Thomas A. Thornton, Troy D. Batterberry, Nadim Y. Abdo, Alexandre V. Grigorovitch, Dale A. Sather, Roland Y. Ayala, Eduardo P. Oliveira