Can RISC OS be made to do preemptive multi-tasking?
Although it can do it in a limited form, fast and reliable support requires the whole system to be designed with this in mind. Consider something as simple as redrawing a window. On RISC OS: • The system asks Edit to redraw window number 5, for example. • Edit gets the size and location of the region to be redrawn (100×100 in the centre of the screen). • Edit asks the system to draw the contents in the middle of the screen. On a system which can switch between processes at any point in time, the user might open another window, or move Edit’s window, between Edit finding its location and doing the drawing. Then the drawing would appear in the wrong place, or over another window! On Linux: • The system asks Edit to redraw window number 5. • Edit gets the size and location of the region to be redrawn (100×100 in the centre of window 5). • Edit asks the system to draw the contents in the middle of window 5. Notice that if Edit’s window is moved or covered then the final drawing operation i