ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • segementation in hardware
    linux study 2018. 12. 6. 18:06

    인텔 프로세서는 80826 모델 부터 real mode 와 protected mode 두가지 종류의 주소 변환 기법이 도입 됐다.


    ->논리적 주소는 segment identifier와 offset 영역이 있다.




    ->cs register : code segment register로서 현제의 프로그램 명령어를 담고 있다


    ->ss register : stack segment register현 프로그램 스택정보를 담고 있다.


    ->ds register : data segment로서 전역 변수와 정적 변수를 담고 있다.



    cs register는 또한 cpu의 privilege level 정보를 담고 있는 2bit field가 있다.



    segment descriptor


    각 segment는 8 바이트 세그먼트 디스크립터로 나타내어지는데 이는 global desicrptor table 혹은 local descriptor table에 저장되고 segment의 정보를 담고 있다.




    logical address에서 linear address로 좀더 빠르게 변환하기 위해 80*86 프로세서는 변환 가능하지 않은 레지스터가 있는데,

    이는 8 바이트 segment descriptor가 들어있다.


    메모리에서 segment descriptor가 이 레지스터로 로딩되면 더이상 중앙 메모리에 GDT와 LDT에 접근 할 필요가 없게 된다.

    segment register 값이 변했을 경우만 GDT와 LDT에 접근 한다.




    'linux study' 카테고리의 다른 글

    memory protection과 그 기법들....현상들....  (0) 2019.02.01
    semaphores....etc  (0) 2018.11.30
    Reenterant kernel  (0) 2018.11.30
    memory address  (0) 2018.11.30
    리눅스 커널 공부  (0) 2018.11.27
Designed by Tistory.