See MIPS Run

Front Cover
Elsevier, Jul 8, 2010 - Computers - 512 pages

See MIPS Run, Second Edition, is not only a thorough update of the first edition, it is also a marriage of the best-known RISC architecture--MIPS--with the best-known open-source OS--Linux. The first part of the book begins with MIPS design principles and then describes the MIPS instruction set and programmers’ resources. It uses the MIPS32 standard as a baseline (the 1st edition used the R3000) from which to compare all other versions of the architecture and assumes that MIPS64 is the main option. The second part is a significant change from the first edition. It provides concrete examples of operating system low level code, by using Linux as the example operating system. It describes how Linux is built on the foundations the MIPS hardware provides and summarizes the Linux application environment, describing the libraries, kernel device-drivers and CPU-specific code. It then digs deep into application code and library support, protection and memory management, interrupts in the Linux kernel and multiprocessor Linux.

Sweetman has revised his best-selling MIPS bible for MIPS programmers, embedded systems designers, developers and programmers, who need an in-depth understanding of the MIPS architecture and specific guidance for writing software for MIPS-based systems, which are increasingly Linux-based.

  • Completely new material offers the best explanation available on how Linux runs on real hardware
  • Provides a complete, updated and easy-to-use guide to the MIPS instruction set using the MIPS32 standard as the baseline architecture with the MIPS64 as the main option
  • Retains the same engaging writing style that made the first edition so readable, reflecting the authors 20+ years experience in designing systems based on the MIPS architecture

From inside the book

Contents

Chapter 1 RISCs and MIPS Architectures
1
Chapter 2 MIPS Architecture
29
MIPS Processor Control
53
Chapter 4 How CachesWork on MIPS Processors
79
Chapter 5 Exceptions Interrupts and Initialization
105
Chapter 6 Lowlevel Memory Management and the TLB
131
Chapter 7 FloatingPoint Support
151
Chapter 8 Complete Guide to the MIPS Instruction Set
183
Chapter 13 GNULinux from Eight Miles High
363
Chapter 14 How Hardware and SoftwareWork Together
371
Chapter 15 MIPS Specific Issues in the Linux Kernel
399
Chapter 16 Linux Application Code PIC and Libraries
409
Appendix A MIPS Multithreading
415
Appendix B Other Optional Extensions to the MIPS Instruction Set
425
MIPS Glossary
431
References
477

Chapter 9 Reading MIPS Assembly Language
263
Chapter 10 Porting Software to the MIPS Architecture
279
Chapter 11 MIPS Software Standards ABIs
311
Chapter 12 Debugging MIPS DesignsDebug and Profiling Features
339
Online Resources
478
Index
481
Copyright

Other editions - View all

Common terms and phrases

Popular passages

Page 461 - It measures the number of times each basic block is executed. A basic block is a sequence of code containing no branches.
Page xvii - ... and to discuss its history and importance in China (chapter 2), its current importance as a tool for decision making (chapter 3), and the perspectives that it opens up regarding chance (chapter 4). The reader will also find, at the end of this book, a glossary of the specific terms used, an appendix listing the names of the sixty-four hexagrams, and a bibliography of selected books on the / Ching.
Page 477 - The C Programming Language. 2nd edition. Englewood Cliffs, NJ: Prentice Hall, 1988.
Page 279 - Portability refers to the ease with which a piece of software can be transferred successfully and correctly to a new environment, particularly a new instruction set.
Page 260 - Causes an exception type conventionally used for system calls. teq, teqi, tge, tgei, tgeiu, tgeu, tlt, tlti, tltiu, tltu, tne, tnei: Conditional exception, testing various one- and two-operand conditions.
Page 477 - Hennessy, J., and D. Patterson. Computer Architecture: A Quantitative Approach. 3rd edition.

About the author (2010)

Dominic Sweetman is a member of the last generation of programmers who could reasonably hope to understand computer systems from bottom to top. His rich career began with low-level coding, progressing from OS development to LANs to distributed systems. Dominic is an experienced designer and developer of hardware systems, CPUs, networks, and operating systems. He was a founder member of Whitechapel Workstations, and in 1988 founded Algorithmics, a MIPS consulting firm of which he is the director. Dominic lives with his partner, two grown-up children and three cats in north London.