• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/43

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

43 Cards in this Set

  • Front
  • Back
What is memory management?
Memory allocation to processes, ensuring instructions and data are available in RAM as needed
Summarise the FIVE main requirements of memory management.
Relocation, Protection, Sharing, Logical & Physical organisation.
Why does memory management need to determine where instructions and data are located?
So requests can be translated into physical addresses
What is meant by 'protection'?
Prevention of interference from other processes.
How does memory management protect processes?
By checking that memory references made by a process lie within its allocated bounds.
When are memory reference checks made?
At run-time
When is an Access Violation Interrupt generated?
When processes request invalid references
Are the memory checks carried out by the OS or CPU?
The CPU - software cannot inticipate all memory references to be made by a program
What is 'shared' between processes?
Memory
When might sharing be necessary?
When multiple processes are running the same program
What permissions are applied to shared instructions?
Read & Execute Only.
What is "Late Binding"?
Where references between modules of a program are resolved at run-time
What is an advantage of late binding?
Modules can maintain their independence right up till runtime.
Summarise the "Physical Organisation" aspect of memory management in one sentence.
Moving memory between RAM and disk.
What part of the main memory is unavailable for user processes?
The OS partition
What are the two types of fixed-size partitioning of main memory?
Equal-size and unequal-size partitioning
Give two disadvantages of using equal-size partitioning in main memory.
i) A process's requirements may exceed partition size; ii) A small process occupies a full partition, which is wasteful and leads to internal fragmentation.
Give two disadvantages of unequal-size fixed partioning.
i) Either algorithm for filling leads to internal fragmentation. ii) The algorithm for minimising this requires disk swapping which is expensive.
What is the name for NON-fixed partitioning?
Dynamic Memory Partitioning.
How does Dynamic partitioning give rise to external fragmentation?
Multiple processes are allocated precisely the required portion - when these processes terminate (randomly) they leave gaps between other processes, and the partitioning ceases to be contiguous.
Name the three algorithms for process placement in dynamic memory.
First-fit, Best-fit, Next-fit
Describe the 'First-fit' algorithm for allocation of dynamic memory.
Starting from address 0, scan through the main memory until a vacant partition fits.
Describe the 'Best-fit' algorithm for allocation of dynamic memory.
The memory is scanned for the smallest possible block in which the process can still be placed.
Describe the 'Next-fit' algorithm for allocation of dynamic memory.
Scans memory from the address of the last allocated process, in a similar style to 'First-fit'.
Define the term "Logical address".
Reference to a memory location independent of any current assignment of data to main memory.
Define the term "Relative address".
Is a logical address expressed relative to a fixed logical location, such as the beginning of a process's image
Define the term "Physical address".
The address of the actual location in main memory.
Define the term 'Base Register'.
Indicates the beginning of a process's partition.
Define the term 'Bounds Register'.
Indicates extent of a process in a partition. Used with Base Register.
Relative address + Base register = ?
Physical address.
How does memory paging reduce internal fragmentation?
Frame is divided into small, equally-sized chunks (pages), fully occupied by the process until only the last, which is fragmented.
What is a 'page'?
A small, equally-sized chunk of memory in a frame.
What is a 'frame'?
The larger chunks of main memory comprised of pages.
Why don't we need bounds registers for pages?
Because they are of fixed size.
What is a 'Page Table'?
A set of page registers in non-contiguous memory allocation.
What information is held by the page table?
Frame location (physical address) for each page of the running process.
What maintains the 'page table'?
OS
Where would you see a 'page number' recorded with an 'offset'?
Logical addresses for pages in a page table.
How long are the page number and offset?
6-bit page number, 10-bit offset
How is the 16-bit logical address processed by the page table in converting to a 16-bit physical address?
Page number is processed while offset remains unchanged
How does 'Memory Segmentation' differ from Paging?
The chunks are not all equal in size.
What information is held within a Segment Table?
Length and Base of segments.
What part of the 16-bit logical address is processed by the Segment Table in converting to a 16-bit physical address?
The 4-bit segment number. The 12-bit offset is unchanged.