Virtual Memory and Assignment 3 Administration

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/19

flashcard set

Earn XP

Description and Tags

A set of practice questions covering virtual memory concepts, address translation, multi-level page tables, and administrative details for a systems programming assignment.

Last updated 12:42 AM on 6/18/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

20 Terms

1
New cards

What is the purpose of the 2310 NetProxy tool in Assignment 3?

It sits between the client and the server, relaying information between them so the user can see exactly what is being sent and received.

2
New cards

In the demo server, what happens when the process receives a SIGHUP signal?

The server prints the current stats (such as connected clients and tokens evaluated) to standard error.

3
New cards

What is the function of the A3 stats port in the assignment?

The server spawns a separate thread to listen on a designated port (e.g., 55555555) specifically for stats clients.

4
New cards

What is Copy on Write (COW)?

An optimization where a child and parent process share the same memory after a fork; a page is only copied when one of the processes attempts to write to it, triggering a page fault.

5
New cards

Define a Kibibyte (KiB) in terms of bytes.

A Kibibyte is equal to 2102^{10} bytes, which is 10241024 bytes.

6
New cards

What are the power-of-two definitions for Mebibytes, Gibibytes, Tebibytes, and Pebibytes?

Mebibyte (MiB) is 2202^{20}, Gibibyte (GiB) is 2302^{30}, Tebibyte (TiB) is 2402^{40}, and Pebibyte (PiB) is 2502^{50} bytes.

7
New cards

What is the difference between biological reality and the virtual memory analogy?

Virtual memory gives a process the view of a massive library with neatly ordered pages, whereas physical memory is often a much smaller library shared by many processes (people) simultaneously.

8
New cards

What is the Memory Management Unit (MMU)?

A hardware component that translates virtual addresses used by the CPU into physical addresses in RAM or secondary storage.

9
New cards

Distinguish between a 'page' and a 'frame'.

A page is a fixed-size block of the virtual address space, while a frame is a fixed-size block of physical RAM.

10
New cards

How are the page number and the offset determined from a virtual address?

The page number is the virtual address divided by the page size (page=virtual addresspage size\text{page} = \frac{\text{virtual address}}{\text{page size}}), and the offset is the virtual address modulo the page size (offset=virtual address mod page size\text{offset} = \text{virtual address} \text{ mod } \text{page size}).

11
New cards

What information is typically stored in a Page Table Entry (PTE)?

The physical frame number it maps to, permission bits (read, write, execute), and the page state.

12
New cards

Why is the virtual page number not explicitly stored inside a page table entry?

It is implicit based on the location of the entry within the page table, increasing memory efficiency.

13
New cards

What is the Translation Lookaside Buffer (TLB)?

A fast, associative content-addressable memory cache that stores recent page-to-frame mappings to speed up address translation.

14
New cards

What occurs during a 'Thrashing' state?

A condition under high memory pressure where the system spends more time swapping pages between disk and RAM than executing actual work.

15
New cards

Why does dereferencing a null pointer cause a segmentation fault?

Page zero and other very low-numbered pages are marked as invalid in the page table, and hardware generates a fault when they are accessed.

16
New cards

What is the primary benefit of using multi-level page tables?

They reduce memory overhead by allowing the top-level table to have empty entries, meaning the system does not need to store mappings for unused parts of the virtual address space.

17
New cards

In a system with 4848-bit virtual addresses, 41964196 byte pages (2122^{12}), and 88 byte page table entries, how many bits are used for each level of a 44-level page table?

There is a 1212-bit offset and 99 bits for each of the four levels (12+9+9+9+9=4812 + 9 + 9 + 9 + 9 = 48).

18
New cards

What does the SBREKE system call do?

It changes the data segment size (program break) to allocate or deallocate memory for the process heap.

19
New cards

What is PROC PID maps?

A virtual file in Linux that shows the memory layout of a specific process, including the text segment, heap, shared libraries, and stack.

20
New cards

What is Address Space Layout Randomization (ASLR)?

A security feature that varies the precise location of the heap and stack every time a process is run to prevent attackers from targeting specific addresses.