Processing ......
FreeComputerBooks.com
Links to Free Computer, Mathematics, Technical Books all over the World
 
Linkers and Loaders
GIS Visualizer - Geographic Data Visualized on 40+ Maps! Click here for details.
  • Title: Linkers and Loaders
  • Author(s) John R. Levine
  • Publisher: Morgan Kaufmann; 1st edition (October 25, 1999)
  • Paperback: 256 pages
  • eBook: PDF Files, Microsoft Word, PostScript, etc.
  • Language: English
  • ISBN-10: 1558604960
  • ISBN-13: 978-1558604964
  • Share This:  

Book Description

Written for any programmer who works with compiled code, this book surveys today's hardware platforms with a tour of how code is linked and executed on IBM mainframes, Unix, and Windows. This handy title fills a valuable niche for anyone who wants to understand how programs are built and run on today's computing systems.

It's the cross-platform perspective that distinguishes this book. The author's wide-ranging perspective on IBM 370 mainframes, RISC platforms like the SUN SPARC and, of course, Microsoft Windows makes this book a commendable reference on the internals of linkers and program execution in each environment.

There's also a digestible guide to the computer architecture (including registers, instruction formats, and memory addressing) for each platform. (Unix programmers will be pleased that the book has more information on non-Windows platforms than on Windows itself.)

For C++ programmers, this text gives you a glimpse into the internals of such language features as macros, templates, and name mangling, and how linkers deal with them at build time.

The book closes with useful material on static libraries and dynamic linking, plus a short tour of Java and its class loader (which can resolve classes on the fly as they are downloaded over the Internet). Short exercises are provided for each chapter, making this a useful resource for both classroom and self-study on what is an often overlooked topic. --Richard Dragan

Topics covered: History of linkers and loaders, application binary interfaces (ABIs), computer architecture basics, big- and little-endian memory addresses, register and instruction formats for IBM 370, SPARC and Intel x86, paging and virtual memory, position independent code (PIC), Intel x86 segmentation, embedded architectures, object files for DOS COM and EXE files, Unix a.out, Unix ELF, IBM 360 object format, Microsoft Portable Executable (PE) format, Intel Object Module Format (OMF), storage allocation, linking details for C++, symbol management, name mangling, weak and strong references, debugging information, library formats, COFF and ELF formats, relocation, loading and overlays, bootstrap loading, shared libraries, dynamic linking for Unix ELF and Microsoft Windows DLLs, advanced linking techniques for C++, and linking in Java.

About the Authors
  • John Levine is the author or co-author of many books, including lex & yac (O'Reilly), Programming for Graphics Files in C and C++ (Wiley), and The Internet for Dummies (IDG). He is also publisher emeritus of the Journal of C Language Translation, long-time moderator of the comp.compilers newsgroup, and the creator of one of the first commercial Fortran 77 compilers. He holds a Ph.D. in Computer Science from Yale University.
Reviews, Ratings, and Recommendations: Related Book Categories: Read and Download Links: Similar Books:
  • Assemblers and Loaders (David Salomon)

    Covering the design and implementation of assemblers and loaders, this comprehensive book opens with an introduction to one-pass and two-pass assemblers. Important concepts such as absolute and relocatable object files are discussed.

  • Reverse Engineering for Beginners (Dennis Yurichev)

    This book offers a primer on reverse-engineering, delving into 'disassembly'-code-level Reverse Engineering and explaining how to decipher assembly language for those beginners who would like to learn to understand x86 and ARM code created by C/C++ compilers.

  • Introduction to Compilers and Language Design (Douglas Thain)

    This book offers a one semester introduction into compiler construction, enabling the reader to build a simple compiler that accepts a C-like language and translates it into working X86 or ARM assembly language.

  • Compiler Design: Theory, Tools, and Examples (Seth Bergmann)

    This is an introductory level text for compiler design courses, that emphasizes problem solving skills. The concepts are clearly presented with sampler problems and diagrams to illustrate the concepts.

  • Basics of Compiler Design (Torben Mogensen)

    This book presents techniques for making realistic, though non-optimizing compilers for simple programming languages using methods that are close to those used in 'real' compilers, albeit slightly simplified in places for presentation purposes.

  • Compiler Construction (William M. Waite, et al)

    This is a modern text written by two leaders in the field. It demonstrates how a compiler is built, and provides the reader with a firm theoretical basis for compiler construction and sound engineering principles.

Book Categories
:
Other Categories
Resources and Links