Claims
- 1. A computer-implemented method for managing routing resources in a measurement system, the method comprising:
creating one or more legs of a route from a source to a destination, wherein, for each respective leg of said one or more legs, said creating includes:
determining if a routing resource for the respective leg is not currently used in an existing route; if the routing resource for the respective leg is not currently used in an existing route, then:
configuring the routing resource in accordance with a desired configuration of the respective leg; and reserving the routing resource; if the routing resource for the respective leg is currently used in an existing route, then:
comparing the desired configuration of the respective leg with the current configuration of the routing resource; and reserving the routing resource if the current configuration of the routing resource conforms to the desired configuration of the leg; and storing the route; wherein the route is operable to route signals in the measurement system.
- 2. The method of claim 1,
wherein the routing resource has a usage count; wherein said determining if a routing resource for the respective leg is not currently used in an existing route comprises determining if the usage count has a value of zero; and wherein said reserving the routing resource comprises incrementing the usage count of the routing resource by one.
- 3. The method of claim 1, further comprising:
returning an error message indicating that the leg failed if the desired configuration of the leg does not match the current configuration of the routing resource.
- 4. The method of claim 3, further comprising:
creating an alternative leg for the route if the desired configuration of the respective leg does not match the current configuration of the routing resource; wherein the alternative leg includes a different routing resource than the respective leg.
- 5. The method of claim 1,
wherein the measurement system is configured to perform a measurement task; and wherein the route is created to perform signal routing functions in the measurement task, the method further comprising:
after performance of the measurement task, releasing the route.
- 6. The method of claim 5,
wherein each respective routing resource has a usage count; wherein said releasing the route comprises decrementing the usage count of the respective routing resource of each leg of the route by one; and wherein the respective routing resource of each leg is freed when the usage count is zero.
- 7. The method of claim 5,
wherein each respective routing resource has a usage count which indicates the number of routes which have reserved the respective routing resource; wherein reserving the respective routing resource comprises incrementing the usage count; wherein releasing the respective routing resource comprises decrementing the usage count; and wherein a usage count of zero indicates that the respective routing resource is free.
- 8. The method of claim 7,
wherein the measurement system is configured to perform a measurement task; wherein the route is created to perform signal routing functions in the measurement task, wherein said creating and said storing are performed in a verify stage; and wherein the usage count of the respective routing resource is a temporary usage count indicating the number of routes in the measurement system which have reserved the respective routing resource for the measurement task.
- 9. The method of claim 7,
wherein said creating and said storing are performed in a runtime stage; and wherein the usage count of the respective routing resource indicates the number of routes in the measurement system which have reserved the respective routing resource; wherein the usage count of the respective routing resource represents an actual state of the respective routing resource hardware.
- 10. The method of claim 7,
wherein the route is a task-independent route; wherein said creating and said storing are performed in a verify stage; and wherein the usage count of the respective routing resource indicates the number of routes in the measurement system which have reserved the respective routing resource; wherein the usage count of the respective routing resource represents an actual state of the respective routing resource hardware.
- 11. The method of claim 10, the method further comprising:
determining if a prior task-independent route has not already been created from the source to the destination; wherein said creating and said storing are performed if a prior task-independent route has not already been determined from the source to the destination.
- 12. The method of claim 11,
wherein the measurement system includes a routing table which stores source/destination pairs for task-independent routes; wherein said determining if a prior task-independent route has not already been determined from the source to the destination comprises:
searching the routing table for a source/destination pair that matches the source and destination of the independent route; and wherein said storing includes storing the source and the destination of the independent route as a source/destination pair in the routing table.
- 13. The method of claim 12, further comprising:
receiving a request to release the task-independent route; determining if the source/destination pair of the task-independent route is in the routing table; and if the source/destination pair of the task-independent route is in the routing table,
releasing the task-independent route.
- 14. A carrier medium which stores program instructions for managing routing resources in a measurement system, wherein the program instructions are executable to perform:
creating one or more legs of a route from a source to a destination, wherein, for each respective leg of said one or more legs, said creating includes:
determining if a routing resource for the respective leg is not currently used in an existing route; if the routing resource for the respective leg is not currently used in an existing route, then:
configuring the routing resource in accordance with a desired configuration of the respective leg; and reserving the routing resource; if the routing resource for the respective leg is currently used in an existing route, then:
comparing the desired configuration of the respective leg with the current configuration of the routing resource; and reserving the routing resource if the current configuration of the routing resource conforms to the desired configuration of the leg; and storing the route; wherein the route is operable to route signals in the measurement system.
- 15. The carrier medium of claim 14, wherein the program instructions are further executable to perform:
creating an alternative leg for the route if the desired configuration of the respective leg does not match the current configuration of the routing resource; wherein the alternative leg includes a different routing resource than the respective leg.
- 16. The carrier medium of claim 14,
wherein the measurement system is configured to perform a measurement task; and wherein the route is created to perform signal routing functions in the measurement task, and wherein the program instructions are further executable to perform:
after performance of the measurement task, releasing the route.
- 17. The carrier medium of claim 14,
wherein each respective routing resource has a usage count which indicates the number of routes which have reserved the respective routing resource; wherein reserving the respective routing resource comprises incrementing the usage count; wherein releasing the respective routing resource comprises decrementing the usage count; and wherein a usage count of zero indicates that the respective routing resource is free.
- 18. The carrier medium of claim 17,
wherein the route is a task-independent route; wherein said creating and said storing are performed in a verify stage; and wherein the usage count of the respective routing resource indicates the number of routes in the measurement system which have reserved the respective routing resource; wherein the usage count of the respective routing resource represents an actual state of the respective routing resource hardware.
- 19. A system for managing routing resources in a measurement system, comprising:
a processor; and a memory medium, coupled to the processor; and an input, coupled to the memory medium, wherein the input is operable to receive input information specifying a source and a destination in a measurement system; wherein the memory medium stores program instructions which are executable by the processor to perform:
creating one or more legs of a route from the source to the destination, wherein, for each respective leg of said one or more legs, said creating includes:
determining if a routing resource for the respective leg is not currently used in an existing route; if the routing resource for the respective leg is not currently used in an existing route, then:
configuring the routing resource in accordance with a desired configuration of the respective leg; and reserving the routing resource; if the routing resource for the respective leg is currently used in an existing route, then:
comparing the desired configuration of the respective leg with the current configuration of the routing resource; and reserving the routing resource if the current configuration of the routing resource conforms to the desired configuration of the leg; and storing the route in the memory medium; wherein the route is operable to route signals in the measurement system.
- 20. A system for managing routing resources in a measurement system, comprising:
means for creating one or more legs of a route from a source to a destination, wherein, for each respective leg of said one or more legs, said creating includes:
determining if a routing resource for the respective leg is not currently used in an existing route; if the routing resource for the respective leg is not currently used in an existing route, then:
configuring the routing resource in accordance with a desired configuration of the respective leg; and reserving the routing resource; if the routing resource for the respective leg is currently used in an existing route, then:
comparing the desired configuration of the respective leg with the current configuration of the routing resource; and reserving the routing resource if the current configuration of the routing resource conforms to the desired configuration of the leg; and means for storing the route; wherein the route is operable to route signals in the measurement system.
- 21. A computer-implemented method for managing routing resources in a measurement system, the method comprising:
creating one or more legs of a route from a source to a destination, wherein, for each respective leg of said one or more legs, said creating includes:
determining if a routing resource for the respective leg is not currently reserved; if the routing resource for the respective leg is not currently reserved, then:
configuring the routing resource in accordance with a desired configuration of the respective leg; and reserving the routing resource; and storing the route; wherein the route is operable to route signals in the measurement system.
- 22. The method of claim 21, wherein said determining if a routing resource for the respective leg is not currently reserved comprises determining if the routing resource for the respective leg is used in an existing route.
- 23. A computer-implemented method for managing routing resources in a measurement system, the method comprising:
creating one or more legs of a route from a source to a destination, wherein, for each respective leg of said one or more legs, said creating includes:
determining if a routing resource for the respective leg is not currently reserved; if the routing resource for the respective leg is currently reserved, then:
comparing the desired configuration of the respective leg with the current configuration of the routing resource; and reserving the routing resource if the current configuration of the routing resource conforms to the desired configuration of the leg; and storing the route; wherein the route is operable to route signals in the measurement system.
- 24. The method of claim 23, wherein said determining if a routing resource for the respective leg is not currently reserved comprises determining if the routing resource for the respective leg is used in an existing route.
CONTINUATION DATA
[0001] This application is a Continuation of U.S. application Ser. No. 10/174,445 titled “Shared Routing In A Measurement System” filed Jun. 18, 2002, which is a Continuation In Part (CIP) of U.S. application Ser. No. 10/008,792 titled “Measurement System Software Architecture for Easily Creating High-Performance Measurement Applications” filed Nov. 13, 2001, whose inventors were Geoffrey Schmit, Brent Schwan, Jonathan Brumley, Thomas A. Makowski and Christopher T. Bartz, which claims benefit of priority of U.S. Provisional Application Serial No. 60/301,785 titled “Measurement System Software Architecture for Easily Creating High-Performance Measurement Applications” filed Jun. 29, 2001, whose inventors were Geoffrey Schmit, Brent Schwan, Jonathan Brumley, Thomas A. Makowski and Christopher T. Bartz.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60301785 |
Jun 2001 |
US |
Continuations (1)
|
Number |
Date |
Country |
Parent |
10174445 |
Jun 2002 |
US |
Child |
10231504 |
Aug 2002 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
10008792 |
Nov 2001 |
US |
Child |
10174445 |
Jun 2002 |
US |