Home »» Placement Papers »» All Papers »» Microsoft »» Placement Paper

Microsoft Interview Pattern (Page-10)

Interview :Microsoft Interview Pattern (Page - 10)


1. You, a designer want to measure disk traffic i.e. get a histogram showing the relative frequency of I/O/second for each disk block. The buffer pool has b buffers and uses LRU replacement policy. The disk block size and buffer pool block sizes are the same. You are given a routine int lru_block_in_position (int i) which returns the block_id of the block in the i-th position in the list of blocks managed by LRU. Assume position 0 is the hottest. You can repeatedly call this routine. How would you get the histogram you desire?

Hints and Answers

1. Simply do histogram [lru_block_in_position (b-1)] ++ at frequent intervals... The sampling frequency should be close to the disk I/O rate. It can be adjusted by remembering the last block seen in position b. If same, decrease frequency; if different, increase, with exponential decay etc. And of course, take care of overflows in the histogram. 


1. Implement a multiple-reader-single-writer lock given a compare-and-swap instruction. Readers cannot overtake waiting writers.

Computer Architecture

1. Explain what is DMA?

2. What is pipelining?

3. What are superscalar machines and vliw machines?

4. What is cache?

5. What is cache coherency and how is it eliminated?

6. What is write back and write through caches?

7. What are different pipelining hazards and how are they eliminated.

8. What are different stages of a pipe?

9. Explain more about branch prediction in controlling the control hazards

10. Give examples of data hazards with pseudo codes.

11. How do you calculate the number of sets given its way and size in a cache?

12. How is a block found in a cache?

13. Scoreboard analysis.

14. What is miss penalty and give your own ideas to eliminate it.

15. How do you improve the cache performance.

16. Different addressing modes.

17. Computer arithmetic with two's complements.

18. About hardware and software interrupts.

19. What is bus contention and how do you eliminate it.

20. What is aliasing?

21) What is the difference between a latch and a flip flop?

22) What is the race around condition? How can it be overcome?

23) What is the purpose of cache? How is it used?

24) What are the types of memory management?


0 Answers