나무모에 미러 (일반/어두운 화면)
최근 수정 시각 : 2024-11-20 19:51:05

DLL

파일:Document_Protect.svg   편집 보호된 문서입니다.
문서의
ACL 탭
을 확인하세요.


파일:나무위키+유도.png  
은(는) 여기로 연결됩니다.
DJMAX RESPECT V의 비공식 대회에 대한 내용은 DJMAX : Luxpect League 2023 문서
번 문단을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
참고하십시오.
1. 개요2. 장점3. 단점4. dll 오류5. 여담
5.1. 기타

1. 개요

DLL은 여러 프로그램에서 동시에 사용할 수 있는 코드와 데이터를 포함하는 동적 라이브러리이다.

라이브러리란 소프트웨어 개발에서 자주 쓰고 기초적인 함수들을 중복 개발하는 것을 피하기 위해서 표준화된 함수 및 데이터 타입을 만들어서 모아 놓은 것이다. 이런 라이브러리는 언제 메인 프로그램에 연결하느냐에 따라서 Static Link와 Dynamic Link로 나뉘며, DLL은 이 중 후자, 특히 윈도우 계통에서 사용되는것을 뜻한다. 보통 배포시에는 런 타임 라이브러리라는 이름으로 배포된다.

스태틱 링크는 컴파일 시점에 라이브러리가 링커에 의해 연결되어 실행 파일의 일부분이 된다. 그러나 다이나믹 링크는 각 실행 파일에서 해당 라이브러리의 기능을 사용 시에만, 라이브러리 파일을 참조하여(혹은 다운로드받아) 기능을 호출한다.

2. 장점

3. 단점

4. dll 오류

관련문서: 컴퓨터 고장 정보

dll 오류에 관해서 검색하면 해당 dll 파일을 따로 다운받으라는 글을 많이 볼 수 있는데 주로 dll 파일을 제공하는 사이트로 가라고 한다. 하지만 그런 사이트에 있는 파일들의 경우 최신 버전이 아닌 구 버전으로 해결이 안될 수 있기 때문에 dll 파일을 따로 구하기보다는 해당 dll 파일이 포함된 드라이버를 재설치하는게 낫다.

5. 여담

개발자들은 좋아하지만, 사용자들은 싫어한다. 아무래도 로딩 시간에 영향을 미친다는 인식이 있기 때문에 그런 듯. 다만 대다수 DLL 파일들의 용량을 생각해보면 이것들이 로딩 시간에서 얼마나 차지할지는.. 일부 프로그램은 dll이 없어서 에러를 내뱉기도 한다 NT 6.x 이상의 환경에서 Direct X 9 라이브러리 문제로 에러를 띄운다.[4] 실제로 로딩 시간에 소요되는 시간 대부분은 압축/패킹된 리소스 파일을 메모리에 올리는 과정이 대부분을 차지한다. 오히려 DLL의 경우 이미 같은 라이브러리를 쓰는 프로그램이 있으면 이미 메모리에 올라가 있는 라이브러리 크기만큼 로딩 시간이 짧아진다.

그러나 2023년 기준 이런 경우를 찾기가 어려운데, 게임/프로그램 개발사들이 아예 프로그램 설치시 설치 경로에 DLL 파일을 다 때려박거나 라이브러리가 설치되어 있는지 검사해서 자동으로 같이 설치되도록 만들기 때문이다.

5.1. 기타



[1] opencv_core000.dll, opencv_highgui000.dll, 기타등등...[2] opencv_world000.dll 등.[3] 오픈 소스의 경우 정적 라이브러리 컴파일을 지원하는 경우도 있다. 단 라이선스 문제가 생길 수도 있다(가령 LGPL의 경우는 동적 라이브러리로 쓰면 문제가 없지만, 정적 라이브러리로 쓰면 알짤없이 소스 코드를 풀어야 한다.).[4] 해결 방법은 DirectX9 최종 사용자 런타임을 설치해야 하고 DX9 미지원 GPU는 dgvoodoo같은 Glide-DirectX 래퍼도 설치해야 한다.