An application processes network data at a constant rate of 1 MB/s. The data is transmitted at
Question:
An application processes network data at a constant rate of 1 MB/s. The data is transmitted at a long-term average rate of 1 MB/s but occasionally bursts at up to 5 MB/s for up to 2 s at a time.
(a) Why is it necessary for the operating system to provide some degree of buffering on behalf of the application? [2 marks]
(b) A rather simplistic operating system can only provide 1 MB sized buffers that cannot be simultaneously read and written. What will be the effect on the application if the systems only supports single buffering? [2 marks]
(c) A more advanced operating system provides double-buffering using 512 kB buffers that also cannot be simultaneously read and written. What impact does this have on the application? [3 marks]
(d) A further upgrade to the operating system uses 512 kB buffers to provide a circular buffer. How many buffers must be used to prevent the application experiencing data loss? [3 marks]
(e) A clever systems engineer proposes re-implementing the buffer so that it can be simultaneously read and written. Explain why they might propose this, what might be the challenges in doing so, and propose a simpler approach to achieve the same end. [5 marks]
(f ) To switch between processes, the operating system must save the context of the currently executing process and restore the context of that being resumed. Explain how the relevant state is stored, and what it must contain. Explain why you would not include the IO buffers with that state. [5 marks]
Intermediate Financial Management
ISBN: 978-1285850030
12th edition
Authors: Eugene F. Brigham, Phillip R. Daves