Font Size: a A A

Binary Code Instrumentation Framework Based Memory Redundance

Posted on:2014-01-26Degree:MasterType:Thesis
Country:ChinaCandidate:W SunFull Text:PDF
GTID:2248330392961095Subject:Software engineering
Abstract/Summary:PDF Full Text Request
Lots of computers in cluster deal with a huge amount of data due tocloud computing. Memory is very important because it contains all thedata in computer. It would create invalid data or lead to system crashwhen memory failures happen. If this happens in computers occupiedwith military or finance, it would cost a lot.There are two main approaches for memory availability. Thehardware solutions need special hardware to replicate memory which areexpensive and not flexible. The software solutions focus on memorybackup among many virtual machines. It is limited by high overhead inpractical use.In this paper, we present a novel software approach called Multimem.It achieves hardware mirror memory through software. The source codeconsists of both native instructions and mirror instructions aftermodification. The native instructions write data to native memory whilethe mirror ones write data to the mirror memory. So the data in native andmirror memory are replicated on the fly when programs are running.Multimem guarantees the availability of not only system user mode butalso system kernel mode via static binary translation which is a bigimprovement compared with existing software solutions. It is flexible toprovide different level high availability varies from function level tosystem level and also the number of mirror memory is changeable. Itneeds less resource and is more practical. Multimem is based on a binarycode instrumentation framework which can not only be used to improvesystem availability but also be used to analyze programs’ source codemaking it scalable for other usage.We design many tests to measure Multimem’s performance. TheXV6test shows that Multimem only brings5%overhead in system keyfeatures. Even in the memory intensive task in Sysbench, the overhead is still less than80%. The average overhead of five basic operations inSQLite is45%which is56%better than existing software solutions.Multimem costs almost nothing and it is suitable for most computers.
Keywords/Search Tags:high availability, binary translation, mirror memory
PDF Full Text Request
Related items