Arm Cortex R4F Instrukcja Użytkownika Strona 188

  • Pobierz
  • Dodaj do moich podręczników
  • Drukuj
  • Strona
    / 456
  • Spis treści
  • BOOKMARKI
  • Oceniono. / 5. Na podstawie oceny klientów
Przeglądanie stron 187
Memory Protection Unit
ARM DDI 0363E Copyright © 2009 ARM Limited. All rights reserved. 7-5
ID013010 Non-Confidential, Unrestricted Access
Figure 7-1 Overlapping memory regions
Example of using regions that overlap
You can use overlapping regions for stack protection. For example:
allocate to region 1 the appropriate size for all stacks
allocate to region 2 the minimum region size, 32 bytes, and position it at the end of the
stack for the current process
set the region 2 access permissions to No Access.
If the current process overflows the stack it uses, a write access to region 2 by the processor
causes the MPU to raise a permission fault.
Figure 7-2 Overlay for stack protection
Example of using subregions
You can use subregions for stack protection. For example:
Allocate to region 1 the appropriate size for all stacks.
Set the least-significant subregion disable bit. That is, set the subregion disable field, bits
[15:8], of the CP15 MPU Region Size Register to
0x01
.
If the current process overflows the stack it uses, a write access by the processor to the disabled
subregion causes the MPU to raise a background fault.
Region 2
Region 1
0x4000
0x0000
0x3000
0x3010
Region 1
0x4000
0x0000
Region 2
Przeglądanie stron 187
1 2 ... 183 184 185 186 187 188 189 190 191 192 193 ... 455 456

Komentarze do niniejszej Instrukcji

Brak uwag