Como o Unix'y é o Mac OS X? [fechadas]

36

Pelo meu conhecimento limitado: o codificador Unix OS pressupõe que o usuário sabe o que está fazendo, etc.

Comparado a outras variações do Unix, quais são as limitações do Mac OS X, mas também melhora a experiência do usuário?

Para tentar esclarecer a questão, é mais a experiência do usuário que eu gostaria de ler. Embora seja de interesse que seja certificado, isso não é tão relevante - o Linux não é certificado, mas é o mais próximo que cheguei a usar o Unix até agora.

Rob Kam
fonte
4
Acho esta pergunta e seus desenvolvimentos muito interessantes, obrigado!
Mouviciel 1/10/09

Respostas:

56

O Mac OS X é um Unix comum. Este é um sabor BSD Unix e é certificado pelo SUS V3 ( Single Unix Specification versão 3).

Isso significa que tudo o que um engenheiro de software ou administrador de sistemas espera encontrar em um sistema Unix está presente no Mac OS X.

mouviciel
fonte
14
Este é um sistema BSD construído sobre um microkernel MACH.
Mouviciel 1/10/09
3
Telêmaco - Sim, mas com toda a justiça, a maioria dos usuários nunca o utilizará e está prontamente disponível nas ferramentas XCode que estão no disco de instalação que acompanha todos os computadores Apple.
MDMarra
5
Para ser justo, se o material estiver no disco, ele estará disponível "pronto para uso", dependendo de qual caixa você está se referindo.
Phoshi
8
@Telemachus: A maioria das pessoas que usa um Mac não deseja o XCode, portanto, instalá-lo seria um desperdício de espaço em disco. Se você tem alguma pista de que deseja um compilador, pode instalá-lo facilmente. Se você precisar de tudo pré-instalado para você e não conseguir lidar com uma etapa simples da instalação, nunca o fará em software e não deve ser confiado a um compilador.
David Thornley
8
@Telemachus: O compilador está lá . Está bem na caixa. Não entendo por que você acha que todos os sistemas operacionais semelhantes ao Unix devem funcionar da maneira que você deseja quando você liga o aparelho pela primeira vez. Há uma longa e honrada tradição de mexer com coisas para fazer uma caixa Unix funcionar da maneira que você deseja.
David Thornley
24

IMHO, esta questão pode ser interpretada de duas maneiras. No nível literal, o Mac OS X ganhou a certificação UNIX 03 com o lançamento do Mac OS X 10.5 (Leopard) e é tão Unix quanto possível.

Em um nível mais subjetivo, o Mac OS X é apenas uma reescrita de substituição do sistema operacional clássico da Apple, o Mac OS . O aspecto interessante do Mac OS X é que ele é um sistema operacional compatível com POSIX que usa um kernel XNU , que pode rastrear suas raízes para o BSD . E que foi lançado como um projeto de código aberto, Darwin . A conformidade com POSIX permite que pacotes de software criados para Linux ou BSD sejam portados para o Mac OS X.

No entanto, o Mac OS X é mais do que apenas o kernel, e IMHO, o Mac OS X está mais próximo do Mac OS do que de qualquer outra variante do Unix.

Atualização: Link para a opinião de Joel Spolsky sobre o Biculturalismo, onde ele fala principalmente sobre o cisma entre as culturas Windows e Unix, mas também aborda brevemente por que a Apple conseguiu fornecer um excelente "Desktop Unix" com o Mac OS X.

Atualização 2: Link para a filosofia Unix, conforme explicado na Wikipedia.

"Escreva programas que fazem uma coisa e fazem bem. Escreva programas para trabalhar juntos. Escreva programas para lidar com fluxos de texto, porque essa é uma interface universal."

Minha opinião altamente subjetiva de que o Mac OS X está mais próximo do MacOS do que um sistema operacional Unix "tradicional" decorre da minha opinião de que o Mac OS X tem a usabilidade como objetivo principal, e não o acima. Dito isso, concordo que também é válido considerar o Mac OS X um verdadeiro Unix, concentrando-se nos muitos pontos em comum.

