IO락

    [운영체제] 커널 메모리

    [운영체제] 커널 메모리

    커널 메모리를 관리할 때 사용자 공간과 분리하는게 일반적이다. 그 이유는 다음과 같다. 1 ) 커널은 크기가 서로 다른 다양한 자료 구조를 사용 -> 단편화 문제가 발생함. 2 ) 사용자 모드 프로세스는 연속적인 메모리가 필요 없는데 특정 하드웨어 장치는 물리적으로 연속적인 메모리가 있어야 한다. [커널 메모리 할당 방법] 1 ) 버디 시스템 -> 2의 지수승 크기로 할당한다. 256KB의 메모리 사용이 가능하다고 할 때, 21K의 메모리를 할당하는 방법에 대해 확인해보자 21보다 크지만 내부 단편화가 가장 적어질 때 까지 2로 나누는 과정을 반복한다. (32KB에 할당됨.) 만약 할당된 프로세스( 21KB )가 종료되었다면 32KB 두개를 합칠 수 있다. 이것을 합병(coalesce)라고 한다. 2 )..