Model
Digital Document
Publisher
Florida Atlantic University
Description
Software for Autonomous Underwater Vehicles (AUVs) is usually complex. It involves several
complicated tasks such as controller, path planner, map builder, and sensor processor.
Distributed processing is unavoidable for such a complex software system with real-time response
requirements. Once these processes are distributed over several computers, it is essential
that they have some mechanism to communicate to each other to share information.
Each process might communicate with several of the other processes. Interprocess communication
becomes an important issue. This thesis discusses the design and implementation
of a generic distributed toolkit that facilitates the development of distributed software for
AUVs. This toolkit makes the details ofinterprocess communication transparent to the programmers
involved in the AUV software development. The toolkit provides efficient direct
communication between processes and does not impose any constraints on the architecture
of the distributed software. Conventional techniques for monitoring/debugging of sequential programs are not applicable
for distributed processes. This is because the correctness of a real-time distributed program
is determined not only by its "logical" correctness but also its "timing" correctness.
Monitoring mainly comprises of observation of the system during its operation. Debugging
is mostly a graphical "post-mortem" analyses of the dumps generated by the distributed program.
This thesis also presents the design of a window based generic graphical monitoring/
debugging tool.
complicated tasks such as controller, path planner, map builder, and sensor processor.
Distributed processing is unavoidable for such a complex software system with real-time response
requirements. Once these processes are distributed over several computers, it is essential
that they have some mechanism to communicate to each other to share information.
Each process might communicate with several of the other processes. Interprocess communication
becomes an important issue. This thesis discusses the design and implementation
of a generic distributed toolkit that facilitates the development of distributed software for
AUVs. This toolkit makes the details ofinterprocess communication transparent to the programmers
involved in the AUV software development. The toolkit provides efficient direct
communication between processes and does not impose any constraints on the architecture
of the distributed software. Conventional techniques for monitoring/debugging of sequential programs are not applicable
for distributed processes. This is because the correctness of a real-time distributed program
is determined not only by its "logical" correctness but also its "timing" correctness.
Monitoring mainly comprises of observation of the system during its operation. Debugging
is mostly a graphical "post-mortem" analyses of the dumps generated by the distributed program.
This thesis also presents the design of a window based generic graphical monitoring/
debugging tool.
Member of