{"id":{"repo_id":"uiuc","oai_identifier":"oai:www.ideals.illinois.edu:2142/31067"},"canonical_url":"https://search.dev.ndltd.org/etd/uiuc/oai:www.ideals.illinois.edu:2142/31067","repository":{"repo_id":"uiuc","name":"University of Illinois - Urbana-Champaign","base_url":"https://www.ideals.illinois.edu/oai-pmh"},"display":{"title":"Input division for binary translation","abstract":"Binary translation is useful in migrating binaries to architectures different from the one they are originally compiled for. The work in this thesis is an optimization of an existing binary translator developed by Chen et al. in 2008. The goal of the binary translator is to allow Android applications with native code compiled for ARM architecture to run on MIPS-based hardware. The ideal time to translate an Android application is when it is being installed. Therefore, the binary translator must execute on a mobile device which has limited compute power. The original binary translator encounters a severe limitation when translating large applications. On those applications, translation takes more than one hour to complete. In the worst case, the translator crashes due to insufficient memory. We present Input Division, an optimization technique that resolves the aforementioned issues. Input Division improved the original implementation with a more advanced input analysis technique that significantly accelerates output binary generation. As a result, we achieved up to 18.9X speedup in translation time and 48X reduction in memory usage.","abstract_html":"Binary translation is useful in migrating binaries to architectures different from the one they are originally compiled for. The work in this thesis is an optimization of an existing binary translator developed by Chen et al. in 2008. The goal of the binary translator is to allow Android applications with native code compiled for ARM architecture to run on MIPS-based hardware. The ideal time to translate an Android application is when it is being installed. Therefore, the binary translator must execute on a mobile device which has limited compute power. The original binary translator encounters a severe limitation when translating large applications. On those applications, translation takes more than one hour to complete. In the worst case, the translator crashes due to insufficient memory. We present Input Division, an optimization technique that resolves the aforementioned issues. Input Division improved the original implementation with a more advanced input analysis technique that significantly accelerates output binary generation. As a result, we achieved up to 18.9X speedup in translation time and 48X reduction in memory usage.","abstract_has_math":false,"creators":["Liu, Geng Daniel"],"institution":"University of Illinois at Urbana-Champaign","degree_name":"M.S.","degree_level":"Thesis","degree_discipline":"Electrical & Computer Engr","degree_department":null,"school":null,"contributors":["Hwu, Wen-Mei W."],"advisors":[],"committee_chairs":[],"committee_members":[],"year":2012,"date_issued":"2012-05-22T00:25:43Z","date_published":"2012-05-22T00:25:43Z","updated_at":"2026-07-22T22:25:29Z","subjects":["Binary translation","Function extraction","Input division","Translation optimization"],"languages":["en"],"rights":["Copyright 2012 Geng Daniel Liu"],"rights_urls":[],"identifier_entries":[]},"links":{"outbound_url":"http://hdl.handle.net/2142/31067","outbound_label":"Handle","outbound_source":"dc:identifier"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor","label":"Contributor","values":["Hwu, Wen-Mei W."]},{"key":"dc:creator","label":"Author","values":["Liu, Geng Daniel"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date","label":"Dc Date","values":["2012-05-22T00:25:43Z","2012-05"]},{"key":"dc:type","label":"Dc Type","values":["text"]},{"key":"thesis:degree_discipline","label":"Discipline","values":["Electrical & Computer Engr"]},{"key":"thesis:degree_level","label":"Degree Level","values":["Thesis"]},{"key":"thesis:degree_name","label":"Degree Name","values":["M.S."]},{"key":"thesis:institution_name","label":"Thesis Institution Name","values":["University of Illinois at Urbana-Champaign"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["Binary translation","Function extraction","Input division","Translation optimization"]}]},{"id":"language_rights","label":"Language and Rights","entries":[{"key":"dc:language","label":"Dc Language","values":["en"]},{"key":"dc:rights","label":"Dc Rights","values":["Copyright 2012 Geng Daniel Liu"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier","label":"Identifier","values":["http://hdl.handle.net/2142/31067"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description","label":"Description","values":["Binary translation is useful in migrating binaries to architectures different from the one they are originally compiled for. The work in this thesis is an optimization of an existing binary translator developed by Chen et al. in 2008. The goal of the binary translator is to allow Android applications with native code compiled for ARM architecture to run on MIPS-based hardware. The ideal time to translate an Android application is when it is being installed. Therefore, the binary translator must execute on a mobile device which has limited compute power. The original binary translator encounters a severe limitation when translating large applications. On those applications, translation takes more than one hour to complete. In the worst case, the translator crashes due to insufficient memory. We present Input Division, an optimization technique that resolves the aforementioned issues. Input Division improved the original implementation with a more advanced input analysis technique that significantly accelerates output binary generation. As a result, we achieved up to 18.9X speedup in translation time and 48X reduction in memory usage.","Item withdrawn by Mark Zulauf (zulauf@illinois.edu) on 2012-04-09T14:15:58Z Item was in collections: University of Illinois Theses & Dissertations (ID: 1) No. of bitstreams: 1 Liu_Geng.pdf: 1081559 bytes, checksum: c4a20dd1b17130a383709df9fc551fd3 (MD5)","Made available in DSpace on 2012-05-22T00:25:43Z (GMT). No. of bitstreams: 2 Liu_Geng.pdf: 1081559 bytes, checksum: c4a20dd1b17130a383709df9fc551fd3 (MD5) license.txt: 4058 bytes, checksum: 8f939d137186f28b4099ff9fa1a80f39 (MD5)"]},{"key":"dc:title","label":"Title","values":["Input division for binary translation"]}]}],"canonical_facts":{"dc:contributor":["Hwu, Wen-Mei W."],"dc:creator":["Liu, Geng Daniel"],"dc:date":["2012-05-22T00:25:43Z","2012-05"],"dc:description":["Binary translation is useful in migrating binaries to architectures different from the one they are originally compiled for. The work in this thesis is an optimization of an existing binary translator developed by Chen et al. in 2008. The goal of the binary translator is to allow Android applications with native code compiled for ARM architecture to run on MIPS-based hardware. The ideal time to translate an Android application is when it is being installed. Therefore, the binary translator must execute on a mobile device which has limited compute power. The original binary translator encounters a severe limitation when translating large applications. On those applications, translation takes more than one hour to complete. In the worst case, the translator crashes due to insufficient memory. We present Input Division, an optimization technique that resolves the aforementioned issues. Input Division improved the original implementation with a more advanced input analysis technique that significantly accelerates output binary generation. As a result, we achieved up to 18.9X speedup in translation time and 48X reduction in memory usage.","Item withdrawn by Mark Zulauf (zulauf@illinois.edu) on 2012-04-09T14:15:58Z Item was in collections: University of Illinois Theses & Dissertations (ID: 1) No. of bitstreams: 1 Liu_Geng.pdf: 1081559 bytes, checksum: c4a20dd1b17130a383709df9fc551fd3 (MD5)","Made available in DSpace on 2012-05-22T00:25:43Z (GMT). No. of bitstreams: 2 Liu_Geng.pdf: 1081559 bytes, checksum: c4a20dd1b17130a383709df9fc551fd3 (MD5) license.txt: 4058 bytes, checksum: 8f939d137186f28b4099ff9fa1a80f39 (MD5)"],"dc:identifier":["http://hdl.handle.net/2142/31067"],"dc:language":["en"],"dc:rights":["Copyright 2012 Geng Daniel Liu"],"dc:subject":["Binary translation","Function extraction","Input division","Translation optimization"],"dc:title":["Input division for binary translation"],"dc:type":["text"],"thesis:degree_discipline":["Electrical & Computer Engr"],"thesis:degree_level":["Thesis"],"thesis:degree_name":["M.S."],"thesis:institution_name":["University of Illinois at Urbana-Champaign"]},"updated_at":"2026-07-22T22:25:29Z"}