BRUTE AE: 10nova-syscall: Test: Off-by-one
Dobrý den,
z neznámého důvodu mi neprochází test 12. Bohužel si nemohu u sebe spustit vaše Testovací progamy (jak mi poradil Michal Sojka), protože můj minimální Break (Ec::break_min) je defaultně při spuštění programu 0x5000, tudíž váš Testovací program "brktest-off-by-one" ihned spadne, protože volá break s adresou nižší než 0x5000.
Test 12 v Brute jsem se pokusil vytvořit u sebe (voláním brk() s danými adresami a čtením) a stejně jako v Brute mi nastane page fault při 0x7000 místo při 0x6000. Zjistil jsem ale, že při zavolání brk(0x5001) se mi alokuje 1 stránka (velikosti 0x1000) ale když se pokusím číst z adres na horní hranici této stránky, tak nastane page fault - nejvyšší adresa, ze které můžu v tuto chvíli číst, je 0x5ffc (od adresy 0x5ffd výš nastane Page Fault (eip=0x40c6 cr2=0x6000)). Stejná situace nastane při zavolání brk(0x6000) a následném čtení z adresy 0x6ffd a výš (cr2 je 0x7000).
Opravdu už netuším co s tím mám dělat a prosím o pomoc (jde mi o zápočet) @sojkam1 @stepan . Děkuji moc za váš čas a ochotu
Martin Bláha
(warningy při kompilaci v Testu 2 jsou jen kvůli debugovacím výpisům) Keep this URL here: https://cw.felk.cvut.cz/brute/data/ae/release/2020z_b4b35osy/10nova-syscall/cviceni/ae/results/results.php?&idg=blaham17&idu=5947&upload=1041059&result=673390#test-12