Memory Management
There are many important basic functions that a modern computer must carry out in order to effectively and efficiently serve its user and conduct processes in a proper timeframe. One of these basic functions is memory management, which essentially refers to the manner in which the computer accesses and information from storage and presents it in a usable manner to the user or to the functional running processes currently in operation. As the capacity for such access and utilization is inherently limited, the manner in which this access is managed is of key importance in determining the speed with which the computer can operate, the number of tasks and processes that can be in operation at any time, and ultimately the functionality of the computer as a whole. It is for this reason that the methods and algorithms used for memory management in a particular setting are of great importance.
Given the importance of memory management and the varying needs of its application, it should not be surprising that many different means for achieving appropriate and efficient memory management have been developed. The selection of an appropriate memory management algorithm must take into account the specific capabilities, resources, and needs of the given setting, but a general assessment of some broad types of memory management methods can help lead to a more knowledgeable and efficient selection process. The following paragraphs will detail certain types of memory management approaches, exploring the manner in which they function and the circumstances to which they are most suited, as well as the noted shortcomings and disadvantages of the methods and algorithm types.
First-In-First-Out or FIFO algorithms are perhaps the most basic type of memory management algorithm, and operate on a very straightforward principle (Catthoor, 1998; Blunden, 2002). As the name implies, the page replacement strategy of FIFO algorithms is simply to keep a running order of the pages currently loaded according to the times they were first loaded, and when a page must be removed to allocate space for a new page the first page to have been brought up (or in) is the first page that will be closed down (or sent out) (Blunden, 2002). Put in other terms, whatever piece of memory has been accessed the longest is the first piece of memory to be de-accessed, and this continues in an ongoing process as long as access is at capacity (Blunden, 2002). Though simple and requiring very little in terms of computing resource, this method can also be highly inefficient -- accessing a page early does not mean it becomes obsolete faster, and in fact the opposite could be the case -- making it most suitable only after modification by other algorithms that measure usage and other features (Catthoor, 1998).
Least Recently Used or LRU is another type of memory management system that tracks when a page or particular piece of memory was last accessed, and discards the one least recently used (again, the name is quite helpful) when more access space is required (Blunden, 2002). This can great greater levels of efficiency in terms of direct access to needed processes and memory pieces, however it also has higher computational needs than FIFO methods (Catthoor, 1998). Setting specifics vary greatly, but in systems that typically only run a handful of the same processes with consistent memory-accessing needs, this can be an effective method (Blunden, 2002).
You’re 70% through this paper. Sign up to read the full paper.
Sign Up Now — Instant Access Already a member? Log inAlways verify citation format against your institution’s current style guide requirements.