SafeMC: A System for the Design and Evaluation of Mode-Change Protocols. Chen, T. & Phan, L. T. X. In 2018 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS), pages 105–116, April, 2018.
doi  abstract   bibtex   
Real-time systems with multiple modes require mode-change protocols (MCPs) to ensure safety during mode transitions. A variety of MCPs are available in the literature; however, it can be difficult to tell which of them is the most suitable for a given application. This is because 1) existing work often evaluates MCPs analytically, without considering platform-specific overheads in a real deployment; 2) experimental evaluations, where available, tend to make very different choices in run-time environments and workloads, which hinders a direct comparison; and 3) practical applications often require at least some customization, which can completely invalidate the analysis and/or experimental evaluation of the underlying MCP. In this paper, we take a first step towards more principled comparisons. We identify a set of fundamental primitives that most MCPs tend to be built on, and we show that a variety of existing MCPs can be formulated by composing these primitives in different ways. We then present SafeMC, a system for specifying and evaluating current and new MCPs. SafeMC provides an easy-to-use specification language, a library of existing MCPs that can be customized by the user, as well as several tools for test generation, automatic evaluation, tracing, and performance analysis. To demonstrate the utlity of SafeMC, we use it to compare the performance of five classical MCPs in Xen. SafeMC is designed to be extensible and reusable, and we hope that it can serve as a building block for future research in this area.
@inproceedings{chen_safemc_2018,
	title = {{SafeMC}: {A} {System} for the {Design} and {Evaluation} of {Mode}-{Change} {Protocols}},
	shorttitle = {{SafeMC}},
	doi = {10.1109/RTAS.2018.00021},
	abstract = {Real-time systems with multiple modes require mode-change protocols (MCPs) to ensure safety during mode transitions. A variety of MCPs are available in the literature; however, it can be difficult to tell which of them is the most suitable for a given application. This is because 1) existing work often evaluates MCPs analytically, without considering platform-specific overheads in a real deployment; 2) experimental evaluations, where available, tend to make very different choices in run-time environments and workloads, which hinders a direct comparison; and 3) practical applications often require at least some customization, which can completely invalidate the analysis and/or experimental evaluation of the underlying MCP. In this paper, we take a first step towards more principled comparisons. We identify a set of fundamental primitives that most MCPs tend to be built on, and we show that a variety of existing MCPs can be formulated by composing these primitives in different ways. We then present SafeMC, a system for specifying and evaluating current and new MCPs. SafeMC provides an easy-to-use specification language, a library of existing MCPs that can be customized by the user, as well as several tools for test generation, automatic evaluation, tracing, and performance analysis. To demonstrate the utlity of SafeMC, we use it to compare the performance of five classical MCPs in Xen. SafeMC is designed to be extensible and reusable, and we hope that it can serve as a building block for future research in this area.},
	booktitle = {2018 {IEEE} {Real}-{Time} and {Embedded} {Technology} and {Applications} {Symposium} ({RTAS})},
	author = {Chen, Tianyang and Phan, Linh T. X.},
	month = apr,
	year = {2018},
	keywords = {Analytical models, Computational modeling, MPC evaluation, Protocols, Real-time systems, SafeMC, Safety, Task analysis, Timing, automatic evaluation, design, formal specification, mode change protocol, mode transitions, mode-change protocols, multi mode, performance analysis, program diagnostics, program testing, real time systems, real-time systems, run-time environments, software performance evaluation, specification language, specification languages, test generation tools, tracing},
	pages = {105--116}
}

Downloads: 0