This handbook explains the Common Object File Format used in UNIX System V, along with the related behavior of programs that use this format, such as the UNIX assembler and linker. It assumes knowledge of the C programming language and some familiarity with typical assembly language and machine language facilities.
The author gives clear explanations of basic concepts such as relocation, separately relocatable sections, and library (archive) files. Gircys gives C declarations to define all the relevant file formats and also explains such arcane lore as symbolic debugging information and UNIX magic numbers. The book gives plenty of good advice about how to make practical use of the information in the files, rather than just giving definitions of its meaning; indeed, it includes a listing of a complete sample program to interpret and print the contents of a COFF file. It also includes an appendix that summarizes the material of the book, and an index. The book does not cover all variations of COFF, but it does summarize those areas where different implementations typically make different choices.
I found the book quite readable, in spite of occasional awkward sentences and typographical errors. This book will be very useful for the fairly small audience of those professional programmers who would build assemblers, compilers, linkers, debuggers, and similar utilities under UNIX. It should also be useful as supplementary reading in an operating systems course.