×







We sell 100% Genuine & New Books only!

Computer Systems: A Programmer'S Perspective 3Rd Edition at Meripustak

Computer Systems: A Programmer'S Perspective 3Rd Edition by David R O Hallaron and Randal E Bryant, Pearson

Books from same Author: David R O Hallaron and Randal E Bryant

Books from same Publisher: Pearson

Related Category: Author List / Publisher List


  • Price: ₹ 1245.00/- [ 5.00% off ]

    Seller Price: ₹ 1183.00

Estimated Delivery Time : 4-5 Business Days

Sold By: Meripustak      Click for Bulk Order

Free Shipping (for orders above ₹ 499) *T&C apply.

In Stock

We deliver across all postal codes in India

Orders Outside India


Add To Cart


Outside India Order Estimated Delivery Time
7-10 Business Days


  • We Deliver Across 100+ Countries

  • MeriPustak’s Books are 100% New & Original
  • General Information  
    Author(s)David R O Hallaron and Randal E Bryant
    PublisherPearson
    Edition3rd Edition
    ISBN9789332573901
    Pages1120
    BindingPaperbound
    LanguageEnglish
    Publish YearJune 2016

    Description

    Pearson Computer Systems: A Programmer'S Perspective 3Rd Edition by David R O Hallaron and Randal E Bryant

    Computer systems: A Programmer's Perspective explains the underlying elements common among all computer systems and how they affect general application performance. Written from the programmer's perspective, this book strives to teach students how understanding basic elements of computer systems and executing real practice can lead them to create better programs. Salient Features A carefully planned 12 chapter layout that covers all of the core topics of computer programming Chapter 1 uses a simple "hello world" program to introduce the major concepts and themes of computer programming. Chapter 2 dives into the topic of computer arithmetic, considering how numbers are represented in computer programs and how they affect value coding. The chapter places a special emphasis on the properties of unsigned and two's-compliment number representations. It gives students necessary insight into arithmetic from the programmers perspective and why it's so important. Chapter 3 teaches students how to read the x86-64 code generated by a C compiler, covering the basic instruction patterns for different control constructs, implementation procedures, and the allocation of different data structures. This chapter also discusses the implementation of integer and floating point arithmetic and takes a machine-level view of programs to understand certain code vulnerabilities. Chapter 4 introduces students to basic combinational and sequential logic elements and shows how they can be used in a simplified subset of the x86-64 instruction set called Y86-64. It starts with a single-cycle datapath and moves onto a discussion of pipelining. Chapter 5 gives students techniques for improving code performance with transformations that reduce work and enhance instruction-level parallelism. Chapter 6 covers different types of RAM and ROM memory systems, describing their hierarchical arrangement. The chapter makes the abstract concept tangible by using the analogy of a "memory mountain" with ridges of temporal locality and slopes of spatial locality. Students learn that improving temporal and spatial locality improves performance. Chapter 7 discusses both static and dynamic linking, areas included in most systems text where programmers make their most confusing errors. Chapter 8 explains exceptional control flow at all levels of the system, from simple hardware interrupts to nonlocal jumps in C that break the stack discipline. This chapter introduces the fundamental idea of a process by teaching students how it works and how it is created and manipulated from application programs. Chapter 9 shows students key characteristics of the virtual memory system and how it works, addressing issues such as managing and manipulating. This chapter shows the benefits of covering the hardware and software aspects of computer systems in a unified way, which most books do not. Chapter 10 covers the basic concepts of Unix I/O, such as files and descriptors. It explains how files are shared, how I/O redirection works, and how to access file metadata. Chapter 11 discusses networks, I/O devices that tie together many of the ideas presented earlier in the text. It describes the client-server model that underlies all network applications and presents a programmer's view of the internet. Chapter 12 uses internet design as an example that introduces students to concurrent programming. By comparing and contrasting the three basic mechanisms for writing concurrent programs (processes, I/O multiplexing, and threads) students learn how to build concurrent internet servers.



    Book Successfully Added To Your Cart