sphinx.addnodesdocument)}( rawsource children](translations
LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextEnglish
}parenthsba
attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget/process/howtomodnameN classnameNrefexplicitutagnamehhhubh)}(hhh]hChinese (Simplified)
}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget!/translations/zh_CN/process/howtomodnameN classnameNrefexplicituh1hhhubh)}(hhh]hChinese (Traditional)
}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget!/translations/zh_TW/process/howtomodnameN classnameNrefexplicituh1hhhubh)}(hhh]hItalian
}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget!/translations/it_IT/process/howtomodnameN classnameNrefexplicituh1hhhubh)}(hhh]hJapanese
}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget!/translations/ja_JP/process/howtomodnameN classnameNrefexplicituh1hhhubh)}(hhh]hKorean
}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget!/translations/ko_KR/process/howtomodnameN classnameNrefexplicituh1hhhubh)}(hhh]hSpanish
}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget!/translations/sp_SP/process/howtomodnameN classnameNrefexplicituh1hhhubeh}(h]h ]h"]h$]h&]current_languagePortuguese (Brazilian)uh1h
hh _documenthsourceNlineNubhcomment)}(h SPDX-License-Identifier: GPL-2.0h]h SPDX-License-Identifier: GPL-2.0
}hhˇsbah}(h]h ]h"]h$]h&] xml:spacepreserveuh1hľhhh˛hhłN/var/lib/git/docbuild/linux/Documentation/translations/pt_BR/process/howto.rsth´Kubhtarget)}(h.. _pt_process_howto:h]h}(h]h ]h"]h$]h&]refidpt-process-howtouh1hČh´Khhh˛hhłhÇubhsection)}(hhh](htitle)}(h,COMO FAZER o desenvolvimento do kernel Linuxh]h,COMO FAZER o desenvolvimento do kernel Linux
}(hhÝh˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhhŘh˛hhłhÇh´Kubh paragraph)}(hX` Este ĂŠ o documento definitivo sobre este tĂłpico. Ele contĂŠm instruçþes
sobre como se tornar um desenvolvedor do kernel Linux e como aprender a
trabalhar com a comunidade de desenvolvimento do kernel Linux. Ele tenta
não conter nada relacionado aos aspectos tÊcnicos da programação do kernel,
mas ajudarå a apontar a direção certa para isso.h]hX` Este Ê o documento definitivo sobre este tópico. Ele contÊm instruçþes
sobre como se tornar um desenvolvedor do kernel Linux e como aprender a
trabalhar com a comunidade de desenvolvimento do kernel Linux. Ele tenta
não conter nada relacionado aos aspectos tÊcnicos da programação do kernel,
mas ajudarå a apontar a direção certa para isso.
}(hhíh˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KhhŘh˛hubhě)}(hSe algo neste documento ficar desatualizado, por favor, envie patches para
o mantenedor deste arquivo, que estĂĄ listado no final do documento.h]hSe algo neste documento ficar desatualizado, por favor, envie patches para
o mantenedor deste arquivo, que estĂĄ listado no final do documento.
}(hhűh˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KhhŘh˛hubh×)}(hhh](hÜ)}(hIntroduçãoh]hIntrodução
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhj h˛hhłhÇh´Kubhě)}(hXĐ EntĂŁo, vocĂŞ quer aprender como se tornar um desenvolvedor do kernel Linux?
Ou o seu gerente lhe disse: "VĂĄ escrever um driver Linux para este
dispositivo". O objetivo deste documento ĂŠ ensinar tudo o que vocĂŞ precisa
saber para conseguir isso, descrevendo o processo pelo qual vocĂŞ deve passar
e oferecendo dicas sobre como trabalhar com a comunidade. Ele tambĂŠm tentarĂĄ
explicar algumas das razĂľes pelas quais a comunidade trabalha da forma que
trabalha.h]hXÔ EntĂŁo, vocĂŞ quer aprender como se tornar um desenvolvedor do kernel Linux?
Ou o seu gerente lhe disse: âVĂĄ escrever um driver Linux para este
dispositivoâ. O objetivo deste documento ĂŠ ensinar tudo o que vocĂŞ precisa
saber para conseguir isso, descrevendo o processo pelo qual vocĂŞ deve passar
e oferecendo dicas sobre como trabalhar com a comunidade. Ele tambĂŠm tentarĂĄ
explicar algumas das razĂľes pelas quais a comunidade trabalha da forma que
trabalha.
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Khj h˛hubhě)}(hXý O kernel ĂŠ escrito principalmente em C, com algumas partes dependentes de
arquitetura escritas em assembly. Um bom entendimento de C ĂŠ necessĂĄrio para
o desenvolvimento do kernel. O conhecimento de Assembly (de qualquer
arquitetura) nĂŁo ĂŠ obrigatĂłrio, a menos que vocĂŞ planeje fazer
desenvolvimento de baixo nĂvel para essa arquitetura especĂfica. Embora nĂŁo
sejam um substituto para uma formação sólida em C e/ou anos de experiência,
os seguintes livros sĂŁo bons para, no mĂnimo, referĂŞncia:h]hXý O kernel ĂŠ escrito principalmente em C, com algumas partes dependentes de
arquitetura escritas em assembly. Um bom entendimento de C ĂŠ necessĂĄrio para
o desenvolvimento do kernel. O conhecimento de Assembly (de qualquer
arquitetura) nĂŁo ĂŠ obrigatĂłrio, a menos que vocĂŞ planeje fazer
desenvolvimento de baixo nĂvel para essa arquitetura especĂfica. Embora nĂŁo
sejam um substituto para uma formação sólida em C e/ou anos de experiência,
os seguintes livros sĂŁo bons para, no mĂnimo, referĂŞncia:
}(hj( h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Khj h˛hubhblock_quote)}(hĂ- "The C Programming Language" por Kernighan e Ritchie [Prentice Hall]
- "Practical C Programming" por Steve Oualline [O'Reilly]
- "C: A Reference Manual" por Harbison e Steele [Prentice Hall]
h]hbullet_list)}(hhh](h list_item)}(hE"The C Programming Language" por Kernighan e Ritchie [Prentice Hall]
h]hě)}(hD"The C Programming Language" por Kernighan e Ritchie [Prentice Hall]h]hHâThe C Programming Languageâ por Kernighan e Ritchie [Prentice Hall]
}(hjG h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´K%hjC ubah}(h]h ]h"]h$]h&]uh1jA hj> ubjB )}(h8"Practical C Programming" por Steve Oualline [O'Reilly]
h]hě)}(h7"Practical C Programming" por Steve Oualline [O'Reilly]h]h=âPractical C Programmingâ por Steve Oualline [OâReilly]
}(hj_ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´K'hj[ ubah}(h]h ]h"]h$]h&]uh1jA hj> ubjB )}(h>"C: A Reference Manual" por Harbison e Steele [Prentice Hall]
h]hě)}(h="C: A Reference Manual" por Harbison e Steele [Prentice Hall]h]hAâC: A Reference Manualâ por Harbison e Steele [Prentice Hall]
}(hjw h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´K)hjs ubah}(h]h ]h"]h$]h&]uh1jA hj> ubeh}(h]h ]h"]h$]h&]bullet-uh1j< hłhÇh´K%hj8 ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´K%hj h˛hubhě)}(hXÄ O kernel ĂŠ escrito usando o GNU C e a GNU toolchain. Embora ele siga o
padrĂŁo ISO C11, ele utiliza uma sĂŠrie de extensĂľes que nĂŁo estĂŁo presentes
no padrĂŁo. O kernel ĂŠ um ambiente C independente (freestanding), sem
dependĂŞncia da biblioteca C padrĂŁo (libc), portanto, algumas partes do
padrĂŁo C nĂŁo sĂŁo suportadas. DivisĂľes arbitrĂĄrias de "long long" e ponto
flutuante nĂŁo sĂŁo permitidas. Ăs vezes, pode ser difĂcil entender as
suposiçþes que o kernel faz sobre a toolchain e as extensþes que ele utiliza
e, infelizmente, nĂŁo existe uma referĂŞncia definitiva para elas. Por favor,
verifique as påginas de informaçþes do gcc (`info gcc`) para obter algumas
informaçþes sobre elas.h](hX O kernel Ê escrito usando o GNU C e a GNU toolchain. Embora ele siga o
padrĂŁo ISO C11, ele utiliza uma sĂŠrie de extensĂľes que nĂŁo estĂŁo presentes
no padrĂŁo. O kernel ĂŠ um ambiente C independente (freestanding), sem
dependĂŞncia da biblioteca C padrĂŁo (libc), portanto, algumas partes do
padrĂŁo C nĂŁo sĂŁo suportadas. DivisĂľes arbitrĂĄrias de âlong longâ e ponto
flutuante nĂŁo sĂŁo permitidas. Ăs vezes, pode ser difĂcil entender as
suposiçþes que o kernel faz sobre a toolchain e as extensþes que ele utiliza
e, infelizmente, nĂŁo existe uma referĂŞncia definitiva para elas. Por favor,
verifique as påginas de informaçþes do gcc (
}(hj h˛hhłNh´Nubhtitle_reference)}(h
`info gcc`h]hinfo gcc
}(hjŁ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1jĄ hj ubh.) para obter algumas
informaçþes sobre elas.
}(hj h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´K+hj h˛hubhě)}(hX9 Por favor, lembre-se de que vocĂŞ estĂĄ tentando aprender como trabalhar com a
comunidade de desenvolvimento existente. Ă um grupo diversificado de pessoas,
com altos padrþes de codificação, estilo e procedimento. Esses padrþes foram
criados ao longo do tempo com base no que se descobriu funcionar melhor para
uma equipe tĂŁo grande e geograficamente dispersa. Tente aprender o mĂĄximo
possĂvel sobre esses padrĂľes com antecedĂŞncia, pois eles estĂŁo bem
documentados; nĂŁo espere que as pessoas se adaptem a vocĂŞ ou Ă forma de fazer
as coisas da sua empresa.h]hX9 Por favor, lembre-se de que vocĂŞ estĂĄ tentando aprender como trabalhar com a
comunidade de desenvolvimento existente. Ă um grupo diversificado de pessoas,
com altos padrþes de codificação, estilo e procedimento. Esses padrþes foram
criados ao longo do tempo com base no que se descobriu funcionar melhor para
uma equipe tĂŁo grande e geograficamente dispersa. Tente aprender o mĂĄximo
possĂvel sobre esses padrĂľes com antecedĂŞncia, pois eles estĂŁo bem
documentados; nĂŁo espere que as pessoas se adaptem a vocĂŞ ou Ă forma de fazer
as coisas da sua empresa.
}(hjť h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´K6hj h˛hubeh}(h]
introducaoah ]h"]introduçãoah$]h&]uh1hÖhhŘh˛hhłhÇh´Kubh×)}(hhh](hÜ)}(hQuestĂľes Legaish]hQuestĂľes Legais
}(hjÔ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhjŃ h˛hhłhÇh´KAubhě)}(hXk O cĂłdigo-fonte do kernel Linux ĂŠ lançado sob a GPL. Por favor, veja o arquivo
COPYING no diretĂłrio principal da ĂĄrvore de fontes. As regras de licenciamento
do kernel Linux e como usar os identificadores `SPDX `_ no
cĂłdigo-fonte estĂŁo descritas em :ref:`Documentation/process/license-rules.rst `.
Se você tiver mais perguntas sobre a licença, por favor, entre em contato com
um advogado e nĂŁo pergunte na lista de discussĂŁo do kernel Linux. As pessoas
nas listas de discussĂŁo nĂŁo sĂŁo advogados e vocĂŞ nĂŁo deve confiar em suas
declaraçþes sobre assuntos jurĂdicos.h](hŃO cĂłdigo-fonte do kernel Linux ĂŠ lançado sob a GPL. Por favor, veja o arquivo
COPYING no diretĂłrio principal da ĂĄrvore de fontes. As regras de licenciamento
do kernel Linux e como usar os identificadores
}(hjâ h˛hhłNh´Nubh reference)}(h`SPDX `_h]hSPDX
}(hjě h˛hhłNh´Nubah}(h]h ]h"]h$]h&]nameSPDXrefurihttps://spdx.org/uh1ję hjâ ubhÉ)}(h h]h}(h]spdxah ]h"]spdxah$]h&]refurijý uh1hČ
referencedKhjâ ubh& no
cĂłdigo-fonte estĂŁo descritas em
}(hjâ h˛hhłNh´Nubh)}(hA:ref:`Documentation/process/license-rules.rst `h]hinline)}(hj h]h'Documentation/process/license-rules.rst
}(hj h˛hhłNh´Nubah}(h]h ](xrefstdstd-refeh"]h$]h&]uh1j hj ubah}(h]h ]h"]h$]h&]refdoc translations/pt_BR/process/howto refdomainj! reftyperefrefexplicitrefwarn reftargetkernel_licensinguh1hhłhÇh´KChjâ ubhX .
Se você tiver mais perguntas sobre a licença, por favor, entre em contato com
um advogado e nĂŁo pergunte na lista de discussĂŁo do kernel Linux. As pessoas
nas listas de discussĂŁo nĂŁo sĂŁo advogados e vocĂŞ nĂŁo deve confiar em suas
declaraçþes sobre assuntos jurĂdicos.
}(hjâ h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´KChjŃ h˛hubhě)}(h?Para perguntas e respostas comuns sobre a GPL, por favor, veja:h]h?Para perguntas e respostas comuns sobre a GPL, por favor, veja:
}(hj? h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KLhjŃ h˛hubj7 )}(h+https://www.gnu.org/licenses/gpl-faq.html
h]hě)}(h)https://www.gnu.org/licenses/gpl-faq.htmlh]jë )}(hjS h]h)https://www.gnu.org/licenses/gpl-faq.html
}(hjU h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurijS uh1ję hjQ ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KNhjM ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´KNhjŃ h˛hubeh}(h]questoes-legaisah ]h"]questĂľes legaisah$]h&]uh1hÖhhŘh˛hhłhÇh´KAubh×)}(hhh](hÜ)}(hDocumentaçãoh]hDocumentação
}(hjz h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhjw h˛hhłhÇh´KRubhě)}(hX A ĂĄrvore de fontes do kernel Linux possui uma vasta gama de documentos que
sĂŁo inestimĂĄveis para aprender como interagir com a comunidade do kernel.
Quando novos recursos sĂŁo adicionados ao kernel, recomenda-se que novos
arquivos de documentação tambÊm sejam adicionados explicando como usar o
recurso. Quando uma mudança no kernel faz com que a interface que o kernel
expþe para o espaço do usuårio (userspace) mude, recomenda-se que você envie
a informação ou um patch para as påginas de manual explicando a mudança para
o mantenedor das pĂĄginas de manual em alx@kernel.org, e coloque em cĂłpia (CC)
a lista linux-api@vger.kernel.org.h](hXB A ĂĄrvore de fontes do kernel Linux possui uma vasta gama de documentos que
sĂŁo inestimĂĄveis para aprender como interagir com a comunidade do kernel.
Quando novos recursos sĂŁo adicionados ao kernel, recomenda-se que novos
arquivos de documentação tambÊm sejam adicionados explicando como usar o
recurso. Quando uma mudança no kernel faz com que a interface que o kernel
expþe para o espaço do usuårio (userspace) mude, recomenda-se que você envie
a informação ou um patch para as påginas de manual explicando a mudança para
o mantenedor das pĂĄginas de manual em
}(hj h˛hhłNh´Nubjë )}(halx@kernel.orgh]halx@kernel.org
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurimailto:alx@kernel.orguh1ję hj ubh#, e coloque em cĂłpia (CC)
a lista
}(hj h˛hhłNh´Nubjë )}(hlinux-api@vger.kernel.orgh]hlinux-api@vger.kernel.org
}(hj¤ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refuri mailto:linux-api@vger.kernel.orguh1ję hj ubh.
}(hj h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´KThjw h˛hubhě)}(hnAqui estĂĄ uma lista de arquivos que estĂŁo na ĂĄrvore de fontes do kernel e
que sĂŁo de leitura obrigatĂłria:h]hnAqui estĂĄ uma lista de arquivos que estĂŁo na ĂĄrvore de fontes do kernel e
que sĂŁo de leitura obrigatĂłria:
}(hjž h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´K^hjw h˛hubj7 )}(hX :ref:`Documentation/admin-guide/README.rst `
Este arquivo fornece um breve histĂłrico sobre o kernel Linux e descreve
o que ĂŠ necessĂĄrio fazer para configurar e compilar o kernel. Pessoas
que são novas no kernel devem começar por aqui.
:doc:`changes`
Este arquivo fornece uma lista das versĂľes mĂnimas de vĂĄrios pacotes de
software que sĂŁo necessĂĄrios para compilar e executar o kernel com
sucesso.
:ref:`Documentation/process/coding-style.rst `
Este documento descreve o estilo de codificação do kernel Linux e parte
da fundamentação por trås dele. Espera-se que todo código novo siga as
diretrizes deste documento. A maioria dos mantenedores apenas aceitarĂĄ
patches se essas regras forem seguidas, e muitas pessoas apenas
revisarĂŁo o cĂłdigo se ele estiver no estilo adequado.
:ref:`Documentation/process/submitting-patches.rst `
Este arquivo descreve em detalhes explĂcitos como criar e enviar
um patch com sucesso, incluindo (mas nĂŁo limitado a):
- ConteĂşdo do e-mail
- Formato do e-mail
- Para quem enviĂĄ-lo
Seguir estas regras nĂŁo garantirĂĄ o sucesso (jĂĄ que todos os patches
estĂŁo sujeitos a um escrutĂnio de conteĂşdo e estilo), mas nĂŁo segui-las
quase sempre o impedirĂĄ.
h]hdefinition_list)}(hhh](hdefinition_list_item)}(hř:ref:`Documentation/admin-guide/README.rst `
Este arquivo fornece um breve histĂłrico sobre o kernel Linux e descreve
o que ĂŠ necessĂĄrio fazer para configurar e compilar o kernel. Pessoas
que são novas no kernel devem começar por aqui.
h](hterm)}(h4:ref:`Documentation/admin-guide/README.rst `h]h)}(hjß h]j )}(hjß h]h$Documentation/admin-guide/README.rst
}(hjä h˛hhłNh´Nubah}(h]h ](j stdstd-refeh"]h$]h&]uh1j hjá ubah}(h]h ]h"]h$]h&]refdocj- refdomainjî reftyperefrefexplicitrefwarnj3 readmeuh1hhłhÇh´KdhjÝ ubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´Kdhj× ubh
definition)}(hhh]hě)}(hÂEste arquivo fornece um breve histĂłrico sobre o kernel Linux e descreve
o que ĂŠ necessĂĄrio fazer para configurar e compilar o kernel. Pessoas
que sĂŁo novas no kernel devem começar por aqui.h]hÂEste arquivo fornece um breve histĂłrico sobre o kernel Linux e descreve
o que ĂŠ necessĂĄrio fazer para configurar e compilar o kernel. Pessoas
que são novas no kernel devem começar por aqui.
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Kbhj ubah}(h]h ]h"]h$]h&]uh1j hj× ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´KdhjŇ ubjÖ )}(h¨:doc:`changes`
Este arquivo fornece uma lista das versĂľes mĂnimas de vĂĄrios pacotes de
software que sĂŁo necessĂĄrios para compilar e executar o kernel com
sucesso.
h](jÜ )}(h:doc:`changes`h]h)}(hj+ h]j )}(hj+ h]hchanges
}(hj0 h˛hhłNh´Nubah}(h]h ](j stdstd-doceh"]h$]h&]uh1j hj- ubah}(h]h ]h"]h$]h&]refdocj- refdomainj: reftypedocrefexplicitrefwarnj3 changesuh1hhłhÇh´Kihj) ubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´Kihj% ubj )}(hhh]hě)}(hEste arquivo fornece uma lista das versĂľes mĂnimas de vĂĄrios pacotes de
software que sĂŁo necessĂĄrios para compilar e executar o kernel com
sucesso.h]hEste arquivo fornece uma lista das versĂľes mĂnimas de vĂĄrios pacotes de
software que sĂŁo necessĂĄrios para compilar e executar o kernel com
sucesso.
}(hjU h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KghjR ubah}(h]h ]h"]h$]h&]uh1j hj% ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´KihjŇ ubjÖ )}(hX :ref:`Documentation/process/coding-style.rst `
Este documento descreve o estilo de codificação do kernel Linux e parte
da fundamentação por trås dele. Espera-se que todo código novo siga as
diretrizes deste documento. A maioria dos mantenedores apenas aceitarĂĄ
patches se essas regras forem seguidas, e muitas pessoas apenas
revisarĂŁo o cĂłdigo se ele estiver no estilo adequado.
h](jÜ )}(h;:ref:`Documentation/process/coding-style.rst `h]h)}(hju h]j )}(hju h]h&Documentation/process/coding-style.rst
}(hjz h˛hhłNh´Nubah}(h]h ](j stdstd-refeh"]h$]h&]uh1j hjw ubah}(h]h ]h"]h$]h&]refdocj- refdomainj reftyperefrefexplicitrefwarnj3 codingstyleuh1hhłhÇh´Kphjs ubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´Kphjo ubj )}(hhh]hě)}(hXT Este documento descreve o estilo de codificação do kernel Linux e parte
da fundamentação por trås dele. Espera-se que todo código novo siga as
diretrizes deste documento. A maioria dos mantenedores apenas aceitarĂĄ
patches se essas regras forem seguidas, e muitas pessoas apenas
revisarão o código se ele estiver no estilo adequado.h]hXT Este documento descreve o estilo de codificação do kernel Linux e parte
da fundamentação por trås dele. Espera-se que todo código novo siga as
diretrizes deste documento. A maioria dos mantenedores apenas aceitarĂĄ
patches se essas regras forem seguidas, e muitas pessoas apenas
revisarĂŁo o cĂłdigo se ele estiver no estilo adequado.
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Klhj ubah}(h]h ]h"]h$]h&]uh1j hjo ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´KphjŇ ubjÖ )}(hX˝ :ref:`Documentation/process/submitting-patches.rst `
Este arquivo descreve em detalhes explĂcitos como criar e enviar
um patch com sucesso, incluindo (mas nĂŁo limitado a):
- ConteĂşdo do e-mail
- Formato do e-mail
- Para quem enviĂĄ-lo
Seguir estas regras nĂŁo garantirĂĄ o sucesso (jĂĄ que todos os patches
estĂŁo sujeitos a um escrutĂnio de conteĂşdo e estilo), mas nĂŁo segui-las
quase sempre o impedirĂĄ.
h](jÜ )}(hG:ref:`Documentation/process/submitting-patches.rst `h]h)}(hjż h]j )}(hjż h]h,Documentation/process/submitting-patches.rst
}(hjÄ h˛hhłNh´Nubah}(h]h ](j stdstd-refeh"]h$]h&]uh1j hjÁ ubah}(h]h ]h"]h$]h&]refdocj- refdomainjÎ reftyperefrefexplicitrefwarnj3 submittingpatchesuh1hhłhÇh´K|hj˝ ubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´K|hjš ubj )}(hhh](hě)}(hxEste arquivo descreve em detalhes explĂcitos como criar e enviar
um patch com sucesso, incluindo (mas nĂŁo limitado a):h]hxEste arquivo descreve em detalhes explĂcitos como criar e enviar
um patch com sucesso, incluindo (mas nĂŁo limitado a):
}(hjé h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Kshjć ubj7 )}(h@- ConteĂşdo do e-mail
- Formato do e-mail
- Para quem enviĂĄ-lo
h]j= )}(hhh](jB )}(hConteĂşdo do e-mailh]hě)}(hj h]hConteĂşdo do e-mail
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Kvhjţ ubah}(h]h ]h"]h$]h&]uh1jA hjű ubjB )}(hFormato do e-mailh]hě)}(hj h]hFormato do e-mail
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Kwhj ubah}(h]h ]h"]h$]h&]uh1jA hjű ubjB )}(hPara quem enviĂĄ-lo
h]hě)}(hPara quem enviĂĄ-loh]hPara quem enviĂĄ-lo
}(hj0 h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Kxhj, ubah}(h]h ]h"]h$]h&]uh1jA hjű ubeh}(h]h ]h"]h$]h&]j j uh1j< hłhÇh´Kvhj÷ ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Kvhjć ubhě)}(hSeguir estas regras nĂŁo garantirĂĄ o sucesso (jĂĄ que todos os patches
estĂŁo sujeitos a um escrutĂnio de conteĂşdo e estilo), mas nĂŁo segui-las
quase sempre o impedirĂĄ.h]hSeguir estas regras nĂŁo garantirĂĄ o sucesso (jĂĄ que todos os patches
estĂŁo sujeitos a um escrutĂnio de conteĂşdo e estilo), mas nĂŁo segui-las
quase sempre o impedirĂĄ.
}(hjP h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Kzhjć ubeh}(h]h ]h"]h$]h&]uh1j hjš ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´K|hjŇ ubeh}(h]h ]h"]h$]h&]uh1jĐ hjĚ ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Kahjw h˛hubhě)}(hHOutras excelentes descriçþes de como criar patches adequadamente sĂŁo:h]hHOutras excelentes descriçþes de como criar patches adequadamente sĂŁo:
}(hjv h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´K~hjw h˛hubj7 )}(hX "O Patch Perfeito"
https://www.ozlabs.org/~akpm/stuff/tpp.txt
"Formato de SubmissĂŁo de Patch do Kernel Linux"
https://web.archive.org/web/20180829112450/http://linux.yyz.us/patch-format.html
:ref:`Documentation/process/stable-api-nonsense.rst `
Este arquivo descreve a justificativa por trĂĄs da decisĂŁo consciente de
nĂŁo ter uma API estĂĄvel dentro do kernel, incluindo pontos como:
- Camadas de adaptação (shim-layers) de subsistemas (para compatibilidade?)
- Portabilidade de drivers entre sistemas operacionais.
- Mitigação de mudanças råpidas dentro da årvore de fontes do kernel
(ou impedimento de mudanças råpidas).
Este documento ĂŠ crucial para compreender a filosofia de desenvolvimento
do Linux e ĂŠ muito importante para pessoas que estĂŁo migrando para o
Linux vindas do desenvolvimento em outros Sistemas Operacionais.
:ref:`Documentation/process/security-bugs.rst `
Se você acredita ter encontrado um problema de segurança no kernel Linux,
por favor, siga os passos descritos neste documento para ajudar a
notificar os desenvolvedores do kernel e auxiliar na resolução do problema.
:ref:`Documentation/process/management-style.rst `
Este documento descreve como os mantenedores do kernel Linux operam e o
ethos compartilhado por trĂĄs de suas metodologias. Esta ĂŠ uma leitura
importante para qualquer pessoa nova no desenvolvimento do kernel (ou
para qualquer pessoa simplesmente curiosa sobre isso), pois resolve muitos
equĂvocos comuns e confusĂľes sobre o comportamento Ăşnico dos mantenedores
do kernel.
:ref:`Documentation/process/stable-kernel-rules.rst `
Este arquivo descreve as regras sobre como ocorrem os lançamentos das
versĂľes estĂĄveis (stable) do kernel e o que fazer se vocĂŞ desejar que
uma alteração seja incluĂda em um desses lançamentos.
:ref:`Documentation/process/kernel-docs.rst `
Uma lista de documentação externa que pertence ao desenvolvimento do
kernel. Por favor, consulte esta lista caso nĂŁo encontre o que estĂĄ
procurando dentro da documentação interna do kernel.
:ref:`Documentation/process/applying-patches.rst `
Uma boa introdução descrevendo exatamente o que Ê um patch e como
aplicĂĄ-lo aos diferentes ramos (branches) de desenvolvimento do kernel.
h](j7 )}(hŃ"O Patch Perfeito"
https://www.ozlabs.org/~akpm/stuff/tpp.txt
"Formato de SubmissĂŁo de Patch do Kernel Linux"
https://web.archive.org/web/20180829112450/http://linux.yyz.us/patch-format.html
h]jŃ )}(hhh](jÖ )}(h>"O Patch Perfeito"
https://www.ozlabs.org/~akpm/stuff/tpp.txt
h](jÜ )}(h"O Patch Perfeito"h]hâO Patch Perfeitoâ
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´Khj ubj )}(hhh]hě)}(h*https://www.ozlabs.org/~akpm/stuff/tpp.txth]jë )}(hjŚ h]h*https://www.ozlabs.org/~akpm/stuff/tpp.txt
}(hj¨ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurijŚ uh1ję hj¤ ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KhjĄ ubah}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´Khj ubjÖ )}(h"Formato de SubmissĂŁo de Patch do Kernel Linux"
https://web.archive.org/web/20180829112450/http://linux.yyz.us/patch-format.html
h](jÜ )}(h0"Formato de SubmissĂŁo de Patch do Kernel Linux"h]h4âFormato de SubmissĂŁo de Patch do Kernel Linuxâ
}(hjĚ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´KhjČ ubj )}(hhh]hě)}(hPhttps://web.archive.org/web/20180829112450/http://linux.yyz.us/patch-format.htmlh]jë )}(hjß h]hPhttps://web.archive.org/web/20180829112450/http://linux.yyz.us/patch-format.html
}(hjá h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurijß uh1ję hjÝ ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KhjÚ ubah}(h]h ]h"]h$]h&]uh1j hjČ ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´Khj ubeh}(h]h ]h"]h$]h&]uh1jĐ hj ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Khj ubjŃ )}(hhh](jÖ )}(hXŽ :ref:`Documentation/process/stable-api-nonsense.rst `
Este arquivo descreve a justificativa por trĂĄs da decisĂŁo consciente de
nĂŁo ter uma API estĂĄvel dentro do kernel, incluindo pontos como:
- Camadas de adaptação (shim-layers) de subsistemas (para compatibilidade?)
- Portabilidade de drivers entre sistemas operacionais.
- Mitigação de mudanças råpidas dentro da årvore de fontes do kernel
(ou impedimento de mudanças råpidas).
Este documento ĂŠ crucial para compreender a filosofia de desenvolvimento
do Linux e ĂŠ muito importante para pessoas que estĂŁo migrando para o
Linux vindas do desenvolvimento em outros Sistemas Operacionais.
h](jÜ )}(hJ:ref:`Documentation/process/stable-api-nonsense.rst `h]h)}(hj h]j )}(hj h]h-Documentation/process/stable-api-nonsense.rst
}(hj h˛hhłNh´Nubah}(h]h ](j stdstd-refeh"]h$]h&]uh1j hj ubah}(h]h ]h"]h$]h&]refdocj- refdomainj% reftyperefrefexplicitrefwarnj3 stable_api_nonsenseuh1hhłhÇh´Khj ubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´Khj ubj )}(hhh](hě)}(hEste arquivo descreve a justificativa por trĂĄs da decisĂŁo consciente de
nĂŁo ter uma API estĂĄvel dentro do kernel, incluindo pontos como:h]hEste arquivo descreve a justificativa por trĂĄs da decisĂŁo consciente de
nĂŁo ter uma API estĂĄvel dentro do kernel, incluindo pontos como:
}(hj@ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Khj= ubj7 )}(hú- Camadas de adaptação (shim-layers) de subsistemas (para compatibilidade?)
- Portabilidade de drivers entre sistemas operacionais.
- Mitigação de mudanças råpidas dentro da årvore de fontes do kernel
(ou impedimento de mudanças råpidas).
h]j= )}(hhh](jB )}(hKCamadas de adaptação (shim-layers) de subsistemas (para compatibilidade?)h]hě)}(hjW h]hKCamadas de adaptação (shim-layers) de subsistemas (para compatibilidade?)
}(hjY h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KhjU ubah}(h]h ]h"]h$]h&]uh1jA hjR ubjB )}(h5Portabilidade de drivers entre sistemas operacionais.h]hě)}(hjn h]h5Portabilidade de drivers entre sistemas operacionais.
}(hjp h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Khjl ubah}(h]h ]h"]h$]h&]uh1jA hjR ubjB )}(hpMitigação de mudanças rĂĄpidas dentro da ĂĄrvore de fontes do kernel
(ou impedimento de mudanças råpidas).
h]hě)}(hoMitigação de mudanças rĂĄpidas dentro da ĂĄrvore de fontes do kernel
(ou impedimento de mudanças råpidas).h]hoMitigação de mudanças råpidas dentro da årvore de fontes do kernel
(ou impedimento de mudanças råpidas).
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Khj ubah}(h]h ]h"]h$]h&]uh1jA hjR ubeh}(h]h ]h"]h$]h&]j j uh1j< hłhÇh´KhjN ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Khj= ubhě)}(hŃEste documento ĂŠ crucial para compreender a filosofia de desenvolvimento
do Linux e ĂŠ muito importante para pessoas que estĂŁo migrando para o
Linux vindas do desenvolvimento em outros Sistemas Operacionais.h]hŃEste documento ĂŠ crucial para compreender a filosofia de desenvolvimento
do Linux e ĂŠ muito importante para pessoas que estĂŁo migrando para o
Linux vindas do desenvolvimento em outros Sistemas Operacionais.
}(hj§ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Khj= ubeh}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´Khj
ubjÖ )}(hX :ref:`Documentation/process/security-bugs.rst `
Se você acredita ter encontrado um problema de segurança no kernel Linux,
por favor, siga os passos descritos neste documento para ajudar a
notificar os desenvolvedores do kernel e auxiliar na resolução do problema.
h](jÜ )}(h=:ref:`Documentation/process/security-bugs.rst `h]h)}(hjÇ h]j )}(hjÇ h]h'Documentation/process/security-bugs.rst
}(hjĚ h˛hhłNh´Nubah}(h]h ](j stdstd-refeh"]h$]h&]uh1j hjÉ ubah}(h]h ]h"]h$]h&]refdocj- refdomainjÖ reftyperefrefexplicitrefwarnj3 securitybugsuh1hhłhÇh´KhjĹ ubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´KhjÁ ubj )}(hhh]hě)}(hŰSe vocĂŞ acredita ter encontrado um problema de segurança no kernel Linux,
por favor, siga os passos descritos neste documento para ajudar a
notificar os desenvolvedores do kernel e auxiliar na resolução do problema.h]hŰSe vocĂŞ acredita ter encontrado um problema de segurança no kernel Linux,
por favor, siga os passos descritos neste documento para ajudar a
notificar os desenvolvedores do kernel e auxiliar na resolução do problema.
}(hjń h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Khjî ubah}(h]h ]h"]h$]h&]uh1j hjÁ ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´Khj
ubjÖ )}(hX˝ :ref:`Documentation/process/management-style.rst `
Este documento descreve como os mantenedores do kernel Linux operam e o
ethos compartilhado por trĂĄs de suas metodologias. Esta ĂŠ uma leitura
importante para qualquer pessoa nova no desenvolvimento do kernel (ou
para qualquer pessoa simplesmente curiosa sobre isso), pois resolve muitos
equĂvocos comuns e confusĂľes sobre o comportamento Ăşnico dos mantenedores
do kernel.
h](jÜ )}(hC:ref:`Documentation/process/management-style.rst `h]h)}(hj h]j )}(hj h]h*Documentation/process/management-style.rst
}(hj h˛hhłNh´Nubah}(h]h ](j stdstd-refeh"]h$]h&]uh1j hj ubah}(h]h ]h"]h$]h&]refdocj- refdomainj reftyperefrefexplicitrefwarnj3 managementstyleuh1hhłhÇh´Khj ubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´Khj ubj )}(hhh]hě)}(hXx Este documento descreve como os mantenedores do kernel Linux operam e o
ethos compartilhado por trĂĄs de suas metodologias. Esta ĂŠ uma leitura
importante para qualquer pessoa nova no desenvolvimento do kernel (ou
para qualquer pessoa simplesmente curiosa sobre isso), pois resolve muitos
equĂvocos comuns e confusĂľes sobre o comportamento Ăşnico dos mantenedores
do kernel.h]hXx Este documento descreve como os mantenedores do kernel Linux operam e o
ethos compartilhado por trĂĄs de suas metodologias. Esta ĂŠ uma leitura
importante para qualquer pessoa nova no desenvolvimento do kernel (ou
para qualquer pessoa simplesmente curiosa sobre isso), pois resolve muitos
equĂvocos comuns e confusĂľes sobre o comportamento Ăşnico dos mantenedores
do kernel.
}(hj; h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Khj8 ubah}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´Khj
ubjÖ )}(hX :ref:`Documentation/process/stable-kernel-rules.rst `
Este arquivo descreve as regras sobre como ocorrem os lançamentos das
versĂľes estĂĄveis (stable) do kernel e o que fazer se vocĂŞ desejar que
uma alteração seja incluĂda em um desses lançamentos.
h](jÜ )}(hJ:ref:`Documentation/process/stable-kernel-rules.rst `h]h)}(hj[ h]j )}(hj[ h]h-Documentation/process/stable-kernel-rules.rst
}(hj` h˛hhłNh´Nubah}(h]h ](j stdstd-refeh"]h$]h&]uh1j hj] ubah}(h]h ]h"]h$]h&]refdocj- refdomainjj reftyperefrefexplicitrefwarnj3 stable_kernel_rulesuh1hhłhÇh´KŁhjY ubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´KŁhjU ubj )}(hhh]hě)}(hÉEste arquivo descreve as regras sobre como ocorrem os lançamentos das
versĂľes estĂĄveis (stable) do kernel e o que fazer se vocĂŞ desejar que
uma alteração seja incluĂda em um desses lançamentos.h]hÉEste arquivo descreve as regras sobre como ocorrem os lançamentos das
versĂľes estĂĄveis (stable) do kernel e o que fazer se vocĂŞ desejar que
uma alteração seja incluĂda em um desses lançamentos.
}(hj
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KĄhj ubah}(h]h ]h"]h$]h&]uh1j hjU ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´KŁhj
ubjÖ )}(h˙:ref:`Documentation/process/kernel-docs.rst `
Uma lista de documentação externa que pertence ao desenvolvimento do
kernel. Por favor, consulte esta lista caso nĂŁo encontre o que estĂĄ
procurando dentro da documentação interna do kernel.
h](jÜ )}(h::ref:`Documentation/process/kernel-docs.rst `h]h)}(hjĽ h]j )}(hjĽ h]h%Documentation/process/kernel-docs.rst
}(hjŞ h˛hhłNh´Nubah}(h]h ](j stdstd-refeh"]h$]h&]uh1j hj§ ubah}(h]h ]h"]h$]h&]refdocj- refdomainj´ reftyperefrefexplicitrefwarnj3 kernel_docsuh1hhłhÇh´K¨hjŁ ubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´K¨hj ubj )}(hhh]hě)}(hĂUma lista de documentação externa que pertence ao desenvolvimento do
kernel. Por favor, consulte esta lista caso nĂŁo encontre o que estĂĄ
procurando dentro da documentação interna do kernel.h]hĂUma lista de documentação externa que pertence ao desenvolvimento do
kernel. Por favor, consulte esta lista caso nĂŁo encontre o que estĂĄ
procurando dentro da documentação interna do kernel.
}(hjĎ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KŚhjĚ ubah}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´K¨hj
ubjÖ )}(hÓ:ref:`Documentation/process/applying-patches.rst `
Uma boa introdução descrevendo exatamente o que Ê um patch e como
aplicĂĄ-lo aos diferentes ramos (branches) de desenvolvimento do kernel.
h](jÜ )}(hD:ref:`Documentation/process/applying-patches.rst `h]h)}(hjď h]j )}(hjď h]h*Documentation/process/applying-patches.rst
}(hjô h˛hhłNh´Nubah}(h]h ](j stdstd-refeh"]h$]h&]uh1j hjń ubah}(h]h ]h"]h$]h&]refdocj- refdomainjţ reftyperefrefexplicitrefwarnj3 applying_patchesuh1hhłhÇh´KŹhjí ubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´KŹhjé ubj )}(hhh]hě)}(hUma boa introdução descrevendo exatamente o que ĂŠ um patch e como
aplicå-lo aos diferentes ramos (branches) de desenvolvimento do kernel.h]hUma boa introdução descrevendo exatamente o que Ê um patch e como
aplicĂĄ-lo aos diferentes ramos (branches) de desenvolvimento do kernel.
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KŤhj ubah}(h]h ]h"]h$]h&]uh1j hjé ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´KŹhj
ubeh}(h]h ]h"]h$]h&]uh1jĐ hj ubeh}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Khjw h˛hubhě)}(hX5 O kernel tambĂŠm possui um grande nĂşmero de documentos que podem ser
gerados automaticamente a partir do prĂłprio cĂłdigo-fonte ou de
marcaçþes ReStructuredText (ReST), como esta. Isso inclui uma
descrição completa da API interna do kernel e regras sobre como
manipular o bloqueio (locking) corretamente.h]hX5 O kernel tambĂŠm possui um grande nĂşmero de documentos que podem ser
gerados automaticamente a partir do prĂłprio cĂłdigo-fonte ou de
marcaçþes ReStructuredText (ReST), como esta. Isso inclui uma
descrição completa da API interna do kernel e regras sobre como
manipular o bloqueio (locking) corretamente.
}(hj? h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KŽhjw h˛hubhě)}(hMTodos esses documentos podem ser gerados em formato PDF ou HTML ao
executar::h]hLTodos esses documentos podem ser gerados em formato PDF ou HTML ao
executar:
}(hjM h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´K´hjw h˛hubh
literal_block)}(hmake pdfdocs
make htmldocsh]hmake pdfdocs
make htmldocs
}hj] sbah}(h]h ]h"]h$]h&]hĹhĆuh1j[ hłhÇh´Kˇhjw h˛hubhě)}(hMrespectivamente, a partir do diretĂłrio principal do cĂłdigo-fonte do kernel.h]hMrespectivamente, a partir do diretĂłrio principal do cĂłdigo-fonte do kernel.
}(hjk h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Kşhjw h˛hubhě)}(hOs documentos que utilizam a marcação ReST serĂŁo gerados em
Documentation/output. Eles tambĂŠm podem ser gerados nos formatos
LaTeX e ePub com::h]hOs documentos que utilizam a marcação ReST serão gerados em
Documentation/output. Eles tambĂŠm podem ser gerados nos formatos
LaTeX e ePub com:
}(hjy h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Kźhjw h˛hubj\ )}(hmake latexdocs
make epubdocsh]hmake latexdocs
make epubdocs
}hj sbah}(h]h ]h"]h$]h&]hĹhĆuh1j[ hłhÇh´KŔhjw h˛hubeh}(h]documentacaoah ]h"]documentaçãoah$]h&]uh1hÖhhŘh˛hhłhÇh´KRubh×)}(hhh](hÜ)}(h)Como se tornar um desenvolvedor do kernelh]h)Como se tornar um desenvolvedor do kernel
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhj h˛hhłhÇh´KÄubhě)}(htSe vocĂŞ nĂŁo sabe nada sobre o desenvolvimento do kernel Linux, vocĂŞ deve
consultar o projeto Linux KernelNewbies:h]htSe vocĂŞ nĂŁo sabe nada sobre o desenvolvimento do kernel Linux, vocĂŞ deve
consultar o projeto Linux KernelNewbies:
}(hjŽ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KĆhj h˛hubj7 )}(hhttps://kernelnewbies.org
h]hě)}(hhttps://kernelnewbies.orgh]jë )}(hj h]hhttps://kernelnewbies.org
}(hjÄ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurij uh1ję hjŔ ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KÉhjź ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´KÉhj h˛hubhě)}(hXŤ Ele consiste em uma lista de discussĂŁo Ăştil onde vocĂŞ pode fazer quase
qualquer tipo de pergunta bĂĄsica sobre o desenvolvimento do kernel
(certifique-se de pesquisar nos arquivos primeiro, antes de perguntar
algo que jĂĄ foi respondido no passado). Ele tambĂŠm possui um canal de
IRC que vocĂŞ pode usar para fazer perguntas em tempo real, e muita
documentação Ăştil para aprender sobre o desenvolvimento do kernel Linux.h]hXŤ Ele consiste em uma lista de discussĂŁo Ăştil onde vocĂŞ pode fazer quase
qualquer tipo de pergunta bĂĄsica sobre o desenvolvimento do kernel
(certifique-se de pesquisar nos arquivos primeiro, antes de perguntar
algo que jĂĄ foi respondido no passado). Ele tambĂŠm possui um canal de
IRC que vocĂŞ pode usar para fazer perguntas em tempo real, e muita
documentação útil para aprender sobre o desenvolvimento do kernel Linux.
}(hjŢ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KËhj h˛hubhě)}(hX O site possui informaçþes bĂĄsicas sobre a organização do cĂłdigo,
subsistemas e projetos atuais (tanto in-tree quanto out-of-tree).
TambĂŠm descreve algumas informaçþes logĂsticas bĂĄsicas, como por exemplo,
como compilar um kernel e aplicar um patch.h]hX O site possui informaçþes båsicas sobre a organização do código,
subsistemas e projetos atuais (tanto in-tree quanto out-of-tree).
TambĂŠm descreve algumas informaçþes logĂsticas bĂĄsicas, como por exemplo,
como compilar um kernel e aplicar um patch.
}(hjě h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KŇhj h˛hubhě)}(h¸Se vocĂŞ nĂŁo sabe por onde começar, mas deseja procurar alguma tarefa
para iniciar sua integração na comunidade de desenvolvimento do kernel,
acesse o projeto Linux Kernel Janitor:h]h¸Se vocĂŞ nĂŁo sabe por onde começar, mas deseja procurar alguma tarefa
para iniciar sua integração na comunidade de desenvolvimento do kernel,
acesse o projeto Linux Kernel Janitor:
}(hjú h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´K×hj h˛hubj7 )}(h)https://kernelnewbies.org/KernelJanitors
h]hě)}(h(https://kernelnewbies.org/KernelJanitorsh]jë )}(hj h]h(https://kernelnewbies.org/KernelJanitors
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurij uh1ję hj ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KŰhj ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´KŰhj h˛hubhě)}(hXą Ă um Ăłtimo lugar para começar. Ele descreve uma lista de problemas
relativamente simples que precisam ser limpos e corrigidos dentro da
ĂĄrvore de cĂłdigos-fonte do kernel Linux. Ao trabalhar com os
desenvolvedores responsĂĄveis por este projeto, vocĂŞ aprenderĂĄ o bĂĄsico
sobre como incluir seu patch na ĂĄrvore do kernel Linux e,
possivelmente, serĂĄ orientado sobre o que trabalhar em seguida, caso
ainda nĂŁo tenha uma ideia.h]hXą Ă um Ăłtimo lugar para começar. Ele descreve uma lista de problemas
relativamente simples que precisam ser limpos e corrigidos dentro da
ĂĄrvore de cĂłdigos-fonte do kernel Linux. Ao trabalhar com os
desenvolvedores responsĂĄveis por este projeto, vocĂŞ aprenderĂĄ o bĂĄsico
sobre como incluir seu patch na ĂĄrvore do kernel Linux e,
possivelmente, serĂĄ orientado sobre o que trabalhar em seguida, caso
ainda nĂŁo tenha uma ideia.
}(hj* h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KÝhj h˛hubhě)}(hX5 Antes de fazer qualquer modificação real no cĂłdigo do kernel Linux, ĂŠ
imperativo entender como o cĂłdigo em questĂŁo funciona. Para esse
propĂłsito, nada ĂŠ melhor do que lĂŞ-lo diretamente (a maioria das partes
complexas estĂĄ bem comentada), talvez atĂŠ com a ajuda de ferramentas
especializadas. Uma ferramenta particularmente recomendada ĂŠ o projeto
Linux Cross-Reference, que ĂŠ capaz de apresentar o cĂłdigo-fonte em um
formato de pĂĄgina web indexada e auto-referenciada. Um excelente
repositório atualizado do código do kernel pode ser encontrado em:h]hX5 Antes de fazer qualquer modificação real no código do kernel Linux, Ê
imperativo entender como o cĂłdigo em questĂŁo funciona. Para esse
propĂłsito, nada ĂŠ melhor do que lĂŞ-lo diretamente (a maioria das partes
complexas estĂĄ bem comentada), talvez atĂŠ com a ajuda de ferramentas
especializadas. Uma ferramenta particularmente recomendada ĂŠ o projeto
Linux Cross-Reference, que ĂŠ capaz de apresentar o cĂłdigo-fonte em um
formato de pĂĄgina web indexada e auto-referenciada. Um excelente
repositĂłrio atualizado do cĂłdigo do kernel pode ser encontrado em:
}(hj8 h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Kĺhj h˛hubj7 )}(hhttps://elixir.bootlin.com/
h]hě)}(hhttps://elixir.bootlin.com/h]jë )}(hjL h]hhttps://elixir.bootlin.com/
}(hjN h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurijL uh1ję hjJ ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KîhjF ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Kîhj h˛hubeh}(h])como-se-tornar-um-desenvolvedor-do-kernelah ]h"])como se tornar um desenvolvedor do kernelah$]h&]uh1hÖhhŘh˛hhłhÇh´KÄubh×)}(hhh](hÜ)}(hO processo de desenvolvimentoh]hO processo de desenvolvimento
}(hjs h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhjp h˛hhłhÇh´Kňubhě)}(hžO processo de desenvolvimento do kernel Linux consiste atualmente em algumas
"branches" (ramos) principais diferentes e muitos ramos de subsistemas
especĂficos. Esses diferentes ramos sĂŁo:h]hÂO processo de desenvolvimento do kernel Linux consiste atualmente em algumas
âbranchesâ (ramos) principais diferentes e muitos ramos de subsistemas
especĂficos. Esses diferentes ramos sĂŁo:
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Kôhjp h˛hubj7 )}(hČ- Ărvore principal (mainline) do Linus
- VĂĄrias ĂĄrvores estĂĄveis com mĂşltiplos nĂşmeros de versĂŁo principal
- Ărvores especĂficas de subsistemas
- Ărvore de testes de integração linux-next
h]j= )}(hhh](jB )}(h%Ărvore principal (mainline) do Linush]hě)}(hj h]h%Ărvore principal (mainline) do Linus
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Křhj ubah}(h]h ]h"]h$]h&]uh1jA hj ubjB )}(hGVĂĄrias ĂĄrvores estĂĄveis com mĂşltiplos nĂşmeros de versĂŁo principalh]hě)}(hjŻ h]hGVĂĄrias ĂĄrvores estĂĄveis com mĂşltiplos nĂşmeros de versĂŁo principal
}(hją h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Kůhj ubah}(h]h ]h"]h$]h&]uh1jA hj ubjB )}(h$Ărvores especĂficas de subsistemash]hě)}(hjĆ h]h$Ărvores especĂficas de subsistemas
}(hjČ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KúhjÄ ubah}(h]h ]h"]h$]h&]uh1jA hj ubjB )}(h-Ărvore de testes de integração linux-next
h]hě)}(h,Ărvore de testes de integração linux-nexth]h,Ărvore de testes de integração linux-next
}(hjß h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´KűhjŰ ubah}(h]h ]h"]h$]h&]uh1jA hj ubeh}(h]h ]h"]h$]h&]j j uh1j< hłhÇh´Křhj ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Křhjp h˛hubh×)}(hhh](hÜ)}(h!Ărvore principal (Mainline tree)h]h!Ărvore principal (Mainline tree)
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhj˙ h˛hhłhÇh´Kţubhě)}(h A ĂĄrvore principal ĂŠ mantida por Linus Torvalds e pode ser encontrada em
https://kernel.org ou no repositĂłrio. Seu processo de desenvolvimento ĂŠ
o seguinte:h](hKA ĂĄrvore principal ĂŠ mantida por Linus Torvalds e pode ser encontrada em
}(hj h˛hhłNh´Nubjë )}(hhttps://kernel.orgh]hhttps://kernel.org
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurij uh1ję hj ubhC ou no repositĂłrio. Seu processo de desenvolvimento ĂŠ
o seguinte:
}(hj h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´M hj˙ h˛hubj7 )}(hX - Assim que um novo kernel ĂŠ lançado, uma janela de duas semanas ĂŠ aberta;
durante esse perĂodo, os mantenedores podem enviar grandes diffs para
Linus, geralmente patches que jĂĄ foram incluĂdos na linux-next por algumas
semanas. A forma preferida de enviar grandes mudanças Ê usando o git
(a ferramenta de gerenciamento de código-fonte do kernel, mais informaçþes
podem ser encontradas em https://git-scm.com/), mas patches simples
tambĂŠm sĂŁo aceitos.
- Após duas semanas, um kernel -rc1 Ê lançado e o foco passa a ser tornar
o novo kernel o mais sĂłlido possĂvel. A maioria dos patches neste estĂĄgio
deve corrigir uma regressĂŁo. Bugs que sempre existiram nĂŁo sĂŁo regressĂľes,
portanto, envie esses tipos de correçþes apenas se forem importantes.
Observe que um driver (ou sistema de arquivos) totalmente novo pode ser
aceito apĂłs o -rc1 porque nĂŁo hĂĄ risco de causar regressĂľes com tal
mudança, desde que a alteração seja autocontida e não afete åreas fora do
cĂłdigo que estĂĄ sendo adicionado. O git pode ser usado para enviar
patches para Linus após o lançamento do -rc1, mas os patches tambÊm
precisam ser enviados para uma lista de discussĂŁo pĂşblica para revisĂŁo.
- Um novo -rc Ê lançado sempre que Linus considerar que a årvore git atual
estĂĄ em um estado razoavelmente estĂĄvel e adequado para testes. O objetivo
Ê lançar um novo kernel -rc a cada semana.
- O processo continua atĂŠ que o kernel seja considerado "pronto"; o
processo deve durar cerca de 6 semanas.
h]j= )}(hhh](jB )}(hXΠAssim que um novo kernel Ê lançado, uma janela de duas semanas Ê aberta;
durante esse perĂodo, os mantenedores podem enviar grandes diffs para
Linus, geralmente patches que jĂĄ foram incluĂdos na linux-next por algumas
semanas. A forma preferida de enviar grandes mudanças Ê usando o git
(a ferramenta de gerenciamento de código-fonte do kernel, mais informaçþes
podem ser encontradas em https://git-scm.com/), mas patches simples
tambĂŠm sĂŁo aceitos.h]hě)}(hXÎ Assim que um novo kernel ĂŠ lançado, uma janela de duas semanas ĂŠ aberta;
durante esse perĂodo, os mantenedores podem enviar grandes diffs para
Linus, geralmente patches que jĂĄ foram incluĂdos na linux-next por algumas
semanas. A forma preferida de enviar grandes mudanças Ê usando o git
(a ferramenta de gerenciamento de código-fonte do kernel, mais informaçþes
podem ser encontradas em https://git-scm.com/), mas patches simples
tambÊm são aceitos.h](hX Assim que um novo kernel Ê lançado, uma janela de duas semanas Ê aberta;
durante esse perĂodo, os mantenedores podem enviar grandes diffs para
Linus, geralmente patches que jĂĄ foram incluĂdos na linux-next por algumas
semanas. A forma preferida de enviar grandes mudanças Ê usando o git
(a ferramenta de gerenciamento de código-fonte do kernel, mais informaçþes
podem ser encontradas em
}(hj< h˛hhłNh´Nubjë )}(hhttps://git-scm.com/h]hhttps://git-scm.com/
}(hjD h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurijF uh1ję hj< ubh,), mas patches simples
tambĂŠm sĂŁo aceitos.
}(hj< h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj8 ubah}(h]h ]h"]h$]h&]uh1jA hj5 ubjB )}(hXä ApĂłs duas semanas, um kernel -rc1 ĂŠ lançado e o foco passa a ser tornar
o novo kernel o mais sĂłlido possĂvel. A maioria dos patches neste estĂĄgio
deve corrigir uma regressĂŁo. Bugs que sempre existiram nĂŁo sĂŁo regressĂľes,
portanto, envie esses tipos de correçþes apenas se forem importantes.
Observe que um driver (ou sistema de arquivos) totalmente novo pode ser
aceito apĂłs o -rc1 porque nĂŁo hĂĄ risco de causar regressĂľes com tal
mudança, desde que a alteração seja autocontida e não afete åreas fora do
cĂłdigo que estĂĄ sendo adicionado. O git pode ser usado para enviar
patches para Linus após o lançamento do -rc1, mas os patches tambÊm
precisam ser enviados para uma lista de discussĂŁo pĂşblica para revisĂŁo.h]hě)}(hXä ApĂłs duas semanas, um kernel -rc1 ĂŠ lançado e o foco passa a ser tornar
o novo kernel o mais sĂłlido possĂvel. A maioria dos patches neste estĂĄgio
deve corrigir uma regressĂŁo. Bugs que sempre existiram nĂŁo sĂŁo regressĂľes,
portanto, envie esses tipos de correçþes apenas se forem importantes.
Observe que um driver (ou sistema de arquivos) totalmente novo pode ser
aceito apĂłs o -rc1 porque nĂŁo hĂĄ risco de causar regressĂľes com tal
mudança, desde que a alteração seja autocontida e não afete åreas fora do
cĂłdigo que estĂĄ sendo adicionado. O git pode ser usado para enviar
patches para Linus após o lançamento do -rc1, mas os patches tambÊm
precisam ser enviados para uma lista de discussĂŁo pĂşblica para revisĂŁo.h]hXä ApĂłs duas semanas, um kernel -rc1 ĂŠ lançado e o foco passa a ser tornar
o novo kernel o mais sĂłlido possĂvel. A maioria dos patches neste estĂĄgio
deve corrigir uma regressĂŁo. Bugs que sempre existiram nĂŁo sĂŁo regressĂľes,
portanto, envie esses tipos de correçþes apenas se forem importantes.
Observe que um driver (ou sistema de arquivos) totalmente novo pode ser
aceito apĂłs o -rc1 porque nĂŁo hĂĄ risco de causar regressĂľes com tal
mudança, desde que a alteração seja autocontida e não afete åreas fora do
cĂłdigo que estĂĄ sendo adicionado. O git pode ser usado para enviar
patches para Linus após o lançamento do -rc1, mas os patches tambÊm
precisam ser enviados para uma lista de discussĂŁo pĂşblica para revisĂŁo.
}(hjg h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhjc ubah}(h]h ]h"]h$]h&]uh1jA hj5 ubjB )}(hĹUm novo -rc ĂŠ lançado sempre que Linus considerar que a ĂĄrvore git atual
estĂĄ em um estado razoavelmente estĂĄvel e adequado para testes. O objetivo
ĂŠ lançar um novo kernel -rc a cada semana.h]hě)}(hĹUm novo -rc ĂŠ lançado sempre que Linus considerar que a ĂĄrvore git atual
estĂĄ em um estado razoavelmente estĂĄvel e adequado para testes. O objetivo
ĂŠ lançar um novo kernel -rc a cada semana.h]hĹUm novo -rc ĂŠ lançado sempre que Linus considerar que a ĂĄrvore git atual
estĂĄ em um estado razoavelmente estĂĄvel e adequado para testes. O objetivo
Ê lançar um novo kernel -rc a cada semana.
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj{ ubah}(h]h ]h"]h$]h&]uh1jA hj5 ubjB )}(hkO processo continua atĂŠ que o kernel seja considerado "pronto"; o
processo deve durar cerca de 6 semanas.
h]hě)}(hjO processo continua atĂŠ que o kernel seja considerado "pronto"; o
processo deve durar cerca de 6 semanas.h]hnO processo continua atĂŠ que o kernel seja considerado âprontoâ; o
processo deve durar cerca de 6 semanas.
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj ubah}(h]h ]h"]h$]h&]uh1jA hj5 ubeh}(h]h ]h"]h$]h&]j j uh1j< hłhÇh´Mhj1 ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Mhj˙ h˛hubhě)}(hzVale a pena mencionar o que Andrew Morton escreveu na lista de discussĂŁo
do kernel Linux sobre os lançamentos do kernel:h]hzVale a pena mencionar o que Andrew Morton escreveu na lista de discussão
do kernel Linux sobre os lançamentos do kernel:
}(hjˇ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj˙ h˛hubj7 )}(hŚ*"NinguĂŠm sabe quando um kernel serĂĄ lançado, porque ele ĂŠ
lançado de acordo com o status percebido dos bugs, não de acordo
com um cronograma prĂŠ-concebido."*
h]hě)}(hĽ*"NinguĂŠm sabe quando um kernel serĂĄ lançado, porque ele ĂŠ
lançado de acordo com o status percebido dos bugs, não de acordo
com um cronograma prĂŠ-concebido."*h]hemphasis)}(hjË h]h§âNinguĂŠm sabe quando um kernel serĂĄ lançado, porque ele ĂŠ
lançado de acordo com o status percebido dos bugs, não de acordo
com um cronograma prĂŠ-concebido.â
}(hjĎ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1jÍ hjÉ ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MhjĹ ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Mhj˙ h˛hubeh}(h]arvore-principal-mainline-treeah ]h"]!ĂĄrvore principal (mainline tree)ah$]h&]uh1hÖhjp h˛hhłhÇh´Kţubh×)}(hhh](hÜ)}(hGVĂĄrias ĂĄrvores estĂĄveis com mĂşltiplos nĂşmeros de versĂŁo principalh]hGVĂĄrias ĂĄrvores estĂĄveis com mĂşltiplos nĂşmeros de versĂŁo principal
}(hjó h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhjđ h˛hhłhÇh´M#ubhě)}(hX Kernels com versĂľes de 3 partes sĂŁo kernels -stable (estĂĄveis). Eles
contĂŞm correçþes relativamente pequenas e crĂticas para problemas de
segurança ou regressþes significativas descobertas em um determinado
lançamento principal da årvore mainline. Cada lançamento em uma sÊrie
estĂĄvel principal incrementa a terceira parte do nĂşmero da versĂŁo,
mantendo as duas primeiras partes iguais.h]hX Kernels com versĂľes de 3 partes sĂŁo kernels -stable (estĂĄveis). Eles
contĂŞm correçþes relativamente pequenas e crĂticas para problemas de
segurança ou regressþes significativas descobertas em um determinado
lançamento principal da årvore mainline. Cada lançamento em uma sÊrie
estĂĄvel principal incrementa a terceira parte do nĂşmero da versĂŁo,
mantendo as duas primeiras partes iguais.
}(hj
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M%hjđ h˛hubhě)}(h°Este ĂŠ o ramo recomendado para usuĂĄrios que desejam o kernel estĂĄvel
mais recente e nĂŁo estĂŁo interessados em ajudar a testar versĂľes de
desenvolvimento ou experimentais.h]h°Este ĂŠ o ramo recomendado para usuĂĄrios que desejam o kernel estĂĄvel
mais recente e nĂŁo estĂŁo interessados em ajudar a testar versĂľes de
desenvolvimento ou experimentais.
}(hj
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M,hjđ h˛hubhě)}(hXx As ĂĄrvores estĂĄveis sĂŁo mantidas pela equipe "stable"
e são lançadas conforme a necessidade exigir.
O perĂodo normal de lançamento ĂŠ de aproximadamente duas semanas, mas
pode ser mais longo se nĂŁo houver problemas urgentes. Por outro lado,
um problema relacionado à segurança pode fazer com que um lançamento
ocorra quase instantaneamente.h](h>As ĂĄrvores estĂĄveis sĂŁo mantidas pela equipe âstableâ
<
}(hj
h˛hhłNh´Nubjë )}(hstable@vger.kernel.orgh]hstable@vger.kernel.org
}(hj%
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurimailto:stable@vger.kernel.orguh1ję hj
ubhX( > e são lançadas conforme a necessidade exigir.
O perĂodo normal de lançamento ĂŠ de aproximadamente duas semanas, mas
pode ser mais longo se nĂŁo houver problemas urgentes. Por outro lado,
um problema relacionado à segurança pode fazer com que um lançamento
ocorra quase instantaneamente.
}(hj
h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´M0hjđ h˛hubhě)}(hßO arquivo :ref:`Documentation/process/stable-kernel-rules.rst `
na årvore do kernel documenta quais tipos de mudanças são aceitåveis para
a årvore -stable e como o processo de lançamento funciona.h](h
O arquivo
}(hj?
h˛hhłNh´Nubh)}(hJ:ref:`Documentation/process/stable-kernel-rules.rst `h]j )}(hjI
h]h-Documentation/process/stable-kernel-rules.rst
}(hjK
h˛hhłNh´Nubah}(h]h ](j stdstd-refeh"]h$]h&]uh1j hjG
ubah}(h]h ]h"]h$]h&]refdocj- refdomainjU
reftyperefrefexplicitrefwarnj3 stable_kernel_rulesuh1hhłhÇh´M7hj?
ubh
na årvore do kernel documenta quais tipos de mudanças são aceitåveis para
a årvore -stable e como o processo de lançamento funciona.
}(hj?
h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´M7hjđ h˛hubeh}(h]Avarias-arvores-estaveis-com-multiplos-numeros-de-versao-principalah ]h"]GvĂĄrias ĂĄrvores estĂĄveis com mĂşltiplos nĂşmeros de versĂŁo principalah$]h&]uh1hÖhjp h˛hhłhÇh´M#ubh×)}(hhh](hÜ)}(h$Ărvores especĂficas de subsistemash]h$Ărvores especĂficas de subsistemas
}(hj|
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhjy
h˛hhłhÇh´M<ubhě)}(hX Os mantenedores dos vĂĄrios subsistemas do kernel â e tambĂŠm muitos
desenvolvedores de subsistemas do kernel â expĂľem seu estado atual de
desenvolvimento em repositĂłrios de cĂłdigo-fonte. Dessa forma, outros
podem ver o que estĂĄ acontecendo nas diferentes ĂĄreas do kernel. Em
ĂĄreas onde o desenvolvimento ĂŠ rĂĄpido, um desenvolvedor pode ser
solicitado a basear suas submissĂľes em tal ĂĄrvore de subsistema do
kernel para que conflitos entre a submissĂŁo e outros trabalhos jĂĄ em
andamento sejam evitados.h]hX Os mantenedores dos vĂĄrios subsistemas do kernel â e tambĂŠm muitos
desenvolvedores de subsistemas do kernel â expĂľem seu estado atual de
desenvolvimento em repositĂłrios de cĂłdigo-fonte. Dessa forma, outros
podem ver o que estĂĄ acontecendo nas diferentes ĂĄreas do kernel. Em
ĂĄreas onde o desenvolvimento ĂŠ rĂĄpido, um desenvolvedor pode ser
solicitado a basear suas submissĂľes em tal ĂĄrvore de subsistema do
kernel para que conflitos entre a submissĂŁo e outros trabalhos jĂĄ em
andamento sejam evitados.
}(hj
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M>hjy
h˛hubhě)}(hX) A maioria desses repositĂłrios sĂŁo ĂĄrvores git, mas tambĂŠm existem outros
SCMs em uso, ou filas de patches sendo publicadas como sĂŠries quilt. Os
endereços desses repositórios de subsistemas estão listados no arquivo
MAINTAINERS. Muitos deles podem ser navegados em https://git.kernel.org/.h](hX A maioria desses repositĂłrios sĂŁo ĂĄrvores git, mas tambĂŠm existem outros
SCMs em uso, ou filas de patches sendo publicadas como sĂŠries quilt. Os
endereços desses repositórios de subsistemas estão listados no arquivo
MAINTAINERS. Muitos deles podem ser navegados em
}(hj
h˛hhłNh´Nubjë )}(hhttps://git.kernel.org/h]hhttps://git.kernel.org/
}(hj
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurij˘
uh1ję hj
ubh.
}(hj
h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´MGhjy
h˛hubhě)}(hX\ Antes que um patch proposto seja incluĂdo em tal ĂĄrvore de subsistema,
ele estĂĄ sujeito a uma revisĂŁo que ocorre principalmente em listas de
discussão (veja a seção respectiva abaixo). Para vårios subsistemas do
kernel, este processo de revisĂŁo ĂŠ rastreado com a ferramenta patchwork.
O Patchwork oferece uma interface web que mostra as postagens de patches,
quaisquer comentĂĄrios sobre um patch ou revisĂľes feitas a ele, e os
mantenedores podem marcar os patches como "sob revisĂŁo", "aceitos" ou
"rejeitados". A maioria desses sites patchwork estĂĄ listada em
https://patchwork.kernel.org/.h](hXJ Antes que um patch proposto seja incluĂdo em tal ĂĄrvore de subsistema,
ele estĂĄ sujeito a uma revisĂŁo que ocorre principalmente em listas de
discussão (veja a seção respectiva abaixo). Para vårios subsistemas do
kernel, este processo de revisĂŁo ĂŠ rastreado com a ferramenta patchwork.
O Patchwork oferece uma interface web que mostra as postagens de patches,
quaisquer comentĂĄrios sobre um patch ou revisĂľes feitas a ele, e os
mantenedores podem marcar os patches como âsob revisĂŁoâ, âaceitosâ ou
ârejeitadosâ. A maioria desses sites patchwork estĂĄ listada em
}(hjš
h˛hhłNh´Nubjë )}(hhttps://patchwork.kernel.org/h]hhttps://patchwork.kernel.org/
}(hjÁ
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurijĂ
uŔ h1ję hjš
ubh.
}(hjš
h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´MLhjy
h˛hubeh}(h]"arvores-especificas-de-subsistemasah ]h"]$ĂĄrvores especĂficas de subsistemasah$]h&]uh1hÖhjp h˛hhłhÇh´M<ubh×)}(hhh](hÜ)}(h,Ărvore de testes de integração linux-nexth]h,Ărvore de testes de integração linux-next
}(hjĺ
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhjâ
h˛hhłhÇh´MWubhě)}(hX1 Antes que as atualizaçþes das ĂĄrvores de subsistemas sejam mescladas na
årvore mainline, elas precisam ser testadas quanto à integração. Para
este propĂłsito, existe um repositĂłrio de testes especial no qual
praticamente todas as ĂĄrvores de subsistemas sĂŁo integradas (pulled)
quase diariamente:h]hX1 Antes que as atualizaçþes das årvores de subsistemas sejam mescladas na
årvore mainline, elas precisam ser testadas quanto à integração. Para
este propĂłsito, existe um repositĂłrio de testes especial no qual
praticamente todas as ĂĄrvores de subsistemas sĂŁo integradas (pulled)
quase diariamente:
}(hjó
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MYhjâ
h˛hubj7 )}(hDhttps://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
h]hě)}(hChttps://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.gith]jë )}(hj h]hChttps://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurij uh1ję hj ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M_hj ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´M_hjâ
h˛hubhě)}(hôDessa forma, a linux-next oferece uma visĂŁo resumida do que se espera
que entre no kernel mainline no prĂłximo perĂodo de mesclagem (merge
window). Testadores aventureiros sĂŁo muito bem-vindos para testar a
linux-next em tempo de execução.h]hôDessa forma, a linux-next oferece uma visĂŁo resumida do que se espera
que entre no kernel mainline no prĂłximo perĂodo de mesclagem (merge
window). Testadores aventureiros sĂŁo muito bem-vindos para testar a
linux-next em tempo de execução.
}(hj# h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mahjâ
h˛hubeh}(h])arvore-de-testes-de-integracao-linux-nextah ]h"],ĂĄrvore de testes de integração linux-nextah$]h&]uh1hÖhjp h˛hhłhÇh´MWubeh}(h]o-processo-de-desenvolvimentoah ]h"]o processo de desenvolvimentoah$]h&]uh1hÖhhŘh˛hhłhÇh´Kňubh×)}(hhh](hÜ)}(hRelato de Bugsh]hRelato de Bugs
}(hjD h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhjA h˛hhłhÇh´Mhubhě)}(hX O arquivo 'Documentation/admin-guide/reporting-issues.rst' no diretĂłrio
principal de cĂłdigos-fonte do kernel descreve como relatar um possĂvel
bug no kernel e detalha que tipo de informação Ê necessåria para os
desenvolvedores do kernel ajudarem a rastrear o problema.h]hX O arquivo âDocumentation/admin-guide/reporting-issues.rstâ no diretĂłrio
principal de cĂłdigos-fonte do kernel descreve como relatar um possĂvel
bug no kernel e detalha que tipo de informação Ê necessåria para os
desenvolvedores do kernel ajudarem a rastrear o problema.
}(hjR h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MjhjA h˛hubeh}(h]relato-de-bugsah ]h"]relato de bugsah$]h&]uh1hÖhhŘh˛hhłhÇh´Mhubh×)}(hhh](hÜ)}(hGerenciando relatos de bugsh]hGerenciando relatos de bugs
}(hjk h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhjh h˛hhłhÇh´Mpubhě)}(hXë Uma das melhores maneiras de colocar em prĂĄtica suas habilidades de hacking
ĂŠ corrigindo bugs relatados por outras pessoas. VocĂŞ nĂŁo apenas ajudarĂĄ a
tornar o kernel mais estĂĄvel, mas tambĂŠm aprenderĂĄ a resolver problemas do
mundo real, melhorarĂĄ suas habilidades e outros desenvolvedores passarĂŁo a
notar sua presença. Corrigir bugs Ê uma das melhores formas de obter mÊrito
entre outros desenvolvedores, pois poucas pessoas gostam de gastar tempo
corrigindo bugs de terceiros.h]hXë Uma das melhores maneiras de colocar em prĂĄtica suas habilidades de hacking
ĂŠ corrigindo bugs relatados por outras pessoas. VocĂŞ nĂŁo apenas ajudarĂĄ a
tornar o kernel mais estĂĄvel, mas tambĂŠm aprenderĂĄ a resolver problemas do
mundo real, melhorarĂĄ suas habilidades e outros desenvolvedores passarĂŁo a
notar sua presença. Corrigir bugs Ê uma das melhores formas de obter mÊrito
entre outros desenvolvedores, pois poucas pessoas gostam de gastar tempo
corrigindo bugs de terceiros.
}(hjy h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mrhjh h˛hubhě)}(hXn Para trabalhar em relatos de bugs jĂĄ existentes, encontre um subsistema no
qual vocĂŞ esteja interessado. Verifique no arquivo MAINTAINERS para onde
os bugs daquele subsistema sĂŁo relatados; geralmente serĂĄ uma lista de
discussĂŁo, raramente um rastreador de bugs (bugtracker). Pesquise nos
arquivos de mensagens do local indicado por relatos recentes e ajude onde
achar apropriado. VocĂŞ tambĂŠm pode verificar o site
https://bugzilla.kernel.org para relatos de bugs; apenas alguns
subsistemas do kernel o utilizam ativamente para relato ou rastreamento,
entretanto, bugs de todo o kernel acabam sendo registrados lĂĄ.h](hXŚ Para trabalhar em relatos de bugs jĂĄ existentes, encontre um subsistema no
qual vocĂŞ esteja interessado. Verifique no arquivo MAINTAINERS para onde
os bugs daquele subsistema sĂŁo relatados; geralmente serĂĄ uma lista de
discussĂŁo, raramente um rastreador de bugs (bugtracker). Pesquise nos
arquivos de mensagens do local indicado por relatos recentes e ajude onde
achar apropriado. VocĂŞ tambĂŠm pode verificar o site
}(hj h˛hhłNh´Nubjë )}(hhttps://bugzilla.kernel.orgh]hhttps://bugzilla.kernel.org
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurij uh1ję hj ubh para relatos de bugs; apenas alguns
subsistemas do kernel o utilizam ativamente para relato ou rastreamento,
entretanto, bugs de todo o kernel acabam sendo registrados lĂĄ.
}(hj h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mzhjh h˛hubeh}(h]gerenciando-relatos-de-bugsah ]h"]gerenciando relatos de bugsah$]h&]uh1hÖhhŘh˛hhłhÇh´Mpubh×)}(hhh](hÜ)}(hListas de discussĂŁoh]hListas de discussĂŁo
}(hjł h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhj° h˛hhłhÇh´Mubhě)}(hńComo alguns dos documentos acima descrevem, a maioria dos desenvolvedores
do nĂşcleo (core) do kernel participa da Linux Kernel Mailing List (LKML).
Detalhes sobre como se inscrever e cancelar a inscrição na lista podem
ser encontrados em:h]hńComo alguns dos documentos acima descrevem, a maioria dos desenvolvedores
do nĂşcleo (core) do kernel participa da Linux Kernel Mailing List (LKML).
Detalhes sobre como se inscrever e cancelar a inscrição na lista podem
ser encontrados em:
}(hjÁ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj° h˛hubj7 )}(h-https://subspace.kernel.org/subscribing.html
h]hě)}(h,https://subspace.kernel.org/subscribing.htmlh]jë )}(hjŐ h]h,https://subspace.kernel.org/subscribing.html
}(hj× h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurijŐ uh1ję hjÓ ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MhjĎ ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Mhj° h˛hubhě)}(hExistem arquivos de mensagens da lista na web em muitos lugares diferentes.
Use um mecanismo de busca para encontrar esses arquivos. Por exemplo:h]hExistem arquivos de mensagens da lista na web em muitos lugares diferentes.
Use um mecanismo de busca para encontrar esses arquivos. Por exemplo:
}(hjń h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj° h˛hubj7 )}(h&https://lore.kernel.org/linux-kernel/
h]hě)}(h%https://lore.kernel.org/linux-kernel/h]jë )}(hj h]h%https://lore.kernel.org/linux-kernel/
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurij uh1ję hj ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj˙ ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Mhj° h˛hubhě)}(háĂ altamente recomendĂĄvel que vocĂŞ pesquise nos arquivos sobre o tĂłpico que
deseja abordar antes de postar na lista. Muitas coisas jĂĄ discutidas em
detalhes estĂŁo registradas apenas nos arquivos das listas de discussĂŁo.h]háĂ altamente recomendĂĄvel que vocĂŞ pesquise nos arquivos sobre o tĂłpico que
deseja abordar antes de postar na lista. Muitas coisas jĂĄ discutidas em
detalhes estĂŁo registradas apenas nos arquivos das listas de discussĂŁo.
}(hj! h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj° h˛hubhě)}(hX A maioria dos subsistemas individuais do kernel tambĂŠm possui sua prĂłpria
lista de discussão separada, onde realizam seus esforços de desenvolvimento.
Consulte o arquivo MAINTAINERS para obter uma lista de quais sĂŁo essas
listas para os diferentes grupos.h]hX A maioria dos subsistemas individuais do kernel tambĂŠm possui sua prĂłpria
lista de discussão separada, onde realizam seus esforços de desenvolvimento.
Consulte o arquivo MAINTAINERS para obter uma lista de quais sĂŁo essas
listas para os diferentes grupos.
}(hj/ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj° h˛hubhě)}(heMuitas das listas estĂŁo hospedadas no kernel.org. Informaçþes sobre elas
podem ser encontradas em:h]heMuitas das listas estão hospedadas no kernel.org. Informaçþes sobre elas
podem ser encontradas em:
}(hj= h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj° h˛hubj7 )}(hhttps://subspace.kernel.org
h]hě)}(hhttps://subspace.kernel.orgh]jë )}(hjQ h]hhttps://subspace.kernel.org
}(hjS h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurijQ uh1ję hjO ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M hjK ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´M hj° h˛hubhě)}(hĐPor favor, lembre-se de seguir bons hĂĄbitos de comportamento ao usar as
listas. Embora um pouco clichĂŞ, a URL a seguir possui algumas diretrizes
simples para interagir com a lista (ou qualquer outra lista):h]hĐPor favor, lembre-se de seguir bons hĂĄbitos de comportamento ao usar as
listas. Embora um pouco clichĂŞ, a URL a seguir possui algumas diretrizes
simples para interagir com a lista (ou qualquer outra lista):
}(hjm h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M˘hj° h˛hubj7 )}(h+https://subspace.kernel.org/etiquette.html
h]hě)}(h*https://subspace.kernel.org/etiquette.htmlh]jë )}(hj h]h*https://subspace.kernel.org/etiquette.html
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurij uh1ję hj ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MŚhj{ ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´MŚhj° h˛hubhě)}(hX
Se vĂĄrias pessoas responderem ao seu e-mail, a lista de destinatĂĄrios em
CC: pode se tornar bem grande. NĂŁo remova ninguĂŠm da lista CC: sem um
bom motivo, e não responda apenas para o endereço da lista. Acostume-se
a receber o e-mail duas vezes (um do remetente e outro da lista) e nĂŁo
tente ajustar isso adicionando cabeçalhos de e-mail complexos; as pessoas
nĂŁo gostarĂŁo disso.h]hX
Se vĂĄrias pessoas responderem ao seu e-mail, a lista de destinatĂĄrios em
CC: pode se tornar bem grande. NĂŁo remova ninguĂŠm da lista CC: sem um
bom motivo, e não responda apenas para o endereço da lista. Acostume-se
a receber o e-mail duas vezes (um do remetente e outro da lista) e nĂŁo
tente ajustar isso adicionando cabeçalhos de e-mail complexos; as pessoas
nĂŁo gostarĂŁo disso.
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M¨hj° h˛hubhě)}(hX Lembre-se de manter o contexto e a atribuição de suas respostas intactos;
mantenha as linhas do tipo "John Kernelhacker escreveu...:" no topo da
sua resposta e adicione seus comentårios entre as seçþes citadas
individualmente, em vez de escrever tudo no topo do e-mail.h]hX Lembre-se de manter o contexto e a atribuição de suas respostas intactos;
mantenha as linhas do tipo âJohn Kernelhacker escreveu...:â no topo da
sua resposta e adicione seus comentårios entre as seçþes citadas
individualmente, em vez de escrever tudo no topo do e-mail.
}(hjŤ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MŻhj° h˛hubhě)}(hX Se vocĂŞ adicionar patches ao seu e-mail, certifique-se de que sejam texto
puro legĂvel, conforme declarado em
:ref:`Documentation/process/submitting-patches.rst `.
Os desenvolvedores do kernel nĂŁo querem lidar com anexos ou patches
compactados; eles podem querer comentar linhas individuais do seu patch,
o que sĂł funciona dessa forma. Certifique-se de usar um programa de
e-mail que não altere espaços e caracteres de tabulação (tabs). Um bom
primeiro teste ĂŠ enviar o e-mail para si mesmo e tentar aplicar o seu
prĂłprio patch. Se isso nĂŁo funcionar, conserte seu programa de e-mail ou
troque-o atĂŠ que funcione.h](hpSe vocĂŞ adicionar patches ao seu e-mail, certifique-se de que sejam texto
puro legĂvel, conforme declarado em
}(hjš h˛hhłNh´Nubh)}(hG:ref:`Documentation/process/submitting-patches.rst `h]j )}(hjĂ h]h,Documentation/process/submitting-patches.rst
}(hjĹ h˛hhłNh´Nubah}(h]h ](j stdstd-refeh"]h$]h&]uh1j hjÁ ubah}(h]h ]h"]h$]h&]refdocj- refdomainjĎ reftyperefrefexplicitrefwarnj3 submittingpatchesuh1hhłhÇh´M´hjš ubhXÍ .
Os desenvolvedores do kernel nĂŁo querem lidar com anexos ou patches
compactados; eles podem querer comentar linhas individuais do seu patch,
o que sĂł funciona dessa forma. Certifique-se de usar um programa de
e-mail que não altere espaços e caracteres de tabulação (tabs). Um bom
primeiro teste ĂŠ enviar o e-mail para si mesmo e tentar aplicar o seu
prĂłprio patch. Se isso nĂŁo funcionar, conserte seu programa de e-mail ou
troque-o atĂŠ que funcione.
}(hjš h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´M´hj° h˛hubhě)}(hMAcima de tudo, por favor, lembre-se de mostrar respeito aos outros
inscritos.h]hMAcima de tudo, por favor, lembre-se de mostrar respeito aos outros
inscritos.
}(hjë h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mżhj° h˛hubeh}(h]listas-de-discussaoah ]h"]listas de discussĂŁoah$]h&]uh1hÖhhŘh˛hhłhÇh´Mubh×)}(hhh](hÜ)}(hTrabalhando com a comunidadeh]hTrabalhando com a comunidade
}(hj
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhj
h˛hhłhÇh´MÄubhě)}(hŰO objetivo da comunidade do kernel ĂŠ fornecer o melhor kernel possĂvel.
Quando você envia um patch para aceitação, ele serå revisado por seus
mĂŠritos tĂŠcnicos e apenas por eles. EntĂŁo, o que vocĂŞ deve esperar?h]hŰO objetivo da comunidade do kernel ĂŠ fornecer o melhor kernel possĂvel.
Quando você envia um patch para aceitação, ele serå revisado por seus
mĂŠritos tĂŠcnicos e apenas por eles. EntĂŁo, o que vocĂŞ deve esperar?
}(hj
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MĆhj
h˛hubj7 )}(hf- crĂticas
- comentĂĄrios
- solicitaçþes de mudança
- solicitaçþes de justificativa
- silĂŞncio
h]j= )}(hhh](jB )}(h crĂticash]hě)}(hj)
h]h crĂticas
}(hj+
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MĘhj'
ubah}(h]h ]h"]h$]h&]uh1jA hj$
ubjB )}(hcomentĂĄriosh]hě)}(hj@
h]hcomentĂĄrios
}(hjB
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MËhj>
ubah}(h]h ]h"]h$]h&]uh1jA hj$
ubjB )}(hsolicitaçþes de mudançah]hě)}(hjW
h]hsolicitaçþes de mudança
}(hjY
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MĚhjU
ubah}(h]h ]h"]h$]h&]uh1jA hj$
ubjB )}(hsolicitaçþes de justificativah]hě)}(hjn
h]hsolicitaçþes de justificativa
}(hjp
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MÍhjl
ubah}(h]h ]h"]h$]h&]uh1jA hj$
ubjB )}(h
silĂŞncio
h]hě)}(h silĂŞncioh]h silĂŞncio
}(hj
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MÎhj
ubah}(h]h ]h"]h$]h&]uh1jA hj$
ubeh}(h]h ]h"]h$]h&]j j uh1j< hłhÇh´MĘhj
ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´MĘhj
h˛hubhě)}(hXĂ Lembre-se, isso faz parte do processo de incluir seu patch no kernel.
VocĂŞ deve ser capaz de aceitar crĂticas e comentĂĄrios sobre seus patches,
avaliĂĄ-los em nĂvel tĂŠcnico e retrabalhar seus patches ou fornecer
raciocĂnios claros e concisos sobre o porquĂŞ de certas mudanças nĂŁo
deverem ser feitas. Se nĂŁo houver respostas Ă sua postagem, aguarde
alguns dias e tente novamente; Ă s vezes, as coisas se perdem no enorme
volume de mensagens.h]hXĂ Lembre-se, isso faz parte do processo de incluir seu patch no kernel.
VocĂŞ deve ser capaz de aceitar crĂticas e comentĂĄrios sobre seus patches,
avaliĂĄ-los em nĂvel tĂŠcnico e retrabalhar seus patches ou fornecer
raciocĂnios claros e concisos sobre o porquĂŞ de certas mudanças nĂŁo
deverem ser feitas. Se nĂŁo houver respostas Ă sua postagem, aguarde
alguns dias e tente novamente; Ă s vezes, as coisas se perdem no enorme
volume de mensagens.
}(hj§
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MĐhj
h˛hubhě)}(hO que vocĂŞ nĂŁo deve fazer?h]hO que vocĂŞ nĂŁo deve fazer?
}(hjľ
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MŘhj
h˛hubj7 )}(h§- esperar que seu patch seja aceito sem questionamentos
- tornar-se defensivo
- ignorar comentĂĄrios
- reenviar o patch sem fazer nenhuma das alteraçþes solicitadas
h]j= )}(hhh](jB )}(h5esperar que seu patch seja aceito sem questionamentosh]hě)}(hjĚ
h]h5esperar que seu patch seja aceito sem questionamentos
}(hjÎ
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MÚhjĘ
ubah}(h]h ]h"]h$]h&]uh1jA hjÇ
ubjB )}(htornar-se defensivoh]hě)}(hjă
h]htornar-se defensivo
}(hjĺ
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MŰhjá
ubah}(h]h ]h"]h$]h&]uh1jA hjÇ
ubjB )}(hignorar comentĂĄriosh]hě)}(hjú
h]hignorar comentĂĄrios
}(hjü
h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MÜhjř
ubah}(h]h ]h"]h$]h&]uh1jA hjÇ
ubjB )}(h@reenviar o patch sem fazer nenhuma das alteraçþes solicitadas
h]hě)}(h?reenviar o patch sem fazer nenhuma das alteraçþes solicitadash]h?reenviar o patch sem fazer nenhuma das alteraçþes solicitadas
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MÝhj ubah}(h]h ]h"]h$]h&]uh1jA hjÇ
ubeh}(h]h ]h"]h$]h&]j j uh1j< hłhÇh´MÚhjĂ
ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´MÚhj
h˛hubhě)}(hXŤ Em uma comunidade que busca a melhor solução tĂŠcnica possĂvel, sempre
haverĂĄ opiniĂľes divergentes sobre o quĂŁo benĂŠfico ĂŠ um patch. VocĂŞ deve
ser cooperativo e estar disposto a adaptar sua ideia para que ela se
encaixe no kernel. Ou, pelo menos, estar disposto a provar que sua ideia
vale a pena. Lembre-se: estar errado ĂŠ aceitĂĄvel, desde que vocĂŞ esteja
disposto a trabalhar em direção a uma solução correta.h]hXŤ Em uma comunidade que busca a melhor solução tĂŠcnica possĂvel, sempre
haverĂĄ opiniĂľes divergentes sobre o quĂŁo benĂŠfico ĂŠ um patch. VocĂŞ deve
ser cooperativo e estar disposto a adaptar sua ideia para que ela se
encaixe no kernel. Ou, pelo menos, estar disposto a provar que sua ideia
vale a pena. Lembre-se: estar errado ĂŠ aceitĂĄvel, desde que vocĂŞ esteja
disposto a trabalhar em direção a uma solução correta.
}(hj3 h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mßhj
h˛hubhě)}(hX+ Ă normal que as respostas ao seu primeiro patch sejam apenas uma lista
de uma dĂşzia de coisas que vocĂŞ deve corrigir. Isso **nĂŁo** implica que
seu patch nĂŁo serĂĄ aceito e **nĂŁo** ĂŠ algo pessoal contra vocĂŞ. Simplesmente
corrija todos os problemas apontados em seu patch e envie-o novamente.h](h~Ă normal que as respostas ao seu primeiro patch sejam apenas uma lista
de uma dĂşzia de coisas que vocĂŞ deve corrigir. Isso
}(hjA h˛hhłNh´Nubhstrong)}(h**nĂŁo**h]hnĂŁo
}(hjK h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1jI hjA ubh+ implica que
seu patch nĂŁo serĂĄ aceito e
}(hjA h˛hhłNh´NubjJ )}(h**nĂŁo**h]hnĂŁo
}(hj] h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1jI hjA ubhr ĂŠ algo pessoal contra vocĂŞ. Simplesmente
corrija todos os problemas apontados em seu patch e envie-o novamente.
}(hjA h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mćhj
h˛hubeh}(h]trabalhando-com-a-comunidadeah ]h"]trabalhando com a comunidadeah$]h&]uh1hÖhhŘh˛hhłhÇh´MÄubh×)}(hhh](hÜ)}(hBDiferenças entre a comunidade do kernel e estruturas corporativash]hBDiferenças entre a comunidade do kernel e estruturas corporativas
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhj} h˛hhłhÇh´Míubhě)}(hĘA comunidade do kernel trabalha de forma diferente da maioria dos ambientes
tradicionais de desenvolvimento corporativo. Aqui estĂĄ uma lista de coisas
que vocĂŞ pode tentar fazer para evitar problemas:h]hĘA comunidade do kernel trabalha de forma diferente da maioria dos ambientes
tradicionais de desenvolvimento corporativo. Aqui estĂĄ uma lista de coisas
que vocĂŞ pode tentar fazer para evitar problemas:
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mďhj} h˛hubj7 )}(hXÍ Boas coisas a dizer em relação Ă s suas mudanças propostas:
- "Isto resolve mĂşltiplos problemas."
- "Isto remove 2000 linhas de cĂłdigo."
- "Aqui estĂĄ um patch que explica o que estou tentando descrever."
- "Eu testei isso em 5 arquiteturas diferentes..."
- "Aqui estĂĄ uma sĂŠrie de pequenos patches que..."
- "Isto aumenta a performance em mĂĄquinas comuns..."
Coisas ruins que vocĂŞ deve evitar dizer:
- "NĂłs fizemos desta forma no AIX/ptx/Solaris, portanto deve ser bom..."
- "Eu faço isso hå 20 anos, então..."
- "Isto ĂŠ necessĂĄrio para minha empresa ganhar dinheiro."
- "Isto ĂŠ para nossa linha de produtos Enterprise."
- "Aqui estĂĄ meu documento de design de 1000 pĂĄginas que descreve minha ideia."
- "Estou trabalhando nisso hĂĄ 6 meses..."
- "Aqui estĂĄ um patch de 5000 linhas que..."
- "Eu reescrevi toda a bagunça atual, e aqui estå..."
- "Eu tenho um prazo (deadline), e este patch precisa ser aplicado agora."
h](hě)}(h>Boas coisas a dizer em relação Ă s suas mudanças propostas:h]h>Boas coisas a dizer em relação Ă s suas mudanças propostas:
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Móhj ubj7 )}(hX1 - "Isto resolve mĂşltiplos problemas."
- "Isto remove 2000 linhas de cĂłdigo."
- "Aqui estĂĄ um patch que explica o que estou tentando descrever."
- "Eu testei isso em 5 arquiteturas diferentes..."
- "Aqui estĂĄ uma sĂŠrie de pequenos patches que..."
- "Isto aumenta a performance em mĂĄquinas comuns..."
h]j= )}(hhh](jB )}(h$"Isto resolve mĂşltiplos problemas."h]hě)}(hjˇ h]h(âIsto resolve mĂşltiplos problemas.â
}(hjš h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mőhjľ ubah}(h]h ]h"]h$]h&]uh1jA hj˛ ubjB )}(h%"Isto remove 2000 linhas de cĂłdigo."h]hě)}(hjÎ h]h)âIsto remove 2000 linhas de cĂłdigo.â
}(hjĐ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MöhjĚ ubah}(h]h ]h"]h$]h&]uh1jA hj˛ ubjB )}(hA"Aqui estĂĄ um patch que explica o que estou tentando descrever."h]hě)}(hjĺ h]hEâAqui estĂĄ um patch que explica o que estou tentando descrever.â
}(hjç h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M÷hjă ubah}(h]h ]h"]h$]h&]uh1jA hj˛ ubjB )}(h0"Eu testei isso em 5 arquiteturas diferentes..."h]hě)}(hjü h]h4âEu testei isso em 5 arquiteturas diferentes...â
}(hjţ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mřhjú ubah}(h]h ]h"]h$]h&]uh1jA hj˛ ubjB )}(h2"Aqui estĂĄ uma sĂŠrie de pequenos patches que..."h]hě)}(hj h]h6âAqui estĂĄ uma sĂŠrie de pequenos patches que...â
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Můhj ubah}(h]h ]h"]h$]h&]uh1jA hj˛ ubjB )}(h4"Isto aumenta a performance em mĂĄquinas comuns..."
h]hě)}(h3"Isto aumenta a performance em mĂĄquinas comuns..."h]h7âIsto aumenta a performance em mĂĄquinas comuns...â
}(hj, h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Múhj( ubah}(h]h ]h"]h$]h&]uh1jA hj˛ ubeh}(h]h ]h"]h$]h&]j j uh1j< hłhÇh´MőhjŽ ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Mőhj ubhě)}(h)Coisas ruins que vocĂŞ deve evitar dizer:h]h)Coisas ruins que vocĂŞ deve evitar dizer:
}(hjL h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mühj ubj7 )}(hX - "NĂłs fizemos desta forma no AIX/ptx/Solaris, portanto deve ser bom..."
- "Eu faço isso hå 20 anos, então..."
- "Isto ĂŠ necessĂĄrio para minha empresa ganhar dinheiro."
- "Isto ĂŠ para nossa linha de produtos Enterprise."
- "Aqui estĂĄ meu documento de design de 1000 pĂĄginas que descreve minha ideia."
- "Estou trabalhando nisso hĂĄ 6 meses..."
- "Aqui estĂĄ um patch de 5000 linhas que..."
- "Eu reescrevi toda a bagunça atual, e aqui estå..."
- "Eu tenho um prazo (deadline), e este patch precisa ser aplicado agora."
h]j= )}(hhh](jB )}(hG"NĂłs fizemos desta forma no AIX/ptx/Solaris, portanto deve ser bom..."h]hě)}(hjc h]hKâNĂłs fizemos desta forma no AIX/ptx/Solaris, portanto deve ser bom...â
}(hje h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mţhja ubah}(h]h ]h"]h$]h&]uh1jA hj^ ubjB )}(h&"Eu faço isso hĂĄ 20 anos, entĂŁo..."h]hě)}(hjz h]h*âEu faço isso hĂĄ 20 anos, entĂŁo...â
}(hj| h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M˙hjx ubah}(h]h ]h"]h$]h&]uh1jA hj^ ubjB )}(h9"Isto ĂŠ necessĂĄrio para minha empresa ganhar dinheiro."h]hě)}(hj h]h=âIsto ĂŠ necessĂĄrio para minha empresa ganhar dinheiro.â
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M hj ubah}(h]h ]h"]h$]h&]uh1jA hj^ ubjB )}(h2"Isto ĂŠ para nossa linha de produtos Enterprise."h]hě)}(hj¨ h]h6âIsto ĂŠ para nossa linha de produtos Enterprise.â
}(hjŞ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MhjŚ ubah}(h]h ]h"]h$]h&]uh1jA hj^ ubjB )}(hO"Aqui estĂĄ meu documento de design de 1000 pĂĄginas que descreve minha ideia."h]hě)}(hjż h]hSâAqui estĂĄ meu documento de design de 1000 pĂĄginas que descreve minha ideia.â
}(hjÁ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj˝ ubah}(h]h ]h"]h$]h&]uh1jA hj^ ubjB )}(h("Estou trabalhando nisso hĂĄ 6 meses..."h]hě)}(hjÖ h]h,âEstou trabalhando nisso hĂĄ 6 meses...â
}(hjŘ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MhjÔ ubah}(h]h ]h"]h$]h&]uh1jA hj^ ubjB )}(h+"Aqui estĂĄ um patch de 5000 linhas que..."h]hě)}(hjí h]h/âAqui estĂĄ um patch de 5000 linhas que...â
}(hjď h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhjë ubah}(h]h ]h"]h$]h&]uh1jA hj^ ubjB )}(h5"Eu reescrevi toda a bagunça atual, e aqui estĂĄ..."h]hě)}(hj h]h9âEu reescrevi toda a bagunça atual, e aqui estĂĄ...â
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj ubah}(h]h ]h"]h$]h&]uh1jA hj^ ubjB )}(hI"Eu tenho um prazo (deadline), e este patch precisa ser aplicado agora."
h]hě)}(hH"Eu tenho um prazo (deadline), e este patch precisa ser aplicado agora."h]hLâEu tenho um prazo (deadline), e este patch precisa ser aplicado agora.â
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj ubah}(h]h ]h"]h$]h&]uh1jA hj^ ubeh}(h]h ]h"]h$]h&]j j uh1j< hłhÇh´MţhjZ ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Mţhj ubeh}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Móhj} h˛hubhě)}(hXŰ Outra forma em que a comunidade do kernel difere da maioria dos ambientes
tradicionais de engenharia de software Ê a natureza anônima da interação.
Um benefĂcio de usar e-mail e IRC como as principais formas de comunicação
Ê a ausência de discriminação baseada em gênero ou raça. O ambiente de
trabalho do kernel Linux aceita mulheres e minorias porque tudo o que vocĂŞ
Ê, Ê um endereço de e-mail. O aspecto internacional tambÊm ajuda a nivelar
o campo de jogo porque vocĂŞ nĂŁo pode adivinhar o gĂŞnero com base no nome
de uma pessoa. Um homem pode se chamar Andrea e uma mulher pode se chamar
Pat. A maioria das mulheres que trabalharam no kernel Linux e expressaram
uma opiniĂŁo tiveram experiĂŞncias positivas.h]hXŰ Outra forma em que a comunidade do kernel difere da maioria dos ambientes
tradicionais de engenharia de software Ê a natureza anônima da interação.
Um benefĂcio de usar e-mail e IRC como as principais formas de comunicação
Ê a ausência de discriminação baseada em gênero ou raça. O ambiente de
trabalho do kernel Linux aceita mulheres e minorias porque tudo o que vocĂŞ
Ê, Ê um endereço de e-mail. O aspecto internacional tambÊm ajuda a nivelar
o campo de jogo porque vocĂŞ nĂŁo pode adivinhar o gĂŞnero com base no nome
de uma pessoa. Um homem pode se chamar Andrea e uma mulher pode se chamar
Pat. A maioria das mulheres que trabalharam no kernel Linux e expressaram
uma opiniĂŁo tiveram experiĂŞncias positivas.
}(hjC h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj} h˛hubhě)}(hXU A barreira do idioma pode causar problemas para algumas pessoas que nĂŁo
se sentem confortĂĄveis com o inglĂŞs. Um bom domĂnio do idioma pode ser
necessĂĄrio para transmitir ideias adequadamente nas listas de discussĂŁo,
por isso recomenda-se que vocĂŞ verifique seus e-mails para garantir que
façam sentido em inglês antes de enviå-los.h]hXU A barreira do idioma pode causar problemas para algumas pessoas que não
se sentem confortĂĄveis com o inglĂŞs. Um bom domĂnio do idioma pode ser
necessĂĄrio para transmitir ideias adequadamente nas listas de discussĂŁo,
por isso recomenda-se que vocĂŞ verifique seus e-mails para garantir que
façam sentido em inglês antes de enviå-los.
}(hjQ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhj} h˛hubeh}(h]Adiferencas-entre-a-comunidade-do-kernel-e-estruturas-corporativasah ]h"]Bdiferenças entre a comunidade do kernel e estruturas corporativasah$]h&]uh1hÖhhŘh˛hhłhÇh´Míubh×)}(hhh](hÜ)}(hDivida suas alteraçþesh]hDivida suas alteraçþes
}(hjj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhjg h˛hhłhÇh´Mubhě)}(hXÖ A comunidade do kernel Linux nĂŁo aceita de bom grado grandes blocos de
código jogados de uma só vez. As mudanças precisam ser devidamente
introduzidas, discutidas e divididas em porçþes minúsculas e individuais.
Isso ĂŠ quase o exato oposto do que as empresas costumam fazer. Sua proposta
tambĂŠm deve ser introduzida muito cedo no processo de desenvolvimento, para
que vocĂŞ possa receber feedback sobre o que estĂĄ fazendo. Isso tambĂŠm permite
que a comunidade sinta que vocĂŞ estĂĄ trabalhando com eles, e nĂŁo simplesmente
usando-os como um depĂłsito para sua funcionalidade. No entanto, nĂŁo envie
50 e-mails de uma sĂł vez para uma lista de discussĂŁo; sua sĂŠrie de patches
deve ser menor que isso quase sempre.h]hXÖ A comunidade do kernel Linux nĂŁo aceita de bom grado grandes blocos de
código jogados de uma só vez. As mudanças precisam ser devidamente
introduzidas, discutidas e divididas em porçþes minúsculas e individuais.
Isso ĂŠ quase o exato oposto do que as empresas costumam fazer. Sua proposta
tambĂŠm deve ser introduzida muito cedo no processo de desenvolvimento, para
que vocĂŞ possa receber feedback sobre o que estĂĄ fazendo. Isso tambĂŠm permite
que a comunidade sinta que vocĂŞ estĂĄ trabalhando com eles, e nĂŁo simplesmente
usando-os como um depĂłsito para sua funcionalidade. No entanto, nĂŁo envie
50 e-mails de uma sĂł vez para uma lista de discussĂŁo; sua sĂŠrie de patches
deve ser menor que isso quase sempre.
}(hjx h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mhjg h˛hubhě)}(h4As razĂľes para dividir as coisas sĂŁo as seguintes:h]h4As razĂľes para dividir as coisas sĂŁo as seguintes:
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M(hjg h˛hubhenumerated_list)}(hhh](jB )}(hX[ Patches pequenos aumentam a probabilidade de serem aplicados, pois nĂŁo
exigem muito tempo ou esforço para verificar sua correção. Um patch de
5 linhas pode ser aplicado por um mantenedor com apenas um olhar rĂĄpido.
No entanto, um patch de 500 linhas pode levar horas para ser revisado
(o tempo que leva ĂŠ exponencialmente proporcional ao tamanho do patch,
ou algo assim).
Patches pequenos tambÊm tornam muito fåcil a depuração (debug) quando
algo dĂĄ errado. Ă muito mais fĂĄcil reverter patches um por um do que
dissecar um patch muito grande apĂłs ele ter sido aplicado (e quebrado algo).
h](hě)}(hXy Patches pequenos aumentam a probabilidade de serem aplicados, pois nĂŁo
exigem muito tempo ou esforço para verificar sua correção. Um patch de
5 linhas pode ser aplicado por um mantenedor com apenas um olhar rĂĄpido.
No entanto, um patch de 500 linhas pode levar horas para ser revisado
(o tempo que leva ĂŠ exponencialmente proporcional ao tamanho do patch,
ou algo assim).h]hXy Patches pequenos aumentam a probabilidade de serem aplicados, pois nĂŁo
exigem muito tempo ou esforço para verificar sua correção. Um patch de
5 linhas pode ser aplicado por um mantenedor com apenas um olhar rĂĄpido.
No entanto, um patch de 500 linhas pode levar horas para ser revisado
(o tempo que leva ĂŠ exponencialmente proporcional ao tamanho do patch,
ou algo assim).
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M*hj ubhě)}(hßPatches pequenos tambĂŠm tornam muito fĂĄcil a depuração (debug) quando
algo dĂĄ errado. Ă muito mais fĂĄcil reverter patches um por um do que
dissecar um patch muito grande apĂłs ele ter sido aplicado (e quebrado algo).h]hßPatches pequenos tambĂŠm tornam muito fĂĄcil a depuração (debug) quando
algo dĂĄ errado. Ă muito mais fĂĄcil reverter patches um por um do que
dissecar um patch muito grande apĂłs ele ter sido aplicado (e quebrado algo).
}(hjŤ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M1hj ubeh}(h]h ]h"]h$]h&]uh1jA hj h˛hhłhÇh´NubjB )}(hĂ importante nĂŁo apenas enviar patches pequenos, mas tambĂŠm reescrever
e simplificar (ou simplesmente reordenar) os patches antes de submetĂŞ-los.
h]hě)}(hĂ importante nĂŁo apenas enviar patches pequenos, mas tambĂŠm reescrever
e simplificar (ou simplesmente reordenar) os patches antes de submetĂŞ-los.h]hĂ importante nĂŁo apenas enviar patches pequenos, mas tambĂŠm reescrever
e simplificar (ou simplesmente reordenar) os patches antes de submetĂŞ-los.
}(hjĂ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M5hjż ubah}(h]h ]h"]h$]h&]uh1jA hj h˛hhłhÇh´Nubeh}(h]h ]h"]h$]h&]enumtypearabicprefixhsuffix)uh1j hjg h˛hhłhÇh´M*ubhě)}(h;Aqui estĂĄ uma analogia do desenvolvedor do kernel Al Viro:h]h;Aqui estĂĄ uma analogia do desenvolvedor do kernel Al Viro:
}(hjâ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M8hjg h˛hubj7 )}(hX *"Pense em um professor corrigindo o dever de casa de um aluno de
matemĂĄtica. O professor nĂŁo quer ver as tentativas e erros do aluno
antes de chegar à solução. Ele quer ver a resposta mais limpa e
elegante. Um bom aluno sabe disso e nunca enviaria seu trabalho
intermediårio antes da solução final.*
*O mesmo vale para o desenvolvimento do kernel. Os mantenedores e
revisores não querem ver o processo de pensamento por trås da solução
do problema que se estå resolvendo. Eles querem ver uma solução
simples e elegante."*
h](hě)}(hX4 *"Pense em um professor corrigindo o dever de casa de um aluno de
matemĂĄtica. O professor nĂŁo quer ver as tentativas e erros do aluno
antes de chegar à solução. Ele quer ver a resposta mais limpa e
elegante. Um bom aluno sabe disso e nunca enviaria seu trabalho
intermediĂĄrio antes da solução final.*h]jÎ )}(hjö h]hX4 âPense em um professor corrigindo o dever de casa de um aluno de
matemĂĄtica. O professor nĂŁo quer ver as tentativas e erros do aluno
antes de chegar à solução. Ele quer ver a resposta mais limpa e
elegante. Um bom aluno sabe disso e nunca enviaria seu trabalho
intermediårio antes da solução final.
}(hjř h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1jÍ hjô ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M:hjđ ubhě)}(hä*O mesmo vale para o desenvolvimento do kernel. Os mantenedores e
revisores não querem ver o processo de pensamento por trås da solução
do problema que se estå resolvendo. Eles querem ver uma solução
simples e elegante."*h]jÎ )}(hj
h]häO mesmo vale para o desenvolvimento do kernel. Os mantenedores e
revisores não querem ver o processo de pensamento por trås da solução
do problema que se estå resolvendo. Eles querem ver uma solução
simples e elegante.â
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1jÍ hj ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M@hjđ ubeh}(h]h ]h"]h$]h&]uh1j6 hłhÇh´M:hjg h˛hubhě)}(hX Pode ser desafiador manter o equilĂbrio entre apresentar uma solução
elegante e trabalhar em conjunto com a comunidade discutindo seu trabalho
inacabado. Portanto, ĂŠ bom entrar no processo cedo para obter feedback e
melhorar seu trabalho, mas tambÊm manter suas alteraçþes em pequenos blocos
que possam ser aceitos, mesmo quando sua tarefa completa ainda nĂŁo esteja
pronta para inclusĂŁo.h]hX Pode ser desafiador manter o equilĂbrio entre apresentar uma solução
elegante e trabalhar em conjunto com a comunidade discutindo seu trabalho
inacabado. Portanto, ĂŠ bom entrar no processo cedo para obter feedback e
melhorar seu trabalho, mas tambÊm manter suas alteraçþes em pequenos blocos
que possam ser aceitos, mesmo quando sua tarefa completa ainda nĂŁo esteja
pronta para inclusĂŁo.
}(hj( h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MEhjg h˛hubhě)}(hTambĂŠm entenda que nĂŁo ĂŠ aceitĂĄvel enviar patches para inclusĂŁo que estejam
inacabados e que serĂŁo "consertados mais tarde".h]hTambĂŠm entenda que nĂŁo ĂŠ aceitĂĄvel enviar patches para inclusĂŁo que estejam
inacabados e que serĂŁo âconsertados mais tardeâ.
}(hj6 h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MLhjg h˛hubeh}(h]divida-suas-alteracoesah ]h"]divida suas alteraçþesah$]h&]uh1hÖhhŘh˛hhłhÇh´Mubh×)}(hhh](hÜ)}(hJustifique sua alteraçãoh]hJustifique sua alteração
}(hjO h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhjL h˛hhłhÇh´MQubhě)}(hÓAlĂŠm de dividir seus patches, ĂŠ muito importante que vocĂŞ deixe a comunidade
Linux saber por que eles deveriam adicionar essa mudança. Novas
funcionalidades devem ser justificadas como necessĂĄrias e Ăşteis.h]hÓAlĂŠm de dividir seus patches, ĂŠ muito importante que vocĂŞ deixe a comunidade
Linux saber por que eles deveriam adicionar essa mudança. Novas
funcionalidades devem ser justificadas como necessĂĄrias e Ăşteis.
}(hj] h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MShjL h˛hubeh}(h]justifique-sua-alteracaoah ]h"]justifique sua alteraçãoah$]h&]uh1hÖhhŘh˛hhłhÇh´MQubh×)}(hhh](hÜ)}(hDocumente sua alteraçãoh]hDocumente sua alteração
}(hjv h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hŰhjs h˛hhłhÇh´MYubhě)}(hX Ao enviar seus patches, preste atenção especial ao que vocĂŞ diz no texto
do seu e-mail. Essas informaçþes se tornarão as informaçþes do ChangeLog
para o patch e serĂŁo preservadas para que todos vejam para sempre. Elas
devem descrever o patch completamente, contendo:h]hX Ao enviar seus patches, preste atenção especial ao que você diz no texto
do seu e-mail. Essas informaçþes se tornarão as informaçþes do ChangeLog
para o patch e serĂŁo preservadas para que todos vejam para sempre. Elas
devem descrever o patch completamente, contendo:
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M[hjs h˛hubj7 )}(h- por que a mudança ĂŠ necessĂĄria
- a abordagem geral de design no patch
- detalhes de implementação
- resultados de testes
h]j= )}(hhh](jB )}(h!por que a mudança ĂŠ necessĂĄriah]hě)}(hj h]h!por que a mudança ĂŠ necessĂĄria
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´M`hj ubah}(h]h ]h"]h$]h&]uh1jA hj ubjB )}(h$a abordagem geral de design no patchh]hě)}(hj˛ h]h$a abordagem geral de design no patch
}(hj´ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mahj° ubah}(h]h ]h"]h$]h&]uh1jA hj ubjB )}(hdetalhes de implementaçãoh]hě)}(hjÉ h]hdetalhes de implementação
}(hjË h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MbhjÇ ubah}(h]h ]h"]h$]h&]uh1jA hj ubjB )}(hresultados de testes
h]hě)}(hresultados de testesh]hresultados de testes
}(hjâ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´MchjŢ ubah}(h]h ]h"]h$]h&]uh1jA hj ubeh}(h]h ]h"]h$]h&]j j uh1j< hłhÇh´M`hj ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´M`hjs h˛hubhě)}(hcPara mais detalhes sobre como tudo isso deve ser, por favor, veja a seção
ChangeLog do documento:h]hcPara mais detalhes sobre como tudo isso deve ser, por favor, veja a seção
ChangeLog do documento:
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mehjs h˛hubj7 )}(hB"O Patch Perfeito"
https://www.ozlabs.org/~akpm/stuff/tpp.txt
h]jŃ )}(hhh]jÖ )}(h>"O Patch Perfeito"
https://www.ozlabs.org/~akpm/stuff/tpp.txt
h](jÜ )}(h"O Patch Perfeito"h]hâO Patch Perfeitoâ
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1jŰ hłhÇh´Mihj ubj )}(hhh]hě)}(h*https://www.ozlabs.org/~akpm/stuff/tpp.txth]jë )}(hj. h]h*https://www.ozlabs.org/~akpm/stuff/tpp.txt
}(hj0 h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurij. uh1ję hj, ubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mihj) ubah}(h]h ]h"]h$]h&]uh1j hj ubeh}(h]h ]h"]h$]h&]uh1jŐ hłhÇh´Mihj ubah}(h]h ]h"]h$]h&]uh1jĐ hj ubah}(h]h ]h"]h$]h&]uh1j6 hłhÇh´Mhhjs h˛hubhě)}(hXS Todas essas coisas Ă s vezes sĂŁo muito difĂceis de fazer. Pode levar anos
para aperfeiçoar essas prĂĄticas (se ĂŠ que ĂŠ possĂvel). Ă um processo
contĂnuo de melhoria que exige muita paciĂŞncia e determinação. Mas nĂŁo
desista, ĂŠ possĂvel. Muitos fizeram isso antes, e cada um teve que começar
exatamente onde vocĂŞ estĂĄ agora.h]hXS Todas essas coisas Ă s vezes sĂŁo muito difĂceis de fazer. Pode levar anos
para aperfeiçoar essas prĂĄticas (se ĂŠ que ĂŠ possĂvel). Ă um processo
contĂnuo de melhoria que exige muita paciĂŞncia e determinação. Mas nĂŁo
desista, ĂŠ possĂvel. Muitos fizeram isso antes, e cada um teve que começar
exatamente onde vocĂŞ estĂĄ agora.
}(hj\ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mkhjs h˛hubh
transition)}(h
----------h]h}(h]h ]h"]h$]h&]uh1jj hłhÇh´Mqhjs h˛hubhě)}(hX Agradecimentos a Paolo Ciarrocchi, que permitiu que a seção "Processo de
Desenvolvimento" (https://lwn.net/Articles/94386/) fosse baseada em um
texto que ele escreveu, e a Randy Dunlap e Gerrit Huizenga por parte da
lista de coisas que vocĂŞ deve ou nĂŁo dizer. TambĂŠm agradecemos a Pat Mochel,
Hanna Linder, Randy Dunlap, Kay Sievers, Vojtech Pavlik, Jan Kara,
Josh Boyer, Kees Cook, Andrew Morton, Andi Kleen, Vadim Lobanov, Jesper Juhl,
Adrian Bunk, Keri Harris, Frans Pop, David A. Wheeler, Junio Hamano,
Michael Kerrisk e Alex Shepard por suas revisþes, comentårios e contribuiçþes.
Sem a ajuda deles, este documento nĂŁo teria sido possĂvel.h](haAgradecimentos a Paolo Ciarrocchi, que permitiu que a seção âProcesso de
Desenvolvimentoâ (
}(hjv h˛hhłNh´Nubjë )}(hhttps://lwn.net/Articles/94386/h]hhttps://lwn.net/Articles/94386/
}(hj~ h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurij uh1ję hjv ubhX ) fosse baseada em um
texto que ele escreveu, e a Randy Dunlap e Gerrit Huizenga por parte da
lista de coisas que vocĂŞ deve ou nĂŁo dizer. TambĂŠm agradecemos a Pat Mochel,
Hanna Linder, Randy Dunlap, Kay Sievers, Vojtech Pavlik, Jan Kara,
Josh Boyer, Kees Cook, Andrew Morton, Andi Kleen, Vadim Lobanov, Jesper Juhl,
Adrian Bunk, Keri Harris, Frans Pop, David A. Wheeler, Junio Hamano,
Michael Kerrisk e Alex Shepard por suas revisþes, comentårios e contribuiçþes.
Sem a ajuda deles, este documento nĂŁo teria sido possĂvel.
}(hjv h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´Mshjs h˛hubhě)}(h/Mantenedor: Greg Kroah-Hartman h](h Mantenedor: Greg Kroah-Hartman <
}(hj h˛hhłNh´Nubjë )}(hgreg@kroah.comh]hgreg@kroah.com
}(hj h˛hhłNh´Nubah}(h]h ]h"]h$]h&]refurimailto:greg@kroah.comuh1ję hj ubh>
}(hj h˛hhłNh´Nubeh}(h]h ]h"]h$]h&]uh1hëhłhÇh´M}hjs h˛hubeh}(h]documente-sua-alteracaoah ]h"]documente sua alteraçãoah$]h&]uh1hÖhhŘh˛hhłhÇh´MYubeh}(h](,como-fazer-o-desenvolvimento-do-kernel-linuxhŐeh ]h"](,como fazer o desenvolvimento do kernel linuxpt_process_howtoeh$]h&]uh1hÖhhh˛hhłhÇh´Kexpect_referenced_by_name}jÇ hĘsexpect_referenced_by_id}hŐhĘsubeh}(h]h ]h"]h$]h&]sourcehÇuh1hcurrent_sourceNcurrent_lineNsettingsdocutils.frontendValues)}(hŰN generatorN datestampNsource_linkN
source_urlN
toc_backlinksentryfootnote_backlinksK
sectnum_xformKstrip_commentsNstrip_elements_with_classesN
strip_classesNreport_levelK
halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerjń error_encodingutf-8error_encoding_error_handlerbackslashreplace
language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid
dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourcehÇ_destinationN
_config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabledraw_enabledKline_length_limitM'pep_referencesNpep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesNrfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlongsmart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform
docinfo_xformKsectsubtitle_xform
image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}hŐ]hĘasnameids}(jÇ hŐjĆ jĂ jÎ jË jt jq j j j j jm jj j> j; jí ję jv
js
jß
jÜ
j6 j3 je jb j jŞ jţ jű jz jw jd ja jI jF jp jm jž jť u nametypes}(jÇ jĆ jÎ jt j j jm j> jí jv
jß
j6 je j jţ jz jd jI jp jž uh}(hŐhŘjĂ hŘjË j jq jŃ j jţ j jw jj j j; jp ję j˙ js
jđ jÜ
jy
j3 jâ
jb jA jŞ jh jű j° jw j
ja j} jF jg jm jL jť js u
footnote_refs}
citation_refs}
autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK
id_countercollectionsCounter}
Rparse_messages]transform_messages]hsystem_message)}(hhh]hě)}(hhh]h6Hyperlink target "pt-process-howto" is not referenced.
}hj[ sbah}(h]h ]h"]h$]h&]uh1hëhjX ubah}(h]h ]h"]h$]h&]levelKtypeINFOsourcehÇlineKuh1jV ubatransformerNinclude_log]
decorationNh˛hub.