13.07.2015 Views

An Operating Systems Vade Mecum

An Operating Systems Vade Mecum

An Operating Systems Vade Mecum

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Perspective 51which tracked thousands of processes through a simple network with only one queue andone server.Simulations, just like analytic models, must be validated to ensure that they areadequate descriptions of the situation that is being modeled. They are often run severaltimes in order to determine how much the particular pseudo-random numbers chosenaffect the results. Simulations tend to produce enormous amounts of data that must becarefully distilled before they are useful. Simulations often use extremely detailedmodels and therefore consume enormous amounts of computer time. For these reasons,simulations are usually appropriate only if analysis fails.If simulation doesn’t work, usually due to the complexity of the model, experimentationis the last resort. Experimentation often requires a significant investment in equipment,both to build the system to be tested and to instrument it to acquire the requiredstatistics. It can be far cheaper to simulate the SPN scheduling method, for example,than to implement it properly, debug it, impose it on a user community for a while, andmeasure the results. Likewise, it is cheaper to simulate the effect of installing a new diskthan to rent it, connect it, see how well it works, and then disconnect it after the managersdecide that the improvement is not cost-effective. However, experimentation is sure togive accurate results, since by definition it uses an accurate model.3.3 Scheduling levelsWe have been concentrating on short-term scheduling. Some of our short-term methods,however, contain aspects of medium-term scheduling. <strong>An</strong>y method that calculates prioritiesat a slower rate than it schedules processes (SRR is one example) is applying a formof medium-term scheduling. These priorities may influence short-term decisions withoutcausing processes to depart from the short-term scheduler’s view. Tuning the parametersof a short-term method is another form of medium-term scheduling. For example, wemay adjust the b/aratio in SRR in order to keep the size of the accepted group right, orwe may modify the quantum of RR as the load changes.Similarly, the realm of medium-term scheduling is not sharply demarcated. Differentreasons for waiting may lead to very different blocking times. Processes in thenew list under SRR do not stay there very long. Processes waiting for transput usuallywait less than a second. Processes waiting for main store generally wait between 1 and10 seconds. Processes waiting for other processes (as discussed in Chapter 9) or for seriallyreusable resources (as discussed in Chapter 4) may wait for minutes or hours.Long-term scheduling also blends into medium-term scheduling somewhat. Thedecision not to allow a process to start may be based on explicitly declared resourceneeds that are not currently available, in which case we might say that the process hasreally started (as far as the long-term scheduler is concerned) but is still waiting forresources (as far as the medium-term scheduler is concerned). The decision may bebased on the process class and the time of day; evening-class processes (as declared bytheir users) are not started during the afternoon.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!