As I see, first time kernel loading process , involves setting up page tables for the very first time (by head.S), which essentially still boot loader does. and boo loader keeps on switching between real and protected mode.

my question is :
1) why there is a need for boot loader to set up paging and identity mapping ? because with segmentation itself, boot loader can move kernel to HIGH_MEM (0x010000)
why there is a need to enable paging ?
how does it make sense ?

anyway, paging could be setup and enabled by kernel (paging_init) after control is transferred to the kernel.