Inventors list

Assignees list

Classification tree browser

Top 100 Inventors

Top 100 Assignees


Ganapathy, WA

Nar Ganapathy, Redmond, WA US

Patent application numberDescriptionPublished
20090138625SPLIT USER-MODE/KERNEL-MODE DEVICE DRIVER ARCHITECTURE - A device driver includes a kernel stub and a user-mode module. The device driver may access device registers while operating in user-mode to promote system stability while providing a low-latency software response from the system upon interrupts. Upon receipt of an interrupt, the kernel stub may run an interrupt service routine and write information to shared memory. Control is passed to the user-mode module by a reflector. The user-mode module may then read the information from the shared memory to continue servicing the interrupt.05-28-2009
20090204978SYNCHRONIZING SPLIT USER-MODE/KERNEL-MODE DEVICE DRIVER ARCHITECTURE - A device driver includes a kernel mode and a user-mode module. The device driver may access device registers while operating in user-mode to promote system stability while providing a low-latency software response from the system upon interrupts. The device driver may include kernel stubs that are loaded into the operating system, and may be device specific code written. The stubs may be called by a reflector to handle exceptions caught by the stubs. A reset stub may be invoked by the reflector when the user-mode module or host terminates abruptly or detects an interrupt storm. The reset stub may also be invoked if errant DMA operations are being performed by a hardware device. The reset stub may ensure that hardware immediately stops unfinished DMA from further transfer, and may be called by the user-mode driver module.08-13-2009
20090210888SOFTWARE ISOLATED DEVICE DRIVER ARCHITECTURE - A device driver includes a hypervisor stub and a virtual machine driver module. The device driver may access device registers while operating within a virtual machine to promote system stability while providing a low-latency software response from the system upon interrupts. Upon receipt of an interrupt, the hypervisor stub may run an interrupt service routine and write information to shared memory. Control is passed to the virtual machine driver module by a reflector. The virtual machine driver module may then read the information from the shared memory to continue servicing the interrupt.08-20-2009

Narayanan Ganapathy, Redmond, WA US

Patent application numberDescriptionPublished
20080258865BINARY VERIFICATION SERVICE - A binary is received at a binary verification service from a binary verification client agent. The binary verification service performs binary verification of the binary, wherein binary verification includes determining whether the binary is complicit with a set of usage rules. The binary verification service sends a binary verification result to the binary verification client agent.10-23-2008
20090158301Multi-function device ID with unique identifier - A computer system that recognizes multi-function devices and associates functions with multi-function devices. Each multi-function device may be represented by a multi-function object, allowing tools, applications or other components within the computer to take actions relating to the entire device or relating to a function based on the association of that function with other functions in the same device. These actions include displaying information about devices, instead of or in addition to information about functions. Actions also include selecting functions based on proximity within a device. Functions may be associated with a multi-function device using a unique device identifier provided by the device or generated for the function based on a connection hierarchy between functions and the computer. Devices may be configured to provide the same identifier regardless of the transport over which the device is accessed.06-18-2009
20090293070DEVICE DISPLAY OBJECT INFRASTRUCTURE - Multi-function devices expose multiple functions to device drivers or other lower-level software. Device function providers can interface with such drivers or lower-level software and can provide information, including device identifiers regarding such functions, to a device display object infrastructure. A device display object can then be created that encompasses one or more functions such that, in one embodiment, the device display object corresponds to a single, physical multi-function device. Alternatively, any combination of functionality from one or more physical devices can be combined into a single device display object representing a virtual multi-function device. Properties of the device display object can be set with reference to user-specified settings, remotely maintained metadata, locally available metadata, and information associated with each function. Functions can be ranked such that, if there is a conflict, information from more highly ranked functions is used to set the properties of the device display object.11-26-2009
20090319660GENERALIZED ARCHITECTURE TO SUPPORT REPRESENTATION OF MULTI-TRANSPORT DEVICES - A computer system that accesses multi-transport devices and associates device instances of the multi-transport device with each other. Devices provide the same device identifier such as a device unique identifier regardless of the transport over which the device is accessed. A visual representation for the multi-transport device may be provided to a user using the device identifier. Also, a single functional representation for the multi-transport device may be provided based on an identifier provided by each function of the device. The functional representation may be independent of the addition and removal of transports and allows abstracting device access via multiple transports from a user and an application. Transports may be selected at an application and/or a system level. Operating characteristics of available transports may be used to select a desired transport, based on transport requirements specified by the application, the user or the system.12-24-2009
20100040233PROTOCOL FOR DEVICE TO STATION ASSOCIATION - A technique that enables a portable device to be automatically associated with a plurality of computers. Information that a computer can use to authenticate a portable device and establish a trusted relationship prior to creating an association with the portable device is created and stored in a data store that is accessible by a plurality of computers and is associated with a user of the portable device. When a computer discovers such a portable device with which it is not yet associated, the computer can identify a user logged into the computer and use information identifying the user to retrieve authentication information that is device independent and is expected to be presented by the portable device to authenticate it and allow automatic association.02-18-2010
20100043056PORTABLE DEVICE ASSOCIATION - A technique that enables a portable device to be automatically associated with a plurality of computers. Information that a computer can use to authenticate a portable device and establish a trusted relationship prior to creating an association with the portable device is created and stored in a data store that is accessible by a plurality of computers and is associated with a user of the portable device. When a computer discovers such a portable device with which it is not yet associated, the computer can identify a user logged into the computer and use information identifying the user to retrieve authentication information that is device independent and is expected to be presented by the portable device to authenticate it and allow automatic association.02-18-2010

Patent applications by Narayanan Ganapathy, Redmond, WA US

Ramanathan Ganapathy, Bothell, WA US

Patent application numberDescriptionPublished
20090327303INTELLIGENT ALLOCATION OF FILE SERVER RESOURCES - A solution provides an efficient process for a user to complete operations within a file server system. A user's future requests, such as reading or writing files, are predicted based on previous operations. An effective amount of a file server's resources are allocated to accommodate the predicted future requests, thereby reducing the amount of required system time for performing operations corresponding to a file server memory.12-31-2009

Ramanathan Ganapathy, Redmond, WA US

Patent application numberDescriptionPublished
20080240144File server pipelining with denial of service mitigation - A method of metering bandwidth allocation on a server using credits is disclosed. The method may receive a request for data from a client, respond to the request for data and determining if the request for data for the client exceeds a current data allocation credit limit for the client. Using the round trip time, the method may calculate a connection throughput for a client and may increase the current data allocation credit limit for the client if the server has resources to spare, the client is actively using the current pipeline depth allowed and network connection latency and bandwidth indicate a deeper pipeline is necessary for saturation. The method may decrease the current data allocation credit limit for the client if the server does not have resources to spare.10-02-2008
20080320155Aggregation and re-ordering of input/output requests for better performance in remote file systems - A method and system for managing remote file system requests between client and server redirectors where a set of data request packets may be aggregated and/or ordered at a server based on hint information from a client.12-25-2008