Identify the critical races, computer science, Basic Computer Science

Assignment Help:
1. The standard way for debuggers to plant breakpoints in a program in RAM (whatever the processor instruction set) is to save the breakpointed instruction and replace it by a jump to the breakpoint handling code. After the breakpoint is triggered, the saved instruction is restored in its original place. If the interactive dialogue with the debugger during the breakpoint indicates that that the triggered breakpoint is to be removed, execution of the program can be resumed simply by jumping to the instruction that had been breakponted. However, if the dialogue with the debugger indicates that the breakpoint is to remain in place when execution of the program is resumed, implementation is more complicated. Execution of the saved instruction could be emulated, but this is difficult to do, ensuring all side effects such as condition code setting and exception triggering are performed correctly, as well as following all addressing modes, such as PC relative. It is much easier simply to execute the breakpointed instruction in place, but to plant another breakpoint on a subsequent instruction in the same basic block, usually the immediate successor to the original breakpoint, so that the breakpoint handler can regain control in order to replant the original breakpoint and remove the secondary one. This obviously has some challenges if the successor of the breakpointed instruction cannot be statically predicted, for instance if the breakpointed instruction is a conditional jump, but a common solution is simply to ban breakpointing such instructions.
Identify the critical races that exist with this scheme if the program is executed by multiple threads, possibly multiple cores or multiple processors. Use pseudo-code to illustrate how you would resolve these issues.

Related Discussions:- Identify the critical races, computer science

Algorithms and flowcharts, 1. Write an algorithm and draw a flowchart to ac...

1. Write an algorithm and draw a flowchart to accept the names and gross salary of 5000 employees and to generate the net pay. If the gross salary is greater than N 50,000 declare

Information system and information technology, What is the difference betwe...

What is the difference between information technology and information systems? Describe some of the fuctions of information systems

Python Tuples , A tuple is one more series data type that is like to the li...

A tuple is one more series data type that is like to the list. A tuple consists of a number of values divided by commas. Not like lists, though, tuples are enclosed inside parenthe

Compare cisc with risc cpus, Question 1 Define the following terms        ...

Question 1 Define the following terms                           1) Pipelining 2) Super Pipelining 3) Dynamic Execution 4) Multiprocessing 5) Multimedia Extensions Question 2

Discuss the anatomy of xml document, Question 1 What is web browser? List ...

Question 1 What is web browser? List and explain the most common used web server Question 2 Discuss the anatomy of XML document Question 3 Discuss the various attr

Client - server architecture, Client/ Server Architecture:   As the ca...

Client/ Server Architecture:   As the capacity and power of personal computers improved, the need to share the processing demands between the host server and the client workst

Logic instructions , They are used to act upon logic operations on the oper...

They are used to act upon logic operations on the operators. AND OR, NEG NOT TEST XOR AND INSTRUCTION Function: It acts upon the conjunction of the operators bit by bit. Syntax: A

471, #que411stion..

#que411stion..

Operating systems, Operating Systems: The operating system is the soft...

Operating Systems: The operating system is the software that mediates between the applications programs and a level of instructions nearer to the machine's operations. In othe

Data communications, Data communication as a need developed in the 1960s wi...

Data communication as a need developed in the 1960s with the interconnection of peripheral devices to mainframe computers. Within the immediate vicinity of the mainframe computer t

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd