Memory Management Flashcards

1
Q

Memory divided into allocation units. Each unit is a bit, 0 if the unit is free and 1 if occupied

A

Memory management with bitmaps

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Memory managed via nodes

A

Memory management with linked lists

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Process blocks or holes, indicated via first value in linked list

A

Memory management with linked lists

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Look through all segments until an open hole is found of sufficient size. Use up as much of segment as possible

A

First fit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Keep pointer to last memory hole and insert into next region (hole or ones after) that can fit memory

A

Next fit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Take the smallest hole that is adequate

A

Best fit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Take the largest hole possible

A

Worst fit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Load first instruction at base address and add base address to all other instructions

A

Static relocation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Base and limit registers

A

Intel 8088

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Brings program into main memory and runs for certain chunk of time

A

Swapping

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Allows program to run even if only part of program in main memory

A

Virtual memory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Where virtual addresses are mapped to physical addresses

A

Memory management unit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What occurs during a page fault

A
  • OS picks page to write with disk
  • Bring page with needed address into memory
  • Restart instruction
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Stores frequently accessed frames in the MMU

A

Translation Lookaside Buffer

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Indicates in TLB that page is in use

A

valid bit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What occurs during TLB page fault

A

Page table lookup and evict TLB entry

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

When page table is not in TLB but is in active memory

A

Soft miss

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Page table is not in TLB but is in disk

A

Hard miss

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Entries = virtual address size / (page size * ram size)

A

Inverted page table number of entries

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

2^PT_1 * 2^PT_2 * 2^offset

A

Total addressable memory in Multi level page table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Each process keeps own page table. Converts virtual page number to physical frame / page address

A

Regular page table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Virtual page for each occupied physical memory frame

A

Inverted page table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Easier to map from physical to logical addresses

A

Inverted page table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Easier to map from logical to physical addresses

A

Regular page table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

If page is written to, before we evict it, must

A

copy it to disk

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Pick page which will not be used in future for longest time

A

Optimal page replacement

27
Q

Use R and M to create classes of page. Select page from lowest class for eviction

A

Not Recently Used

28
Q

not referenced, not modified

A

class 0

29
Q

not referenced, modified

A

class 1

30
Q

referenced, not modified

A

class 2

31
Q

referenced, modified

A

class 3

32
Q

keep list ordered by time and evict oldest

A

FIFO

33
Q

pages sorted by FIFO. When at end of queue, if R (read) bit is 1, set to 0 and move to end of queue

A

Second chance algorithm

34
Q

When page fault occurs, page the hand is pointing to is inspected. If R = 0, evict the page. If R = 1, set R = 0 and advance hand

A

Clock page replacement algorithm

35
Q

Replace page that has not been used in the most amount of time

A

Least recently used

36
Q

Number of pages at time t used by k most recent memory references. If fault occurs, replace page not in set.

A

Working set

37
Q

Reference bit is 1

A

page referenced during current tick and is in WS

38
Q

Reference bit is 0

A

Must manually check if page is in working set

39
Q

Page not in working set and page is clean

A

replace page

40
Q

Page not in working set and page dirty

A

Write to disk and go to next page in WS

41
Q

Takes into account just processes that faulted

A

local paging

42
Q

takes into account all processes

A

global paging

43
Q

Waste memory when working sets shrink

A

local paging

44
Q

Use page fault frequency to modify allocation size for each process

A

global paging

45
Q

Occurs when pages faults are constantly happening

A

thrashing

46
Q

Size of page

A

sqrt(2s * e), with s process size and e size of page table entry

47
Q

t = (1 - p) * a + p * f

A

performance estimation of page fault

48
Q

allocate dynamic partitions to process when starts up

A

static partition

49
Q

manage processes as list of free chunks. Page offset in virtual address space corresponds to address on disk

A

static partition

50
Q

don’t allocate disk space in advance, swap pages in/out as needed

A

dynamic partition

51
Q

Requires programmer to be aware of underlying technique for MM

A

segmentation

52
Q

Number of linear address spaces in paging

A

1

53
Q

Number of linear address spaces in segmentation

A

many

54
Q

Total address size can exceed size of physical memory

A

both segmentation and paging

55
Q

Procedures and data be distinguished and protected separately

A

Yes for segmentation, no for paging

56
Q

Handles tables with changing sizes

A

Yes segmentation, no paging

57
Q

Linear address space for less physical memory

A

Invention of paging reason

58
Q

Allows programs to be divided into logically independent spaces

A

Invention of segmentation reason

59
Q

When processes do not need memory anymore, causing gaps in-between segments

A

external fragmentation

60
Q

Go through all segments and advance any in-use segment to remove wasted space

A

compaction

61
Q

Program requests more memory than needed, leading to excess allocation

A

internal fragmentation

62
Q

Paging individual segments

A

MULTICS

63
Q
A