官术网_书友最值得收藏!

Debug control register (DR7)

DR7 defines how the breakpoints set in Debug Address Registers should be interpreted by the processor and whether they should be interpreted at all.

The bits layout of this register is shown in the following table:

Table 3: DR7 bit layout

L* bits, when set to 1, enable breakpoint at the address which is specified in the corresponding Debug Address Register locally--within a task. These bits are reset by the processor on each task switch. G* bits, on the contrary, enable breakpoints globally--for all tasks, meaning that these bits are not reset by the processor.

The R/W* bits specify breakpoint conditions, as follows:

  • 00: Break on instruction execution
  • 01: Break when the specified address is accessed for writing only
  • 10: Undefined
  • 11: Break on either read or write access or when an instruction at the specified address is executed

The LEN* bits specify the size of a breakpoint in bytes, thus, allowing coverage of more than one instruction or more than one byte of data:

  • 00: Breakpoint is 1-byte long
  • 01: Breakpoint is 2-bytes long
  • 10: Breakpoint is 8-bytes long (long mode only)
  • 11: Breakpoint is 4-bytes long
主站蜘蛛池模板: 瑞安市| 登封市| 林西县| 东至县| 宣化县| 民丰县| 新余市| 华亭县| 灵川县| 久治县| 南靖县| 彭阳县| 饶阳县| 安图县| 清涧县| 南陵县| 商水县| 兴文县| 雷山县| 九龙城区| 蚌埠市| 交城县| 永平县| 留坝县| 龙川县| 余庆县| 阳新县| 孝义市| 龙州县| 新田县| 荣成市| 锦州市| 手机| 喀喇| 大英县| 老河口市| 宝山区| 泰宁县| 哈巴河县| 南雄市| 昂仁县|