Extensions to a parallel prolog system to support real-time applications
In this article, we first discuss the Real-Time (RT) programming issues and what language support should be provided for building RT applications. Then we propose a set of RT extensions for a parallel Prolog system and we investigate the ability of the new system to express a variety of RT behavioral properties. These extensions address issues such as task manipulation, timing constraint definition, communication, interrupt and exception handler definition. We also examine the exploitation of the parallelism by the RT extensions and the usefulness of a parallel environment in RT programming.
Features that are considered desirable in a RT Operating System (RT-OS) kernel for the implementation of the higher level RT language constructs are identified. Moreover, existing Prolog Systems that support timing features are briefly surveyed and a comparative analysis is presented.
KeywordsLogic Programming Periodic Task Exception Handler Event Goal Proof Tree
Unable to display preview. Download preview PDF.
- Arity Prolog Manual.Google Scholar
- U. Baron, A. Cheese, and M. Ratcliffe. Parallel Logic Programming Languages: The State of the Art. Technical Report CA-45, ECRC, April 1989.Google Scholar
- M. Coulas, G. Macewen, and G. Marquis. RNet: A Hard Real-Time Distributed Programming System. IEEE Trans. on Computers, C-36(8):917–932, August 1987.Google Scholar
- T. Hrycej. Temporal Prolog. In Proceedings of the 8th European Conference on Artificial Intelligence, pages 296–301, 1988.Google Scholar
- Y. Ishikawa, H. Tokuda, and C.W. Mercer. Object-Oriented Real-Time Language Design: Constructs for Timing Constraints. Technical Report CMU-CS-90–111, Carnegie Mellon, March 1990.Google Scholar
- E. V. Krishnamurthy. Parallel Processing. Addison-Wesley, 1989.Google Scholar
- Insup Lee and Susan B. Davidson. Adding Time to Synchronous Process Communications. IEEE Trans. on Computers, C-36(8):941–948, August 1987.Google Scholar
- R.K.S. Lee and R. Goebel. Concurrent Prolog in a Multi-process Environment. In Proceedings of the International Symposium on Logic Programming, pages 100–109, 1985.Google Scholar
- Shem-Tov Levi and Ashok K. Agrawala. Real-Time System Design. McGraw-Hill, 1990.Google Scholar
- L.M. Pereira and R. Nasr. Delta Prolog: A Distributed Logic Programming Language. In Proceedings of the International Conference on Fifth Generation Computer Systems 1984, pages 283–291, 1984.Google Scholar
- Sepia 3.0 User Manual.Google Scholar
- Turbo Prolog Owner's Handbook.Google Scholar
- VAX-11 Prolog II Version 2.2 Language Reference Manual.Google Scholar
- VM/Programming in Logic-Program Description and Operations Manual.Google Scholar
- Whei Zhao, Krithi Ramamritham, and John A. Stankovic. Preemptive Scheduling Under Time and Resource Constraints. IEEE Trans. on Computers, C-36(8):949–960, August 1987.Google Scholar