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

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
主站蜘蛛池模板: 万年县| 上饶市| 长顺县| 拜泉县| 蓬莱市| 崇义县| 玉林市| 衡山县| 上饶市| 建湖县| 遂川县| 巨野县| 莲花县| 宝应县| 万荣县| 且末县| 邵阳县| 灌云县| 晋城| 六盘水市| 瑞昌市| 金秀| 赫章县| 玉田县| 洱源县| 建宁县| 寻甸| 平阴县| 毕节市| 安平县| 南岸区| 女性| 会昌县| 中江县| 秀山| 尉氏县| 水富县| 苍南县| 贵南县| 姜堰市| 常山县|