Por que o Solaris é grande endian


3

... quando o Unix é pouco endian?

Da Wikipedia , o Solaris é baseado no Unix em algum sentido:

Em 1987, a AT&T e a Sun anunciaram que estavam colaborando em um projeto para mesclar as variantes Unix mais populares do mercado na época: BSD, System V e Xenix. Isso se tornou o Unix System V Release 4 (SVR4).

Em 4 de setembro de 1991, a Sun anunciou que substituiria o Unix derivado do BSD, SunOS 4, por um baseado no SVR4. Isso foi identificado internamente como SunOS 5, mas um novo nome de marketing foi introduzido ao mesmo tempo: Solaris 2.


Respostas:


11

Endianness é uma propriedade da CPU, não do sistema operacional. O Solaris é normalmente big-endian porque o Suns usava CPUs big-endian, enquanto o UNIX era originalmente little-endian porque era executado em máquinas little-endian.

Hoje, sistemas operacionais comuns derivados do UNIX, como o Linux, são executados em uma ampla variedade de arquiteturas de CPU e podem ser grandes ou pequenos, dependendo de qual arquitetura estiver em uso. (Consulte esta pergunta no ServerFault se você quiser descobrir para que lado o seu * nix vai.)


Em outras palavras, as decisões tomadas há 20 anos é o motivo.
— Ramhound 14/10

1
@ Ramhoud Essencialmente, sim. Mas suas datas estão um pouco fora. O Unix original foi desenvolvido em 1969, em hardware lançado em 1965, mais perto de 50 anos do que em 20 anos.
— KeithB

Muitas arquiteturas de processador permitem selecionar qual endianness usar, por exemplo, ARM.
— Julian

3
O Unix foi projetado desde o início para ser endian neutro. O Solaris não é "normalmente big endian", pois suporta arquiteturas big e little endian.
— Jlliagre 15/10

10

Suas suposições estão incorretas: o Solaris não é um big endian, o Unix não é um little endian.

Ambos dependem da CPU em que estão sendo executados. Solaris em uma CPU SPARC big endian é big endian, Solaris em uma CPU Intel ou AMD little endian é little endian. O Solaris é um dos gostos do Unix, enquanto outros executam da mesma forma big-endian ou little-endian, dependendo da CPU que está sendo usada.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.