Computer Science 330
Operating Systems
Fall 2022, Siena College
Lecture 0x0f: Memory Management Wrapup; Exam 2 Info; Lab and Project Time
Date: Monday, November 14, 2022
Agenda
- Announcements
- The next readings/activities from OS zyBook: Chapter 7, due Friday, November 18
- Lab 7: Interprocess Communication [HTML] [PDF] remains
due Wednesday, November 16 (do this before starting the new
project)
- Programming Project 4: Roger Bacon Shell with Pipes and
Redirection [HTML] [PDF]: aim to get at least the parsing of
pipelined commands done within a week
- Exam 2 information
- In class, Monday, November 21
- Same ground rules as Exam 1
- Accounts for 10% of course grade
- Topics are from Chapters 4, 5, 6, of OS zyBook, Labs 3, 4,
5, 6, Programming Projects 2 and 3
- Practice problems out, we can spend some time on these in
class on Friday, please look at them by then
- Looking at a Programming Project 3: Basic Shell [HTML] [PDF] reference solution
- Looking at (more of) the exercises for OS zyBook Chapter 6
- Section 6.4, we will do all, 1-5
- Memory Management wrapup and additional info
- Contiguous allocation
- hardware support: limit and base/relocation registers
- first-fit/best-fit/worst-fit
- Fragmentation
- external: waste between allocated chunks
- internal: waste within allocated chunks
- reduce external fragmentation with a compaction operation
- Paging
- break up logical memory into pages, physical memory into frames
- page size: the size of these pages/frames
- can allow virtual memory
- translate addresses by looking up a frame number using
the page number, which is part of the logical address
- store the translations in a page table in memory
- a memory access now requires a page table access then
the memory access - slow!
- help: translation lookaside buffer - associative
memory that stores a subset of table entries
- TLBs are small, but locality helps it to have an
excellent hit rate in practice
- page table too large? page it - multilevel page
tables
- Lab and project time