{"title":"分布式对象技术的二进制工程","authors":"C. Cifuentes","doi":"10.1109/WCRE.1998.723196","DOIUrl":null,"url":null,"abstract":"Binary reengineering is the process of translating a binary-executable program to another low-level of abstraction (on another machine) or to a higher level of abstraction (source code). The former translation is commonly known as binary translation and the latter as decompilation. In this context, emulation and interpretation techniques are also relevant but normally provide less efficient solutions to a problem, so they will not be discussed here.Any binary reengineering project requires the disassembly of the code stored in the binary file. From a theoretical point of view, the separation of data and code in von Neumann machines is equivalent to the halting problem; hence, a complete static translation is not possible. However, in practice, different techniques can be used to increase the percentage of code that is translated statically, or hooks to dynamic translation techniques can be used at run-time.","PeriodicalId":345730,"journal":{"name":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Binary Reeengineering of Distributed Object Technology\",\"authors\":\"C. Cifuentes\",\"doi\":\"10.1109/WCRE.1998.723196\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Binary reengineering is the process of translating a binary-executable program to another low-level of abstraction (on another machine) or to a higher level of abstraction (source code). The former translation is commonly known as binary translation and the latter as decompilation. In this context, emulation and interpretation techniques are also relevant but normally provide less efficient solutions to a problem, so they will not be discussed here.Any binary reengineering project requires the disassembly of the code stored in the binary file. From a theoretical point of view, the separation of data and code in von Neumann machines is equivalent to the halting problem; hence, a complete static translation is not possible. However, in practice, different techniques can be used to increase the percentage of code that is translated statically, or hooks to dynamic translation techniques can be used at run-time.\",\"PeriodicalId\":345730,\"journal\":{\"name\":\"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)\",\"volume\":\"1 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1998-10-12\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/WCRE.1998.723196\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/WCRE.1998.723196","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Binary Reeengineering of Distributed Object Technology
Binary reengineering is the process of translating a binary-executable program to another low-level of abstraction (on another machine) or to a higher level of abstraction (source code). The former translation is commonly known as binary translation and the latter as decompilation. In this context, emulation and interpretation techniques are also relevant but normally provide less efficient solutions to a problem, so they will not be discussed here.Any binary reengineering project requires the disassembly of the code stored in the binary file. From a theoretical point of view, the separation of data and code in von Neumann machines is equivalent to the halting problem; hence, a complete static translation is not possible. However, in practice, different techniques can be used to increase the percentage of code that is translated statically, or hooks to dynamic translation techniques can be used at run-time.