ReadKernelRegionFromBootMedia( )的详细分析
对于这个函数其实主要关于两个重要的函数分析,下面将对这两个函数进行详细的说明:
一、BP_OpenPartition的分析
hPart = BP_OpenPartition( NEXT_FREE_LOC,
USE_REMAINING_SPACE,
PART_BINFS,
TRUE,
PART_OPEN_EXISTING);
这个函数是找到存储在硬盘中的代码活着创建一块BINFS区域,在public/oak/drives/ethedg/bootpart/bootpart.cpp先看一下这个函数的原型:
HANDLE BP_OpenPartition(DWORD dwStartSector, DWORD dwNumSectors, DWORD dwPartType, BOOL fActive, DWORD dwCreationFlags)
{
DWORD dwPartIndex;
BOOL fExists;
ASSERT (g_pbMBRSector);
if (!IsValidMBR()) {
//检验MBR是不是有效,如果无效将开始创建分区
DWORD dwFlags = 0;