ABSTRACT
Operating1 systems or kernels assist in running conventional applications. Bare machine computing (BMC) applications run on bare machines without using an operating system or a kernel. BMC applications are thus independent of any execution platform promoting longevity and reducing obsolescence. We investigate the binary transformation of conventional applications enabling them to run on bare machines. Three sample applications are used to demonstrate the binary transformation process and show the feasibility of our approach. Two Visual Studio applications are transformed to run on a bare PC and one large bare PC application binary is linked dynamically and transformed to run with a bare PC Web server. The transformation process and the dynamic linking of binary modules help to identify design and research issues. Our work lays a foundation to achieve the ultimate goal of making applications independent of computing platforms and environments.
- L. He, R. K. Karne, and A. L. Wijesinha, "The design and performance of a bare PC Web server," International Journal of Computers and Their Applications, IJCA, Vol. 15, No. 2, June 2008, pp. 100--112.Google Scholar
- H. Chang, R. K. Karne, and A. Wijesinha, "Migrating a Bare PC Web Server to a Multi-core Architecture," 40<sup>th</sup> Annual IEEE International Computer Software and Applications Conference (COMPSAC), 2016, pp. 216--221.Google Scholar
- B. Rawal, R. K. Karne, and A. L. Wijesinha. "Mini Web server clusters for HTTP request splitting," IEEE Conference on High Performance, Computing and Communications (HPCC), 2011, pp. 94--100. Google ScholarDigital Library
- P. Appiah-Kubi, R.K. Karne and A.L. Wijesinha, "A Bare PC TLS webmail Server," International Conference on Computing, Networking and Communications, (ICNC), 2012, pp. 156--160.Google Scholar
- W. Thompson, R. Karne, A. Wijesinha, and H. Chang, "Interoperable SQLite for a bare PC," Beyond Databases, Architectures and Structures Conference (BDAS), 2017, pp. 177--188.Google Scholar
- U. Okafor, R. K. Karne, A. L. Wijesinha and B. Rawal, "Transforming SQLite to Run on a Bare PC," 7th International Conference on Software Paradigm Trends (ICSOFT), 2012, pp. 311--314.Google Scholar
- F. Almansour, R. K. Karne, A. L. Wijesinha, R. Karne, and B. S. Rawal, "Ethernet bonding on a bare PC web server with dual NICs," 33<sup>rd</sup> Annual ACM Symposium on Applied Computing (SAC), 2018, pp. 1116--1121. Google ScholarDigital Library
- WJRSofware-PEView, http://wjradburn.com/software/, {Accessed 9-24-18}.Google Scholar
- ObjDump, https://sourceforge.net/projects/objdump/, {Accessed 9-24-18}.Google Scholar
- PE Explorer, http://www.pe-explorer.com, {Accessed 9-24-18}.Google Scholar
- D. R. Engler and M.F. Kaashoek, "Exterminate all operating system abstractions," Fifth Workshop on Hot Topics in Operating Systems, USENIX, 1995, p. 78. Google ScholarDigital Library
- J. Lange, et. al, "Palacios and Kitten: new high performance operating systems for scalable virtualized and native supercomputing," 24th IEEE International Parallel and Distributed Processing Symposium, 2010.Google Scholar
- GitHub --- ReturnInfinity/BareMetal-OS, https://github.com/ReturnInfinity/BareMetal-OS, {Accessed 9-24-18}.Google Scholar
- Linux Kernel Tinification, https://tiny.wiki.kernel.org/, {Accessed 9-24-18}.Google Scholar
- A Minimal Rust Kernel, https://os.phil-opp.com/minimal-rust-kernel/, {Accessed 9-24-18}.Google Scholar
- NDISWrapper, http://ndiswrapper.sourceforge.net, {Accessed 9-24-18}.Google Scholar
- V. Chipounov and G. Candea "Reverse engineering of binary device drivers with RevNIC," 5th ACM European Conference on Computer Systems (EUROSYS), 2010. Google ScholarDigital Library
- B. Everard, "Drive it yourself: USB Car," LINUXVOICE, March 2015. https://www.linuxvoice.com/drive-it-yourself-usb-car-6/, {Accessed 9-24-18}.Google Scholar
Index Terms
- Binary transformation of applications to run on bare PCs
Recommendations
Ethernet bonding on a bare PC web server with dual NICs
SAC '18: Proceedings of the 33rd Annual ACM Symposium on Applied ComputingBare PC1applications run without the support of an operating system (OS) or kernel and include the necessary hardware interfaces and network device drivers with each application. We describe a novel implementation of Ethernet bonding on a bare PC Web ...
A Study of Bare PC SIP Server Performance
ICSNC '10: Proceedings of the 2010 Fifth International Conference on Systems and Networks CommunicationsIn bare computing, applications run directly on an ordinary PC without using an operating system (OS). Advantages of bare PC computing include elimination of overhead due to the OS, and immunity against attacks targeting OS vulnerabilities. We evaluate ...
Design and Performance of a Webmail Server on Bare PC
HPCC '10: Proceedings of the 2010 IEEE 12th International Conference on High Performance Computing and CommunicationsWe describe a Webmail server that runs on a bare PC without an operating system (OS) or kernel, and give details of its architecture, design, and implementation. We also present the results of experiments conducted in a test LAN environment to compare ...
Comments