Nagul
fonte
8
O Mac OS X não é uma reescrita do Mac OS clássico - é baseado no NeXTSTEP.
S4y 1/10/09
11
@ SidneySM: De certa forma, sua linhagem é irrelevante. Quando você usa o OSX, parece mais com o Mac do que com o Unix.
Telemachus
11
@SidneySM Obrigado, você está certo. Ao "reescrever", pretendi transmitir que ele não tinha nenhum código em comum com o seu antecessor, o Mac OS, e não que ele foi reescrito do zero. Obviamente não deu certo. Vou consertar o mais rápido possível.
Nagul
11
@ David Thornley Podemos discutir esse anúncio nauseum, mas possivelmente nossas diferenças estão na nossa interpretação da filosofia do Unix. pt.wikipedia.org/wiki/Unix_philosophy Acho que o OS X é voltado para a usabilidade, e não isso (especialmente o último bit): "Escreva programas que façam uma coisa e façam bem. Escreva programas para trabalhar juntos. Escreva programas para lidar com fluxos de texto, porque essa é uma interface universal ".
Nagul
3
Se você seguir a filosofia tradicional do UNIX muito literalmente, não poderá ter um ambiente gráfico de área de trabalho.
hasen
12

Abra um terminal e é Unix. Use a GUI e o OS X. Muitos de nós consideram isso o melhor dos dois mundos.

Eu nunca teria mudado para o Mac se não houvesse um Unix por baixo.

Max Howell
fonte
Estou mudando para um Mac por causa disso. No entanto, eu realmente quero ver suas versões futuras do sistema operacional (Yosemite, etc) passarem a última especificação UNIX.
Kensai #
11

Como algumas das respostas disseram, existem dois lados dessa questão.

Se você quer dizer uma licença, o OSX é o Unix (TM) oficial.

Por outro lado, se você quer dizer que o OSX parece um sistema Unix, eu teria que dizer que não (ou talvez "não exatamente"). O OSX se esforça para esconder bastante de você o sistema de arquivos Unix-y. Compare a saída ls /com a abertura da unidade de disco rígido principal na GUI. Ele também não possui um compilador instalado. (Ele está disponível na caixa e você pode instalar um facilmente instalando as ferramentas do Xcode , que estão prontamente disponíveis em um dos discos do instalador, mas estão agrupadas nos itens de instalação "Opcional" ou "Extra". formulação exata.) Estes são dois grandes exemplos, mas existem muitos outros exemplos de pequenas coisas que são um pouco diferentes ou diferentes no OSX. (Não é bom ou ruim, necessariamente, mas diferente.)

A Apple trabalha muito agora, eu acho, para fornecer o rosto amigável "Just works" padrão para a maioria de seus usuários, além de permitir que desenvolvedores e geeks tratem o OSX como uma máquina * nix padrão. Mas o resultado torna os sistemas OSX um pouco comprometedores. (Isso não é necessariamente uma coisa ruim.)

Edit : É interessante o quão fortemente as pessoas se sentem sobre esta questão (eu incluído). Eu acho que alguns respondedores estão sendo muito literais: é tão Unix quanto o Unix pode ser porque eles têm um pedaço de papel que o Unix (TM) diz. Outros de nós estão dizendo, "Mas parece que, anda como, e grasna como um Mac. Não se sente em tudo Unix-y (muito menos procurá-lo)." Como disse originalmente, acho que há realmente duas perguntas aqui: uma sobre a especificação e licença e outra sobre a experiência do usuário.

Telêmaco
fonte
3
Você pode obter a saída de ls / com Terminal.app. Os dois mundos coexistem no Mac OS X. Isso não é um compromisso. A GUI funciona em cima do Unix, assim como o Gnome trabalha em cima do Linux.
Mouviciel 1/10/09
11
Que Unix você está usando para que o sistema de desenvolvimento faça parte da instalação padrão?
Richard Hoskins
11
@Telemachus +1 para digitação de patos. Ele expressa o espírito da mudança do Mac OS para o OS X de maneira sucinta. Na minha opinião, a Apple queria melhorar as entranhas do Mac, mantendo a experiência do usuário inalterada e conseguiu muito bem.
Nagul
2
@Telemachus: Não havia um instalado na minha primeira caixa do Ubuntu. Eu tive que começar a digitar "sudo apt-get install essential development development" e depois digitar minha senha. Isso me surpreendeu.
David Thornley
2
@Telemachus: Entendo seu ponto de vista e, considerando a edição do OP, esse é o tipo de argumento que ele deseja obter. Do ponto de vista do usuário, não há indícios de que o Unix seja executado sob o capô.
Mouviciel 1/10/09
5

