Identify the critical races, computer science, Basic Computer Science

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.
Posted Date: 2/5/2012 12:47:58 PM | Location : United States







Related Discussions:- Identify the critical races, computer science, Assignment Help, Ask Question on Identify the critical races, computer science, Get Answer, Expert's Help, Identify the critical races, computer science Discussions

Write discussion on Identify the critical races, computer science
Your posts are moderated
Related Questions
SYSTEMS SOFTWARE Systems Software generally is the software which control the computers and other peripherals. Ex: MS DOS, Windows 95, Unix, NetWare and Windows NT et

To satisfy client needs through proxy server and not through main server, as some other user have already accessed that file and its copied to the proxy server, so next time a user

QUESTION (a) Convert each of the following expressions to prefix and postfix. (i) (A+B)*(C+D) (ii) A-B/(C*D^E) (^ denotes exponentiation) (b) The following algorithm c

Uninformed Search Strategies: To be able to undertake a regular search, our entire agent ought to know is the starting state, the possible operators and how to check whether th

Problem 1. Convert the following number system 12.34 (8) to binary number system 23BC.0A (16) to decimal number system 456.012 (16) to Octal number system 123

In this assignment, you should create a class called ToDoMenu which has a main method that contains the code that implements a command-line menu for managing a collection of ToDoIt

Time Sharing Time sharing allows a large number of users at various remote terminals to simultaneously use a centrally located computer for problem solving. Each user operates

THE CENTRAL PROCESSING UNIT (CPU): The CPU is the heart of any computing system.  It executes the individual machine instructions, which make up a program. The CPU is formed fr


Necessary Nurses Records The software should generate all registers/reports in detail summary for various permutations and combinations of options. A powerful SQL (Structure