MacOS 'dll 해당


9

따라서 DLL은 폴더와 유사하지만 여러 프로그램 / 실행 파일이 한 번에 액세스 할 수 있으므로 메모리가 절약됩니다.

Mac의 DLL은 무엇입니까? 내부의 Chrome 폴더를 살펴보고 ~/Library/Application Support일반 Windows Default.dll 대신 일반 파일로 "기본"폴더가 있었고 내용은 DLL 내부에 있다고 가정합니다.

Mac과 동등한 기능이 동일한 기능을 제공합니까?


해당 폴더는 Chrome 프로필 (개인 설정, 북마크 등)입니다. 원하는 것은 응용 프로그램 번들 안에 있습니다.
Daniel Beck

글쎄, / Library / Application Support / Google / Chrome / Default / Extensions / (일부 이상한 긴 문자열) 폴더를 보면 테마에 대한 많은 png 및 css 파일이 있습니다. 테마 폴더는 Windows의 DLL 내에 있습니다.
kalaracey

이 경우 Chrome 개발자가 Windows에서 메모리를 절약하기 위해 트릭을 사용한 것처럼 보입니다. OS X에서는 동등한 DLL을 사용하지 않습니다. 예를 들어 Firefox를 보면 사용자 프로파일을 모든 운영 체제에서 여러 개의 개별 파일로 저장합니다.
Daniel Beck

이제 여러분이 실제로 무엇을 요구하는지는 흥미로울 것입니다 : 일반적으로 "OS X의 DLL"에 관하여, 또는 default.dllMac OS X 와 동등한 것 입니다. 답은 상당히 다른 것 같습니다.
Daniel Beck

4
A dll는 폴더가 없거나 근처에 있습니다. 다른 프로그램에서 호출 할 수있는 메소드와 함수를 보유하고 있기 때문에 스스로 구현할 필요가 없습니다. 때로는 dll아이콘과 같은 리소스도 보유하고 있습니다.
Bobby

답변:


12

OS X의 Windows DLL과 동등한 기능은 프레임 워크 (Cocoa) 또는 dylibs (BSD)입니다. 시스템 공급 것들에 /usr/lib/System/Library/Frameworks각각.

언급 한 폴더는 응용 프로그램의 개인 설정을 포함하는 Windows Library/Application SupportApplication Data(또는 AppRoaming지금?) 폴더 와 유사합니다 .

default.dllOS X 에서 Chrome과 동등한 기능이 무엇인지 모르겠지만 응용 프로그램 번들에는 다음이 포함되어 있습니다.

대체 텍스트

크기를 생각 Google Chrome Framework하면 중요한 것처럼 보일 수 있습니다 ( Frameworks위 의 폴더 에는 관심이 많지 않습니다)


3

OS X, Linux 또는 해당 문제에 대한 POSIX에는 실제 DLL이 없습니다. 그들은 차별화를하지 않습니다.

왜?

  1. 하나의 많은 Mac 물건은 자체 포함되어 있습니다 (.app는 실제로 폴더 일뿐입니다).

  2. Mac OS X (및 Linux 및 기타 * Nixes)의 바이너리는 라이브러리 와 실행 파일 모두에 ELF (실행 파일 및 라이브러리 형식을 나타냄)를 사용합니다 .

찾은 기본 파일은 아마도 ELF 바이너리 일 것입니다.

업데이트 : dmckee는 .dylibs가 Mac 전용 Mach-O 형식 임을 나타냅니다 . 그러나 둘 중 어느 것도 실제로 확장을 필요로하지 않기 때문에 두 가지를 구별하기가 어렵습니다.


1
Windows의 DLL은 실행 파일과 동일한 형식을 사용합니다 (적어도 한 번은 한 번 했음).
Daniel Beck


알아두면 좋은 점-게시물을 읽을 때 유닉스를 선택한 것으로 생각했지만 ELF를 구체적으로 언급했습니다.
Daniel Beck

1
흠 ... 이것은 단순히 잘못입니다. Shored 오브젝트 파일 (.so) 및 동적 라이브러리 (.dylib)는 Linux 및 Mac OS에서 Windowns의 동적로드 라이브러리 (.dll)와 정확히 동일한 용도로 사용됩니다. 이들이 패키지 표준을 실행 파일과 공유한다는 사실은이 사실을 변경하지 않습니다.
dmckee --- 전 운영자 고양이

1
@digitxp : 요점을 놓쳤다. 포장은이 문제에서 중요하지 않습니다. Windows .dll, Mac OS .dylib 및 .so 공유 객체 파일 (Mac OS는 .dylib를 사용하는 것만 큼은 아니지만 정상적으로 사용할 수 있음)은 모두 동일한 서비스를 제공합니다. 런타임, 동적으로로드 가능한 공유 라이브러리.
dmckee --- 전 운영자 고양이

2

가장 가까운 리눅스와 맥에 해당하는 것을 각각 "공유 객체 파일"(보통 .so 확장자를 가짐)과 동적 라이브러리 (보통 .dylib 확장자를 가짐)라고합니다.

공유 객체는 일반적인 Linux 시스템에서 광범위하게 사용됩니다. .app 형식은 큰 실행 파일 "파일"을 희생시키면서 여러 아키텍처를 지원하기위한 매우 안전한 배포 메커니즘을 제공하기 때문에 동적 라이브러리는 어디에나 존재하지 않습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.