Anomalies with Variable Partition Paging Algorithms
|
|
- Meagan McCormick
- 6 years ago
- Views:
Transcription
1 1. Introduction Operating Systems R.S. Gaines Editor Anomalies with Variable Partition Paging Algorithms M. A. Franklin, Washington University G. Scott Graham, University of Toronto, and R. K. Gupta, Burroughs Corporation Five types of anomalous behaviour which may occur in paged virtual memory operating systems are def'med. One type of anomaly, for example, concerns the fact that, with certain reference strings and paging algorithms, an increase in mean memory allocation may result in an increase in fault rate. Two paging algorithms, the page fault frequency and working set algorithms, are examined in terms of their anomaly potential, and reference string examples of various anomalies are presented. Two paging algorithm properties, the inclusion property and the generalized inclusion property, are discussed and the anomaly implications of these properties presented. Key Words and Phrases: anomaly, memory management, program behavior, stack algorithms, virtual memory, working set, page fault frequency, paging algorithms CR Categories: 4.32, 4.35, 4.6, 8.1 General permission to make fair use in teaching or research of all or part of this material is granted to individual readers and to nonprofit libraries acting for them provided that ACM's copyright notice is given and that reference is made to the publication, to its date of issue, and to the fact that reprinting privileges were granted by permission of the Association for Computing Machinery. To otherwise reprint a figure, table, other substantial excerpt, or the entire work requires specific permission as does republication, or systematic or multiple reproduction. Author's addresses: M. A. Franklin, Department of Electrical Engineering, Washington University, St. Louis, MO 63130; G. S Graham, Computer Systems Research Group, University of Toronto, Toronto, Canada, M5S 1A4; R. K. Gupta, Burroughs Corp., FSSG GVL 3, Paoli, PA ACM /78/ $ In paged virtual memory computer systems [5], programs may be executed with only a part of their pages resident in main memory and with the remainder of them residing on auxiliary storage. Pages are moved between these two levels of storage during program execution. Under "demand paging" schemes, a page is transferred from auxiliary store to main memory only if a "page fault" occurs for that page. Page faults, and the associated movement of pages between main and auxiliary storage, take a period of time referred to as the page transfer time. This time can be considered to be an overhead cost which degrades system performance. One way to improve performance is based on the commonly held notion that a larger main memory allocation, and hence more resident pages, will result in fewer page faults. This has been shown, however, not to be always true. For example, certain experimental results obtained from the M44/44X paging system [1] are contrary to this notion. Belady et al. [1] have presented an analysis of such paging behavior for selected reference strings operating under the first-in first-out (FIFO) paging algorithm [2]. For certain cases an increase in allocated memory size actually increased the fault rate, thus exhibiting what is referred to as anomalous behavior. These experimental results and examples dealt with a fixed memory size allocation and the FIFO paging algorithm. In 1970 Mattson et al. [12] introduced a class of paging algorithms called "stack algorithms." These were reported to be anomaly free. Several wellknown paging algorithms, such as the least recently used, least frequently used, and optimal [12] replacement algorithms, have been shown to be stack algorithms and are anomaly free. Since then, several studies [3, 4, 6] have shown that in terms of overall systems performance, variable partition paging algorithms such as working set (WS) [7] and page fault frequency (PFF) [3] are superior to fixed partition paging algorithms. Recently, anomalous behavior has been observed for certain reference strings under these two paging algorithms. Anomalies in the behavior of PFF were discovered independently by the authors 1 in much the same way as the FIFO anomaly was discovered, by experimentation. The experiments involved [10, 11] are not of direct concern here; however, they relate to simulation of a virtual memory operating system using the PFF algorithm. Certain program reference strings exhibited the anomalous behavior which is reported here. Further analysis demonstrated that certain anomalous behavior is also possible for the WS algorithm. 1 Franklin and Gupta discovered the anomaly during the summer of 1974 and Graham discovered it during the summer of 1975.
2 2. The Anomaly A framework for considering anomalous behavior is presented in terms of certain properties discussed below. Violation of a property implies a particular kind of anomalous behavior. Our concern is with variable partition paging algorithms. Apart from locality prediction and ease of implementation, the following properties are desirable for a paging algorithm. PI: The page fault rate should be a nonincreasing function of mean memory allocation. Intuitively, an increase in memory allocation should not increase the execution time or number of page faults. That is, if ~/1 and /(/2 are two mean memory allocations and F1 and F2 are the associated number of faults for a given reference string, then/(/~ -</f/z ~ F1 ---F~. In this situation two types of anomalies can be distinguished on the basis of the following two measures of memory allocation: (a) Real time memory allocation-the mean amount of memory allocated across real time (i.e. virtual time plus page transfer time). (b) Virtual time memory allocation-the mean amount of memory allocated across the virtual time (i.e. real time minus page transfer time). To quantify this further, let M(t, p) denote the number of pages resident just following the reference at virtual time t, given that the paging algorithm is run with its parameter fixed at p. Let F(p) be the number of faults obtained with a given reference string of length K. The average virtual time memory allocation is thus given by K V(p) = (1//0 ~] M(t, p). t=l The average real time memory allocation is given by R(p) = (K. V(p) + L. S(p))/(K + F(p). L). where L is mean page transfer time and S(p) is the total of memory allocations over the page fault times. S(p) is computed by summing up the memory allocation sizes associated with each of the page faults. The two types of anomalies corresponding to real and virtual time memory allocations can now be defined. Assume that we are given a reference string and a page transfer time L. A real memory-fault rate anomaly exists if there are values of paging algorithm parameters p and q such that R(p) < R(q) and F(p) < F(q). Similarly a virtual memory-fault rate anomaly exists if there are values of paging algorithm parameters p and q such that V(p) < V(q) and F(p) < F(q). P2: Page fault rate should be a nonincreasing function of the paging algorithm parameter. Variable partition paging algorithms can effectively control system fault rate by adjusting the parameter only if the page fault rate function is well behaved. A parameter-fault rate anomaly exists if, for some p and q, p >q and F(p) > F(q). P3: Mean memory allocation should be a nondecreasing function of the paging algorithm parameter. Variable partition paging algorithms can effectively control memory allocation by adjusting the parameter only if the mean memory allocation function is well behaved. A parameter-real memory anomaly exists if, for somep and q, p >q and R(p) < R(q). Similarly a parameter-virtual memory anomaly exists if p >q and V(p) < V(q). 3. Anomalies with the PFF Algorithm: The PFF paging algorithm can be described in terms of an allocation and a replacement process [3]. The algorithm allocates a page each time there is a page fault. The algorithm replaces or removes one or more pages from memory at page fault time if the interfault interval exceeds a critical value T. Thus if tk denotes the virtual time at the kth page fault, the pages are removed only if tk > tk-1 + T. The pages removed at t~ are those pages not referenced during tk-1 <-- t <-- tk. It can be demonstrated that anomalous behavior is possible for the PFF paging algorithm, and all properties discussed above may be violated. This can be seen by examining the reference string example given in Figure 1. The reference string has eight different pages and is cyclic. The substring from virtual time period 3 to 37 repeats cyclically, as do the memory contents. The memory contents after each reference are shown for two cases which have PFF parameter T = 4 and 6, respectively. The circle marks indicate page faults, while the double circle marks indicate page faults with replacement of pages. For the reference period 1 to 37 the number of faults, and virtual and real time memory allocations, are shown in Table I. Note the following inequalities for the mean real time memory allocation: L 1 = < < lll L and L 1 = > L L These inequalities hold for all values of L. Thus, for T values 4 and 6, all three performance measures listed in the table have increased. This reference string thus 233
3 Fig. 1. Reference string for anomalous PFF behavior. Virtual time I !) Reference string Memorycon- 1. (~)@Q tents for T = Memoryeon-1. OQ(~ Q tents for T = @ Q Table 1. Performance Measures for the Reference String of Figure 1. PFF parameter Performance Measures T = 4 T = 6 Number of faults F(T) l Mean virtual time mem- V(T) ory allocation Mean real time memory R(T) L L allocation 37 +lll L exhibits the real memory-fault rate anomaly, the virtual memory-fault rate anomaly, and the parameter-fault rate anomaly. Another reference string is given in Figure 2. It is 36 references long, and memory contents for T = 5 and 7 are shown. Table II, shows the performance measures for this reference string. It can be shown that this string exhibits the real memory-fault rate, virtual memory-fault rate, parameter-real memory, and parameter-virtual memory anomalies. Anomalous behavior under the PFF paging algorithm occurs when an increase in T results in inactive pages being kept in memory for a longer time than necessary and then paged out just before they are referenced again. For instance, in Figure 1, for T = 6, pages 5, 6, and 2 are kept in memory for virtual times though they are not referenced. They are then paged out at time 18 just before they are again referenced. Allocation size as well as fault rate thus may both increase with increasing T. A different kind of reference behavior is shown in Figure 2. In this case interfault intervals shorter than the threshold window T do not allow removal of pages and thus keep V(T) and R(T) high. An increase in T allows page removals at time 16 but also removes page faults at time 12. This kind of reference string also produces anomalous behavior Anomalies with the WS Algorithm The working set paging algorithm keeps in memory pages referenced during the previous T references, where T is a constant value [7]. This set of pages is called the working set and, at time t, is denoted by W(t, T). The mean working set size is the mean number of pages in the working set of pages and is denoted by Given a WS paging algorithm with T, W(t, T), and w(z) as defined above, for T1 < T2 [8], W(t, T1) C_ W(t, T2) and W(T~) <-- W(Z2). Thus the set of pages for window size TI is always contained in the set of pages for window size T2, and therefore the fault rate is a nonincreasing function of T (i.e. it satisfies P2). An increase in the working set size is possible only if T is increased, and thus the fault rate will not be increased by increasing mean virtual time memory allocation. WS will therefore not exhibit the virtual memory-fault rate, the parameter-fault rate, or the parameter-virtual memory, anomalies. It does, however, show the real memory-fault rate and parameter-real memory anomalies for some reference strings. One such reference string is given in Figure 3, and its related performance measures are given in Table III. Note that the increase in T has decreased the number of faults and increased the mean virtual memory allocation (i.e. working set size). The real time memory allocation for T = 4 and z = 5 has changed from ( L)/( L) to ( L)/(13 + 4L), and therefore for large L the real time allocation has decreased from 3.7 to 3.5. This decrease in allocation size along with the decrease in number of faults constitutes a real memory-fault rate anomaly and a parameter-real memory anomaly. Note that the average real time memory allocation is given by the following equation: R(T) = (K. V(T) + L. S(T))/(K + L" F(T)).
4 Fig. 2. Second reference string for anomalous PFF behavior. Virtual time Reference string Memory contents (T) (~) O O~) fort= Memory (~) O 4 for T = ' ' 4 " 1 " ' 3 Fig. 3. Reference string for anomalous WS behavior. Virtual time Reference string '4, Memory @ (~) 1 1 for T = Memory contents 1 (~) (~) (~) (~) for r = Table II. Performance Measures for the Reference String of Figure 2. PFF parameter Table III. Performance Measures for the Reference String of Figure 3. WS parameter Performance measures T = 5 T = 7 Performance measures ~- = 4 z = 5 Number of faults F(T) 5 4 Number of faults F(~') 10 4 Virtual time memory al- V(T) Virtual time memory al- V(z) 43/13 53/13 location location Real time memory allo- R(T) L L Real time memory allo- R(T) L L cation L L cation L L Now S(z)/F(T) is the average memory allocation at fault instances Increasing the working set parameter from T to T* increases V(T) to V(z*) and decreases the number of faults from F(T) to F(T*). If the average memory allocation at those faults which are removed by the increase in ~" is larger than S(T)/F(T), the following condition may exist: S(T*)/F(T*) < S(T)/F(T). For large L, this condition will produce the parameterreal memory anomaly In fact, for such cases there exists a crossover point L = Lc such that L > Lc implies R(T) > R(T*). The reference string example of Figure 3 exhibits this pattern In this case the average memory allocation at removed faults is 4, which is larger than 37/10 S(4)/F(4) = 3.7 and S(5)/F(5) = 3.5. For this case the crossover value of L is Note that the crossover value may be different for some other reference string and pair of T'S Inclusion Property and the Question of Anomalies The stack algorithms introduced by Mattson et al.. [12] follow the inclusion property (IP): At any time t, the set of pages in an allocated memory of size c is also contained in memory of size c* where c* > c. Note that memory allocation may be controlled by the paging algorithm. For a fixed partition stack algorithm, the memory size is that fixed maximum number of pages which a program may utilize during execution For such algorithms none of the anomalies mentioned earlier exists A similar behavioral discipline which applies to variable partition paging algorithms and which may ensure anomaly-free behavior is needed The generalized inclusion property (GIP) given next is a step in this direction
5 At any time t, the set of pages in memory for algorithm parameter p is also contained in memory for algorithm parameter p* where p* > p. Therefore ~t, Pl < pz --* B(t, Pl) C_ B(t, P2) where B(t, p) is the set of resident pages at time t with paging parameter p. Some implications of the GIP are: (1) Paging algorithms which satisfy the GIP also satisfy the IP, but not vice-versa. (2) [ B(t, Pl)[ -< [ B(t, P2)[- This ensures that there is no parameter-virtual memory anomaly. (3) A(t, Pl) --- h(t, P2) where A = 0 if there is no fault at time t, and A = 1 if there is a fault at time t. Since the number of faults is given by ~t A(t, p) this relation guarantees that there is no parameter-fault rate anomaly. (4) (2) and (3) above imply that virtual memoryfault rate anomalies are not possible. (5) GIP cannot guarantee the absence of real memory-fault rate and parameter-real memory anomalies. Note that WS follows the GIP and thus does not exhibit the virtual memory-fault rate, parameter-virtual memory, and parameter-fault rate anomalies. It does, however, exhibit the real memory anomalies. PFF, on the other hand, does not obey the GIP, as shown by Figure 1 (t = 18) and Figure 2 (t = 16), and indeed it exhibits all the anomalies mentioned earlier. For fixed partition paging algorithms, the memory size can be regarded as the algorithm parameter. Mean virtual memory and real memory allocations are identical. From these two observations, the five anomalies defined above reduce to a single anomaly relating memory allocation and fault rate. This is the anomaly Belady et al. observed for the FIFO algorithm. 6. Comments and Conclusions Several observations can be made about these anomalies. First, it is costly to derive the performance of paging algorithms that violate the GIP [10, 12]. In contrast, the performance of paging algorithms satisfying GIP can be computed simply [9, 13]. Second, anomalous behavior makes systems more difficult to control. System designers are often interested in optimizing performance by controlling the load [9]. Load control is attempted by varying the paging algorithm parameter. A load control based on an anomalous performance measure may be unstable because a change of given sign in the parameter need not produce changes of corresponding sign in the controlled variable. That is, anomalous algorithms may have nonmonotonic performance properties. There is little experience telling how serious this difficulty is in a practical multiprogramming system. 236 Third, there is the operational question, whether to use real or virtual time measures as control functions. Paging algorithms satisfying the GIP, such as WS, are free of parameter-virtual memory, virtual memory-fault rate, and parameter-fault rate anomalies; thus stable load control using virtual time measures is possible. Controls based on real time measures, however, may not be stable owing to possible real memory anomalies. We have presented here a structure, together with definitions and examples illustrating anomalies in the behavior of common paging algorithms. Analysts and designers need to understand this behavior to achieve better control mechanisms. Acknowledgment. The authors are thankful to P. J. Denning for his valuable suggestions. Received April 1976; revised February 1977 References 1. Belady, L.A., Nelson, R.A., and Shedler, G.S. An anomaly in space time characteristics of certain programs running in a paging machine. Comm. ACM 12, 6 (June 1969), Belady, L.A. A study of replacement algorithms for a virtual computer. IBM Syst. J. 5, 2 (1966), Chu, W.W., and Opderbeck, H. The page fault frequency replacement algorithm. AFIPS 1972 FJCC, Vol. 41, AFIPS Press, Montvale, N.J., pp Coffman, E.G., and Ryan, T.A. A study of storage partitioning using a mathematical model of locality. Comm. ACM 15, 3 (March 1972), Denning, P.J. Virtual memory. Computing Surveys 2, 3 (Sept. 1970), Denning, P.J., and Graham, G.S. Multiprogrammed memory management. Proc. IEEE 63, 6 (June 1975), Denning, P.J. The working set model for program behavior. Comm. ACM 11, 5 (May 1968), Denning, P.J., and Schwartz, S.C. Properties of the working set model. Comm. ACM 15, 3 (March 1972), Denning, P.J., and Slutz, D.R. Generalized working set and optimal measures for segment reference strings. Tech. Rep. CSD-TR-178, Comptr. Sci. Dept., Purdue U., Lafayette, Ind., March Graham, G.S. A study of program and memory policy behavior, Ph.D. Th., Comptr. Sci. Dept., Purdue U., Lafayette, Ind., Dec Gupta, R.K. Program reference behaviour and dynamic memory management. D.Sc. Diss., Dept. EE, Washington U., St. Louis, Mo., Dec Mattson, R.L., Gecsei, J., Slutz, D.R., and Traiger, I.L., Evaluation techniques for storage hierarchies. IBM Syst. J. 9, 2 (1970), Slutz, D.R., and Traiger, I.L. A note on the calculation of average working set size. Comm. ACM 17, 10 (Oct. 1974)
Generalized Working Sets for Segment Reference Strings
Introduction Operating Systems R. Stockton Gaines Editor Generalized Working Sets for Segment Reference Strings Peter J. Dennin$ Purdue-University Donald R. Slutz IBM, San Jose The working-set concept
More informationCSE 120 Principles of Operating Systems
CSE 120 Principles of Operating Systems Fall 2016 Lecture 11: Page Replacement Geoffrey M. Voelker Administrivia Lab time This week: Thu 4pm, Sat 2pm Next week: Tue, Wed At Washington University in St.
More informationFrequently asked questions from the previous class survey
CS : OPERATING SYSTEMS [VIRTUAL MEMORY] Shrideep Pallickara Computer Science Colorado State University L. Frequently asked questions from the previous class survey Contents of page table entries in multilevel
More informationAll Paging Schemes Depend on Locality. VM Page Replacement. Paging. Demand Paging
3/14/2001 1 All Paging Schemes Depend on Locality VM Page Replacement Emin Gun Sirer Processes tend to reference pages in localized patterns Temporal locality» locations referenced recently likely to be
More informationCSE 153 Design of Operating Systems
CSE 153 Design of Operating Systems Winter 18 Lecture 18/19: Page Replacement Memory Management Memory management systems Physical and virtual addressing; address translation Techniques: Partitioning,
More informationCS 153 Design of Operating Systems Winter 2016
CS 153 Design of Operating Systems Winter 2016 Lecture 18: Page Replacement Terminology in Paging A virtual page corresponds to physical page/frame Segment should not be used anywhere Page out = Page eviction
More informationOn modeling program behavior
On modeling program behavior by PETER J. DENNING Princeton University Princeton, New Jersey INTRODUCTION This is a paper about the history of the working set model for program behavior. It traces briefly
More informationBasic Page Replacement
Basic Page Replacement 1. Find the location of the desired page on disk 2. Find a free frame: - If there is a free frame, use it - If there is no free frame, use a page replacement algorithm to select
More informationVirtual Memory III. Jo, Heeseung
Virtual Memory III Jo, Heeseung Today's Topics What if the physical memory becomes full? Page replacement algorithms How to manage memory among competing processes? Advanced virtual memory techniques Shared
More informationLecture 12: Demand Paging
Lecture 1: Demand Paging CSE 10: Principles of Operating Systems Alex C. Snoeren HW 3 Due 11/9 Complete Address Translation We started this topic with the high-level problem of translating virtual addresses
More informationPAGE REPLACEMENT. Operating Systems 2015 Spring by Euiseong Seo
PAGE REPLACEMENT Operating Systems 2015 Spring by Euiseong Seo Today s Topics What if the physical memory becomes full? Page replacement algorithms How to manage memory among competing processes? Advanced
More informationRemoving Belady s Anomaly from Caches with Prefetch Data
Removing Belady s Anomaly from Caches with Prefetch Data Elizabeth Varki University of New Hampshire varki@cs.unh.edu Abstract Belady s anomaly occurs when a small cache gets more hits than a larger cache,
More informationPreview. Review. Modeling Page Replacement Algorithm. Modeling Page Replacement Algorithm. Modeling Page Replacement Algorithm (Stack Algorithm)
/7/8 Review review Virtual Memory aging age tables Multiple level page tables age Replacement Algorithms Optimal Algorithm First In First Out (FIFO) Not Recently Used Algorithm (NRU) econd Chance Algorithm
More informationBlock diagram overview of PASM.
ANALYSIS OF THE PASM CONTROL SYSTEM MEMORY HIERARCHY David Lee Tuomenoksa Howard Jay Siegel Purdue University School of Electrical Engineering West Lafayette, IN 47907 Abstract - Many proposed large-scale
More informationA model for the evaluation of storage hierarchies
~ The The design of the storage component is essential to the achieving of a good overall cost-performance balance in a computing system. A method is presented for quickly assessing many of the technological
More informationSMD149 - Operating Systems - VM Management
SMD149 - Operating Systems - VM Management Roland Parviainen November 17, 2005 1 / 35 Outline Overview Virtual memory management Fetch, placement and replacement strategies Placement strategies Paging,
More informationCopyright 1978, by the author(s). All rights reserved.
Copyright 1978, by the author(s). All rights reserved. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are
More informationOperating Systems. Operating Systems Sina Meraji U of T
Operating Systems Operating Systems Sina Meraji U of T Recap Last time we looked at memory management techniques Fixed partitioning Dynamic partitioning Paging Example Address Translation Suppose addresses
More informationLocality of Reference
Locality of Reference 1 In view of the previous discussion of secondary storage, it makes sense to design programs so that data is read from and written to disk in relatively large chunks but there is
More informationCS370: Operating Systems [Spring 2017] Dept. Of Computer Science, Colorado State University
Frequently asked questions from the previous class survey CS : OPERATNG SYSTEMS [VRTUAL MEMORY] Shrideep Pallickara Computer Science Colorado State University Multi-level paging: How many levels deep?
More informationEEE 435 Principles of Operating Systems
EEE 435 Principles of Operating Systems Modeling Page Replacement Algorithms (Modern Operating Systems 4.5) Quick Review How is WSClock different from Clock? What is the optimal algorithm Is it implementable?
More informationMEMORY MANAGEMENT. Term Paper. Operating Systems CS-384
MEMORY MANAGEMENT Term Paper Operating Systems CS-384 Submitted to: Dr. Taylor Submitted by: Deepak Agrawal Submitted on: February 2, 2003 1 Table of contents (Index) Introduction 3 Contiguous memory allocation.3
More informationVirtual Memory - Overview. Programmers View. Virtual Physical. Virtual Physical. Program has its own virtual memory space.
Virtual Memory - Overview Programmers View Process runs in virtual (logical) space may be larger than physical. Paging can implement virtual. Which pages to have in? How much to allow each process? Program
More informatione-pg Pathshala Subject: Computer Science Paper: Operating Systems Module 29: Allocation of Frames, Thrashing Module No: CS/OS/29 Quadrant 1 e-text
29.1 Introduction e-pg Pathshala Subject: Computer Science Paper: Operating Systems Module 29: Allocation of Frames, Thrashing Module No: CS/OS/29 Quadrant 1 e-text In an earlier module, we learnt what
More informationOutline. 1 Paging. 2 Eviction policies. 3 Thrashing 1 / 28
Outline 1 Paging 2 Eviction policies 3 Thrashing 1 / 28 Paging Use disk to simulate larger virtual than physical mem 2 / 28 Working set model # of accesses virtual address Disk much, much slower than memory
More informationON NEW STRATEGY FOR PRIORITISING THE SELECTED FLOW IN QUEUING SYSTEM
ON NEW STRATEGY FOR PRIORITISING THE SELECTED FLOW IN QUEUING SYSTEM Wojciech Burakowski, Halina Tarasiuk,RyszardSyski Warsaw University of Technology, Poland Institute of Telecommunications 00-665-Warsaw,
More informationDesign and evaluation of a reference string sampling method
Retrospective Theses and Dissertations 1979 Design and evaluation of a reference string sampling method W. James Wittneben Iowa State University Follow this and additional works at: http://lib.dr.iastate.edu/rtd
More informationImplementation Synthesis of Embedded Software under Operating Systems Supporting the Hybrid Scheduling Model
Implementation Synthesis of Embedded Software under Operating Systems Supporting the Hybrid Scheduling Model Zhigang Gao 1, Zhaohui Wu 1, and Hong Li 1 1 College of Computer Science, Zhejiang University
More informationPaging algorithms. CS 241 February 10, Copyright : University of Illinois CS 241 Staff 1
Paging algorithms CS 241 February 10, 2012 Copyright : University of Illinois CS 241 Staff 1 Announcements MP2 due Tuesday Fabulous Prizes Wednesday! 2 Paging On heavily-loaded systems, memory can fill
More informationOn Checkpoint Latency. Nitin H. Vaidya. In the past, a large number of researchers have analyzed. the checkpointing and rollback recovery scheme
On Checkpoint Latency Nitin H. Vaidya Department of Computer Science Texas A&M University College Station, TX 77843-3112 E-mail: vaidya@cs.tamu.edu Web: http://www.cs.tamu.edu/faculty/vaidya/ Abstract
More informationDesign Issues 1 / 36. Local versus Global Allocation. Choosing
Design Issues 1 / 36 Local versus Global Allocation When process A has a page fault, where does the new page frame come from? More precisely, is one of A s pages reclaimed, or can a page frame be taken
More informationTHE TRANSITIVE REDUCTION OF A DIRECTED GRAPH*
SIAM J. COMPUT. Vol. 1, No. 2, June 1972 THE TRANSITIVE REDUCTION OF A DIRECTED GRAPH* A. V. AHO, M. R. GAREY" AND J. D. ULLMAN Abstract. We consider economical representations for the path information
More informationREDUCTION IN RUN TIME USING TRAP ANALYSIS
REDUCTION IN RUN TIME USING TRAP ANALYSIS 1 Prof. K.V.N.Sunitha 2 Dr V. Vijay Kumar 1 Professor & Head, CSE Dept, G.Narayanamma Inst.of Tech. & Science, Shaikpet, Hyderabad, India. 2 Dr V. Vijay Kumar
More informationCS 5523 Operating Systems: Memory Management (SGG-8)
CS 5523 Operating Systems: Memory Management (SGG-8) Instructor: Dr Tongping Liu Thank Dr Dakai Zhu, Dr Palden Lama, and Dr Tim Richards (UMASS) for providing their slides Outline Simple memory management:
More informationGeneralized Working Sets for Segment Reference Strings
Purdue University Purdue e-pubs Department of Computer Science Technical Reports Department of Computer Science 1976 Generalized Working Sets for Segment Reference Strings Peter J. Denning Donald R. Slutz
More informationtroduction to Algebra Section 8.1
Chapter Eight Graphing and Introduction to Statistics Section 8.1 Reading Pictographs, Bar Graphs, Histograms, and Line Graphs Pictographs A pictograph is a graph in which pictures or symbols are used.
More informationECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective. Part I: Operating system overview: Memory Management
ECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective Part I: Operating system overview: Memory Management 1 Hardware background The role of primary memory Program
More informationPage replacement algorithms OS
Page replacement algorithms OS 2007-08 1 When a page fault occurs OS has to choose a page to evict from memory If the page has been modified, the OS has to schedule a disk write of the page The page just
More informationMEMORY SENSITIVE CACHING IN JAVA
MEMORY SENSITIVE CACHING IN JAVA Iliyan Nenov, Panayot Dobrikov Abstract: This paper describes the architecture of memory sensitive Java cache, which benefits from both the on demand soft reference objects
More informationPERSONAL communications service (PCS) provides
646 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 5, NO. 5, OCTOBER 1997 Dynamic Hierarchical Database Architecture for Location Management in PCS Networks Joseph S. M. Ho, Member, IEEE, and Ian F. Akyildiz,
More informationOperating Systems Virtual Memory. Lecture 11 Michael O Boyle
Operating Systems Virtual Memory Lecture 11 Michael O Boyle 1 Paged virtual memory Allows a larger logical address space than physical memory All pages of address space do not need to be in memory the
More informationLecture 14 Page Replacement Policies
CS 423 Operating Systems Design Lecture 14 Page Replacement Policies Klara Nahrstedt Fall 2011 Based on slides by YY Zhou and Andrew S. Tanenbaum Overview Administrative Issues Page Replacement Policies
More informationCS 4410 Operating Systems. Page Replacement (2) Summer 2016 Cornell University
CS 4410 Operating Systems Page Replacement (2) Summer 2016 Cornell University Today Algorithm that approximates the OPT replacement algorithm. 2 Least Recently Used (LRU) Page Replacement A recently used
More information!! What is virtual memory and when is it useful? !! What is demand paging? !! When should pages in memory be replaced?
Chapter 10: Virtual Memory Questions? CSCI [4 6] 730 Operating Systems Virtual Memory!! What is virtual memory and when is it useful?!! What is demand paging?!! When should pages in memory be replaced?!!
More informationa process may be swapped in and out of main memory such that it occupies different regions
Virtual Memory Characteristics of Paging and Segmentation A process may be broken up into pieces (pages or segments) that do not need to be located contiguously in main memory Memory references are dynamically
More informationOne of the most important areas where quantifier logic is used is formal specification of computer programs.
Section 5.2 Formal specification of computer programs One of the most important areas where quantifier logic is used is formal specification of computer programs. Specification takes place on several levels
More informationPaging Policies, Load control, Page Fault Handling, Case studies January WT 2008/09
19 Virtual Memory (2) Paging Policies, Load control, Page Fault Handling, Case studies January 21 2009 WT 2008/09 2009 Universität Karlsruhe (TH), System Architecture Group 1 Introduction Roadmap of Today
More informationB.2 Measures of Central Tendency and Dispersion
Appendix B. Measures of Central Tendency and Dispersion B B. Measures of Central Tendency and Dispersion What you should learn Find and interpret the mean, median, and mode of a set of data. Determine
More informationChapters 7-8. Memory Management. Chapter 7 - Physical Memory. 7.1 Preparing a Program for Execution
Chapters 7-8 Memory Management Real memory Logical storage Address spaces Virtual memory 1 Chapter 7 - Physical Memory 71 Preparing a Program for Execution Program Transformations Logical-to-Physical Address
More informationITERATIVE MULTI-LEVEL MODELLING - A METHODOLOGY FOR COMPUTER SYSTEM DESIGN. F. W. Zurcher B. Randell
ITERATIVE MULTI-LEVEL MODELLING - A METHODOLOGY FOR COMPUTER SYSTEM DESIGN F. W. Zurcher B. Randell Thomas J. Watson Research Center Yorktown Heights, New York Abstract: The paper presents a method of
More informationPage Replacement. (and other virtual memory policies) Kevin Webb Swarthmore College March 27, 2018
Page Replacement (and other virtual memory policies) Kevin Webb Swarthmore College March 27, 2018 Today s Goals Making virtual memory virtual : incorporating disk backing. Explore page replacement policies
More informationMemory Management. Virtual Memory. By : Kaushik Vaghani. Prepared By : Kaushik Vaghani
Memory Management Virtual Memory By : Kaushik Vaghani Virtual Memory Background Page Fault Dirty Page / Dirty Bit Demand Paging Copy-on-Write Page Replacement Objectives To describe the benefits of a virtual
More informationHeuristic Algorithms for Multiconstrained Quality-of-Service Routing
244 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL 10, NO 2, APRIL 2002 Heuristic Algorithms for Multiconstrained Quality-of-Service Routing Xin Yuan, Member, IEEE Abstract Multiconstrained quality-of-service
More informationMemory Computer Systems
IEEE TRANSACTIONS ON COMPUTERS, VOL. c-21, NO. 10, OCTOBER 1972 1053 An Adaptive Replacement Algorithm ror Paged- Memory Computer Systems JOHN M. THORINGTON, JR., MEMBER, IEEE, AND J. DAVID IRWIN, SENIOR
More informationAchieving Robustness in Distributed Database Systems
Achieving Robustness in Distributed Database Systems DEREK L. EAGER AND KENNETH C. SEVCIK University of Toronto The problem of concurrency control in distributed database systems in which site and communication
More informationFollowing are a few basic questions that cover the essentials of OS:
Operating Systems Following are a few basic questions that cover the essentials of OS: 1. Explain the concept of Reentrancy. It is a useful, memory-saving technique for multiprogrammed timesharing systems.
More informationLecture 14: Cache & Virtual Memory
CS 422/522 Design & Implementation of Operating Systems Lecture 14: Cache & Virtual Memory Zhong Shao Dept. of Computer Science Yale University Acknowledgement: some slides are taken from previous versions
More informationThe Enhancement of Semijoin Strategies in Distributed Query Optimization
The Enhancement of Semijoin Strategies in Distributed Query Optimization F. Najjar and Y. Slimani Dept. Informatique - Facult6 des Sciences de Tunis Campus Universitaire - 1060 Tunis, Tunisie yahya, slimani@f
More informationVirtual Memory. Reading: Silberschatz chapter 10 Reading: Stallings. chapter 8 EEL 358
Virtual Memory Reading: Silberschatz chapter 10 Reading: Stallings chapter 8 1 Outline Introduction Advantages Thrashing Principal of Locality VM based on Paging/Segmentation Combined Paging and Segmentation
More informationA Note on Storage Fragmentation and Program Segmentation
A Note on Storage Fragmentation and Program Segmentation B. RANDELL IBM Thomas J. Watson Research Center Yorktown Heights, New York The main purpose of this paper is the presentation of some of the results
More informationMarch 2003: This file was created by scanning, OCR, and touchup of one of the originally-distributed paper copies. M0131
March 2003: This file was created by scanning, OCR, and touchup of one of the originally-distributed paper copies. M0131 MASSACHUSETTS INSTITUTE OF TECHNOLOGY PROJECT MAC November 3, 1972 ACM, 1974. This
More informationChapter seven: Deadlock and Postponement
Chapter seven: Deadlock and Postponement -One problem that arises in multiprogrammed systems is deadlock. A process or thread is in a state of deadlock if it is waiting for a particular event that will
More informationComparative Analysis of Range Aggregate Queries In Big Data Environment
Comparative Analysis of Range Aggregate Queries In Big Data Environment Ranjanee S PG Scholar, Dept. of Computer Science and Engineering, Institute of Road and Transport Technology, Erode, TamilNadu, India.
More informationChapter 4 Memory Management
Chapter 4 Memory Management 4.1 Basic memory management 4.2 Swapping 4.3 Virtual memory 4.4 Page replacement algorithms 4.5 Modeling page replacement algorithms 4.6 Design issues for paging systems 4.7
More informationCS450/550 Operating Systems
CS450/550 Operating Systems Lecture 4 memory Palden Lama Department of Computer Science CS450/550 Memory.1 Review: Summary of Chapter 3 Deadlocks and its modeling Deadlock detection Deadlock recovery Deadlock
More informationContinued =5.28
Chapter Nine Graphing and Introduction to Statistics Learning Objectives: Ch 9 What is mean, medians, and mode? Tables, pictographs, and bar charts Line graphs and predications Creating bar graphs and
More informationMemory Design. Cache Memory. Processor operates much faster than the main memory can.
Memory Design Cache Memory Processor operates much faster than the main memory can. To ameliorate the sitution, a high speed memory called a cache memory placed between the processor and main memory. Barry
More informationBackground. Virtual Memory (2/2) Demand Paging Example. First-In-First-Out (FIFO) Algorithm. Page Replacement Algorithms. Performance of Demand Paging
Virtual Memory (/) Background Page Replacement Allocation of Frames Thrashing Background Virtual memory separation of user logical memory from physical memory. Only part of the program needs to be in memory
More informationSecond Midterm Exam March 21, 2017 CS162 Operating Systems
University of California, Berkeley College of Engineering Computer Science Division EECS Spring 2017 Ion Stoica Second Midterm Exam March 21, 2017 CS162 Operating Systems Your Name: SID AND 162 Login:
More informationDistributed Simulation for Structural VHDL Netlists
Distributed Simulation for Structural VHDL Netlists Werner van Almsick 1, Wilfried Daehn 1, David Bernstein 2 1 SICAN GmbH, Germany 2 Vantage Analysis Systems, USA Abstract: This article describes the
More informationMemory management, part 2: outline. Operating Systems, 2017, Danny Hendler and Amnon Meisels
Memory management, part 2: outline 1 Page Replacement Algorithms Page fault forces choice o which page must be removed to make room for incoming page? Modified page must first be saved o unmodified just
More informationOn combining chase-2 and sum-product algorithms for LDPC codes
University of Wollongong Research Online Faculty of Engineering and Information Sciences - Papers: Part A Faculty of Engineering and Information Sciences 2012 On combining chase-2 and sum-product algorithms
More informationA Controller Testability Analysis and Enhancement Technique
A Controller Testability Analysis and Enhancement Technique Xinli Gu Erik Larsson, Krzysztof Kuchinski and Zebo Peng Synopsys, Inc. Dept. of Computer and Information Science 700 E. Middlefield Road Linköping
More informationMemory management. Requirements. Relocation: program loading. Terms. Relocation. Protection. Sharing. Logical organization. Physical organization
Requirements Relocation Memory management ability to change process image position Protection ability to avoid unwanted memory accesses Sharing ability to share memory portions among processes Logical
More informationClock page algorithm. Least recently used (LRU) NFU algorithm. Aging (NFU + forgetting) Working set. Process behavior
When a page fault occurs Page replacement algorithms OS 23 32 OS has to choose a page to evict from memory If the page has been modified, the OS has to schedule a disk write of the page The page just read
More informationSwapping. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University
Swapping Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Swapping Support processes when not enough physical memory User program should be independent
More informationSwapping. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University
Swapping Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu EEE0: Introduction to Operating Systems, Fall 07, Jinkyu Jeong (jinkyu@skku.edu) Swapping
More informationAn Analysis and Improvement of Probe-Based Algorithm for Distributed Deadlock Detection
An Analysis and Improvement of Probe-Based Algorithm for Distributed Deadlock Detection Kunal Chakma, Anupam Jamatia, and Tribid Debbarma Abstract In this paper we have performed an analysis of existing
More informationChapter 9. Uniprocessor Scheduling
Operating System Chapter 9. Uniprocessor Scheduling Lynn Choi School of Electrical Engineering Scheduling Processor Scheduling Assign system resource (CPU time, IO device, etc.) to processes/threads to
More informationARITHMETIC operations based on residue number systems
IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS II: EXPRESS BRIEFS, VOL. 53, NO. 2, FEBRUARY 2006 133 Improved Memoryless RNS Forward Converter Based on the Periodicity of Residues A. B. Premkumar, Senior Member,
More informationMemory management, part 2: outline
Memory management, part 2: outline Page replacement algorithms Modeling PR algorithms o Working-set model and algorithms Virtual memory implementation issues 1 Page Replacement Algorithms Page fault forces
More informationA High Performance Bus Communication Architecture through Bus Splitting
A High Performance Communication Architecture through Splitting Ruibing Lu and Cheng-Kok Koh School of Electrical and Computer Engineering Purdue University,West Lafayette, IN, 797, USA {lur, chengkok}@ecn.purdue.edu
More informationThe Working Set. CS 355 Operating Systems. The Working Set. Working Set Model 3/27/18. Paging Algorithms and Segmentation
CS 355 Operating Systems Paging Algorithms and 1 Processes exhibit locality of memory reference During any phase of execution, the process references only a relatively small fraction of its pages. The
More informationQ1. What is Deadlock? Explain essential conditions for deadlock to occur?
II nd Midterm session 2017-18 Subject: Operating System ( V CSE-B ) Q1. What is Deadlock? Explain essential conditions for deadlock to occur? In a multiprogramming environment, several processes may compete
More informationUsing Pattern-Join and Purchase-Combination for Mining Web Transaction Patterns in an Electronic Commerce Environment
Using Pattern-Join and Purchase-Combination for Mining Web Transaction Patterns in an Electronic Commerce Environment Ching-Huang Yun and Ming-Syan Chen Department of Electrical Engineering National Taiwan
More informationBackground. Demand Paging. valid-invalid bit. Tevfik Koşar. CSC Operating Systems Spring 2007
CSC 0 - Operating Systems Spring 007 Lecture - XIII Virtual Memory Tevfik Koşar Background Virtual memory separation of user logical memory from physical memory. Only part of the program needs to be in
More informationThe Complexity of the Network Design Problem
The Complexity of the Network Design Problem D. S. Johnson Bell Laboratories Murray Hill, New Jersey J. K. Lenstra Mathematisch Centrurn Amsterdam, The Netherlands A. H. G. Rinnooy Kan Erasmus University
More informationMemory Allocation. Copyright : University of Illinois CS 241 Staff 1
Memory Allocation Copyright : University of Illinois CS 241 Staff 1 Allocation of Page Frames Scenario Several physical pages allocated to processes A, B, and C. Process B page faults. Which page should
More informationVirtual Memory. CSCI 315 Operating Systems Design Department of Computer Science
Virtual Memory CSCI 315 Operating Systems Design Department of Computer Science Notice: The slides for this lecture have been largely based on those from an earlier edition of the course text Operating
More informationCHAPTER 3 A TIME-DEPENDENT k-shortest PATH ALGORITHM FOR ATIS APPLICATIONS
CHAPTER 3 A TIME-DEPENDENT k-shortest PATH ALGORITHM FOR ATIS APPLICATIONS 3.1. Extension of a Static k-sp Algorithm to the Time-Dependent Case Kaufman and Smith [1993] showed that under the consistency
More informationDesign and Evaluation of I/O Strategies for Parallel Pipelined STAP Applications
Design and Evaluation of I/O Strategies for Parallel Pipelined STAP Applications Wei-keng Liao Alok Choudhary ECE Department Northwestern University Evanston, IL Donald Weiner Pramod Varshney EECS Department
More informationA Reduction of Conway s Thrackle Conjecture
A Reduction of Conway s Thrackle Conjecture Wei Li, Karen Daniels, and Konstantin Rybnikov Department of Computer Science and Department of Mathematical Sciences University of Massachusetts, Lowell 01854
More informationCache Management for Shared Sequential Data Access
in: Proc. ACM SIGMETRICS Conf., June 1992 Cache Management for Shared Sequential Data Access Erhard Rahm University of Kaiserslautern Dept. of Computer Science 6750 Kaiserslautern, Germany Donald Ferguson
More informationIntroducing Network Delays in a Distributed Real- Time Transaction Processing System
Association for Information Systems AIS Electronic Library (AISeL) AMCIS 1996 Proceedings Americas Conference on Information Systems (AMCIS) 8-16-1996 Introducing Network Delays in a Distributed Real-
More informationEffect of Replacement Algorithms on a Paged Buffer Database System
E. B. Fernlndez T. Lang C. Wood Effect of Replacement Algorithms on a Paged Buffer Database System Abstract: In a database system a buffer may be used to hold recently referenced pages. If this buffer
More informationDesign of Fuzzy Logic Controllers by Fuzzy c-means Clustering
Design of Fuzzy Logic Controllers by Fuzzy c-means Clustering Chaned Wichasilp Dept. of Mechanical ngineering, Chiang Mai University Chiang Mai 50200, Thailand -mail' chaned508@hotmail.com Watcharachai
More informationVirtual Memory Design and Implementation
Virtual Memory Design and Implementation To do q Page replacement algorithms q Design and implementation issues q Next: Last on virtualization VMMs Loading pages When should the OS load pages? On demand
More informationResource allocation with interlock detection in a multi-task system
Resource allocation with interlock detection in a multi-task system by JAMES E. MURPHY International Business Machines Corporation Poughkeepsie, N ew York INTRODUCTION In a multiprogramming environment,
More informationAnalyzing Real-Time Systems
Analyzing Real-Time Systems Reference: Burns and Wellings, Real-Time Systems and Programming Languages 17-654/17-754: Analysis of Software Artifacts Jonathan Aldrich Real-Time Systems Definition Any system
More informationA Modified Weibull Distribution
IEEE TRANSACTIONS ON RELIABILITY, VOL. 52, NO. 1, MARCH 2003 33 A Modified Weibull Distribution C. D. Lai, Min Xie, Senior Member, IEEE, D. N. P. Murthy, Member, IEEE Abstract A new lifetime distribution
More information