Três partes compõem um sistema de computador : o hardware, o kernel do sistema eo espaço de usuário . Aplicações userlândia precisa do kernel para fazer o hardware executar as tarefas necessárias para reproduzir um arquivo de música, acessar a Internet ou escreva um relatório . Quando um aplicativo de espaço de usuário eo kernel usar uma versão diferente de um compilador ou sistema de biblioteca chave, o sistema está a ser dito " fora de sincronia ". Nos sistemas BSD Unix , você pode obter um " Userland e do kernel estão fora de mensagem de erro de sincronização " . Kernel eo processo Interações
A aplicação userland que você precisa para instalar e usar pode exigir um serviço de arquivo ou biblioteca que só é encontrada na mais recente actualização para uma biblioteca de kernel ou driver de hardware . Alguns programadores de aplicativos userland estaticamente link bibliotecas para suas aplicações. A aplicação estaticamente ligado não compila se uma biblioteca que precisa não está presente. Se um aplicativo é dinamicamente ligado a uma versão da biblioteca que você não tem , no entanto , a aplicação compila , e você não pode saber o seu sistema está fora de sincronia até que você realmente executar o aplicativo.
BSD Abordagem
sistemas BSD são distribuídos como um pacote completo que inclui o kernel e um grande número de aplicações userlândia . A vantagem dessa abordagem é que todos os aplicativos, utilitários , bibliotecas e drivers são compatíveis com uma versão específica do kernel. Além disso, todos os arquivos do kernel e fonte userland são compilados usando a mesma versão do compilador e as bibliotecas do compilador. Qualquer discrepância entre a versão de um aplicativo userland e os serviços do kernel necessários são tratados antes da distribuição BSD torna-se disponível para o público.
Linux Abordagem
contrário BSD , o código-fonte do kernel do Linux é liberado separado de todas as aplicações userlândia . Distribuições Linux como o Fedora ou Debian pode usar a mesma versão do kernel, mas estruturar seu ambiente userland de maneiras diferentes e muitas vezes incompatíveis. É possível para uma distribuição Linux para conter algumas aplicações userlândia que foram compilados para uma versão do kernel e outros que foram compilados contra outra versão do kernel.
Reconstruindo Mundo
Um usuários maneira BSD pode evitar " userland e do kernel estão fora de sincronia " erros é reconstruir todo o sistema , sempre que surge a necessidade de atualizar o kernel ou usar a versão mais recente de um driver de hardware ou aplicação userland . Este processo é chamado de " mundo de reconstrução. " A seqüência exata dos passos varia entre distribuições BSD. De acordo com o Manual do FreeBSD , no entanto, as medidas incluem o backup do sistema atual, a aquisição do código fonte para a versão BSD desejado, a construção de um novo compilador de código fonte, compilar e instalar o novo kernel, em seguida, criar um novo espaço de usuário , totalmente sincronizadas .