MEMORY MANAGEMENT

MEMORY MANAGEMENT
2248 views
MEMORY MANAGEMENT

Main memory (RAM) is an essential resource that must be carefully handled. While the average home computer nowadays has 10,000 times more memory as the IBM 7094, the largest computer in the world in the early 1960s, programs are getting bigger faster than memories. To

A MEMORY ABSTRACTION: ADDRESS SPACES
2204 views
A MEMORY ABSTRACTION: ADDRESS SPACES

On the whole, exposing physical memory to processes has many major drawbacks. First, if user programs can address every byte of memory, they can easily trash the operating system, intentionally or by accident, bringing the system to a grinding halt (unless there is

Swapping
1738 views
Swapping

If the physical memory of the computer is large enough to hold all the processes, the schemes explained so far will more or less do. But in practice, the total amount of RAM required by all the processes is often much more than can fit in memory. On a typical Windows or Linux

Managing Free Memory
2468 views
Managing Free Memory

When memory is allocated dynamically, the operating system must manage it. Generally, there are two methods to keep track of memory usage: bitmaps and free lists. In this section and the next one we will study these two methods.

VIRTUAL MEMORY
1334 views
VIRTUAL MEMORY

As base and limit registers can be used to create the abstraction of address spaces, there is another problem that has to be solved: managing bloatware. While memory sizes are increasing rapidly, software sizes are increasing much faster. In the 1980s, many universities

Paging
2421 views
Paging

Most virtual memory systems use a technique called paging, which we will now explain. On any computer, programs reference a set of memory addresses. When a program implements an instruction like

Page Tables
1690 views
Page Tables

In a simple execution, the mapping of virtual addresses onto physical addresses can be summarized as follows: the virtual address is split into a virtual page number (high-order bits) and an offset (low-order bits). For instance, with a 16-bit address and a 4-KB page size, the

Speeding Up Paging
1940 views
Speeding Up Paging

As we have just studied the basics of virtual memory and paging, it is now time to go into more detail about possible implementations. In any paging system, two main issues must be faced:

Page Tables for Large Memories
1679 views
Page Tables for Large Memories

TLBs can be used to speed up virtual address to physical address translation over the original page-table-in-memory scheme. But that is not the only problem we have to deal with. Another problem is how to deal with very large virtual address spaces. Below we will discuss two ways

PAGE REPLACEMENT ALGORITHMS
1535 views
PAGE REPLACEMENT ALGORITHMS

When a page fault takes place, the operating system has to choose a page to remove (remove from memory) to make room for the incoming page. If the page to be removed has been customized while in memory, it must be rewritten to the disk to bring the disk copy up to date. If,

Page 1 of 3 Previous 1 2 3 Next