setjmp/longjmp try/catch kernel vs root kernel mode = HW protection = instructions may run, pages may be accessed root account = OS protection = system call behavior privilege escalation get something with more priviledge to make a mistake in your favor half-duplex vs bus du = 2 duplex = 2 parties talking bus = multi-party half-duplex both: listening == not speaking speaking 1 0 only 1 speaker at a time bridges connection between two busses DMA = direct memory access non-CPU reads or writes to RAM without telling the CPU physical address trap vs fault fault = something goes wrong page fault -- fault caused by a missing PTE trap = meant to be exceptional exception categories (both methods) Cause Result ---------- --------------- trap trap -- got to next fault fault -- re-run interrupt interrupt -- go to next abort -- stops and never comes back signals OS -> user code communication like a SW-only interrupt most of them abort unless you add a handler a few cannot be handled (SIGKILL, SIGSTOP, ...) why do PTs save memory PT = use more memory than no page table 2+ processes, PT allows both to have memory without collisions MLPT less mem tha SLPT because MLPT (tree), we can omit entire subtress network levels (categories) -- out of scope URLs -- host is imporant to us DHCP vs DNS DHCP = "hey, I want an IP address?" 1. your computer: "I want IP" 2. router: "I've got 1.2.34.56; do you want it?" 3. your computer: "I want 1.2.34.56!" 4. router: "OK" DNS = "what's the IP address of www.example.com?" go over ungraded quiz