Skip to main content

A Brute-Force Approac to Automatic Induction of Machine Code on CISC Architectures

  • Conference paper
  • First Online:
Genetic Programming (EuroGP 2002)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2278))

Included in the following conference series:

Abstract

The usual approach to address the brittleness of machine code in evolution is to constrain mutation and crossover to ensure syntactic closure. In the novel approach presented here we use no constraints on the operators. They all work blindly on the binaries in memory but we instead encapsulate the code and trap all resultingexceptions using the built-in error reportingmechanisms which modern CPUs provide to the operatingsystem. Thus it is possible to return to very simple genetic operators with the objective of increased performance. Furthermore the instruction set used by evolved programmes is no longer limited by the genetic programming system but only by the CPU it runs on. The mapping between the evolution platform and the execution platform becomes almost complete, ensuringcorrect low-level behaviour of all CPU functions.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aivazian, T., Hellwig, C., Weight, R. and Cao, M.: Linux Kernel 2.4 Internals (2001).http://www.linuxdoc.org/LDP/lki/index.html

  2. Banzhaf, W., Nordin, P., Keller, R.E. and Francone, F.D.: Genetic Programming-An Introduction. On The Automatic Evolution Of Computer Programs and its Applications (1998). Morgan Kaufmann, San Francisco, USA and dpunkt, Heidelberg, Germany.

    Google Scholar 

  3. Brumm, P., Brumm, D., Scanlon and J.: 80486 Programming (1991).Windcrest, Blue Ridge Summit, Pa., USA

    Google Scholar 

  4. Crawford, J.H. and Gelsinger, P.P.: Programming the 80386 (1987). SYBEX, San Francisco, USA

    Google Scholar 

  5. Dunlap, R.: Linux 2.4.x Initialization for IA-32 HOWTO (2001). http://www.linuxdoc.org/HOWTO/Linux-Init-HOWTO.html

  6. Goldt, S.,van der Meer, S., Burkett, S. and Welsh, M.: The Linux Programmer’ s Guide (1995). http://www.linuxdoc.org/LDP/lpg/index.html

  7. Intel Corporation: IA-32 Intel Architecture Software Developer’s Manual (2001). http://developer.intel.com/design/pentium4/manuals/245470.htm

  8. Johnson, M.K., Rubini, A. and Scalsky, S.: Linux Kernel Hacker’s Guide (1997). http://www.linuxdoc.org/LDP/khg/HyperNews/get/khg.html

  9. Loosemore S., Stallman, R.M., McGrath, R., Oram, A. and Drepper U.: The GNUC Library Reference Manual (1999), Free Software Foundation, Boston, USA

    Google Scholar 

  10. Nordin, P.: Evolutionary Program Induction of Binary Machine Code and its Application (1997). Krehl Verlag, Münster, Germany.

    Google Scholar 

  11. Nordin, P., Banzhaf, W., Francone, F.D.: Efficient Evolution of Machine Code for CISC Architectures UsingInstruction Blocks and Homologous Crossover (1999). In Advances in Genetic Programming, Volume 3, L. Spector, W.B. Langdon, U.-M. O’Reilly, P.J. Angeline (ed.), pp. 275–299.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kühling, F., Wolff, K., Nordin, P. (2002). A Brute-Force Approac to Automatic Induction of Machine Code on CISC Architectures. In: Foster, J.A., Lutton, E., Miller, J., Ryan, C., Tettamanzi, A. (eds) Genetic Programming. EuroGP 2002. Lecture Notes in Computer Science, vol 2278. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45984-7_28

Download citation

  • DOI: https://doi.org/10.1007/3-540-45984-7_28

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-43378-1

  • Online ISBN: 978-3-540-45984-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics