Abstract
In this chapter, we will focus on the memory management in UNIX, which is one of the most important services of UNIX kernel. In a computer system, CPU must cooperate with the memory to accomplish any computing. The main memory has scarce space and cannot contain all the programs on the disk. However, a process cannot execute if it is not brought in memory. Thus, the memory management becomes quite important, especially when the sizes of application programs become fairly large. And the memory management has a close relationship with the process management. We will introduce the outline of memory management, process swapping in UNIX, and demand paging in UNIX in this chapter.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Bach MJ (2006) The design of the UNIX operating system. China Machine Press, Beijing
Bartels G, Karlin A, Anderson D et al (1999) Potentials and limitations of fault-based Markov prefetching for virtual memory pages. SIGMETRICS’99: The 1999 ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems, Atlanta, Georgia, June 1999: 206–207
Bays C (1977) A comparison of next-fit, first-fit, and best-fit. Commun ACM 20(3): 191–192
Belay LA, Nelson RA, Shedler GS (1969) An anomaly in space-time characteristics of certain programs running in a paging machine. Commun ACM 12(6): 349–353
Braams J (1995) Batch class process scheduler for UNIX SVR4. SIGMETERICS’ 95/PERFORMANCE’95: The 1995 ACM SIGMETERICS Joint International Conference on Measurement and Modeling of Computer Systems, Ottawa, 1995, Canada. ACM, pp 301–302
Brawn BS, Gustavson FG, Mankin ES (1970) Sorting in a paging environment. Commun ACM 13(8): 483–494
Christensen C, Hause AD (1970) A multiprogramming, virtual memory system for a small computer. AFIPS’70 (spring): Spring Joint Computer Conference, Atlantic City, New Jersey, 5–7 May 1970: pp 683–690
Cmelik RF, Gehani NH, Roome WD (1989) Experience with multiple processor versions of concurrent C. IEEE T Software Eng 15(3): 335–344
Denning PJ (1968) Thrashing: its causes and prevention. AFIPS’68 (Fall, part I): Fall Joint Computer Conference, part I, San Francisco, California, 9–11 December 1968: pp 915–922
Denning PJ (1970) Virtual memory. ACM Compt Surv 2(3): 153–189
Denning PJ (1983) The working set model for program behavior. Commun ACM 26(1): 43–48
Iftode L, Blumrich M, Dubnicki C et al (1999) Shared virtual memory with automatic update support. ICS’99: The 13th International Conference on Supercomputing, Rhodes, Greece, May 1999, ACM: 175–183
McKusick MK, Neville-Neil GV (2005) The design and implementation of FreeBSD operating system. Addison-Wesley, Boston
Midorikawa ET, Piantola RL, Cassettari HH (2008) On adaptive replacement based on LRU with working area restriction algorithm. ACM SIGOPS Operating Systems Review 42(6): 81–92
Park Y, Scott R (1996) Virtual memory versus file interfaces for large, memory-intensive scientific applications. Supercomputing’96: The 1996 ACM/IEEE Conference on Supercomputing (CDROM), Pittsburgh, Pennsylvania, November 1996, IEEE computer society: Article No.: 53
Peachey DR, Bunt RB, Williamson CL et al (1984) An experimental investigation of scheduling strategies for UNIX. SIGMETRICS’84: ACM SIGMETRICS Conference on Measurement and Modeling of Computer Systems, August 1984, 12(3): pp 158–166
Quarterman JS, Silberschatz A, Peterson JL (1985) Operating systems concepts, 2nd edn. Addison-Wesley, Reading, Massachusetts
Rashid R, Tevanian A, Michael JR et al (1988) Machine-independent virtual memory management for paged uniprocessor and multiprocessor architectures. IEEE T Comput 37(8): 896–908
Ritchie DM, Thompson K (1974) The Unix time-sharing system. Commun ACM 17(7): 365–375
Stallings W (1998) Operating systems: internals and design principles, 3rd edn. Prentice Hall, Upper Saddle River, New Jersey.
Weizer N, Oppenheimer G (1969) Virtual memory management in a paging environment. Spring Joint Computer Conference, ACM, Boston, Massachusetts, 14–16 May 1969: pp 249–256
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2011 Higher Education Press, Beijing and Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Liu, Y., Yue, Y., Guo, L. (2011). UNIX Memory Management. In: UNIX Operating System. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-20432-6_5
Download citation
DOI: https://doi.org/10.1007/978-3-642-20432-6_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-20431-9
Online ISBN: 978-3-642-20432-6
eBook Packages: Computer ScienceComputer Science (R0)