Eli: a complete, flexible compiler construction system
Communications of the ACM
Communications of the ACM
Decompilation of binary programs
Software—Practice & Experience
Java Virtual Machine Specification
Java Virtual Machine Specification
Compiler Construction: Craftmanship or Engineering?
CC '96 Proceedings of the 6th International Conference on Compiler Construction
Machine-adaptable dynamic binary translation
DYNAMO '00 Proceedings of the ACM SIGPLAN workshop on Dynamic and adaptive compilation and optimization
Dynamic binary translation using run-time feedbacks
Science of Computer Programming - Software analysis, evolution and re-engineering
Hi-index | 0.00 |
A loader is a systems program used by an operating system (OS) to load a binary executable file onto memory to execute it. The internal format of a binary executable file is called the binary-file format (BFF); this format is dependent on the OS and the particular computer architecture it runs on. Traditionally, when developing machine-code manipulation tools such as binary translators and disassemblers, developers need to write a decoder for each type of binary executable file they want to manipulate, i.e. for n different binary executables, they need to write n different loaders. With the advent of binary translation technology and the increased number of machines and operating systems, a retargetable loader (RL) would eliminate the effort required in creating different loaders; if only one such environment existed. SRL, a simple retargetable loader, is a first attempt at developing an RL framework by means of a simple BFF grammar. Three different environments, (x86,DOS,EXE), (x86,Windows,NE) and (Sparc,Solaris,ELF), were used as the basis for the development and testing of SRL. The three environments give a good coverage of different BFFs currently in use by OSs for RISC and CISC machines.