커널 초기화 과정에서 setup_idt() 에 대해 질문이요~

cho6005의 이미지

커널 초기화 과정에서 IDT를 ignore_int()함수로 채우는 setup_irq()함수를 보고있는데요

정확히 한줄한줄 어떻게 동작하는지 좀 자세히 알고싶습니다 ㅎ

고수님들 도와주세요~

setup_idt: 
      lea ignore_int,%edx             # default handler 주소 
       movl $(__KERNEL_CS << 16),%eax # segment selector 
      movw %dx,%ax                   # offset - ignore_int 
      movw $0x8E00,%dx 
 
      lea SYMBOL_NAME(ide_table),%edi 
      mov $256,%ecx 
rp_sidt: 
      movl %eax,(%edi) 
      movl %edx,4(%edi) 
      addl $8,%edi 
      dec %ecx 
      jne rp_sidt       # 256회 반복 
ret