320x100
320x100

라이브러리

: 프로그램에서 특정한 기능을 하는 루틴을 모아놓은 것으로

  불필요하게 반복적인 코드를 재사용이 가능한 형태로 작성한 것

: 서브루틴, 함수, 클래스의 형태로 만들어짐

: 프로그램과 링크되어 실행 가능한 형태로 만들어지게 됨

: 정적 링크 라이브러리와 동적 링크 라이브러리로 나뉨

 

- 정적 링크 라이브러리

: 프로그램을 컴파일 할 때 실행 파일에 복사되어 배포 되는 방식

: 속도가 빠르지만 실행파일의 크기가 커지며, 메모리 사용량이 늘어남

 

- 동적 링크 라이브러리

: 필요할 때 메모리에 적재하여 사용

: 메모리 효율성이 매우 좋음

 

 

 

 

 

공유라이브러리

: OS에서 수많은 응용프로그램들이 공유하는 라이브러리

: 주로 동적 링크 라이브러리 형식으로 채택

 

- 특징

: 의존성

 > 동적으로 링크된 프로그램은 적어도 하나 이상의 공유 라이브러리가 필요함

 > GNOME 기반 응용 프로그램 실행 시 GTK+가 필요한 이유

: 링크

 > 동적으로 링크된 실행 파일은 실행 시 공유 오브젝트에 대한 동적 링커인 ld.so에 의해 검사됨

 > ld.so는 실행 파일을 점검하고 의존성 문제를 해결

 

 

 

 

 

공유 라이브러리 관련 명령어

- ldconfig

- ldd

 

 

 

 

 

ldconfig
: 공유 라이브러리 관련 정보를 갱신하고 설정

: /etc/ld.so.conf 파일의 내용 갱신

 

- 형식

: ldconfig [option] [library]

 

 - 주요 옵션

: -p

 > 현재 캐시에 저장되어 있는 공유 라이브러리 목록 정보를 출력

: -v

 > 명령 실행과 관련한 자세한 정보 출력

: -f

 > /etc/ld.so.conf 대신 다른 환경설정 파일을 지정

 

 

 

 

 

ldd

: 특정 파일이나 프로그램이 의존하고 있는 공유 라이브러리 정보 출력

 

- 형식

: ldd [option] <file>

 

- 주요 옵션

: -v (--verbose)

 > 관련 라이브러리 정보를 자세히 출력

: -f

 > /etc/ld.so.conf 대신 다른 환경설정 파일을 지정

 

 

 

 

 

공유 라이브러리 관련 파일 및 디렉터리

- /lib

- /usr/lib

- /etc/ld.so.conf

- /etc/ld.so.cache

 

 

 

 

 

/lib & /lib64

: ls, mv 등 기본 명령어 및 시스템과 관련된 라이브러리를 저장

 

 

 

 

 

/usr/lib & /usr/lib64

: 사용자가 설치한 응용프로그램과 관련된 라이브러리를 저장

 

 

 

 

 

/etc/ld.so.conf

: 특정 디렉터리의 위치를 라이브러리 관련 디렉터리로 등록하기 위한 파일

: 파일을 수정하거나 ldconfig로 갱신

: 파일의 마지막줄에 등록할 디렉터리의 경로 입력

 

 

 

 

 

/etc/ld.so.cache

: /lib, /usr/lib 내의 파일 라이브러리 뿐만 아니라 /etc/lib.so.conf에 명시된 디렉터리에서 찾을 수 있는

 라이브러리 파일 목록 정보 기재

 

 

 

 

 

 

Refference

 

리눅스마스터 1급 2차 실기 정복하기 | 정성재 - 교보문고

리눅스마스터 1급 2차 실기 정복하기 | 출제 경향을 반영하여 핵심 내용만 요약 정리 시험대비를 위한 최신 기출문제를 해설과 함께 수록본 교재는 독자들이 최근 출간 요구가 많았던 리눅스마

product.kyobobook.co.kr

 

300x250
728x90

'Certification > 리눅스마스터' 카테고리의 다른 글

리눅스 디스크 용량 확장  (0) 2022.10.10
리눅스 커널 관리  (0) 2022.10.10
리눅스 파일 압축  (0) 2022.10.10
리눅스 소스 파일 및 패키지 설치  (0) 2022.10.10
리눅스 프로세스 스케줄링  (0) 2022.10.10