Eu diria que o Unix só pode ser definido pelos vários sabores do Unix disponíveis.

Considere a pergunta: como é o Unix?
A resposta: Experimente um sistema Unix para ter uma idéia dele.

Se o OS X for certificado Unix, o que você realmente está perguntando?

Você está perguntando o quão perto está do Unix tradicional sem gui dos anos 80?

Bem, nesse caso, pode-se perguntar, como o Windows é o Windows 7? É certamente janelas "oficiais", mas não parece nada com o Windows 95, muito menos com o 3.1, sem mencionar o MS-DOS. Isso o torna menos como um Windows?

Só porque usuários normais (não técnicos) não veem o Unix sob a GUI, não tornam o OS X menos Unix do que é.

hasen
fonte
@ Hasen: além da certificação, há uma questão de filosofia. A filosofia tradicional do Unix enfatiza coisas que o OSX enfaticamente não enfatiza. Veja a resposta de Nagul para mais informações. Os sistemas modernos do tipo Unix certamente têm uma GUI, mas ainda seguem (em um grau ou outro) a filosofia básica. Não tenho certeza se o OSX da Apple realmente funciona.
Telemachus
11
@hasen j: Estou muito confortável usando o Win XP na área de trabalho. Embora eu queira, não consigo encontrar uma variante do Linux ou Unix que goste de usar o suficiente para substituí-la. Estou pensando aqui, se talvez vale a pena tentar ver como é o Mac OS X, como uma variante do Unix na área de trabalho.
Rob Kam
4
@ Kam Kam: O Mac OS X é um sistema operacional extremamente bom por si só. Apesar do clichê do PR, em grande parte ele simplesmente funciona . Se você não desfrutou da sua dose de Unix até agora, certamente sugeriria que você experimentasse um Mac. Não é minha idéia de um sistema operacional Unix tradicional, mas é sustentado pela conformidade com Unix e POSIX e é um excelente sistema operacional.
Nagul 02/10/2009
4

A GUI é a que oculta o recurso. Por baixo, parece um BSD com algumas diferenças cosméticas e algumas diferenças de plataforma.

Quando você passa para um shell, um usuário * nix não se sente tão deslocado. Eu faço isso rotineiramente com meu MacBook de qualquer maneira.

cálice
fonte
4

Um ponto significativo é o quanto você pode fazer apenas através da GUI, e a resposta é surpreendentemente pequena - incluindo a modificação das configurações da GUI ou a execução do AppleScripts. Existem interfaces de linha de comando programáveis ​​para quase tudo, e alguns utilitários Unix também estão incluídos sem serem mencionados explicitamente, o Subversion , por exemplo.

Por uma questão de opinião, como usuário de uma estação de trabalho Unix desde meados dos anos 90, o Mac OS X é como o Amiga e o BSD tiveram um filho amoroso que fugiu e foi treinado em kung-fu nas montanhas pela IRIX .

Peter Mortensen
fonte
Uma analogia interessante. Em minha opinião, Amiga representa: uso poderoso de recursos, antes do tempo, mas especialmente que (quando suficientemente ajustado, por exemplo, com o Directory Opus), foi divertido de usar.
Rob Kam
3

A diferença que mais me destaca é que o sistema de arquivos padrão do Mac OS X, o HFS Plus , não diferencia maiúsculas de minúsculas. É possível usar o UFS , mas isso pode limitar a funcionalidade de outras partes do sistema operacional. Foi um pouco chocante quando descobri a falta de distinção entre maiúsculas e minúsculas. Pelo menos, está preservando o caso.

Spudicus
fonte