xref: /linux/Documentation/translations/pt_BR/process/debugging/index.rst (revision 14c897740388216acd59477a382de327d5e27ba4)
1*7acf3769SLucas Adryell Ramalho.. SPDX-License-Identifier: GPL-2.0
2*7acf3769SLucas Adryell Ramalho
3*7acf3769SLucas Adryell Ramalho=======================================================
4*7acf3769SLucas Adryell RamalhoDicas de depuração para desenvolvedores do Kernel Linux
5*7acf3769SLucas Adryell Ramalho=======================================================
6*7acf3769SLucas Adryell Ramalho
7*7acf3769SLucas Adryell RamalhoGuias gerais
8*7acf3769SLucas Adryell Ramalho------------
9*7acf3769SLucas Adryell Ramalho
10*7acf3769SLucas Adryell RamalhoTodolist:
11*7acf3769SLucas Adryell Ramalho
12*7acf3769SLucas Adryell Ramalho*   driver_development_debugging_guide
13*7acf3769SLucas Adryell Ramalho*   gdb-kernel-debugging
14*7acf3769SLucas Adryell Ramalho*   kgdb
15*7acf3769SLucas Adryell Ramalho*   userspace_debugging_guide
16*7acf3769SLucas Adryell Ramalho
17*7acf3769SLucas Adryell RamalhoGuias específicos de subsistemas
18*7acf3769SLucas Adryell Ramalho--------------------------------
19*7acf3769SLucas Adryell Ramalho
20*7acf3769SLucas Adryell RamalhoTodolist:
21*7acf3769SLucas Adryell Ramalho
22*7acf3769SLucas Adryell Ramalho*   media_specific_debugging_guide
23*7acf3769SLucas Adryell Ramalho
24*7acf3769SLucas Adryell RamalhoDicas gerais de depuração
25*7acf3769SLucas Adryell Ramalho-------------------------
26*7acf3769SLucas Adryell Ramalho
27*7acf3769SLucas Adryell RamalhoDependendo do problema, um conjunto diferente de ferramentas está disponível
28*7acf3769SLucas Adryell Ramalhopara rastrear o problema ou até mesmo para perceber se há algum problema em
29*7acf3769SLucas Adryell Ramalhoprimeiro lugar.
30*7acf3769SLucas Adryell Ramalho
31*7acf3769SLucas Adryell RamalhoComo primeiro passo, você precisa descobrir que tipo de problema você deseja
32*7acf3769SLucas Adryell Ramalhodepurar. Dependendo da resposta, sua metodologia e escolha de ferramentas podem
33*7acf3769SLucas Adryell Ramalhovariar.
34*7acf3769SLucas Adryell Ramalho
35*7acf3769SLucas Adryell RamalhoPreciso depurar com acesso limitado?
36*7acf3769SLucas Adryell Ramalho------------------------------------
37*7acf3769SLucas Adryell Ramalho
38*7acf3769SLucas Adryell RamalhoVocê possui acesso limitado à máquina ou não consegue parar a execução em
39*7acf3769SLucas Adryell Ramalhoandamento?
40*7acf3769SLucas Adryell Ramalho
41*7acf3769SLucas Adryell RamalhoNesse caso, sua capacidade de depuração depende do suporte de depuração
42*7acf3769SLucas Adryell Ramalhoembutido no kernel fornecido pela distribuição.
43*7acf3769SLucas Adryell RamalhoO :doc:`/process/debugging/userspace_debugging_guide` fornece uma breve visão
44*7acf3769SLucas Adryell Ramalhogeral sobre uma variedade de ferramentas de depuração possíveis nessa situação.
45*7acf3769SLucas Adryell RamalhoVocê pode verificar a capacidade do seu kernel, na maioria dos casos, olhando o
46*7acf3769SLucas Adryell Ramalhoarquivo de configuração dentro do diretório /boot.
47*7acf3769SLucas Adryell Ramalho
48*7acf3769SLucas Adryell RamalhoEu tenho acesso root ao sistema?
49*7acf3769SLucas Adryell Ramalho--------------------------------
50*7acf3769SLucas Adryell Ramalho
51*7acf3769SLucas Adryell RamalhoVocê consegue facilmente substituir o módulo em questão ou instalar um novo
52*7acf3769SLucas Adryell Ramalhokernel?
53*7acf3769SLucas Adryell Ramalho
54*7acf3769SLucas Adryell RamalhoNesse caso, sua gama de ferramentas disponíveis é muito maior. Você
55*7acf3769SLucas Adryell Ramalhopode encontrar as ferramentas
56*7acf3769SLucas Adryell Ramalhono :doc:`/process/debugging/driver_development_debugging_guide`.
57*7acf3769SLucas Adryell Ramalho
58*7acf3769SLucas Adryell RamalhoA temporização é um fator?
59*7acf3769SLucas Adryell Ramalho--------------------------
60*7acf3769SLucas Adryell Ramalho
61*7acf3769SLucas Adryell RamalhoÉ importante entender se o problema que você deseja depurar se manifesta
62*7acf3769SLucas Adryell Ramalhode forma consistente (ou seja, para um determinado conjunto de entradas, você
63*7acf3769SLucas Adryell Ramalhosempre obtém a mesma saída incorreta) ou de forma inconsistente. Se ele se
64*7acf3769SLucas Adryell Ramalhomanifestar de forma inconsistente, algum fator de temporização pode estar em
65*7acf3769SLucas Adryell Ramalhojogo. Se a inserção de atrasos no código alterar o comportamento, é bastante
66*7acf3769SLucas Adryell Ramalhoprovável que a temporização seja um fator determinante.
67*7acf3769SLucas Adryell Ramalho
68*7acf3769SLucas Adryell RamalhoQuando a temporização altera o resultado da execução do código, o uso de um
69*7acf3769SLucas Adryell Ramalhosimples printk() para fins de depuração pode não funcionar; uma alternativa
70*7acf3769SLucas Adryell Ramalhosemelhante é usar trace_printk(), que registra as mensagens de depuração no
71*7acf3769SLucas Adryell Ramalhoarquivo de rastreamento, em vez de no log do kernel.
72*7acf3769SLucas Adryell Ramalho
73*7acf3769SLucas Adryell Ramalho**Copyright** ©2024 : Collabora
74