TECNICO
Eficiência: permitir que os recursos do sistema (especialmente hardware) sejam utilizados de uma maneira eficiente.
Evolução: A única coisa que nunca muda é a evolução. O SO deve ser construído de maneira que permita o desenvolvimento efetivo e a possibilidade de introduzir novas funções sistêmicas sem interferir com o serviço original.
Interface amigável: Nós precisamos encarar o SO todos os dias. Uma interface amigável é obrigatória, senão você estará fora, não interessam o quão bem você seguir os dois critérios acima.
Inevitavelmente, um SO precisa de funções como gerenciamento de processos/thread, que alocam e efetuam chamadas a threads sob uma política de emissão em particular, gerenciamento de memória e gerenciamento de arquivos. Nós vamos comparar estes subsistemas ponto a ponto. (Interface com usuário não será discutido neste artigo, uma vez que estamos focando em comparação no kernel) Existem alguns conceitos similares entre Linux e o OpenSolaris, enquanto que os conceitos no Windows Vista são totalmente diferentes.
Gerenciamento de Thread e Processos
OpenSolaris
OpenSolaris implementa um suporte de thread multilevel desenhado para fornecer uma flexibilidade considerável na exploração dos recursos do processador. Os quatro novos conceitos a seguir são implementados no OpenSolaris.
Processo: Este é o processo normal do UNIX e inclui o espaço de endereço do usuário, stack, e o bloco de controle de processos.
Thread de nível do usuário:Implementado por uma biblioteca de threads em um espaço de endereço de um processo, estas threads são invisíveis para o SO. Uma thread de nível de usuário (ULT)10 é uma unidade criada pelo usuário de execução dentro de um processo.
Processos lightweight: Um processo lightweight (LWP) pode ser visto