The high performance Fortran handbook
The high performance Fortran handbook
Using MPI: portable parallel programming with the message-passing interface
Using MPI: portable parallel programming with the message-passing interface
Programming with POSIX threads
Programming with POSIX threads
Models and languages for parallel computation
ACM Computing Surveys (CSUR)
Co-array Fortran for parallel programming
ACM SIGPLAN Fortran Forum
Software Fault Tolerance
OpenMP: An Industry-Standard API for Shared-Memory Programming
IEEE Computational Science & Engineering
Sourcebook of parallel computing
Sourcebook of parallel computing
An Overview of the Runtime Verification Tool Java PathExplorer
Formal Methods in System Design
Event-based runtime verification of java programs
WODA '05 Proceedings of the third international workshop on Dynamic analysis
Mop: an efficient and generic runtime verification framework
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
The Design of a Multicore Extension of the SPIN Model Checker
IEEE Transactions on Software Engineering
A case study for monitoring-oriented programming in multi-core architecture
Proceedings of the 1st international workshop on Multicore software engineering
Runtime monitoring on multicores via OASES
ACM SIGOPS Operating Systems Review
A Case Study for Fault Tolerance Oriented Programming in Multi-core Architecture
HPCC '09 Proceedings of the 2009 11th IEEE International Conference on High Performance Computing and Communications
Scalable multi-core LTL model-checking
Proceedings of the 14th international SPIN conference on Model checking software
Java-MOP: a monitoring oriented programming environment for java
TACAS'05 Proceedings of the 11th international conference on Tools and Algorithms for the Construction and Analysis of Systems
New Horizons in Multicore Software Engineering
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2
Extending Ada to support multi-core based monitoring and fault tolerance
Proceedings of the ACM SIGAda annual international conference on SIGAda
Hi-index | 0.00 |
Monitoring and fault tolerance are important approaches to give high confidence in long-running online software systems. But these approaches will certainly cause high overhead cost, i.e. the loss of efficiency. Multi-core platforms can make such cost acceptable because of the parallel performance advantage. For allowing ordinary software developers without any knowledge of multi-core platforms to handle such programming tasks more efficiently, we propose an approach to enable multi-core based monitoring and fault tolerance in C++/Java. First, the preliminary principles of multi-core based monitoring and fault tolerance are presented. Based on these principles, monitoring and fault tolerance tasks are designed and implemented via multi-process/thread programming, i.e. each monitoring and fault tolerance module is designed and implemented as a separate process/thread. Then, we introduce a group of special annotations for ordinary software developers to specify a simple and virtual multi-core based design. Finally, according to these annotations, an automatic mapping to a given runtime platform is established via a prototype tool McC++/Java. Our approach is suitable for wide range of software developers, which can hide the programming details on multi-core platforms from them and reduce their work load.