Tham khảo tài liệu 'formal models of operating system kernels phần 5', công nghệ thông tin, hệ điều hành phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | Storage Management 185 A lck. Unlock A putDriverToSleep Proposition 94. The operation alarmsToCall implies that if alarms 0 Vp APREF I p G domalarms alarms p now. Proof. By the predicate alarms alarms pairs where pairs p APREF I p G dom alarms A alarms p now p alarms p Therefore on each call to alarmsToCall it is true that V p APREF I p G domalarms alarms p now since this is just alarms . Proposition 95. All swapped-out processes age by one tick when the clock driver is executed. Proof. The critical schema is UpdateAllStorageTimes. This is a component of updateSwapperTimes. The schema UpdateAllStorageTimes contains the identity swappedout-time swappedout-time p swappedout-time p 1 Proposition 96. All resident processes age by one tick when the clock driver is executed. Proof. Similar to the above but replacing swappedout-time by residencytime . Proposition 97. The current process time quantum is reduced by one unit if the current process is at the user level each time the clock driver is executed. Proof. The body of the RunProcess operation in the clock driver contains as a conjunct a reference to the schema . The predicate of this last schema contains the identity currentquant currentquant 1. Proposition 98. If in alarmsToCall pairs 0 the ready queue grows by pairs. Proof. By induction using Proposition 49. 186 4 A Swapping Kernel Clock ISR Fig. . Interaction between clock and swapper processes. Process Swapping In this kernel user processes are swapped in and out of main store. This mechanism is introduced so that there can be more processes in the system than main store could support. It is a simple storage-management principle that pre-dates virtual store and requires less hardware support. In our scheme processes are swapped after they have been resident in main store for a given amount of time. When a process is swapped its entire image is copied to disk thus freeing a region of main store for another user process to be