A Programmer’s Perspective
This page intentionally left blank
Computer Systems
A Programmer’s Perspective
Randal E. Bryant
Carnegie Mellon University
David R. O’Hallaron
Carnegie Mellon University and Intel Labs
Prentice Hall
Boston Columbus Indianapolis New York San Francisco Upper Saddle River Amsterdam Cape Town Dubai London Madrid Milan Munich Paris Montreal Toronto Delhi Mexico City Sao Paulo Sydney Hong Kong Seoul Singapore Taipei Tokyo
Editorial Director: Marcia Horton Editor-in-Chief: Michael Hirsch Acquisitions Editor: Matt Goldstein Editorial Assistant: Chelsea Bell Director of Marketing: Margaret Waples Marketing Coordinator: Kathryn Ferranti Managing Editor: Jeff Holcomb Senior Manufacturing Buyer: Carol Melville Art Director: Linda Knowles Cover Designer: Elena Sidorova Image Interior Permission Coordinator: Richard Rodrigues Cover Art: © Randal E. Bryant and David R. O’Hallaron Media Producer: Katelyn Boller Project Management and Interior Design: Paul C. Anagnostopoulos, Windfall Software Composition: Joe Snowden, Coventry Composition Printer/Binder: Edwards Brothers Cover Printer: Lehigh-Phoenix Color/Hagerstown Copyright © 2011, 2003 by Randal E. Bryant and David R. O’Hallaron. All rights reserved. Manufactured in the United States of America. This publication is protected by Copyright, and permission should be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise. To obtain permission(s) to use material from this work, please submit a written request to Pearson Education, Inc., Permissions Department, 501 Boylston Street, Suite 900, Boston, Massachusetts 02116. Many of the designations by manufacturers and seller to distinguish their products are claimed as trademarks. Where those designations appear in this book, and the publisher was aware of a trademark