Dynamic Linking, Late Binding Patents (Class 719/331)
-
Patent number: 7577997Abstract: Tampering with pieces of software is inhibited. Software obfuscation inhibits reverse engineering by hackers by manipulating names of functions and adding jump instructions into various pieces of software. The obfuscation of a software image so as to becloud the comprehension of hackers in reverse engineering pieces of software comprising the software image is provided. Image verification ensures the originality of the pieces of software to be installed.Type: GrantFiled: February 17, 2005Date of Patent: August 18, 2009Assignee: Microsoft CorporationInventors: Frank Nian-Tzu Chu, Wei Wu, Julie D. Bennett, Mohammed El-Gammal
-
Patent number: 7577964Abstract: In accordance with an embodiment of the present invention, a web-services interface for a web-service comprises a message binding extension element operable to specify a format for a message requesting the web-service and a binding details extension element operable to specify an availability status of at least one receipt for the message.Type: GrantFiled: February 28, 2003Date of Patent: August 18, 2009Assignee: Hewlett-Packard Development Company, L.P.Inventors: Dorothea Beringer, Guillaume Vambenepe
-
Patent number: 7571445Abstract: A system and method for dynamic device driver support in an open source operating system is disclosed in which a device driver includes one or more driver modules in executable format and a service layer provided to the user of the computer system in an open source format. The open source service layer can be compiled against the kernel of the operating system, causing the compiled service layer to be compatible with the kernel of the operating system, including any naming conventions followed by function calls of the kernel of the operating system. Because the executable driver modules are not easily accessible, proprietary information concerning the hardware architecture may be included in these modules.Type: GrantFiled: November 29, 2001Date of Patent: August 4, 2009Assignee: Dell Products L.P.Inventors: Chieng-Hwa Lin, Sanjay Rao
-
Patent number: 7571448Abstract: A hooking control manager hooks kernel level operations. The kernel level hooking control manager identifies a kernel level component for which to filter outgoing kernel level system calls. For each of a select set of outgoing kernel level system calls imported by the kernel level component, the kernel level hooking control manager locates the address of the system call in the kernel level component, stores the address, and patches the kernel level component with an address of alternative code to execute when the kernel level component makes the outgoing system call. Upon the unloading of the kernel level hooking control manager, for each call of the select set, the kernel level hooking control manager locates the address of the system call in the kernel level component, and patches the kernel level component so as to restore the stored address.Type: GrantFiled: July 28, 2004Date of Patent: August 4, 2009Assignee: Symantec CorporationInventor: Ahmed S. Sallam
-
Publication number: 20090193444Abstract: Various technologies and techniques are disclosed for creating and managing extensions. An extension manager is operable to interact with and manage extensions in at least two categories, such as operative extensions and cooperative extensions. The extension manager loads zero or more extensions from a first set of extensions into a host application. The extension manager loads zero or more extensions from a second set of extensions into the host application based upon an analysis of one or more declarations of compatibility. An extension manager framework is described that has a language syntax for describing the operation of extensions. The language syntax enables a cooperative extension to declare compatibility with operative extensions, so that the cooperative extension is only loaded into a host application in situations where the cooperative extension has been pre-defined as being compatible. A process for loading extensions in a host application using declarations of compatibility is described.Type: ApplicationFiled: January 29, 2008Publication date: July 30, 2009Applicant: MICROSOFT CORPORATIONInventors: Jason Clark, Liangxiao Zhu
-
Patent number: 7568035Abstract: Aspects of the subject matter described herein relate to generating and propagating commands. In aspects, elements of a graphical user interface may include an input binding which associates a gesture with a command. When a gesture is received, the command is generated depending on which element has focus. In addition, elements of the graphic user interface may also define methods to call when commands are received. When an event or a command is received, a hierarchical data structure of elements representable on the graphical user interface may be traversed to respond to the event or command.Type: GrantFiled: August 30, 2005Date of Patent: July 28, 2009Assignee: Microsoft CorporationInventors: Namita Gupta, Michael J. Hillberg, Jeffrey L. Bogdan
-
Patent number: 7568188Abstract: A method for testing a software shim is provided, in which a skeleton executable file is altered so that it mimics the executable file for which the shim is intended. The alterations made to the skeleton executable file may include one or more of the following: changing the file name, padding the file and changing the calculated checksum of the file.Type: GrantFiled: March 7, 2003Date of Patent: July 28, 2009Assignee: Microsoft CorporationInventor: Diaa Fathalla
-
Patent number: 7568197Abstract: In general, the invention relates to a method for loading a kernel module. The method involves loading a preload module into a kernel. Loading the preload module includes creating a dynamic dependency list. Loading the kernel module further includes loading the kernel module comprising a static dependency list into the kernel, and triggering a hook when the static dependency list is reviewed. The module information associated with the kernel is obtained using the hook. Loading the kernel module further includes searching for a dynamic dependency associated with the kernel module in the dynamic dependency list using the module information, and updating the static dependency list with the dynamic dependency to obtain an updated static dependency list if the dynamic dependency associated with the kernel module is present in the dynamic dependency list.Type: GrantFiled: March 12, 2004Date of Patent: July 28, 2009Assignee: Sun Microsystems, Inc.Inventors: Chris J. Kiick, Michael T. Clayton, Michael S. Walker
-
Patent number: 7565665Abstract: A method of producing an executable image from an object file without shared library support from the operating system, wherein the executable image requires a shared library file in order to resolve at least one of the symbols called for in the object file. A method of optimizing the loading of a previously linked file into working memory in a computer for executing in a single address space of the working memory, the file containing an instruction to make an indirect jump to a location in a shared library through an import section of the file. A method for optimizing the loading of a previously linked file into working memory in a computer for executing in a single address space of the working memory, the file containing plural sections with number-filled padding between the end of each section and a succeeding page boundary. A method of optimizing the loading of a previously linked file into working memory in a computer for executing in a memory sharable with other executables.Type: GrantFiled: May 23, 2005Date of Patent: July 21, 2009Assignee: Microsoft CorporationInventors: Alessandro Forin, Johannes V. Helander
-
Patent number: 7562369Abstract: A computer implemented method of activating a process. The method includes the steps of generating one or more first plug-ins each configured to activate a target process, dynamically registering the first plug-ins with a second plug-in, and permanently storing information relating to each registered first plug-in. A server computer in a client-server computer system that includes one or more first plug-ins each configured to activate a target process, and a second plug-in configured to dynamically register the first plug-ins and to permanently store information relating to the registered first plug-ins.Type: GrantFiled: January 28, 2000Date of Patent: July 14, 2009Assignee: IONA Technologies, PLCInventors: Julie Salamone, Alan Clarke, Paul Kiely, Ronald C Witham, Jr., Kevin Sullivan
-
Patent number: 7559091Abstract: Tampering with pieces of software is inhibited. Software obfuscation inhibits reverse engineering by hackers by manipulating names of functions and adding jump instructions into various pieces of software. Profiles are stored in a central hierarchical database and such profiles are protected from tampering. The obfuscation of a software image so as to becloud the comprehension of hackers in reverse engineering pieces of software comprising the software image is provided.Type: GrantFiled: February 17, 2005Date of Patent: July 7, 2009Assignee: Microsoft CorporationInventors: Frank Nian-Tzu Chu, Wei Wu, Julie D Bennett, Mohammed El-Gammal
-
Publication number: 20090172713Abstract: Methods and apparatuses enable on-demand instruction emulation via user-level exception handling. A non-supported instruction triggers an exception during runtime of a program. In response to the exception, a user-level or application-level exception handler is launched, instead of a kernel-level handler. Then the exception handler can execute at the application layer instead of the kernel level. The handler identifies the instruction and emulates the instruction, where emulation of the instruction is supported by the handler. Emulating the instructions enables the program to continue execution. Repeated instruction emulation is amortized via dynamic binary translation of hot code.Type: ApplicationFiled: December 31, 2007Publication date: July 2, 2009Inventors: Ho-Seop Kim, Mauricio Breternitz, JR., Youfeng Wu
-
Publication number: 20090172715Abstract: Generally described, the present invention is directed to a network operating system that provides more effective ways of leveraging the connectivity of computer networks. In one embodiment, an XML virtual machine is implemented that accepts high-level application code written in an XML programming language as input. Functionality is provided to interpret or translate the application code written in an XML programming language into code that is suitable for execution across computer platforms. Moreover, the XML virtual machine supports the Model View Controller (MVC) design paradigm that facilitates true data abstraction from applications to a common data model. Multi-instance applications, with each instance potentially supporting multiple views, may be created and executed.Type: ApplicationFiled: September 29, 2008Publication date: July 2, 2009Applicant: XCERION ABInventors: Daniel Arthursson, Marcus Bristav
-
Publication number: 20090172712Abstract: A method and article of manufacture for accessing at least one unexposed runtime service.Type: ApplicationFiled: December 29, 2007Publication date: July 2, 2009Inventors: Michael A. Rothman, Vincent J. Zimmer
-
Publication number: 20090172714Abstract: Text that appears in sessions presented on a computer screen is indexed to enable future text-based search of the session content. During the recording, a text capture algorithm is used to capture any text data presented on any window on the computer screen, either in a selective or in an all-encompassing manner. Data captured are indexed to the capture time because a timestamp must be known to allow for a search that can provide temporal relevance. The interval used to capture the window data is modifiable, based on the needs of the application. Once the window is scanned, a comparison is done with the results of previous captures to determine if there is a need to update the metadata database with new results.Type: ApplicationFiled: March 11, 2008Publication date: July 2, 2009Inventors: Harel Gruia, Maxim Romanov, Daniel Shimoff, Tsakhi Segal
-
Patent number: 7552337Abstract: Tampering with pieces of software is inhibited. Service protection inhibits tampering by allowing various unauthorized services to execute. Profiles are stored in a central hierarchical database and such profiles are protected from tampering. The obfuscation of a software image so as to becloud the comprehension of hackers in reverse engineering pieces of software comprising the software image is provided.Type: GrantFiled: February 17, 2005Date of Patent: June 23, 2009Assignee: Microsoft CorporationInventors: Frank Nian-Tzu Chu, Wei Wu, Julie D Bennett, Mohammed El-Gammal, Simon D Earnshaw
-
Patent number: 7552444Abstract: A method in a data processing system for attaching an informational dialog to a program. The program is morphed to extend an existing interface to the program to become a dippable program. A dip is created, wherein the dip modifies runtime behavior of the existing interface of the dippable program to include an informational dialog. The dip is added to the dippable program, wherein the informational dialog is attached to the dippable program. The dialog is displayed just before the dippable program is displayed.Type: GrantFiled: May 21, 2004Date of Patent: June 23, 2009Assignee: International Business Machines CorporationInventors: John William Alcorn, James Irwin Knutson
-
Patent number: 7552452Abstract: Embodiments of the present invention relate to methods, systems and computer-readable media for external localization of a software product. This external localization involves loading a base product having one or more calls to an operating system (or an API) to load language specific data. The calls are intercepted after the resource is loaded into a Resource loader, and queried whether the resource is identified in a restricted resource list such as a code signed dynamic linked library. If so, the translated resource is loaded from a specified language package. The loaded, and translated, resource is then checked against validation rules (which are also protected in a code signed resource list) to see if it is safe to use. If the resource is not on the list or the translated resource is not safe to use, the original resource is simply transferred to the application without modification from the resource loader, i.e., loaded from the base language file.Type: GrantFiled: January 20, 2005Date of Patent: June 23, 2009Assignee: Microsoft CorporationInventors: Barry McHugh, Jan-Roelof Falkena, Robert Grimes, Terry Farrell, David Ahs, Alexei Soloveitchik
-
Patent number: 7543309Abstract: Methods of optimizing the loading of a previously linked file into working memory in a computer for executing in a memory sharable with other executables, and converting an image which has been previously linked for executing in an unshared memory into an image optimized for use with virtual memory.Type: GrantFiled: August 20, 2004Date of Patent: June 2, 2009Assignee: Microsoft CorporationInventors: Alessandro Forin, Johannes V. Helander
-
Publication number: 20090133042Abstract: The present invention is directed to a loadable virtual memory manager, and generally to a computer operating system capable of supporting application programs running in a computer having a working memory, the computer operating system including a kernel resident in the working memory at run time, and a loadable virtual memory manager resident at link time outside of the working memory and dynamically loadable into the working memory at run time upon demand of one of the application programs. The kernel includes a loader for loading the virtual memory manager into the working memory in response to a demand from one of the application programs. The computer is able to access a storage memory separate from the working memory, the loadable virtual memory manager residing at link time in the storage memory. The loader loads the virtual memory manager from the storage memory to the working memory.Type: ApplicationFiled: January 23, 2009Publication date: May 21, 2009Applicant: Microsoft CorporationInventors: Alessandro Forin, Johannes V. Helander
-
Patent number: 7533389Abstract: System and method for dynamic loading of remote classes. Using embodiments, remote classes may be loaded dynamically by a default class loader without the use of separate, custom class loaders. The remote class loader mechanism may locate on remote systems classes needed by code executing on the local system but not locally stored, and which therefore cannot be located and loaded by the default class loader. After locating the classes, the remote class loader mechanism may obtain copies of the classes and save them to a location indicated by the class path of the default class loader. The default class loader can then locate and load the classes from the location indicated by the class path.Type: GrantFiled: June 20, 2003Date of Patent: May 12, 2009Assignee: Sun Microsystems, Inc.Inventors: Jerome M. Verbeke, Neelakanth M. Nadgir
-
Patent number: 7530081Abstract: A system for creating a dynamic client side service proxy framework using meta-data and introspection capabilities of Open Grid Services Architecture (OGSA) service data is disclosed. The system includes defining an Open Grid Service Invocation Factory configured to create a service proxy and introspecting an Open Grid Service Infrastructure (OGSI) service based on information exposed by the service. An OGSI Service Invocation Proxy is created defining a set of dynamic interfaces based on service introspection and a meta-data inspection interface of the Service Invocation Proxy. The Service Invocation Proxy exposes both static port type interfaces and dynamic interfaces to support more flexibility of the client.Type: GrantFiled: June 19, 2008Date of Patent: May 5, 2009Assignee: International Business Machines CorporationInventor: Joshy Joseph
-
Patent number: 7523471Abstract: A main module of an object oriented computer program is independent of the software domain and can be dynamically configured or reconfigured at runtime by domain specific dynamic link libraries. This main module is a generic main which is configured by a service configurator. A framework connector is provided as are a communications component and a asynchronous/asychronous management component.Type: GrantFiled: December 18, 1998Date of Patent: April 21, 2009Assignee: Siemens AktiengesellschaftInventors: Karlheinz Dorn, Dietrich Quehl, Detlef Becker, Christian Scharf, Douglas C. Schmidt
-
Patent number: 7523472Abstract: Methods, systems and data structure are described for implementing local isolated DLL and/or COM components. A version of a shared component is stored in a local directory with an application that uses that particular version. Another version of the shared component exists on the system and is useable by any number of other computer programs. A local file is created in the local directory that indicates the presence of an isolated version of the shared component. When the application calls the shared component, the system uses the isolated version of the shared component stored locally with the application program. Thus, specific versions of components may be provided to a calling application without making any code changes to the calling application or to the component to which the calling application is bound.Type: GrantFiled: October 26, 2004Date of Patent: April 21, 2009Assignee: Microsoft CorporationInventors: David J. D'Souza, Seetharaman Harikrishnnan, Peter M. Wilson, RoseMarie FitzSimons
-
Patent number: 7519976Abstract: A plug-in framework can be used in an integration system to extend business process management functionality. A plug-in manager, which can be part of an integration process engine, is used to support configuration, design, and run-time management of the plug-ins. A plug-in API is used to provide support for configuration, design, and run-time interactions between the process engine and a deployed plug-in. The plug-in API can consist of components such as session beans, run-time management classes, and packages. This description is not intended to be a complete description of, or limit the scope of, the invention. Other features, aspects, and objects of the invention can be obtained from a review of the specification, the figures, and the claims.Type: GrantFiled: April 1, 2003Date of Patent: April 14, 2009Assignee: Bea Systems, Inc.Inventor: Mike Blevins
-
Publication number: 20090094624Abstract: A computer implemented method, apparatus, and computer program product for transferring a privilege to a module. In one embodiment, a set of privileges required to initiate execution of code associated with the software module is identified to form enhanced privileges. The application is frozen. The enhanced privileges are unassigned to the application and the application has insufficient privileges to initiate execution of code associated with the software module. The software module is loaded into available application address space associated with the application. The enhanced privileges are transferred to the application. Execution of the application is unsuspended and the code associated with the software module is executed within the application.Type: ApplicationFiled: October 4, 2007Publication date: April 9, 2009Inventors: David Jones Craft, Matthew Douglas Dirba, Vinit Jain
-
Patent number: 7516460Abstract: Described is a system and method for creating a runtime connection interface for attributes and element tags defined declaratively in a subclass within a markup document. These subclass attributes may define an event, and the element tags scoped inside a subclass may define a resource, and the like, associated with the subclass being defined within the markup document. During runtime, the runtime connection interface allows a parser to make direct calls to connect the subclass attribute with an associated instance of the subclass. The system and method include identifying an attribute or element tag defined within a markup document. The attribute or element tag is associated with a target element being declaratively defined within the markup document. The attribute may define an event, and an element tag resource, and the like, associated with a target element that is also declared within the subclass in the markup. An identifier for the target element is determined.Type: GrantFiled: February 28, 2003Date of Patent: April 7, 2009Assignee: Microsoft CorporationInventor: Sundaram Ramani
-
Patent number: 7512696Abstract: A Web Part connection runtime framework provides the architecture for Web Parts to connect and pass data between each other. The runtime framework provides a series of interfaces that a Web Part can implement to send or receive information from other connected Web Parts. The interfaces provided by the runtime framework allow for the connection of Web Parts on a server or client. A first Web Part is retrieved and connected to a second Web Part in response to a user selecting information to be passed from the first Web Part to the second Web Part. Subroutines of the connected Web Parts are fired signaling the Web Parts to pass data from one to another. Once the data is passed, the Web Part receiving data can be rendered while containing the passed data on the server or the client.Type: GrantFiled: June 13, 2003Date of Patent: March 31, 2009Assignee: Microsoft CorporationInventors: B. Scott Ruble, Daniel Cheung, Kelsey Allen Pedersen, Greg S. Lindhorst
-
Patent number: 7509637Abstract: A method for automatically registering resources required for an application program module to execute. After the application program module is booted, a registration cache, which is stored in association with the application program module, is examined to determine its status. It indicates whether a registry on the computer system needs to be updated, e.g., after the user has moved files or renamed files. If so, a search is made through a predetermined directory to look for an application file or a dynamic link library file. If either is found, a resource fork in association with the file is opened, and it is determined whether there is a self-registration resource or an Object Linking and Embedded (OLE) Type Library (OTLB) in the resource fork. If found, any self-registration resource is registered by initiating a self-registration dynamic link library, and any OTLB resource is registered by initiating an OLE call.Type: GrantFiled: November 10, 2004Date of Patent: March 24, 2009Assignee: Microsoft CorporationInventor: Thomas E. Hussey
-
Patent number: 7509429Abstract: Systems and methods for message endpoint activation are disclosed. Under an embodiment of the invention, a method includes identifying an active resource adapter for a server; identifying a message listener type that is supported by the active computer resource adapter; establishing a message subscription to provide messages from a message provider to a server component, a subscription request from the server component comprising the active resource adapter and the supported message listener type; and transferring messages from the message provider to a message listener component for the server component utilizing the active resource adapter.Type: GrantFiled: May 28, 2004Date of Patent: March 24, 2009Assignee: SAP AGInventors: Nikolai D. Tankov, Violeta G. Georgieva, Svilen M. Dikov
-
Patent number: 7496850Abstract: An architectural software framework is provided for creating Web-style application software incorporating protocols and means for expansion and interfacing with other Web-style programs, as well as a reusable basic programming structure, including abstract and concrete data types, that assist in building Web-style applications. The architectural software framework includes a page function and frame. Each Web-style application includes one or more page functions which communicate via the frame.Type: GrantFiled: March 31, 2005Date of Patent: February 24, 2009Assignee: Microsoft CorporationInventors: Jan Thomas Miksovsky, David Joel Sheldon
-
Publication number: 20090049459Abstract: Technologies, systems and methods for converting symbolic links from one file system format to another. In particular, presented are example technologies that operate in conjunction with NTFS file systems and that determine the need and convert NFS symbolic links to be compatible with NTFS.Type: ApplicationFiled: August 14, 2007Publication date: February 19, 2009Applicant: Microsoft CorporationInventors: Roopesh C. Battepati, Michael C. Johnson
-
Patent number: 7493616Abstract: A system and method of pre-linking classes for use by one or more applications. The system and method may also be used where the runtime processing is split between a host system and a target system. At the host system at least several classes are loaded and linked. At least one host-linked module is generated from the linked classes. The host-linked module is made available for use by the one or more applications operating on the target system.Type: GrantFiled: May 30, 2002Date of Patent: February 17, 2009Assignee: Research In Motion LimitedInventors: David P. Yach, John F. A. Dahms
-
Publication number: 20090044172Abstract: In a method for generating program code in a load format for a portable data carrier, a pseudo library is used, which differs from the library located on the data carrier in such a way that at least some of the internal workings of the library located on the data carrier are absent or hidden or masked in the pseudo library. In a method for providing executable program code in the portable data carrier, the program code in load format is linked relative to the library located on the data carrier. A device and a computer program product have corresponding features. The invention provides secure, privacy-safeguarding technology, which allows the generation of program code in a load format for a portable data carrier and the provision of executable program code in the portable data carrier.Type: ApplicationFiled: December 1, 2005Publication date: February 12, 2009Inventors: Ulrich Kolzenburg, Stephan Spitz, Wolfgang Effing
-
Publication number: 20090037930Abstract: An information processing terminal enables, during the execution of a predetermined application program, the addition of an additional program and the execution of the additional program in a predetermined memory. The information processing terminal includes a management device, an acquisition device, an execution device, and a deletion device. The management device manages the additional program and a plug-in point included in the application program by associating the additional program with the plug-in point. The acquisition device acquires, upon execution of the application program up to the plug-in point, the additional program associated with the plug-in point from a predetermined storage device. The execution device executes the acquired additional program in the memory. The deletion device deletes, upon completion of the execution of the additional program, the additional program from the memory.Type: ApplicationFiled: July 30, 2008Publication date: February 5, 2009Inventor: Kouichi SHIONO
-
Patent number: 7487500Abstract: The invention features a system and method for installing and configuring a common software load in optical network elements. In brief overview, a configurable hardware abstraction layer (HAL) is interposed between the application software and the drivers in the common software load. With the use of a configurable HAL, network elements embodying the invention can use the same common software load for each type of card. Hence, an installer updating or originally configuring the cards in a plurality of network elements can accommodate all of the cards with the transmission of one software load. Instead of centrally tracking and organizing card specific software loads, the common software load in combination with the HAL manages the installation and upgrading process on the local card level.Type: GrantFiled: October 8, 2004Date of Patent: February 3, 2009Assignee: Nortel Networks LimitedInventors: David McCracken, Paul Crossey, Helen Cassidy
-
Patent number: 7478409Abstract: Method and system for interface checking and interface method dispatching for wireless devices. Relationships between classes and object-oriented interfaces are analyzed and certain properties are exploited for use in performing interface checking and/or interface method dispatching.Type: GrantFiled: March 28, 2003Date of Patent: January 13, 2009Assignee: Research in Motion LimitedInventors: Anthony F. Scian, David P. Yach
-
Publication number: 20090013337Abstract: A device, method, and system for switching library managers of a data library while maintaining data library storage devices online. A library manager accepts and executes data transaction commands for access to data residing on the storage devices of the data library. A transition manager module receives a directive to transition library management functions from a first library manager to a second library manager. The transition manager module stops the first library manager from accepting new data transaction commands while maintaining the storage devices online. The first library manager may execute previously accepted data transaction commands. The transition manager module suspends the library management functions of the first library manager and activates the library management functions of the second library manager. The storage devices of the data library may complete data transaction commands throughout the library manager transition.Type: ApplicationFiled: September 22, 2008Publication date: January 8, 2009Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: James Arthur Fisher, Anthony Andrew Lambert, Dennis Paul Martinez, Tom Owen Pringle, Timothy Clyde Sample, Christine Lynette Telford
-
Publication number: 20090007162Abstract: Access to resources on a computer may be provided by using a first namespace of resources and a second namespace of resources, where one or more names are common to both namespaces and those names refer to different respective instances of resources. A request is received for a first resource name from an application, where the first resource name exists in the first resource namespace and in the second resource namespace. In response to the request, whether to obtain a resource from the first namespace or from the second namespace is determined by applying one or more resource policies to the first resource namespace and to the second resource namespace.Type: ApplicationFiled: June 29, 2007Publication date: January 1, 2009Applicant: Microsoft CorporationInventor: John M. Sheehan
-
Publication number: 20090007161Abstract: In a virtualization environment, there is often a need for an application to access different resources (e.g., files, configuration settings, etc.) on a computer by name. The needed resources can potentially come from any one of a plurality of discrete namespaces or containers of resources on the computer. A resource name can identify one resource in one namespace and another resource in another namespace, and the namespaces may have different precedence relative to one another. The resources needed by the application can be accessed by enumerating names in a logical merger of the namespaces such that as new names in the logical merger are needed they are dynamically chosen from among the namespaces. When two resources in different namespaces have a same name, the resource in the higher precedence namespace can be chosen.Type: ApplicationFiled: June 29, 2007Publication date: January 1, 2009Applicant: MICROSOFT CORPORATIONInventor: John M. Sheehan
-
Patent number: 7472391Abstract: A resource loader provides resource lookup and redirection to computer software applications. The resource loader allows applications to be written using relative Uniform Resource Identifier (“URI”) rather than hard-coded URI that includes a protocol identified at the beginning of the URI and further indicates the location of the resource in a fully qualified path. During execution, applications may initiate execution of the resource loader that in turn locates and returns the resource to the application. In this way, applications may be written that are agnostic as to how their resources are packaged. That is, a change of resource packaging does not necessitate a re-write of the application source code. In some cases, the resource loader may be accessed by one or more applications through an Application Program Interface (API) provided by the resource loader. The applications may also pass a resource identifier for the desired resource to the resource loader.Type: GrantFiled: February 20, 2004Date of Patent: December 30, 2008Assignee: Microsoft CorporationInventors: Mark Alcazar, WeiBing Zhan, Sundaram Ramani
-
Patent number: 7472384Abstract: On-the-fly patching of executable code includes placing a block of modified instructions in memory, identifying a block of code to be patched, storing instructions to be patched from the block of code to be patched in a storage location, change the instructions to be patched to mark instructions, and adding a jump to the block of modified instructions in the block of code. Prior to the placing and the identifying steps, a write flag for a page in memory where the block of code to be patched is located is set to allow writes, and interrupts are masked. The instructions are replaced in reverse order. The mark instructions are the same length, in bytes, as the instructions to be patched. The modified instructions include a resolver to determine a number of instructions of the block of code to be patched that had already been executed.Type: GrantFiled: December 2, 2003Date of Patent: December 30, 2008Assignee: SWsoft Holdings, Ltd.Inventors: Serguei M Beloussov, Stanislav S Protassov, Alexander G Tormasov, Alexey V Kostyushko
-
Publication number: 20080307446Abstract: Managed and unmanaged code may operate in a document environment by enabling managed code to be called by unmanaged code. The managed code may make functions available to unmanaged code by creating a type library and loading the type library into a running object table using a filename identifier. The filename identifier may be used by the unmanaged code to locate the type library and thereby call managed code functions.Type: ApplicationFiled: June 8, 2007Publication date: December 11, 2008Applicant: MICROSOFT CORPORATIONInventor: Iouri B Simernitski
-
Patent number: 7464386Abstract: Systems and methods for data controls architecture are described. In one aspect, a data source control exposes an interface for generic access to a data store. A data-bound control implements the interface to automatically databind to the data store at an appropriate time during runtime operations of the data-bound control.Type: GrantFiled: May 17, 2004Date of Patent: December 9, 2008Assignee: Microsoft CorporationInventors: Brad Millington, Nikhil Kothari, Eilon Lipton, Polita Huff
-
Publication number: 20080301719Abstract: A remapping component is provided for facilitating a link between an executable and a function held in a new dynamic link library (DLL) in a computing device. The remapping component is provided with a relocation instruction arranged to update, upon loading, an export data table entry for the remapping component with the address location of the function in the new dynamic link library. In this way, the executable, when calling for the function at an address location in a known DLL, will automatically jump to the address location for the function in the new DLL. The additional subroutines usually associated with remapping DLLs can therefore be avoided, providing improved operation for the computing device.Type: ApplicationFiled: October 28, 2004Publication date: December 4, 2008Applicant: SYMBIAN SOFTWARE LIMITEDInventor: William Roberts
-
Patent number: 7461386Abstract: Apparatus and processes, including computer implemented processes, for managing exceptions throwable during execution of methods in one or more classes by a machine. Each method includes an exception handler array defining exception handlers associated with the method. The method includes combining the exception handler arrays for all methods into a single exception handler table.Type: GrantFiled: December 23, 2004Date of Patent: December 2, 2008Assignee: Sun Microsystems, Inc.Inventors: Judith E. Schwabe, Joshua B. Susser
-
Patent number: 7461228Abstract: Processes are monitored as components are loaded into memory. Relocation of a component to an alternate base address instead of its preferred base address, causes an alternate component to be created corresponding to the relocated component. The alternate component is a copy of the relocated component, but the preferred base address of the alternate component is reset to be the alternate base address of the relocated component. Additional alternate components may be created for each relocated component, with each additional alternate component being optimized in a different manner. Alternate components may be implemented as alternate data stream of the corresponding relocated components. In response to subsequent requests to load a selected component into memory, it is determined whether the selected component has at least one corresponding alternate component. If so, one of the corresponding alternate components is loaded into memory instead of the selected component.Type: GrantFiled: March 15, 2006Date of Patent: December 2, 2008Assignee: RTO Software, Inc.Inventor: Kevin Goodman
-
Publication number: 20080294764Abstract: A storage medium bears a program which controls a plurality of HBA drivers for controlling operations of a plurality of HBAs connected to a few storage devices through a SAN, a plurality of specific libraries in an SNIA HBA API, each having a function of acquiring information on the corresponding HBA, from the corresponding HBA driver as HBA information, and a common library in the SNIA HBA API, having a function of acquiring HBA information from the respective specific libraries, thereby to acquire the HBA information items and to provide them to a SAN management manager.Type: ApplicationFiled: May 21, 2008Publication date: November 27, 2008Applicant: FUJITSU LIMITEDInventor: Toshinori Wakako
-
Patent number: 7458073Abstract: A development and build environment creates information used by the master node and nodes in a network of nodes to perform software loading and evaluation during boot and normal runtime. The invention creates metadata and dependency data for packages and modules. Module metadata are created and inserted into the package that includes information such as the module's: binary signature, name, directory path, characteristics, and API dependency information. Packages are formed based on features/characteristics or purpose. A package contains one or more modules. Metadata are created for each package and inserted into the package that includes information such as the package's: name, build date, and characteristics.Type: GrantFiled: December 3, 2003Date of Patent: November 25, 2008Assignee: Cisco Technology, Inc.Inventors: Glen Darling, Matthew Balint, Badari Kakumani, Mala Devlin
-
Patent number: 7454764Abstract: A computer method and system provides on-demand transformation between objects of a source programming model and corresponding objects in a target programming model. For different source objects in the source programming model, the invention creates respective target objects. For every created target object, the invention system and method create a respective proxy object. Where a source object has multiple features, the proxy object triggers transformation of a feature only upon access of that feature and the corresponding target object. The present invention operates transparently to a client. Thus, clients do not have to call transform on the feature (children and references) of the source object before accessing any feature of the target object.Type: GrantFiled: June 29, 2005Date of Patent: November 18, 2008Assignee: International Business Machines CorporationInventors: Maneesh Goyal, Daniel D. Leroux