Abstract
This paper describes an open system architecture that allows independently developed hard real-time applications to run together and supports their reconfiguration at run-time. In the open system, each real-time application is executed by a server. At the lower level, the OS scheduler schedules all the servers on the EDF basis. At the upper level, the server scheduler of each server schedules the ready jobs of the application executed by the server according to the algorithm chosen for the application. The paper describes the two-level CPU scheduling scheme used by the open system and the design and implementation of a uniprocessor open system within the framework of the Windows NT operating system. The implementation consists of three key components: the two-level hierarchical kernel scheduler, common system service providers, and real-time application programming interface.
Similar content being viewed by others
References
Spuri, M., and Buttazzo, G. 1996. Scheduling aperiodic tasks in dynamic priority systems. Real-Time Systems 10: 179–210.
Deng, Z., Liu, J. W.-S., and Sun, J. 1997. A scheme for scheduling hard real-time applications in open system environment. Proceedings of 9th Euromicro Workshop on Real-Time Systems, pp. 191–199.
Deng, Z., and Liu, J.W.-S. 1997. Scheduling real-time applications in an open environment. Proceedings of IEEE 18th Real-Time Systems Symposium, pp. 308–319.
Stoica, I., Abdel-Wahab, H., Jeffay, K., Baruah, S., Gehrke, J., and Plaxton, C. 1996. A proportional share resource allocation algorithm for real-time, time-shared systems. Proceedings of IEEE 17th Real-Time Systems Symposium, pp. 288–299.
Demers, A., Keshav, S., and Shenker, S. Analysis and simulation of a fair queueing algorithm. Proc.ACM SIGCOMM' 89, pp. 3–12.
Zhang, L. 1991. VirtualClock: A new traffic control algorithm for packet-switched networks. ACM Transaction on Computer Systems 9(2): 101–124.
Liu, C. L., and Layland, J.W. 1973. Scheduling algorithms for multiprogramming in a hard real time environment. J.Assoc.Comput.Mach. 20(1): 46–61.
Leung, J. Y.-T., and Whitehead, J. 1982. On the complexity of fixed-priority scheduling of periodic real-time tasks. Performance Evaluation 2: 237–250.
Mok, Al. 1983. Fundamental design problems of distributed systems for the hard real-time environment. Ph.D. Thesis, MIT, Department of EE and CS, MIT=LCS=TR-297.
Sommer, S., and Potter, J. 1996. Operating system extension for dynamic real-time applications. Proceedings of IEEE 17th Real-Time Systems Symposium, pp. 45–50.
Tokuda, H., Nakajima, T., and Rao, P. 1990. Real-time mach: Towards a predictable real-time system. Proceedings of the Usenix Mach Workshop, pp. 73–82.
Carpenter, B., Roman, M., Vasilatos, N., and Zimmerman, M. 1997. The RTX real-time subsystem for Windows NT. The USENIX Windows NT Workshop Proceedings, pp. 33–37.
Mercer, C. W., Savage, S., and Tokuda, H. 1994. Processor capacity reserve: Operating system support for multimedia applications. Proceedings of the IEEE International Conference on Multimedia Computing and Systems.
Sprunt, B., Sha, L., and Lehoczky, J. P. 1989. Aperiodic task scheduling for hard real-time systems. Real-Time Systems: The International Journal of Time-Critical Computing Systems 1: 27–60.
Liu, J. W.-S., Redondo, J. L., Deng, Z., Tia, T. S., Bettati, R., Silberman, A., Storch, M., Ha, R., and Shih, W. K. 1993. PERTS: A prototyping environment for real-time systems. Proceedings of IEEE 14th Real-Time Systems Symposium, pp. 184–188.
Custer, H. 1993. Inside Windows NT. Microsoft Press.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Deng, Z., Liu, J.WS., Zhang, L. et al. An Open Environment for Real-Time Applications. Real-Time Systems 16, 155–185 (1999). https://doi.org/10.1023/A:1008094905565
Issue Date:
DOI: https://doi.org/10.1023/A:1008094905565