Discussão:Sistema operativo

Classificação, que tal vincular a uma cronologia? editar

A história dos Sistemas Operacionais descreve e esclarece bastante o porque das divisões. Hoje todos os sistemas operacionais "de uso geral" são "tudo", fica difícil exemplificar sem citar versões e/ou épocas em que ainda não eram assim... e citar quais foram os primeiros (que eu lembre MS-DOS sempre esteve entre os últimos a implemenatar multi-tarefa, etc.)

Definição de OpenSource editar

Acredito que a seguinte afirmação não está correta:

"Sistemas Open Source (Código Aberto) - São aqueles que você tem acesso ao código fonte (Unix)"

Vejam a definição de OpenSource onde se encontra "Open source doesn't just mean access to the source code.", ou seja, Open source não significa apenas acesso ao código-fonte. Felipe.sanches 16:49, 10 Novembro 2005 (UTC)

código-máquina distinto editar

Citação: Sistema operativo escreveu: «Cada Sistema Operacional pode ter uma Linguagem de máquina própria e distinta. Por isso é comum que softwares feitos para um Sistema Operacional não funcionem em outro.»

concordo de todo com esta frase. Em primeiro lugar o código-máquina é da máquina, ou seja, da arquitectura (alguns processadores partilham a mesma arquitectura). O que leva à segunda questão, o software feito para um OS, não vai funcionar noutro OS, porque o formato dos executáveis é diferente (por exemplo, o ELF é o formato para Linux o actual), embora o código-máquina possa ser igual. Por outro lado, o facto de o formato dos executáveis ser igual não leva a dizer que código compilado para um computador vá funcionar noutro computador com o mesmo sistema operativo, uma vez que o código-máquina que está num programa seja diferente do código-máquina de outro programa para o mesmo sistema operativo, embora arquitecturas diferentes. Veja-se o exemplo de programas em 64 bits que funcionam em windows 64 bits, mas não irá funcionar em windows 32 bits, e outras combinações (o inverso poderá não ser verdade, dependendo do suporte).

Se ninguém disser nada, vou mudar isto no artigo. --Nuno "Bigs" Pereira 22:22, 29 Janeiro 2006 (UTC)


Não se esqueça que não é só o código-máquina e o formato do executável que influenciam na execução de um aplicativo em um SO, mas também as chamadas de sistema e bibliotecas de funções comuns do sistema. —Joaopaulo1511 04:52, 27 Setembro 2006 (UTC)

Poderia colocar uma lista dos tipos de sistema operacionais no artigo --Correa2007 22:10, 2 Janeiro 2007 (UTC)

Listar quais tipos? Angeloshimabuko 04:52, 3 Janeiro 2007 (UTC).

Windows não é microkernel editar

Veja o que dizem Russinovitch & Solomon (Microsoft Windows internals, 4.ed. Microsoft Press, 2005, pp. 36-37): "Altough some claim it as such, Windows isn't a microkernel-based operating system in the classic definition of microkernels..." Angeloshimabuko.

Entretanto ele não é um kernel monolítico no sentido tradicional (No caso do NT e seus derivados, já que o 95/98/ME são claramente monolíticos). Em geral os autores classificam como "Híbrido" por ter características dos dois. --girino 12h14min de 13 de Novembro de 2007 (UTC)
1. O kernel híbrido, quando muito, é uma quase-categoria (veja o termo hybrid kernel na Wiki anglófona). E não é aceitável, segundo a política da Wiki lusófona (veja http://pt.wikipedia.org/wiki/Wikipedia:Nada_de_pesquisa_in%C3%A9dita e http://pt.wikipedia.org/wiki/Wikipedia:O_que_a_Wikipedia_n%C3%A3o_%C3%A9). Não consta nos 3 livros que citei na referência do artigo (Silberschatz et al, 2005; Stallings, 2004; Tanenbaum, 1999). 2. Citando novamente Russinovitch & Solomon (pág. 36): "Windows is similar to most UNIX systems in that it's a monolithic operating system in the sense that the bulk of the operating system and device driver code shares the same kernel-mode protected memory space." 3. As principais características de um microkernel são: o código do kernel é mínimo (tipicamente o agendador de processos e o código de controle primário do hardware); as outras funções do sistema operacional (SO) -- gerenciamento de memória e arquivos, controle de entrada e saída) -- são implementadas por serviços que executam no espaço do usuário (ambiente cliente-servidor); a comunicação inter-processos baseia-se na troca de mensagens. Você verá em qualquer bom livro (se não quiser ver as referências que eu citei) sobre o Windows que todas as principais funções de um SO executam no espaço do kernel; além disso, o Windows usa sinais, interrupções, memória compartilhada (além da troca de mensagens via LPC); outra característica que contraria qualquer princípio do microkernel é a inclusão do suporte à interface gráfica no kernel (nenhum sistema Unix-like faz isso -- o X é um servidor que executa no espaço no usuário). Angeloshimabuko 02h13min de 14 de Novembro de 2007 (UTC).

Referências, marca de revisão. editar

Recoloquei as referências numa estrutura tipo ABNT, pois é mais fácil de manter (e, até agora, somente eu indiquei referências). Coloquei uma marca de revisão na seção de história, pois existem inconsistências, e ainda não consegui editar toda a seção. Angeloshimabuko 13h24min de 18 de Novembro de 2007 (UTC).

Nomenclatura editar

Com a frase da seção "História": "Na primeira geração de computadores (aproximadamente 1945-1955), que eram basicamente construídos com válvulas e painéis, os sistemas operacionais não existiam. Os programadores, que também eram os operadores, controlavam o computador por meio de chaves, fios e luzes de aviso." eu acredito que podemos ver que o nome correto para um SO é Sistema Operante ou Sistema Operador (sistema que opera), mas não Sistema Operacional (sistema que pode ser operado, já que existem sistemas que depois de instalados não podem ser operados). Com relação ao termo Sistema Operativo eu não tenho como opinar a respeito, pois sou brasileiro e não português. --Joaopaulo1511 (discussão) 19h40min de 31 de Maio de 2008 (UTC)

Regressar à página "Sistema operativo".