Nu văd unde specifică în acea pagină de manual că dimensiunea poate fi mai mică decât o pagină. Ba chiar, este imposibil ca mmap (sau echivalentul de pe orice sistem de operare cu memorie virtuală) să mapeze jumătăți de pagină – nu există suport hardware pentru așa ceva. mmap va mapa întotdeauna o pagină întreagă; tu folosește-l ca atare.
Sent from Mail for Windows 10 From: Valentin Mocanu via so Sent: Tuesday, April 16, 2019 3:35 PM To: [email protected] Subject: [so] [Tema3][Linux] Probleme testele 4 și 5 Salut, Am niște probleme cu testele 4 și 5 și nu-mi dau seama ce se întâmplă. Am ales să încarc datele în memorie cu mmap. Conform [1], dacă folosim MAP_FIXED ar trebui să putem mapa date de dimensiune mai mică decât o pagină. În cazul bss, se poate apela mmap cu alți parametri. Am făcut debugging și paginile par populate corect. În cazul testului 4 execuția se termină cu SEGFAULT la adresa 0x28170000 și nu am reușit să identific ce date ar trebui să fie la această adresă sau cine o citește/scrie. La testul 5 execuția se termină cu SEGFAULT la adresa 0x804a023 pe care ar fi trebuit să o prindă handler-ul, dar dintr-un motiv necunoscut mie, nu se întâmplă asta. [1]: http://man7.org/linux/man-pages/man2/mmap.2.html Mulțumesc!
_______________________________________________ http://ocw.cs.pub.ro/courses/so/info/lista-discutii
