Kernel: mudanças entre as edições

De Caninos Loucos
Ir para navegação Ir para pesquisar
Sem resumo de edição
Sem resumo de edição
Linha 36: Linha 36:


<pre>lsblk</pre>
<pre>lsblk</pre>
para descobrir onde está montado o cartão SD
para descobrir o diretório do cartão SD
 
[[Arquivo:lsblk.png|none|658px|Resultado do comando <code>lsblk</code>. O cartão SD está mapeado em <code>/dev/mmcblk0</code>, mas em alguns casos pode estar em <code>/dev/sdaX</code>, onde X pode se 1, 2, 3...]]
'''Labrador 64 bits (core 3.0+)'''
'''Labrador 64 bits (core 3.0+)'''


Linha 59: Linha 59:


==Compilando o Kernel==
==Compilando o Kernel==
Para realizar a compilação em um sistema Debian, é necessário seguir os seguintes passos:
Para realizar a compilação em um sistema baseado em Debian, é necessário seguir os seguintes passos:


'''Instalar os pré-requisitos para a compilação'''
'''Instalar os pré-requisitos para a compilação'''
<pre>sudo apt-get update
<pre>sudo apt-get update
sudo apt-get install build-essential binutils gcc-aarch64-linux-gnu make git
sudo apt-get install build-essential binutils gcc-aarch64-linux-gnu make git
Linha 67: Linha 68:


'''Clonar o [https://github.com/caninos-loucos/labrador-aarch64-linux-4 repositório da Caninos Loucos]'''
'''Clonar o [https://github.com/caninos-loucos/labrador-aarch64-linux-4 repositório da Caninos Loucos]'''
<pre>git clone https://www.github.com/caninos-loucos/labrador-aarch64-linux-4</pre>
<pre>git clone https://www.github.com/caninos-loucos/labrador-aarch64-linux-4</pre>



Edição das 15h07min de 24 de abril de 2023

Um sistema operacional é um programa que permite a interação de um usuário com um computador além de gerenciar os seus recursos para realizar tarefas. Uma componente de um sistema operacional é o seu Kernel, componente de um sistema operacional que reúne funções como gerenciamento de memória e gerenciamento de processos. O primeiro esforço de implantar um sistema operacional para uso na labrador foi feito com o Kernel do Linux uma vez que apresenta o seu código fonte aberto e com diversas implementações de compatibilidade específica para diferentes arquiteturas de processadores e conjuntos de instruções. Dessa forma, é possível adapta-lo para apresentar compatibilidade com o sistema da Labrador.

É possível verificar o código fonte do Kernel do Linux no github.

Com isso, é possível utilizar sistemas operacionais baseados em Kernel de Linux, popularmente referido como distribuições. O termo distribuição remete a tempos incipientes da comunidade Linux em que as pessoas compartilhavam modificações feitas com adições de interfaces gráficas ou ferramentas auxiliares que complementavam as funções básicas do Kernel do Linux, assim constituindo a completude de um Sistema Operacional. Por essa natureza de compartilhamento, para a comunidade de usuários Linux, o termo distribuição acabou se tornando intercambiável com o termo Sistema Operacional.

Dessa forma, é possível utilizar distribuições baseadas no Kernel do Linux como Ubuntu, Debian, Mint, etc na labrador com o Kernel compilado oferecido em seu github, assim como é possível que você mesmo o compile.

Versão Do Kernel

Para verificar qual é a versão atual do Kernel, abra o Terminal (ctrl + alt + T) e digite:

   $ cat /proc/version


Versão do Kernel
Versão do Kernel


Pode-se verificar que neste caso a versão do Kernel é a 4.14.13.

Atualização Do Kernel

Por diversas razões pode ser necessário trocar ou atualizar o Kernel, seja para suportar novos hardwares ou mesmo melhorar o desempenho com hardwares já suportados ou ainda prover novas funcionalidades a esses hardwares já suportados. É valido observar que este processo pode causar problemas ao seu sistema.

É possível realizar a troca do Kernel de algumas maneiras, a mais simples é utilizando a versão já compilada para a Labrador, que pode ser encontrada no GitHub da Caninos Loucos. Procure os arquivos na pasta output ou output32.

Troca De Kernel Compilado

Para realizar a troca do Kernel em um sistema Debian siga os passos a seguir:

  1. Baixar os arquivos da pasta output ou output32;
  2. Baixar o script install.sh ou install32.sh do repositório caso esteja usando um sistema baseado em Debian;
  3. Executar o script correspondente ao modelo da sua Labrador;

Caso você utilize uma distribuição diferente, execute os passos:

lsblk

para descobrir o diretório do cartão SD

Resultado do comando lsblk. O cartão SD está mapeado em /dev/mmcblk0, mas em alguns casos pode estar em /dev/sdaX, onde X pode se 1, 2, 3...
Resultado do comando lsblk. O cartão SD está mapeado em /dev/mmcblk0, mas em alguns casos pode estar em /dev/sdaX, onde X pode se 1, 2, 3...

Labrador 64 bits (core 3.0+)

cd output
sudo cp Image [ponto de montagem do cartão]/linux64/boot
sudo cp v3psci.dtb [ponto de montagem do cartão]/linux64/boot
sudo cp -r lib/modules [ponto de montagem do cartão]/linux64/lib

Labrador 32 bits (core 2.X)

cd output32
sudo cp uImage [ponto de montagem do cartão]/BOOT
sudo cp kernel.dtb [ponto de montagem do cartão]/BOOT
sudo cp -r lib/modules [ponto de montagem do cartão]/SYSTEM/lib

Após esse processo a Labrador já será inicializada com o Kernel desejado.

Compilando o Kernel

Para realizar a compilação em um sistema baseado em Debian, é necessário seguir os seguintes passos:

Instalar os pré-requisitos para a compilação

sudo apt-get update
sudo apt-get install build-essential binutils gcc-aarch64-linux-gnu make git
sudo apt-get install bison flex libncurses-dev libssl-dev

Clonar o repositório da Caninos Loucos

git clone https://www.github.com/caninos-loucos/labrador-aarch64-linux-4

Compilar

Para os modelos de 64 bits, utilizar

make

ou, para o modelo de 32 bits,

make all32

Compilação incremental

Para não ser necessário recompilar todos os arquivos de uma vez, e em vez disso compilar apenas os arquivos modificados, utilizar

make kernel

para sistemas de 64 bits ou

make kernel32

para sistemas 32 bits.