This Article 
 Bibliographic References 
 Add to: 
Supervisory Control of Software Systems
September 2004 (vol. 53 no. 9)
pp. 1187-1199
We present a new paradigm to control software systems based on the Supervisory Control Theory (SCT). Our method uses the SCT to model the execution of a software application by restricting the actions of the OS with little or no modifications in the underlying OS. Our approach can be generalized to any software application as the interactions of the application with the OS are modeled at a process level as a Deterministic Finite State Automaton (DFSA) termed as a "plant.” A "supervisor” that controls the plant is a DFSA synthesized from a set of control specifications. The supervisor operates synchronously with the plant to restrict the language accepted by the plant to satisfy the control specifications. Using the above method of control to mitigate faults, as a proof-of-concept, we implement two supervisors under the Redhat Linux 7.2 OS to mitigate overflow and segmentation faults in five different programs. We quantify the performance of the unsupervised and supervised plant by using a Language Measure and give methods to compute the measure using state transition cost matrix and characteristic vector.

[1] P. Ramadge and W. Wonham, Supervisory Control of a Class of Discrete Event Processes SIAM J. Control and Optimization, vol. 25, no. 1, pp. 206-230, 1987.
[2] G. Karsai, A. Ledeczi, J. Sztipanovits, G. Peceli, G. Simon, and T. Kovacshazy, An Approach to Self Adapive Software Based on Supervisory Control Proc. Int'l Workshop Self Adaptive Software, 2001.
[3] C. Wallace, P. Jensen, and N. Soparkar, Supervisory Control of Workflow Scheduling Proc. Int'l Workshop Advanced Transaction Models and Architectures, 1996.
[4] Y. Hong, D. Chen, L. Li, and K. Trivedi, Closed Loop Design for Software Rejuvenation SHAMAN Self-Healing, Adaptive and self-MANaged Systems, 2002.
[5] Y. Huang, C. Kintala, N. Kolettis, and N.D. Fulton, Software Rejuvenation: Analysis, Module and Applications Proc. 25th IEEE Int'l Symp. Fault-Tolerant Computing, pp. 381-390, June 1995.
[6] H. Hopcroft, R. Motwani, and J. Ullman, Introduction to Automata Theory, Languages, and Computation, second ed. Addison Wesley, 2001.
[7] L. Bauer, J. Ligatti, and D. Walker, More Enforceable Security Policies Proc. Foundations of Computer Security Workshop, July 2002.
[8] U. Erlingsson and F. Schneider, SASI Enforcement of Security Policies: A Retrospective Proc. New Security Paradigms Workshop, pp. 87-95, Sept, 1999,
[9] Y. Hong, D. Chen, L. Li, and K. Trivedi, Enforceable Security Policies ACM Trans. Information and System Security, vol. 3, no. 1, pp. 30-50, 2002.
[10] X. Wang and A. Ray, A Language Measure for Performance Evaluation of Discrete Event Supervisory Control Systems Applied Math. Modelling, to appear.
[11] A. Ray and S. Phoha, Signed Real Measure of Regular Languages for Discrete-Event Automata Int'l J. Control, vol. 76, no. 18, pp. 1800-1808, 2003.
[12] A. Surana and A. Ray, Measure of Regular Languages Demonstratio Mathematica, vol. 37, no. 2, 2004.
[13] C. Cassandras and S. Lafortune, Introduction to Discrete Event Systems. 1999.
[14] F. Charbonnier, H. Alla, and R. David, Supervised Control of Discrete-Event Dynamic Systems IEEE Trans. Control Systems Technology, vol. 7, no. 2, pp. 175-187, 1989.
[15] M. Heymann, Concurrency and Discrete Event Control IEEE Control Systems Magazine, pp. 103-112, 1990.
[16] D. Bovet and M. Cesati, Understanding the Linux Kernel. O'Reilly&Assoc., Jan. 2001.
[17] A. Rubini, Linux Device Drivers. O'Reilly&Assoc., June 2001.
[18] W. Stevens, Unix Network Programming, vol. 1, second ed. Singapore: Addison-Wesley Longman, 1999.
[19] X. Wang, A. Ray, and A. Khatkhate, On-Line Identification of Language Measure Parameters for Discrete Event Supervisory Control Proc. IEEE Conf. Decision and Control, pp. 6307-6312, 2003.
[20] V. Phoha, A. Nadgar, A. Ray, J. Fu, and S. Phoha, Supervisory Control of Software Systems for Fault Mitigation Proc. 2003 Am. Control Conf., 2003.
[21] M. Pradhan and P. Dagum, Optimal Monte Carlo Estimation of Belief Network Inference Proc. 12th Conf. Uncertainty in Artificial Intelligence, 1996.

Index Terms:
Systems and software, control theory, fault tolerance, automata, languages.
Vir V. Phoha, Amit U. Nadgar, Asok Ray, Shashi Phoha, "Supervisory Control of Software Systems," IEEE Transactions on Computers, vol. 53, no. 9, pp. 1187-1199, Sept. 2004, doi:10.1109/TC.2004.67
Usage of this product signifies your acceptance of the Terms of Use.