For instance, printed output that interleaves lines
of output from different programs is not very useful! So the OS provided more than just device drivers; the OS
also provided locking mechanisms so that only one program at a time, for example, could send data to the printer.
???Interrupt systems??? were added to the I/O hardware so that slow I/O tasks could be started without requiring
all the jobs on the computer to wait. Once the I/O for a job was started, the system could schedule some other
computation until the I/O task completed and generated an ???interrupt,??? signaling readiness to continue with the
first job.
With more than one program in memory, it also became important that one user was not able to address,
even by accident, memory allocated to another program. Memory protection hardware, comprising ???base???
(starting address) and ???limit??? (maximum program size) registers along with address checking hardware, was
added to the machines, and the operating system managed the contents of the memory protection registers.
With this new dependence of user programs on services provided by the operating system came the requirement
that some instructions be reserved for use only by the operating system.
Pages:
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262