Quem sou eu e o que este blog.

terça-feira, 2 de agosto de 2011

O poder pouco conhecido do Mac OS X

Muita gente ouve falar que o Mac OS X é um sistema poderoso, rápido, eficiente, flexível, seguro etc, mas poucos sabem por que, e o que está por trás dele.

A última versão do Mac OS original, criado na década de 80, foi a versão 9. A versão 10, ou Mac OS X é um Unix, derivado do FreeBSD. O FreeBSD é derivado do Unix BSD, criado na Universidade de Berkeley, que foi derivado do Unix original da Bell Labs, criado por volta de 1970, e de certa forma derivado do projeto Multics. Mais exatamente, o Mac OS X tem como base o projeto Darwin, que é derivado do FreeBSD.

O Unix evoluiu muito desde a sua versão inicial a 40 anos atrás, e a Universidade de Berkeley teve um papel importante nisto. Inclusive a criação de Internet se deve à Universidade de Berkeley e ela nasceu no Unix BSD. Também surgiram outros sistemas Unix Like, sendo os mais famosos o projeto GNU e o Linux.

A Apple escolheu o FreeBSD como base do Mac OS X por vários motivos, e acredito que um deles seja a flexibilidade da licença BSD (ver "Licenças de software, introdução" para maiores detalhes). A Apple poderia acrescentar coisas sem ser obrigada a liberar os fontes, como teria que fazer se usasse o Linux como base, ou qualquer outro software regido pela licença GPL.

A escolha de um Unix-Like bem conhecido como base, ao invés de escrever o sistema do zero, teve a vantagem de poder usar dezenas de milhares de softwares existentes para Unix, muitos já testados no FreeBSD, entre eles vários servidores web, interpretadores de comandos etc.

Quem usa um Mac OS X pode fazer o seguinte usando o Finder: Clique em "Aplicativos", depois na pasta "Utilitários" para listar o conteúdo, e finalmente em "Terminal". Uma janela com um prompt se abrirá. Escreva nela o seguinte comando e dê enter:

uname -a

Verá alguns detalhes do núcleo do sistema.

O meu Mac OS X está desatualizado, mas pretendo em breve fazer um upgrade de memória e disco no meu Mac, e atualizar o sistema. Mas acredito que a o que eu citar abaixo funcionará plenamente em qualquer Mac OS X.

Como não sei qual interpretador de comandos está usando, vamos chamar um para se sobrepor a ele. Digite o seguinte comando, e dê enter:

bash

A partir deste ponto estaremos usando o interpretador de comandos "bash".

Vamos a um teste. digite o seguinte comando, seguido de enter:

ls -1

E depois o seguinte (vamos fazer uma brincadeira), seguido de enter:

ls -1 | rev

O primeiro lista os arquivos do diretório atual. O segundo lista os arquivos e repassa para um programa que inverte as linhas, o "rev". Divertido, não? Então faça:

ls -1 | rev | rev

Inversão da inversão.

Que tal o seguintes comandos?

for i in 1 2 3 4
do
echo $i
done

Sim, acabamos de fazer um programinha que faz um loop, e em cada ciclo a variável "i" recebe um dos valores. Legal, não?

Por isto que no artigo "Gerando amostras de imagem em massa" eu disse que os usuários do Mac OS X estavam na vantagem.

Se tiver mais gente interessada neste assunto, é só deixar comentários que eu falo mais sobre isto, e muito mais.

Nenhum comentário:

Postar um comentário