Memory Management Techniques and Architectures

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/24

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

25 Terms

1
New cards

Segmentation

Memory is divided using segments, which are logical units in a process's virtual address space.

2
New cards

Pure Segmentation

Refers to managing memory solely through segments without paging.

3
New cards

Von Neumann Architecture

Characterised by the storage of both data and programs (instructions) in the same physical memory.

4
New cards

What architecture builds upon the Von Neumann structure?

Modified Harvard Architecture

5
New cards

In Modified Harvard Architecture, where are data and instructions initially stored?

In the same memory

6
New cards

What does Modified Harvard Architecture use for improved performance?

Separate caches and buses

7
New cards

Harvard Architecture

Features the separate storage of data and instructions in distinct memory locations.

8
New cards

Executable Space Protection (ESP)

A memory protection technique that works by marking parts of the memory address space as non-executable.

9
New cards

What is a buffer overflow?

A buffer overflow occurs when data exceeds a buffer's storage capacity.

10
New cards

What happens when an attempt is made to execute code in non-executable areas?

It will cause an exception, preventing malicious code from running.

11
New cards

What does ASLR stand for?

Address Space Layout Randomisation

12
New cards

What is the purpose of Address Space Layout Randomisation?

To reduce the likelihood of successful exploitation of buffer overflows.

13
New cards

What is a key requirement for the effectiveness of ASLR?

A suitable source of entropy (randomness)

14
New cards

What is another requirement for the effectiveness of ASLR?

A suitably large address space

15
New cards

What is the purpose of randomisation in ASLR?

To randomly arrange the address space positions of key parts of a process when it is loaded into memory.

16
New cards

Key Areas Randomised by ASLR

Typically includes the start of the executable, the base address space, the stack, the heap, and libraries.

17
New cards

NOP Ramps

Sequences of no-operation instructions that increase the chances of landing in executable code.

18
New cards

What is the basic concept of ASLR?

The memory layout of executable programs, libraries, and data structures in a process's address space is different each time it is loaded.

19
New cards

How does ASLR affect malicious code prediction?

ASLR makes it significantly harder for attackers to reliably predict the addresses where their injected malicious code will reside.

20
New cards

Return-to-libc Attacks

Attacks that involve jumping to existing code, which ASLR helps to mitigate by randomising memory addresses.

21
New cards

Software Implementation of ESP

ESP can be implemented in software (which may have a performance impact).

22
New cards

Hardware Implementation of ESP

ESP can be implemented more efficiently in hardware.

23
New cards

What does ESP stand for in the context of stack protection?

Extended Stack Protection

24
New cards

What do some versions of ESP protect?

The stack

25
New cards

What do other versions of ESP protect besides the stack?

Other memory regions