2021-03 [cvičenie] sysinfo - otázky a odpovede
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
Cvičenie sa venuje konzultácii k druhému laboratórnemu zadaniu z operačných systémov (xv6), zameranému na systémové volania SysTrace a SysInfo. Rozoberá sa implementácia SysInfo pomocou funkcie copy-out, ktorá slúži na kopírovanie štruktúry z priestoru jadra do užívateľského priestoru pomocou prekladu adresy cez tabuľku stránok (page table) a funkciu walkaddr. Diskutuje sa o použití zámkov acquire a release pri práci so zreťazeným zoznamom voľných stránok (freelist) a o dvoch prístupoch k zisteniu množstva voľnej pamäte – počítaním stránok vo freeliste alebo trekovaním volaní calloc a kfree. Vysvetľuje sa aj princíp virtuálnej pamäte a stránkovania, prečo jadro nemôže priamo pristupovať k adresám užívateľského procesu bez prekladu cez jeho tabuľku stránok. Riešia sa aj praktické problémy s timeoutmi testov spôsobené nedostatočným výkonom alebo nízkym počtom jadier vo VirtualBoxe.
- - Konzultácia k úlohám SysTrace a SysInfo z laboratória o systémových volaniach v xv6
- - SysInfo využíva funkciu copy-out na kopírovanie štruktúry z jadra do užívateľského priestoru
- - Copy-out prekladá virtuálnu adresu pomocou tabuľky stránok cez funkciu walkaddr
- - Pri práci so zreťazeným zoznamom freelist by mal byť použitý zámok (acquire/release), hoci to zadanie nevyžaduje
- - Voľnú pamäť možno zistiť buď prechodom freelistu, alebo sledovaním volaní calloc a kfree
- - Jadro nemôže priamo pristupovať k adresám v adresnom priestore užívateľského procesu bez prekladu cez jeho vlastnú tabuľku stránok
- - Problémy s timeoutom testov súvisia s výkonom počítača alebo nízkym počtom jadier nastavených vo VirtualBoxe (odporúčané minimálne tri)
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky