equivalente a dll do MacOS

7

Portanto, uma DLL é semelhante a uma pasta, mas permite que vários programas / executáveis acessem de uma só vez, conservando assim a memória (eu acho).

Qual é o equivalente de uma DLL no Mac? Eu estava olhando através das pastas do Google Chrome dentro de ~/Library/Application Support , e em vez do normal do Windows Default.dll havia apenas uma pasta, "Default" como um arquivo regular, com conteúdo, eu presumo, estaria regularmente dentro da DLL.

O equivalente do Mac fornece a mesma função?

    
por kalaracey 02.01.2011 / 20:20

3 respostas

11

Os equivalentes a uma DLL do Windows no OS X são Frameworks (Cocoa) ou dylibs (BSD). Os fornecidos pelo sistema estão em /usr/lib e /System/Library/Frameworks respectivamente.

A pasta que você mencionou, Library/Application Support é semelhante às pastas Application Data (ou AppRoaming now?) no Windows, contendo as configurações pessoais dos seus aplicativos.

Embora eu não saiba qual é o equivalente do default.dll do Chrome no OS X, o pacote de aplicativos contém o seguinte:

A partir do tamanho, parece que Google Chrome Framework pode ser importante (a pasta Frameworks logo acima não contém muito interesse)

    
por 02.01.2011 / 20:29
3

Não há DLLs reais no OS X, no Linux ou em qualquer POSIX. Eles não fazem a diferenciação.

Por quê?

  1. Muitas das coisas do Mac, por exemplo, são independentes (as pastas de aplicativos são, na verdade, apenas pastas).

  2. Os binários no Mac OS X (e Linux e outros * Nixes) usam o ELF ( que significa Executable and Library Format) para as bibliotecas e executáveis.

O arquivo padrão que você encontrou lá provavelmente era um binário ELF.

Atualização : dmckee ressalta que .dylibs estão sob a Mach-O formato exclusivo para Macs. É difícil distinguir os dois pela visão, no entanto, porque nenhum deles realmente requer qualquer extensão.

    
por 02.01.2011 / 20:32
2

Os equivalentes linux e Mac mais próximos são chamados de "arquivos de objetos compartilhados" (geralmente usando uma extensão .so) e bibliotecas dinâmicas (geralmente usando uma extensão .dylib).

Os objetos compartilhados são usados extensivamente em sistemas Linux típicos. As bibliotecas dinâmicas não são tão onipresentes, porque o formato .app permite um mecanismo de distribuição muito seguro para suportar várias arquiteturas, ao custo de "arquivos" exectuáveis maiores.

    
por 02.01.2011 / 22:50

Tags