US2006130076A1PendingUtilityA1

Code linking system

Assignee: CISCO TECH INCPriority: Jan 4, 2000Filed: Dec 30, 2005Published: Jun 15, 2006
Est. expiryJan 4, 2020(expired)· nominal 20-yr term from priority
Inventors:Donald S. Stern
G06F 9/44521
49
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Methods and apparatus for linking a set of code modules for execution includes determining one or more code modules to be executed, ascertaining a hierarchical order in which the one or more code modules are to be executed, loading the one or more code modules to be executed, and building a chain connecting the one or more code modules such that the one or more code modules will automatically execute in the hierarchical order when a first one of the one or more code modules is executed.

Claims

exact text as granted — not AI-modified
1 . A method of linking a set of code modules for execution, comprising: 
 determining one or more code modules to be executed, wherein the one or more code modules are one or more DLLS;    ascertaining a hierarchical order in which the one or more code modules are to be executed;    loading the one or more code modules to be executed; and    building a chain connecting the one or more code modules such that the one or more code modules will automatically execute in the hierarchical order when a first one of the one or more code modules is executed, wherein each of the code modules responsible for calling a next one of the code modules in the chain includes a reference to the next one of the code modules in the chain, wherein an address in memory at which the next one of the code modules in the chain is loaded is associated with the reference to the next one of the code modules in the chain, wherein the chain does not include a main program and wherein building a chain enables the one or more code modules to execute without requiring a main program responsible for calling the one or more code modules.    
   
   
       2 . The method as recited in  claim 1 , wherein the loading step is performed simultaneous with the building step.  
   
   
       3 . The method as recited in  claim 1 , wherein building a chain is performed such that the one or more code modules can be modified without requiring recompilation of the one or more code modules.  
   
   
       4 . The method as recited in  claim 1 , wherein loading the one or more code modules is performed in a reverse order of the hierarchical order.  
   
   
       5 . The method as recited in  claim 1 , wherein determining one or more code modules to be executed comprises determining one or more code modules to be executed to complete configuration of a hardware interface of a router.  
   
   
       6 . The method as recited in  claim 1 , wherein determining one or more code modules to be executed comprises determining one or more code modules to be executed to configure a router.  
   
   
       7 . The method as recited in  claim 1 , further comprising associating one of the one or more code modules with a hardware interface to identify a starting point for execution upon occurrence of an interrupt.  
   
   
       8 . A method of configuring a hardware device, the hardware device including a hardware interface, comprising 
 determining a configuration of the hardware interface, the configuration corresponding to one or more software modules to be executed to complete the configuration;    comparing the configuration against a set of rules that specify a hierarchical order in which the one or more software modules are to be executed in relation to one another;    identifying the one or more software modules that are to be executed;    ascertaining the hierarchical order in which the one or more software modules are to be executed;    loading the one or more software modules that are to be executed; and    building a chain connecting the one or more software modules such that the one or more software modules will automatically execute in the hierarchical order when a first one of the one or more software modules is executed, wherein each of the code modules responsible for calling a next one of the code modules in the chain includes a reference to the next one of the code modules in the chain such that an address in memory at which the next one of the code modules in the chain is loaded is identified, the one or more software modules being one or more DLLs, wherein the chain does not include a main program and wherein building a chain enables the one or more software modules to execute without requiring a main program responsible for calling the one or more software modules.    
   
   
       9 . The method as recited in  claim 8 , further comprising associating one of the one or more software modules with the hardware interface to identify a starting point for execution upon occurrence of an interrupt.  
   
   
       10 . The method as recited in  claim 8 , wherein the hardware device is a router.  
   
   
       11 . A computer-readable medium for linking a set of code modules for execution, the computer-readable medium storing computer-readable code, comprising: 
 instructions for determining one or more code modules to be executed, the one or more code modules being one or more DLLs;    instructions for ascertaining a hierarchical order in which the one or more code modules are to be executed;    instructions for loading the one or more code modules to be executed; and    instructions for building a chain connecting the one or more code modules such that the one or more code modules will automatically execute in the hierarchical order when a first one of the one or more code modules is executed, wherein each of the code modules responsible for calling a next one of the code modules in the chain includes a reference to the next one of the code modules in the chain, wherein an address in memory at which the next one of the code modules in the chain is loaded is associated with the reference to the next one of the code modules in the chain, wherein the chain does not include a main program and wherein building a chain enables the one or more code modules to execute without requiring a main program responsible for calling the one or more code modules.    
   
   
       12 . The computer-readable medium as recited in  claim 11 , wherein the instructions for loading are to be executed simultaneous with the instructions for building the chain.  
   
   
       13 . The computer-readable medium as recited in  claim 11 , wherein the instructions for building a chain enables the one or more code modules to be modified without requiring recompilation of the one or more code modules.  
   
   
       14 . A system for linking a set of code modules for execution, comprising: 
 a processor; and    a memory, the memory storing therein: 
 instructions for determining one or more code modules to be executed, the one or more code modules being one or more DLLs;  
 instructions for ascertaining a hierarchical order in which the one or more code modules are to be executed;  
 instructions for loading the one or more code modules to be executed; and  
 instructions for building a chain connecting the one or more code modules such that the one or more code modules will automatically execute in the hierarchical order when a first one of the one or more code modules is executed, wherein each of the code modules responsible for calling a next one of the code modules in the chain includes a reference to the next one of the code modules in the chain, wherein an address in memory at which the next one of the code modules in the chain is loaded is associated with the reference to the next one of the code modules in the chain, wherein the chain does not include a main program and wherein building a chain enables the one or more code modules to execute without requiring a main program responsible for calling the one or more code modules.  
   
   
   
       15 . The method as recited in  claim 1 , wherein the address in memory at which the next one of the code modules in the chain is loaded is included in each of the code modules responsible for calling the next one of the code modules in the chain.  
   
   
       16 . The method as recited in  claim 15 , wherein a conditional branch or jump statement includes the reference to the next one of the code modules in the chain and the address in memory at which the next one of the code modules in the chain is loaded.  
   
   
       17 . The method as recited in  claim 16 , wherein the conditional branch or jump statement is executed when the next one of the code modules in the chain identified in the conditional branch or jump statement is executed.  
   
   
       18 . The method as recited in  claim 8 , wherein each of the code modules responsible for calling a next one of the code modules in the chain includes a conditional branch or jump instruction identifying the next one of the code modules in the chain and the address in memory at which the next one of the code modules in the chain is loaded.  
   
   
       19 . The method as recited in  claim 18 , wherein the conditional branch or jump instruction identifying the next one of the one or more code modules is executed when the next one of the code modules in the chain identified in the conditional branch or jump statement is executed.

Join the waitlist — get patent alerts

Track US2006130076A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.