O que significa porta no contexto de um shell no unix?

1

Do livro Programação avançada no ambiente Unix :

Linux uses the Bourne-again shell for its default shell. In fact,/bin/sh is a link to /bin/bash.The default user shell in FreeBSD and Mac OS X is the TENEX C shell, but they use the Bourne shell for their administrative shell scripts because the C shell’s programming language is notoriously difficult to use.Solaris, having its heritage in both BSD and System V, provides all the shells shown in Figure1.2. Free ports of most of the shells area available on the Internet.

O que o autor quer dizer com o termo port aqui e como ele está relacionado aos shells?

    
por Geek 27.12.2012 / 13:33

1 resposta

6

Essa informação é um pouco desatualizada e imprecisa. Linux é um kernel do sistema operacional, ele não tem um shell. Veja como shell e kernel pertencem à mesma imagem de referência.

Se por Linux, eles significam uma distribuição Linux, eles precisariam ser mais específicos. Nem todas as distribuições do Linux têm bash como sh .

O shell do usuário padrão no MacOS / X não é mais (desde 10.3, 2003) tcsh , mas bash agora.

Eu não acho que nem o FreeBSD nem o MacOS / X tenham sido enviados com o shell Bourne. O sh do FreeBSD é um shell POSIX baseado no shell Almquist. O MacOS / X costumava ser zsh e agora é bash construído no modo de conformidade UNIX.

porta neste contexto refere-se a um software inicialmente projetado para um sistema operacional que foi adaptado (portado) para ser capaz de construir em outro sistema. BSDs e MacOS / X (macports) têm um sistema de empacotamento com o nome desse pacote para incluir e incluir tal software alien .

No contexto de shells, isso não se aplica, já que a maioria dos shells foi projetada desde o início como sendo capaz de compilar em vários sistemas operacionais. Mas veja dash , que inicialmente era uma porta do NetBSD sh para a API GNU / Linux.

    
por 27.12.2012 / 13:54