Computer Systems: A Programmer's Perspective (3rd Edition)
Computer Systems: A Programmer's Perspective (3rd Edition)
3rd Edition
ISBN: 9780134092669
Author: Bryant, Randal E. Bryant, David R. O'Hallaron, David R., Randal E.; O'Hallaron, Bryant/O'hallaron
Publisher: PEARSON
Expert Solution & Answer
Book Icon
Chapter 12.5, Problem 12.7PP

Explanation of Solution

Instruction ordering of “badcnt.c”:

  • When performing instruction “H1”, the value of “%rdx1” and “%rdx2” is null and “cnt” value is “0”.
  • When performing instruction “L1”:
    • The instruction “L1” means loads the shared variable “cnt” into register “%rdx1”.
      • Hence, the value of “%rdx1” contains the value of “cnt” variable.
      • Therefore, %rdx1=0
  • When performing instruction “H1”, the value of “%rdx1” and “%rdx2” is null and “cnt” value is “0”.
  • When performing instruction “L2”:
    • The instruction “L2” means loads the shared variable “cnt” into register “%rdx2”.
      • Hence, the value of “%rdx2” contains the value of “cnt” variable.
      • Therefore, %rdx2=0
  • When performing instruction “U2”:
    • The instruction “U2” means update value in register “%rdx2”.
      • Update value means increment the value of “%rdx2” by “1”.

        %rdx2=%rdx2+1=0+1%rdx2=1

      • Therefore, %rdx2=1 and the value of “cnt” is “0”. Here, the “cnt” will be not be update. It only update after the instruction stored.
  • When performing instruction “S2”:
    • The instruction “S2” means store the updated value of register “%rdx2” into “cnt”.
      • Hence, %rdx2=1 and “cnt” value is “1”.
  • When performing instruction “U1”:
    • The instruction “U1” means update value in register “%rdx1”.
      • Update value means increment the value of “%rdx1” by “1”

Blurred answer
Students have asked these similar questions
Design and draw a high-level "as-is" process diagram that illustrates a current process related to a product or service offered through the SSDCI.gov database.
Compare last-mile connections for connecting homes and businesses to the Internet
Explain wireless networking standards
Knowledge Booster
Background pattern image
Recommended textbooks for you
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Text book image
Operations Research : Applications and Algorithms
Computer Science
ISBN:9780534380588
Author:Wayne L. Winston
Publisher:Brooks Cole
Text book image
COMPREHENSIVE MICROSOFT OFFICE 365 EXCE
Computer Science
ISBN:9780357392676
Author:FREUND, Steven
Publisher:CENGAGE L
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Text book image
Systems Architecture
Computer Science
ISBN:9781305080195
Author:Stephen D. Burd
Publisher:Cengage Learning
Text book image
Fundamentals of Information Systems
Computer Science
ISBN:9781305082168
Author:Ralph Stair, George Reynolds
Publisher:Cengage Learning