justify going beyond four.3.7a.With j < i, a process running in Diis prevented from accessing objects in Dj.Thus, if Djcontains information that is more privileged or is to be kept moresecure than information in Di, this restriction is appropriate. However, thissecurity policy can be circumvented in the following way. A process running inDjcould read data in Dj and then copy that data into Di. Subsequently, aprocess running in Dicould access the information.b.An approach to dealing with this problem, known as a trusted system, isdiscussed in Chapter 16.3.8a.A application may be processing data received from another process andstoring the results on disk. If there is data waiting to be taken from the otherprocess, the application may proceed to get that data and process it. If aprevious disk write has completed and there is processed data to write out, theapplication may proceed to write to disk. There may be a point where theprocess is waiting both for additional data from the input process and for diskavailability.b.There are several ways that could be handled. A special type of either/or queuecould be used. Or the process could be put in two separate queues. In eithercase, the operating system would have to handle the details of alerting theprocess to the occurrence of both events, one after the other.3.9This technique is based on the assumption that an interrupted process Awillcontinue to run after the response to an interrupt. But, in general, an interrupt maycause the basic monitor to preempt a process Ain favor of another process B. It isnow necessary to copy the execution state of process Afrom the location associatedwith the interrupt to the process description associated with A. The machine mightas well have stored them there in the first place. Source: [BRIN73].3.10Because there are circumstances under which a process may not be preempted (i.e.,it is executing in kernel mode), it is impossible for the operating system to respondrapidly to real-time requirements.

-18-
A
A
NSWERS
TO
NSWERS TO
Q
Q
UESTIONS
UESTIONS
4.1
This will differ from system to system, but in general, resources are owned by the
process and each thread has its own execution state. A few general comments about
each category in Table 3.5:
Identification:
the process must be identified but each
thread within the process must have its own ID.
Processor State Information:
these
are generally process-related.
Process control information:
scheduling and state
information would mostly be at the thread level; data structuring could appear at
both levels; interprocess communication and interthread communication may both
be supported; privileges may be at both levels; memory management would
generally be at the process level; and resource info would generally be at the
process level.
4.2
Less state information is involved.
4.3
Resource ownership and scheduling/execution.
4.4
Foreground/background work; asynchronous processing; speedup of execution by
parallel processing of data; modular program structure.
4.5
Address space, file resources, execution privileges are examples.

