2024-05 [prednáška] Výpadky stránok
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Prednáška sa venuje výpadkom stránok (page faults) vo virtuálnej pamäti v kontexte operačného systému xv6 na architektúre RISC-V. Vysvetľuje sa, ako xv6 reaguje na výpadky v používateľskom priestore (ukončenie procesu) a v priestore jadra (panic systému), keďže obsluha výnimiek nie je implementovaná. Ďalej sa rozoberajú tri typy prenosu riadenia na procesore RISC-V – výnimka, presun riadenia a prerušenie – a konkrétne hodnoty registra scause (12, 13, 15) označujúce výpadky stránok pri vykonaní inštrukcie, čítaní a zápise. Vysvetľuje sa, prečo je potrebné poznať virtuálnu adresu (register stval) a typ výpadku, ako aj adresu inštrukcie (register sepc alebo trapframe.epc) pre správne obslúženie výpadku a reštart inštrukcie. Prednáška uvádza prehľad trikov s virtuálnou pamäťou (oneskorená alokácia, copy-on-write fork, mapovanie do súboru), ktoré budú predmetom nasledujúcich cvičení.
- - xv6 pri výpadku stránky v používateľskom priestore ukončí proces, v jadre spôsobí panic systému
- - RISC-V rozlišuje tri typy prenosu riadenia: výnimku, presun riadenia (ecall) a prerušenie
- - Register scause udáva typ výnimky, hodnoty 12/13/15 označujú výpadok stránky pri vykonaní/čítaní/zápise
- - Register stval obsahuje virtuálnu adresu, ktorá spôsobila výpadok stránky
- - Adresa inštrukcie (sepc / trapframe.epc) je potrebná na reštart inštrukcie po obslúžení výpadku
- - Obsluha výpadku musí overiť legitímnosť požiadavky, upraviť tabuľku stránok a reštartovať inštrukciu
- - Prehľad trikov s virtuálnou pamäťou: oneskorená alokácia, copy-on-write fork, mapovanie súboru do pamäte
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky