반응형
정적 라이브러리에 대해서 알아보자.
라이브러리라는 것을 왜 쓰는 것일까?
간단하게 말하자면 코드의 재사용에 편리를 위해 나온 것이다.
여러 프로그램에서 중복으로 사용되는 오브젝트 파일을 하나의 파일로 다룰 수 있도록 정리해둔 것.
그렇다면 정적 라이브러리는 뭘까?
프로그램 작성시에는 일정한 분량을 나누어 각각의 오브젝트 파일로 컴파일하고
최종적으로 링크를 하여 하나의 실행가능한 파일을 생성하는 것이다.
정적 라이브러리는 .a 파일을 나타낸다.
여러개의 오브젝트 파일을 하나의 *.a 파일에 묶어서 모은다.
(ar 명령으로 여러개의 오브젝트 파일을 하나의 .a 파일로 합칠 수 있다.)
쉽게 말해서 정적 라이브러리는 실행 파일에 라이브러리 코드가 포함이 되어 있다.
그래서 용량이 굉장히 크다. 비효율 적이다 이말이다.
다음에는 공유 라이브러리에 대해 알아보겠음.
반응형
'IT 그리고 정보보안 > Knowledge base' 카테고리의 다른 글
PLT (Procedure Linkage Table), GOT(Global Offset Table) (0) | 2021.04.18 |
---|---|
공유 라이브러리 (Shared Library) (0) | 2021.04.18 |
오브제트 파일 관련 명령어 (objdump, objcopy, nm) (0) | 2021.04.18 |
ldd (List Dynamic Dependencies) (0) | 2021.04.18 |
ELF File Format (0) | 2021.04.18 |