Por que devo construir um kernel personalizado? [fechadas]

7

Vários dos meus colegas de trabalho estão criando kernels personalizados para suas estações de trabalho e servidores.

Quais vantagens / desvantagens existem para criar um kernel personalizado?

Por que eu deveria criar um kernel personalizado?

    
por tbenz9 12.09.2013 / 19:49

2 respostas

6

Existem várias razões pelas quais alguém pode escolher compilar manualmente um kernel. Vou tentar listar as que eu posso pensar, fora do topo da minha cabeça aqui:

  1. Um motivo frequentemente citado, mas muitas vezes errado, é que ele funcionará mais rápido. Ao personalizar os sinalizadores do compilador para o sistema específico, você poderia teoricamente criar um melhor código de bytes. Mas com os compiladores modernos, este não é frequentemente o caso.
  2. Alterar determinados sinalizadores de tempo de compilação. Por exemplo: Para compilar o kernel com informações de depuração incluídas. Embora isso possa não se aplicar no seu caso.
  3. Para remover partes desnecessárias do kernel. Mas, como afirmado pelo @jordanm, essas partes são quase sempre módulos e podem não importar. Mas, em alguns casos, a diferença pode ser significativa.
  4. Para fins acadêmicos. Compilar seu próprio kernel ajuda você a aprender muito sobre o processo de construção. Além disso, é possível aprender sobre as várias opções de configuração.
  5. Para substituir determinados módulos. Por exemplo, para usar o patchset con kolivas, patchset em tempo real, etc.
  6. Em determinadas situações, especialmente em cenários incorporados, é possível adicionar chamadas de sistema personalizadas ao kernel. Isso exigiria uma compilação personalizada também.
  7. Algumas pessoas gostam de mim, adoram mexer no sistema. E mudará aleatoriamente algumas opções de configuração para ver como o sistema final responde a elas. No entanto, essas pessoas são poucas e raras.
por 12.09.2013 / 22:14
4

Ao criar um kernel personalizado, você pode remover algumas partes desnecessárias do kernel para reduzir a sobrecarga (dispositivos embeded) ou falhas de segurança (servidores).

    
por 12.09.2013 / 20:00