Assista a um intervalo de memória no gdb?

Estou depurando um programa no gdb e quero que o programa pare quando a região de memória 0x08049000 para 0x0804a000 for acessada. Quando tento definir pontos de interrupção de memória manualmente, o gdb não parece suportar mais de dois locais por vez.

(gdb) awatch *0x08049000
Hardware access (read/write) watchpoint 1: *0x08049000
(gdb) awatch *0x08049001
Hardware access (read/write) watchpoint 2: *0x08049001
(gdb) awatch *0x08049002
Hardware access (read/write) watchpoint 3: *0x08049002
(gdb) run
Starting program: /home/iblue/git/some-code/some-executable
Warning:
Could not insert hardware watchpoint 3.
Could not insert hardware breakpoints:
You may have requested too many hardware breakpoints/watchpoints.

Já existe uma pergunta onde isso foi perguntado e a resposta foi, que pode ser possível fazer isso com valgrind. Infelizmente a resposta não contém nenhum exemplo ou referência ao manual do valgrind, então não foi muito esclarecedor:Como o gdb pode ser usado para observar alterações em uma região inteira da memória?

Então: como posso assistir a toda a região da memória?

questionAnswers(2)

yourAnswerToTheQuestion