Claims
- 1. A digital storage medium for use with a computer system, comprising:a back end program component for producing a back end object representative of a functional unit, said back end object possessing functional unit specific information; and a front end software program component for producing a front end object, wherein said front end object is responsive to requests from software applications to perform functions and to set parameters of said back end object without utilizing said functional unit specific information, and wherein said front end object uses said back end object according to a dynamic list of acceptable system calls, said dynamic list of acceptable system calls comprising a standard set of acceptable functions and parameters defining a communication protocol.
- 2. The digital storage medium of claim 1, wherein said functional unit is incorporated in a hardware device.
- 3. The digital storage medium of claim 1, wherein said functional unit is a software emulator.
- 4. The digital storage medium of claim 2, wherein said hardware device is a system board.
- 5. The digital storage medium of claim 4, wherein said system board comprises a programmable logic device.
- 6. The digital storage medium of claim 5, wherein said programmable logic device is a field programmable gate array.
- 7. The digital storage medium of claim 5, wherein said hardware device further comprises a specific hardware platform.
- 8. The digital storage medium of claim 7, wherein said back end program component is adopted for a distinct specific hardware platform.
- 9. The digital storage medium of claim 8, wherein use of a different type of programmable logic device will not necessitate changes to said back end program component.
- 10. The digital storage medium of claim 9, wherein changes to said back end program component are necessary only when said dynamic list of acceptable system calls is modified, said type of programmable logic device is changed, said specific hardware platform is changed, or driver calls designed to support the specific hardware platform are modified.
- 11. The digital storage medium of claim 8, wherein an alternative back end program component is implemented without changing said front end program component or said software applications.
- 12. The digital storage medium of claim 1, wherein said front end program component is written to accommodate a specific software environment.
- 13. The digital storage medium of claim 12, wherein changes to said software applications do not necessitate a change in said front end program component.
- 14. The digital storage medium of claim 12, wherein changes to said front end program component are necessary only when said dynamic list of acceptable system calls is modified.
- 15. The digital storage medium of claim 14, wherein said front end program component is modified without changing said back end program component.
- 16. A method for allowing software applications to communicate with and control a functional unit, comprising:producing a back end object representative of said functional unit, wherein said back end object incorporates functional unit specific information and is produced according to a dynamic list of acceptable system calls, said dynamic list of acceptable system calls comprising a standard set of acceptable functions and parameters defining a communication protocol; and producing a front end object responsive to software application requests to perform functions and to set parameters of the back end object without utilizing said functional unit specific information, wherein said front end object uses said back end object according to said dynamic list of acceptable system calls.
- 17. The method of claim 16, further comprising incorporating said functional unit in a hardware device.
- 18. The method of claim 16, further comprising emulating said functional unit with software.
- 19. The method of claim 16, further comprising incorporating said functional unit in a system board.
- 20. The method of claim 16, further comprising incorporating said functional unit in a programmable logic device.
- 21. The method of claim 16, further comprising incorporating said functional unit in a field programmable gate array.
- 22. The method of claim 20, further comprising incorporating said functional unit in a specific hardware platform.
- 23. The method of claim 22, further comprising providing a distinct back end object for each of a plurality of distinct specific hardware platforms.
- 24. The method of claim 23, further comprising implementing a different type of programmable logic device without changing said back end object.
- 25. The method of claim 24, further comprising changing the back end program component only when said dynamic list of acceptable system calls is modified, the type of programmable logic device is changed, said specific hardware platform is changed, or driver calls designed to support the specific hardware platform are modified.
- 26. The method of claim 23, further comprising implementing an alternative back end object without changing said dynamic list of acceptable system calls, said front end object, or said software applications.
- 27. The method of claim 16, further comprising producing a distinct front end object for each of a plurality of software environments.
- 28. The method of claim 27, further comprising modifying said software applications without modifying said front end object.
- 29. The method of claim 27, further comprising modifying said front end object only when said dynamic list of acceptable system calls is modified.
- 30. The method of claim 29, further comprising modifying said front end object without modifying said dynamic list of acceptable system calls or said back end object.
- 31. A digital storage medium for use with a computer system, comprising:a back end program component for producing a back end object representative of a functional unit, said back end object possessing functional unit specific information; a front end program component for producing a front end object, wherein said front end object is responsive to requests from software applications to perform functions and to set parameters of said back end object without utilizing said functional unit specific information; and a dynamic application program interface component for providing a dynamic list of acceptable system calls, said dynamic list of acceptable system calls comprising a standard set of acceptable functions and parameters defining a communication protocol.
RELATED APPLICATION INFORMATION
This application claims the filing date benefit of U.S. Provisional Patent Application Serial No. 60/366,569, filed Mar. 22, 2002, which is incorporated by reference in its entirety for any purpose.
US Referenced Citations (7)
Number |
Name |
Date |
Kind |
5828858 |
Athanas et al. |
Oct 1998 |
A |
6182258 |
Hollander |
Jan 2001 |
B1 |
6216258 |
Mohan et al. |
Apr 2001 |
B1 |
6230307 |
Davis et al. |
May 2001 |
B1 |
6445974 |
Malaugh et al. |
Sep 2002 |
B1 |
6539522 |
Devins et al. |
Mar 2003 |
B1 |
6587995 |
Duboc et al. |
Jul 2003 |
B1 |
Provisional Applications (1)
|
Number |
Date |
Country |
|
60/366569 |
Mar 2002 |
US |