실제로 프로세스의 기계어 데이터가 메모리상의 적재될 때 모든 데이터가 적재되는 것은 아니다.
아주 기본적인 데이터만이 적재 되고 나머지 루틴들은 호출되기 전까지 적재되지 않는데
이런한 방식을 Dynamic Loading이라고 한다.
또 여러 라이브러리 중에서 자주 사용되는 라이브러리가 있는데 이러한 라이브러리를
Shared Library로 만들어 올리고 이러한 라이브러리를 컴파일 시가 아니라
실행시에 Linking하는 것을 Dynamic Linking이라고 한다.(이 반대를 Static Liking이라고 한다.)
Dynamic Linking의 가장 대표적인 예가 윈도우의 DLL파일이다.
이러한 Dynamic Linking방식의 장점은 Memory의 효율성이 증가하고 어떤 라이브러리가
업데이트되었을 때 그 관리가 용이하다는 점이다.
단점은 장점에서 열거한 업데이트 관리의 용이함인데 실제 기존 라이브러리로
잘 돌아가던 프로그램이 현재 업데이트된 라이브러리와 맞지 않아 오류를 낼수도 있다.
'C.E > OS' 카테고리의 다른 글
DeadLock - DeadLock이란? (0) | 2013.11.15 |
---|---|
Memory Management - Overlay (0) | 2013.11.15 |
Memory Management - MMU (0) | 2013.11.15 |
Memory Management - bind란? (0) | 2013.11.15 |
Win 8 정품인증하기 (0) | 2013.10.20 |