1) What are the differences between multiprogramming, multiprocessing, and multithreading?

2) a) Why should assembly language be avoided for general application development?
Under what circumstances would you argue in favor of using assembly language code for developing an application program?

b) What are the advantages of using a compiled language over an interpreted one?

3) a) A RISC processor has 152 total registers, with 12 designated as global registers.
The 10 register windows each have 6 input registers and 6 output registers. How many local registers are in each register window set?

b) Indicate whether each of the following applies to CISC or RISC by placing either a C (for CISC) or an R (for RISC) in the blank.

1. Instructions are interpreted by the microprogram.
2. Fixed length, easily decoded instruction format.
3. Highly specialized, infrequently used instructions.
4. Use of overlapping register windows.
5. Relatively few addressing modes.

4) Consider a CPU that implements two parallel fetch-execute pipelines for superscalar processing. Show the performance improvement over scalar pipeline processing and no-pipeline processing, assuming an instruction cycle similar to figure 4.1 in the Section I B of “Advanced Systems Concepts”, i.e.:
• a one clock cycle fetch
• a two clock cycle decode
• a two clock cycle execute
and a 40 instruction sequence:
Show your work.
- no pipelining would require clock cycles:
- scalar pipeline would require clock cycles
- superscalar pipeline with two parallel units would require clock cycles.

5 a) What is the essential characteristic of the superscalar approach to processor design?

b) What is the difference between the superscalar and superpipelined approaches?

Solution PreviewSolution Preview

These solutions may offer step-by-step problem-solving explanations or good writing examples that include modern styles of formatting and construction of bibliographies out of text citations and references. Students may use these solutions for personal skill-building and practice. Unethical use is strictly forbidden.

1) Multiprogramming is defined in the book as the concurrent execution of multiple processes within a single processor.

Multithreading refers the approach which divides a process into more control threads in order to increase the concurrency.

Multiprocessing assumes the global system has multiple processors that cooperate with each other by working in parallel for achieving the goal....

By purchasing this solution you'll be able to access the following files:

for this solution

or FREE if you
register a new account!

PayPal, G Pay, ApplePay, Amazon Pay, and all major credit cards accepted.

Find A Tutor

View available Systems Architecture Tutors

Get College Homework Help.

Are you sure you don't want to upload any files?

Fast tutor response requires as much info as possible.

Upload a file
Continue without uploading

We couldn't find that subject.
Please select the best match from the list below.

We'll send you an email right away. If it's not in your inbox, check your spam folder.

  • 1
  • 2
  • 3
Live Chats