audk/MdeModulePkg/Core/DxeIplPeim
Jian J Wang 9189ec20b9 MdeModulePkg/DxeIpl: Implement NULL pointer detection
NULL pointer detection is done by making use of paging mechanism of CPU.
During page table setup, if enabled, the first 4-K page (0-4095) will be
marked as NOT PRESENT. Any code which unintentionally access memory between
0-4095 will trigger a Page Fault exception which warns users that there's
potential illegal code in BIOS.

This also means that legacy code which has to access memory between 0-4095
should be cautious to temporarily disable this feature before the access
and re-enable it afterwards; or disalbe this feature at all.

Cc: Star Zeng <star.zeng@intel.com>
Cc: Eric Dong <eric.dong@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Ayellet Wolman <ayellet.wolman@intel.com>
Suggested-by: Ayellet Wolman <ayellet.wolman@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jian J Wang <jian.j.wang@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
2017-10-11 16:39:00 +08:00
..
Arm ArmPkg ArmVirtPkg MdeModulePkg: switch to separate ArmMmuLib 2016-07-07 14:33:47 +02:00
Ebc Update the copyright notice format 2010-04-24 09:49:11 +00:00
Ia32 MdeModulePkg/DxeIpl: Implement NULL pointer detection 2017-10-11 16:39:00 +08:00
Ipf Update the copyright notice format 2010-04-24 09:49:11 +00:00
X64 MdeModulePkg/DxeIpl: Implement NULL pointer detection 2017-10-11 16:39:00 +08:00
DxeIpl.h MdeModulePkg/DxeIpl: Implement NULL pointer detection 2017-10-11 16:39:00 +08:00
DxeIpl.inf MdeModulePkg/DxeIpl: Implement NULL pointer detection 2017-10-11 16:39:00 +08:00
DxeIpl.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
DxeIplExtra.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
DxeLoad.c MdeModulePkg/DxeIpl: Implement NULL pointer detection 2017-10-11 16:39:00 +08:00