Architectures
The number of watchpoints, their size, and alignment restrictions differ from platform to platform. (This is because TotalView relies on the operating system and its hardware to implement data watchpoints.)
Note: Watchpoints are not available on Alpha Linux and HP.
The following list describes constraints that exist on each platform:
Compaq Tru64
Tru64 places no limitations on the number of watchpoints that you can create, and there are no alignment or size constraints. However, watchpoints cannot overlap, and you cannot create a watchpoint on an already write-protected page.
Watchpoints use a page protection scheme. Because the page size is 8,192 bytes, watchpoints can degrade performance if your program frequently writes to pages containing watch-points.
IBM AIX
You can create one watchpoint on AIX 4.3.3.0-2 (AIX 4.3R) or later systems. (AIX 4.3R is available as APAR IY06844.) This watchpoint cannot be longer than 8 bytes and it must be aligned within an 8-byte boundary.
IRIX6 MIPS
Watchpoints are implemented on IRIX 6.2 and later operating systems. These systems allow you to create about 100 watchpoints. There are no alignment or size constraints. However, watchpoints cannot overlap.
Linux x86
You can create up to four watchpoints and each must be 1, 2, or 4 bytes in length, and a memory address must be aligned for the byte length. That is, a 4-byte watchpoint must be aligned on a 4-byte address boundary, and a 2-byte watchpoint must be aligned on a 2-byte boundary, etc.
Solaris SPARC
Watchpoints are implemented on Solaris 2.6 or later operating systems. These operating system allow you to create hundreds of watchpoints, and there are no alignment or size constraints. However, watchpoints cannot overlap.
Typically, a debugging session does not use many watchpoints. In most cases, only one memory location at a time is being monitored. So, restrictions on the number of values you can watch are seldom an issue.