Supervisory control of a class of discrete event processes
SIAM Journal on Control and Optimization
SASI enforcement of security policies: a retrospective
Proceedings of the 1999 workshop on New security paradigms
ACM Transactions on Information and System Security (TISSEC)
Understanding the Linux Kernel
Understanding the Linux Kernel
Introduction To Automata Theory, Languages, And Computation
Introduction To Automata Theory, Languages, And Computation
Software Rejuvenation: Analysis, Module and Applications
FTCS '95 Proceedings of the Twenty-Fifth International Symposium on Fault-Tolerant Computing
UNIX Network Programming, Vol. 1
UNIX Network Programming, Vol. 1
Introduction to Discrete Event Systems
Introduction to Discrete Event Systems
An approach to self-adaptive software based on supervisory control
IWSAS'01 Proceedings of the 2nd international conference on Self-adaptive software: applications
Optimal Monte Carlo estimation of belief network inference
UAI'96 Proceedings of the Twelfth international conference on Uncertainty in artificial intelligence
Information Sciences: an International Journal
Pervasive and Mobile Computing
Scenario-based component behavior derivation
ICFEM'06 Proceedings of the 8th international conference on Formal Methods and Software Engineering
Concurrency bugs in multithreaded software: modeling and analysis using Petri nets
Discrete Event Dynamic Systems
Eliminating concurrency bugs in multithreaded software: an approach based on control of petri nets
PETRI NETS'13 Proceedings of the 34th international conference on Application and Theory of Petri Nets and Concurrency
Integrating discrete controller synthesis into a reactive programming language compiler
Discrete Event Dynamic Systems
Hi-index | 14.98 |
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.