Linkers and Loaders (The Morgan Kaufmann Series in Software Engineering and Programming) | 
enlarge | Author: John R. Levine Publisher: Morgan Kaufmann Category: Book
List Price: $54.95 Buy New: $34.72 You Save: $20.23 (37%)
New (21) Used (8) from $33.70
Avg. Customer Rating: 17 reviews Sales Rank: 549922
Media: Paperback Edition: 1st Number Of Items: 1 Pages: 256 Shipping Weight (lbs): 1 Dimensions (in): 9.2 x 7.4 x 0.7
ISBN: 1558604960 Dewey Decimal Number: 005.456 EAN: 9781558604964 ASIN: 1558604960
Publication Date: January 15, 2000 Availability: Usually ships in 1-2 business days Shipping: International shipping available Condition: Brand New, Perfect Condition, Please allow 4-14 business days for delivery. 100% Money Back Guarantee, Over 1,000,000 customers served.
|
| Also Available In:
|
| Similar Items:
|
| Editorial Reviews:
Amazon.com Review Written for any programmer who works with compiled code, Linkers and Loaders 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.
Product Description Whatever your programming language, whatever your platform, you probably tap into linker and loader functions all the time. But do you know how to use them to their greatest possible advantage? Only now, with the publication of Linkers & Loaders, is there an authoritative book devoted entirely to these deep-seated compile-time and run-time processes. The book begins with a detailed and comparative account of linking and loading that illustrates the differences among various compilers and operating systems. On top of this foundation, the author presents clear practical advice to help you create faster, cleaner code. You'll learn to avoid the pitfalls associated with Windows DLLs, take advantage of the space-saving, performance-improving techniques supported by many modern linkers, make the best use of the UNIX ELF library scheme, and much more. If you're serious about programming, you'll devour this unique guide to one of the field's least understood topics. Linkers & Loaders is also an ideal supplementary text for compiler and operating systems courses.
*Includes a linker construction project written in Perl, with project files available for download. *Covers dynamic linking in Windows, UNIX, Linux, BeOS, and other operating systems. *Explains the Java linking model and how it figures in network applets and extensible Java code. *Helps you write more elegant and effective code, and build applications that compile, load, and run more efficiently.
|
| Customer Reviews: Read 12 more reviews...
decent November 25, 2007 Overall this book provides decent coverage on linker technology, covering several popular object formats. I like the book talks more about ELF than others since my project involves ELF. For someone who is not familiar with the subject this book can provide sufficient background for further studying, at the same time giving the reader good working knowledge; however in some ways lacks in-depth explanation on some topics. Keep in mind, being only book on linker design, a subject not well-published - this book deserves 4 stars.
A must-have book September 3, 2007 As far as I'm aware, this is the only book on the market that covers this subject. Clearly this book will be of use to someone that is starting on writing a link editor (or any other tool that manipulates object files). Even for developers that aren't in that category (myself included), then there were interesting things to be learnt. For instance, prior to reading this book, I was unaware of the exact consequences of compiling PIC code for shared libraries. Now that I understand this better, I'll know the impact on performance of code that is destined for chared libraries.
too abstract February 15, 2006 2 out of 7 found this review helpful
maybe it's not the book's fault and instead it's my lack of sufficient background, but this book is hard to understand because of its lack of examples.
clear explanation of concepts October 28, 2005 4 out of 4 found this review helpful
Whatever the hardware and operating system you are using, Levine offers a general explanation of what a linker and loader do. If you deal just in a high level language like C++ or Java, this book can help you appreciate what goes on at a lower level. Notably, the unix ELF and Microsoft Portable Formats are expounded on.
You might also find tips to improve your code performance. Perhaps by finding that your storage allocation could be reduced. Or maybe you want to write relocatable code for dynamic linking.
All told in a style that shows ideas clearly. Without getting bogged down in the syntax of a given CPU or operating system.
Helpful October 28, 2005 1 out of 2 found this review helpful
This particular book had all the information I needed to know to make a COFF standard linker.
|
|
|