€•èŒsphinx.addnodes”Œdocument”“”)”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)”}”(hhh]”(hŒ pending_xref”“”)”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒEnglish”…””}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ/process/2.Process”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)”}”(hhh]”hŒChinese (Simplified)”…””}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ%/translations/zh_CN/process/2.Process”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒChinese (Traditional)”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ%/translations/zh_TW/process/2.Process”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ%/translations/ja_JP/process/2.Process”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ%/translations/ko_KR/process/2.Process”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒPortuguese (Brazilian)”…””}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ%/translations/pt_BR/process/2.Process”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒSpanish”…””}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ%/translations/sp_SP/process/2.Process”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒItalian”uh1h hhŒ _document”hŒsource”NŒline”NubhŒwarning”“”)”}”(hŒ×In caso di dubbi sulla correttezza del contenuto di questa traduzione, l'unico riferimento valido è la documentazione ufficiale in inglese. Per maggiori informazioni consultate le :ref:`avvertenze `.”h]”hŒ paragraph”“”)”}”(hŒ×In caso di dubbi sulla correttezza del contenuto di questa traduzione, l'unico riferimento valido è la documentazione ufficiale in inglese. Per maggiori informazioni consultate le :ref:`avvertenze `.”h]”(hŒ·In caso di dubbi sulla correttezza del contenuto di questa traduzione, l’unico riferimento valido è la documentazione ufficiale in inglese. Per maggiori informazioni consultate le ”…””}”(hh½h²hh³Nh´Nubh)”}”(hŒ!:ref:`avvertenze `”h]”hŒinline”“”)”}”(hhÇh]”hŒ avvertenze”…””}”(hhËh²hh³Nh´Nubah}”(h]”h ]”(Œxref”Œstd”Œstd-ref”eh"]”h$]”h&]”uh1hÉhhÅubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”Œ$translations/it_IT/process/2.Process”Œ refdomain”hÖŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆŒ reftarget”Œ it_disclaimer”uh1hh³Œ3Documentation/translations/it_IT/disclaimer-ita.rst”h´Khh½ubhŒ.”…””}”(hh½h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h»h³hêh´Khh·ubah}”(h]”h ]”h"]”h$]”h&]”uh1hµhhh²hh³hêh´NubhŒ field_list”“”)”}”(hhh]”(hŒfield”“”)”}”(hhh]”(hŒ field_name”“”)”}”(hŒOriginal”h]”hŒOriginal”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjh³ŒR/var/lib/git/docbuild/linux/Documentation/translations/it_IT/process/2.Process.rst”h´KubhŒ field_body”“”)”}”(hŒ@:ref:`Documentation/process/2.Process.rst `”h]”h¼)”}”(hjh]”h)”}”(hjh]”hÊ)”}”(hjh]”hŒ#Documentation/process/2.Process.rst”…””}”(hj"h²hh³Nh´Nubah}”(h]”h ]”(hÕŒstd”Œstd-ref”eh"]”h$]”h&]”uh1hÉhjubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”h⌠refdomain”j,Œreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆhèŒdevelopment_process”uh1hh³jh´Khjubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khjubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³jh´Khhýh²hubj)”}”(hhh]”(j)”}”(hŒ Translator”h]”hŒ Translator”…””}”(hjSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjPh³jh´Kubj)”}”(hŒ,Alessia Mantegazza ”h]”h¼)”}”(hŒ+Alessia Mantegazza ”h]”(hŒAlessia Mantegazza <”…””}”(hjeh²hh³Nh´NubhŒ reference”“”)”}”(hŒamantegazza@vaga.pv.it”h]”hŒamantegazza@vaga.pv.it”…””}”(hjoh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œmailto:amantegazza@vaga.pv.it”uh1jmhjeubhŒ>”…””}”(hjeh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khjaubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjPubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³jh´Khhýh²hubeh}”(h]”h ]”h"]”h$]”h&]”uh1hûhhh²hh³jh´KubhŒtarget”“”)”}”(hŒ.. _it_development_process:”h]”h}”(h]”h ]”h"]”h$]”h&]”Œrefid”Œit-development-process”uh1j›h´Khhh²hh³jubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒ%Come funziona il processo di sviluppo”h]”hŒ%Come funziona il processo di sviluppo”…””}”(hj°h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j®hj«h²hh³jh´K ubh¼)”}”(hX©Lo sviluppo del Kernel agli inizi degli anno '90 era abbastanza libero, con un numero di utenti e sviluppatori relativamente basso. Con una base di milioni di utenti e con 2000 sviluppatori coinvolti nel giro di un anno, il kernel da allora ha messo in atto un certo numero di procedure per rendere lo sviluppo più agevole. È richiesta una solida conoscenza di come tale processo si svolge per poter esserne parte attiva.”h]”hX«Lo sviluppo del Kernel agli inizi degli anno ‘90 era abbastanza libero, con un numero di utenti e sviluppatori relativamente basso. Con una base di milioni di utenti e con 2000 sviluppatori coinvolti nel giro di un anno, il kernel da allora ha messo in atto un certo numero di procedure per rendere lo sviluppo più agevole. È richiesta una solida conoscenza di come tale processo si svolge per poter esserne parte attiva.”…””}”(hj¾h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K hj«h²hubjª)”}”(hhh]”(j¯)”}”(hŒIl quadro d'insieme”h]”hŒIl quadro d’insieme”…””}”(hjÏh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j®hjÌh²hh³jh´Kubh¼)”}”(hŒ¶Gli sviluppatori kernel utilizzano un calendario di rilascio generico, dove ogni due o tre mesi viene effettuata un rilascio importante del kernel. I rilasci più recenti sono stati:”h]”hŒ¶Gli sviluppatori kernel utilizzano un calendario di rilascio generico, dove ogni due o tre mesi viene effettuata un rilascio importante del kernel. I rilasci più recenti sono stati:”…””}”(hjÝh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KhjÌh²hubhŒ block_quote”“”)”}”(hŒÅ====== ================= 5.0 3 marzo, 2019 5.1 5 maggio, 2019 5.2 7 luglio, 2019 5.3 15 settembre, 2019 5.4 24 novembre, 2019 5.5 6 gennaio, 2020 ====== ================= ”h]”hŒtable”“”)”}”(hhh]”hŒtgroup”“”)”}”(hhh]”(hŒcolspec”“”)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jûhjøubjü)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jûhjøubhŒtbody”“”)”}”(hhh]”(hŒrow”“”)”}”(hhh]”(hŒentry”“”)”}”(hhh]”h¼)”}”(hŒ5.0”h]”hŒ5.0”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khjubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubj)”}”(hhh]”h¼)”}”(hŒ 3 marzo, 2019”h]”hŒ 3 marzo, 2019”…””}”(hj7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khj4ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ5.1”h]”hŒ5.1”…””}”(hjWh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KhjTubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjQubj)”}”(hhh]”h¼)”}”(hŒ5 maggio, 2019”h]”hŒ5 maggio, 2019”…””}”(hjnh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khjkubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjQubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ5.2”h]”hŒ5.2”…””}”(hjŽh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khj‹ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjˆubj)”}”(hhh]”h¼)”}”(hŒ7 luglio, 2019”h]”hŒ7 luglio, 2019”…””}”(hj¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khj¢ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjˆubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ5.3”h]”hŒ5.3”…””}”(hjÅh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KhjÂubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¿ubj)”}”(hhh]”h¼)”}”(hŒ15 settembre, 2019”h]”hŒ15 settembre, 2019”…””}”(hjÜh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KhjÙubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¿ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ5.4”h]”hŒ5.4”…””}”(hjüh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khjùubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjöubj)”}”(hhh]”h¼)”}”(hŒ24 novembre, 2019”h]”hŒ24 novembre, 2019”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khjubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjöubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ5.5”h]”hŒ5.5”…””}”(hj3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khj0ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj-ubj)”}”(hhh]”h¼)”}”(hŒ6 gennaio, 2020”h]”hŒ6 gennaio, 2020”…””}”(hjJh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KhjGubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj-ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjøubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1jöhjóubah}”(h]”h ]”h"]”h$]”h&]”uh1jñhjíubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´KhjÌh²hubh¼)”}”(hX¯Ciascun rilascio 5.x è un importante rilascio del kernel con nuove funzionalità, modifiche interne dell'API, e molto altro. Un tipico rilascio contiene quasi 13,000 gruppi di modifiche con ulteriori modifiche a parecchie migliaia di linee di codice. La 5.x. è pertanto la linea di confine nello sviluppo del kernel Linux; il kernel utilizza un sistema di sviluppo continuo che integra costantemente nuove importanti modifiche.”h]”hX±Ciascun rilascio 5.x è un importante rilascio del kernel con nuove funzionalità, modifiche interne dell’API, e molto altro. Un tipico rilascio contiene quasi 13,000 gruppi di modifiche con ulteriori modifiche a parecchie migliaia di linee di codice. La 5.x. è pertanto la linea di confine nello sviluppo del kernel Linux; il kernel utilizza un sistema di sviluppo continuo che integra costantemente nuove importanti modifiche.”…””}”(hj}h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K"hjÌh²hubh¼)”}”(hX>Viene seguita una disciplina abbastanza lineare per l'inclusione delle patch di ogni rilascio. All'inizio di ogni ciclo di sviluppo, la "finestra di inclusione" viene dichiarata aperta. In quel momento il codice ritenuto sufficientemente stabile(e che è accettato dalla comunità di sviluppo) viene incluso nel ramo principale del kernel. La maggior parte delle patch per un nuovo ciclo di sviluppo (e tutte le più importanti modifiche) saranno inserite durante questo periodo, ad un ritmo che si attesta sulle 1000 modifiche ("patch" o "gruppo di modifiche") al giorno.”h]”hXNViene seguita una disciplina abbastanza lineare per l’inclusione delle patch di ogni rilascio. All’inizio di ogni ciclo di sviluppo, la “finestra di inclusione†viene dichiarata aperta. In quel momento il codice ritenuto sufficientemente stabile(e che è accettato dalla comunità di sviluppo) viene incluso nel ramo principale del kernel. La maggior parte delle patch per un nuovo ciclo di sviluppo (e tutte le più importanti modifiche) saranno inserite durante questo periodo, ad un ritmo che si attesta sulle 1000 modifiche (“patch†o “gruppo di modificheâ€) al giorno.”…””}”(hj‹h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K)hjÌh²hubh¼)”}”(hX (per inciso, vale la pena notare che i cambiamenti integrati durante la "finestra di inclusione" non escono dal nulla; questi infatti, sono stati raccolti e, verificati in anticipo. Il funzionamento di tale procedimento verrà descritto dettagliatamente più avanti).”h]”hX(per inciso, vale la pena notare che i cambiamenti integrati durante la “finestra di inclusione†non escono dal nulla; questi infatti, sono stati raccolti e, verificati in anticipo. Il funzionamento di tale procedimento verrà descritto dettagliatamente più avanti).”…””}”(hj™h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K2hjÌh²hubh¼)”}”(hXñLa finestra di inclusione resta attiva approssimativamente per due settimane. Al termine di questo periodo, Linus Torvald dichiarerà che la finestra è chiusa e rilascerà il primo degli "rc" del kernel. Per il kernel che è destinato ad essere 5.6, per esempio, il rilascio che emerge al termine della finestra d'inclusione si chiamerà 5.6-rc1. Questo rilascio indica che il momento di aggiungere nuovi componenti è passato, e che è iniziato il periodo di stabilizzazione del prossimo kernel.”h]”hX÷La finestra di inclusione resta attiva approssimativamente per due settimane. Al termine di questo periodo, Linus Torvald dichiarerà che la finestra è chiusa e rilascerà il primo degli “rc†del kernel. Per il kernel che è destinato ad essere 5.6, per esempio, il rilascio che emerge al termine della finestra d’inclusione si chiamerà 5.6-rc1. Questo rilascio indica che il momento di aggiungere nuovi componenti è passato, e che è iniziato il periodo di stabilizzazione del prossimo kernel.”…””}”(hj§h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K7hjÌh²hubh¼)”}”(hXNelle successive sei/dieci settimane, potranno essere sottoposte solo modifiche che vanno a risolvere delle problematiche. Occasionalmente potrà essere consentita una modifica più consistente, ma tali occasioni sono rare. Gli sviluppatori che tenteranno di aggiungere nuovi elementi al di fuori della finestra di inclusione, tendenzialmente, riceveranno un accoglienza poco amichevole. Come regola generale: se vi perdete la finestra di inclusione per un dato componente, la cosa migliore da fare è aspettare il ciclo di sviluppo successivo (un'eccezione può essere fatta per i driver per hardware non supportati in precedenza; se toccano codice non facente parte di quello attuale, che non causino regressioni e che potrebbero essere aggiunti in sicurezza in un qualsiasi momento)”h]”hXNelle successive sei/dieci settimane, potranno essere sottoposte solo modifiche che vanno a risolvere delle problematiche. Occasionalmente potrà essere consentita una modifica più consistente, ma tali occasioni sono rare. Gli sviluppatori che tenteranno di aggiungere nuovi elementi al di fuori della finestra di inclusione, tendenzialmente, riceveranno un accoglienza poco amichevole. Come regola generale: se vi perdete la finestra di inclusione per un dato componente, la cosa migliore da fare è aspettare il ciclo di sviluppo successivo (un’eccezione può essere fatta per i driver per hardware non supportati in precedenza; se toccano codice non facente parte di quello attuale, che non causino regressioni e che potrebbero essere aggiunti in sicurezza in un qualsiasi momento)”…””}”(hjµh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K?hjÌh²hubh¼)”}”(hXmMentre le correzioni si aprono la loro strada all'interno del ramo principale, il ritmo delle modifiche rallenta col tempo. Linus rilascia un nuovo kernel -rc circa una volta alla settimana; e ne usciranno circa 6 o 9 prima che il kernel venga considerato sufficientemente stabile e che il rilascio finale venga fatto. A quel punto tutto il processo ricomincerà.”h]”hXoMentre le correzioni si aprono la loro strada all’interno del ramo principale, il ritmo delle modifiche rallenta col tempo. Linus rilascia un nuovo kernel -rc circa una volta alla settimana; e ne usciranno circa 6 o 9 prima che il kernel venga considerato sufficientemente stabile e che il rilascio finale venga fatto. A quel punto tutto il processo ricomincerà.”…””}”(hjÃh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KKhjÌh²hubh¼)”}”(hŒiEsempio: ecco com'è andato il ciclo di sviluppo della versione 5.4 (tutte le date si collocano nel 2018)”h]”hŒkEsempio: ecco com’è andato il ciclo di sviluppo della versione 5.4 (tutte le date si collocano nel 2018)”…””}”(hjÑh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KQhjÌh²hubjì)”}”(hX™============== ======================================= 15 settembre 5.3 rilascio stabile 30 settembre 5.4-rc1, finestra di inclusione chiusa 6 ottobre 5.4-rc2 13 ottobre 5.4-rc3 20 ottobre 5.4-rc4 27 ottobre 5.4-rc5 3 novembre 5.4-rc6 10 novembre 5.4-rc7 17 novembre 5.4-rc8 24 novembre 5.4 rilascio stabile ============== ======================================= ”h]”jò)”}”(hhh]”j÷)”}”(hhh]”(jü)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jûhjæubjü)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”K'uh1jûhjæubj)”}”(hhh]”(j)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 15 settembre”h]”hŒ 15 settembre”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KVhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubj)”}”(hhh]”h¼)”}”(hŒ5.3 rilascio stabile”h]”hŒ5.3 rilascio stabile”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KVhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjýubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 30 settembre”h]”hŒ 30 settembre”…””}”(hj=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KWhj:ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj7ubj)”}”(hhh]”h¼)”}”(hŒ&5.4-rc1, finestra di inclusione chiusa”h]”hŒ&5.4-rc1, finestra di inclusione chiusa”…””}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KWhjQubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjýubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 6 ottobre”h]”hŒ 6 ottobre”…””}”(hjth²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KXhjqubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjnubj)”}”(hhh]”h¼)”}”(hŒ5.4-rc2”h]”hŒ5.4-rc2”…””}”(hj‹h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KXhjˆubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjnubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjýubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 13 ottobre”h]”hŒ 13 ottobre”…””}”(hj«h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KYhj¨ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¥ubj)”}”(hhh]”h¼)”}”(hŒ5.4-rc3”h]”hŒ5.4-rc3”…””}”(hjÂh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KYhj¿ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¥ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjýubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 20 ottobre”h]”hŒ 20 ottobre”…””}”(hjâh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KZhjßubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÜubj)”}”(hhh]”h¼)”}”(hŒ5.4-rc4”h]”hŒ5.4-rc4”…””}”(hjùh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KZhjöubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÜubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjýubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 27 ottobre”h]”hŒ 27 ottobre”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K[hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubj)”}”(hhh]”h¼)”}”(hŒ5.4-rc5”h]”hŒ5.4-rc5”…””}”(hj0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K[hj-ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjýubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 3 novembre”h]”hŒ 3 novembre”…””}”(hjPh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K\hjMubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjJubj)”}”(hhh]”h¼)”}”(hŒ5.4-rc6”h]”hŒ5.4-rc6”…””}”(hjgh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K\hjdubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjJubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjýubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 10 novembre”h]”hŒ 10 novembre”…””}”(hj‡h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K]hj„ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubj)”}”(hhh]”h¼)”}”(hŒ5.4-rc7”h]”hŒ5.4-rc7”…””}”(hjžh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K]hj›ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjýubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 17 novembre”h]”hŒ 17 novembre”…””}”(hj¾h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K^hj»ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¸ubj)”}”(hhh]”h¼)”}”(hŒ5.4-rc8”h]”hŒ5.4-rc8”…””}”(hjÕh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K^hjÒubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¸ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjýubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 24 novembre”h]”hŒ 24 novembre”…””}”(hjõh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K_hjòubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjïubj)”}”(hhh]”h¼)”}”(hŒ5.4 rilascio stabile”h]”hŒ5.4 rilascio stabile”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K_hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjïubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjýubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjæubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1jöhjãubah}”(h]”h ]”h"]”h$]”h&]”uh1jñhjßubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´KUhjÌh²hubh¼)”}”(hXùIn che modo gli sviluppatori decidono quando chiudere il ciclo di sviluppo e creare quindi una rilascio stabile? Un metro valido è il numero di regressioni rilevate nel precedente rilascio. Nessun baco è il benvenuto, ma quelli che procurano problemi su sistemi che hanno funzionato in passato sono considerati particolarmente seri. Per questa ragione, le modifiche che portano ad una regressione sono viste sfavorevolmente e verranno quasi sicuramente annullate durante il periodo di stabilizzazione.”h]”hXùIn che modo gli sviluppatori decidono quando chiudere il ciclo di sviluppo e creare quindi una rilascio stabile? Un metro valido è il numero di regressioni rilevate nel precedente rilascio. Nessun baco è il benvenuto, ma quelli che procurano problemi su sistemi che hanno funzionato in passato sono considerati particolarmente seri. Per questa ragione, le modifiche che portano ad una regressione sono viste sfavorevolmente e verranno quasi sicuramente annullate durante il periodo di stabilizzazione.”…””}”(hj?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KbhjÌh²hubh¼)”}”(hXLL'obiettivo degli sviluppatori è quello di aggiustare tutte le regressioni conosciute prima che avvenga il rilascio stabile. Nel mondo reale, questo tipo di perfezione difficilmente viene raggiunta; esistono troppe variabili in un progetto di questa portata. Arriva un punto dove ritardare il rilascio finale peggiora la situazione; la quantità di modifiche in attesa della prossima finestra di inclusione crescerà enormemente, creando ancor più regressioni al giro successivo. Quindi molti kernel 5.x escono con una manciata di regressioni delle quali, si spera, nessuna è grave.”h]”hXNL’obiettivo degli sviluppatori è quello di aggiustare tutte le regressioni conosciute prima che avvenga il rilascio stabile. Nel mondo reale, questo tipo di perfezione difficilmente viene raggiunta; esistono troppe variabili in un progetto di questa portata. Arriva un punto dove ritardare il rilascio finale peggiora la situazione; la quantità di modifiche in attesa della prossima finestra di inclusione crescerà enormemente, creando ancor più regressioni al giro successivo. Quindi molti kernel 5.x escono con una manciata di regressioni delle quali, si spera, nessuna è grave.”…””}”(hjMh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KjhjÌh²hubh¼)”}”(hX–Una volta che un rilascio stabile è fatto, il suo costante mantenimento è affidato al "squadra stabilità", attualmente composta da Greg Kroah-Hartman. Questa squadra rilascia occasionalmente degli aggiornamenti relativi al rilascio stabile usando la numerazione 5.x.y. Per essere presa in considerazione per un rilascio d'aggiornamento, una modifica deve: (1) correggere un baco importante (2) essere già inserita nel ramo principale per il prossimo sviluppo del kernel. Solitamente, passato il loro rilascio iniziale, i kernel ricevono aggiornamenti per più di un ciclo di sviluppo. Quindi, per esempio, la storia del kernel 5.2 appare così (anno 2019):”h]”hXœUna volta che un rilascio stabile è fatto, il suo costante mantenimento è affidato al “squadra stabilitàâ€, attualmente composta da Greg Kroah-Hartman. Questa squadra rilascia occasionalmente degli aggiornamenti relativi al rilascio stabile usando la numerazione 5.x.y. Per essere presa in considerazione per un rilascio d’aggiornamento, una modifica deve: (1) correggere un baco importante (2) essere già inserita nel ramo principale per il prossimo sviluppo del kernel. Solitamente, passato il loro rilascio iniziale, i kernel ricevono aggiornamenti per più di un ciclo di sviluppo. Quindi, per esempio, la storia del kernel 5.2 appare così (anno 2019):”…””}”(hj[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KshjÌh²hubjì)”}”(hX============== =============================== 7 luglio 5.2 rilascio stabile 14 luglio 5.2.1 21 luglio 5.2.2 26 luglio 5.2.3 28 luglio 5.2.4 31 luglio 5.2.5 ... ... 11 ottobre 5.2.21 ============== =============================== ”h]”jò)”}”(hhh]”j÷)”}”(hhh]”(jü)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jûhjpubjü)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jûhjpubj)”}”(hhh]”(j)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ7 luglio”h]”hŒ7 luglio”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K~hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjŠubj)”}”(hhh]”h¼)”}”(hŒ5.2 rilascio stabile”h]”hŒ5.2 rilascio stabile”…””}”(hj§h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K~hj¤ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjŠubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhj‡ubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 14 luglio”h]”hŒ 14 luglio”…””}”(hjÇh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KhjÄubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÁubj)”}”(hhh]”h¼)”}”(hŒ5.2.1”h]”hŒ5.2.1”…””}”(hjÞh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KhjÛubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÁubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhj‡ubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 21 luglio”h]”hŒ 21 luglio”…””}”(hjþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K€hjûubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjøubj)”}”(hhh]”h¼)”}”(hŒ5.2.2”h]”hŒ5.2.2”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K€hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjøubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhj‡ubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 26 luglio”h]”hŒ 26 luglio”…””}”(hj5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khj2ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj/ubj)”}”(hhh]”h¼)”}”(hŒ5.2.3”h]”hŒ5.2.3”…””}”(hjLh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KhjIubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhj‡ubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 28 luglio”h]”hŒ 28 luglio”…””}”(hjlh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K‚hjiubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjfubj)”}”(hhh]”h¼)”}”(hŒ5.2.4”h]”hŒ5.2.4”…””}”(hjƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K‚hj€ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjfubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhj‡ubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 31 luglio”h]”hŒ 31 luglio”…””}”(hj£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Kƒhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubj)”}”(hhh]”h¼)”}”(hŒ5.2.5”h]”hŒ5.2.5”…””}”(hjºh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Kƒhj·ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhj‡ubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ...”h]”hŒ...”…””}”(hjÚh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K„hj×ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÔubj)”}”(hhh]”h¼)”}”(hŒ...”h]”hŒ...”…””}”(hjñh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K„hjîubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÔubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhj‡ubj)”}”(hhh]”(j)”}”(hhh]”h¼)”}”(hŒ 11 ottobre”h]”hŒ 11 ottobre”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K…hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj ubj)”}”(hhh]”h¼)”}”(hŒ5.2.21”h]”hŒ5.2.21”…””}”(hj(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K…hj%ubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhj‡ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjpubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1jöhjmubah}”(h]”h ]”h"]”h$]”h&]”uh1jñhjiubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´K}hjÌh²hubh¼)”}”(hŒ8La 5.2.21 fu l'aggiornamento finale per la versione 5.2.”h]”hŒ:La 5.2.21 fu l’aggiornamento finale per la versione 5.2.”…””}”(hj[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KˆhjÌh²hubh¼)”}”(hŒôAlcuni kernel sono destinati ad essere kernel a "lungo termine"; questi riceveranno assistenza per un lungo periodo di tempo. Consultate il seguente collegamento per avere la lista delle versioni attualmente supportate e i relativi manutentori:”h]”hŒøAlcuni kernel sono destinati ad essere kernel a “lungo termineâ€; questi riceveranno assistenza per un lungo periodo di tempo. Consultate il seguente collegamento per avere la lista delle versioni attualmente supportate e i relativi manutentori:”…””}”(hjih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KŠhjÌh²hubjì)”}”(hŒ.https://www.kernel.org/category/releases.html ”h]”h¼)”}”(hŒ-https://www.kernel.org/category/releases.html”h]”jn)”}”(hj}h]”hŒ-https://www.kernel.org/category/releases.html”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”j}uh1jmhj{ubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Khjwubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´KhjÌh²hubh¼)”}”(hŒúQuesta selezione di kernel di lungo periodo sono puramente dovuti ai loro manutentori, alla loro necessità e al tempo per tenere aggiornate proprio quelle versioni. Non ci sono altri kernel a lungo termine in programma per alcun rilascio in arrivo.”h]”hŒúQuesta selezione di kernel di lungo periodo sono puramente dovuti ai loro manutentori, alla loro necessità e al tempo per tenere aggiornate proprio quelle versioni. Non ci sono altri kernel a lungo termine in programma per alcun rilascio in arrivo.”…””}”(hj™h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K‘hjÌh²hubeh}”(h]”Œil-quadro-d-insieme”ah ]”h"]”Œil quadro d'insieme”ah$]”h&]”uh1j©hj«h²hh³jh´Kubjª)”}”(hhh]”(j¯)”}”(hŒIl ciclo di vita di una patch”h]”hŒIl ciclo di vita di una patch”…””}”(hj²h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j®hj¯h²hh³jh´K—ubh¼)”}”(hXéLe patch non passano direttamente dalla tastiera dello sviluppatori al ramo principale del kernel. Esiste, invece, una procedura disegnata per assicurare che ogni patch sia di buona qualità e desiderata nel ramo principale. Questo processo avviene velocemente per le correzioni meno importanti, o, nel caso di patch ampie e controverse, va avanti per anni. Per uno sviluppatore la maggior frustrazione viene dalla mancanza di comprensione di questo processo o dai tentativi di aggirarlo.”h]”hXéLe patch non passano direttamente dalla tastiera dello sviluppatori al ramo principale del kernel. Esiste, invece, una procedura disegnata per assicurare che ogni patch sia di buona qualità e desiderata nel ramo principale. Questo processo avviene velocemente per le correzioni meno importanti, o, nel caso di patch ampie e controverse, va avanti per anni. Per uno sviluppatore la maggior frustrazione viene dalla mancanza di comprensione di questo processo o dai tentativi di aggirarlo.”…””}”(hjÀh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K™hj¯h²hubh¼)”}”(hŒïNella speranza di ridurre questa frustrazione, questo documento spiegherà come una patch viene inserita nel kernel. Ciò che segue è un'introduzione che descrive il processo ideale. Approfondimenti verranno invece trattati più avanti.”h]”hŒñNella speranza di ridurre questa frustrazione, questo documento spiegherà come una patch viene inserita nel kernel. Ciò che segue è un’introduzione che descrive il processo ideale. Approfondimenti verranno invece trattati più avanti.”…””}”(hjÎh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K¡hj¯h²hubh¼)”}”(hŒ5Una patch attraversa, generalmente, le seguenti fasi:”h]”hŒ5Una patch attraversa, generalmente, le seguenti fasi:”…””}”(hjÜh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K¦hj¯h²hubjì)”}”(hXw- Progetto. In questa fase sono stabilite quelli che sono i requisiti della modifica - e come verranno soddisfatti. Il lavoro di progettazione viene spesso svolto senza coinvolgere la comunità, ma è meglio renderlo il più aperto possibile; questo può far risparmiare molto tempo evitando eventuali riprogettazioni successive. - Prima revisione. Le patch vengono pubblicate sulle liste di discussione interessate, e gli sviluppatori in quella lista risponderanno coi loro commenti. Se si svolge correttamente, questo procedimento potrebbe far emergere problemi rilevanti in una patch. - Revisione più ampia. Quando la patch è quasi pronta per essere inserita nel ramo principale, un manutentore importante del sottosistema dovrebbe accettarla - anche se, questa accettazione non è una garanzia che la patch arriverà nel ramo principale. La patch sarà visibile nei sorgenti del sottosistema in questione e nei sorgenti -next (descritti sotto). Quando il processo va a buon fine, questo passo porta ad una revisione più estesa della patch e alla scoperta di problemi d'integrazione con il lavoro altrui. ”h]”hŒ bullet_list”“”)”}”(hhh]”(hŒ list_item”“”)”}”(hXIProgetto. In questa fase sono stabilite quelli che sono i requisiti della modifica - e come verranno soddisfatti. Il lavoro di progettazione viene spesso svolto senza coinvolgere la comunità, ma è meglio renderlo il più aperto possibile; questo può far risparmiare molto tempo evitando eventuali riprogettazioni successive. ”h]”h¼)”}”(hXHProgetto. In questa fase sono stabilite quelli che sono i requisiti della modifica - e come verranno soddisfatti. Il lavoro di progettazione viene spesso svolto senza coinvolgere la comunità, ma è meglio renderlo il più aperto possibile; questo può far risparmiare molto tempo evitando eventuali riprogettazioni successive.”h]”hXHProgetto. In questa fase sono stabilite quelli che sono i requisiti della modifica - e come verranno soddisfatti. Il lavoro di progettazione viene spesso svolto senza coinvolgere la comunità, ma è meglio renderlo il più aperto possibile; questo può far risparmiare molto tempo evitando eventuali riprogettazioni successive.”…””}”(hjùh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K¨hjõubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjðubjô)”}”(hXPrima revisione. Le patch vengono pubblicate sulle liste di discussione interessate, e gli sviluppatori in quella lista risponderanno coi loro commenti. Se si svolge correttamente, questo procedimento potrebbe far emergere problemi rilevanti in una patch. ”h]”h¼)”}”(hXPrima revisione. Le patch vengono pubblicate sulle liste di discussione interessate, e gli sviluppatori in quella lista risponderanno coi loro commenti. Se si svolge correttamente, questo procedimento potrebbe far emergere problemi rilevanti in una patch.”h]”hXPrima revisione. Le patch vengono pubblicate sulle liste di discussione interessate, e gli sviluppatori in quella lista risponderanno coi loro commenti. Se si svolge correttamente, questo procedimento potrebbe far emergere problemi rilevanti in una patch.”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K®hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjðubjô)”}”(hX Revisione più ampia. Quando la patch è quasi pronta per essere inserita nel ramo principale, un manutentore importante del sottosistema dovrebbe accettarla - anche se, questa accettazione non è una garanzia che la patch arriverà nel ramo principale. La patch sarà visibile nei sorgenti del sottosistema in questione e nei sorgenti -next (descritti sotto). Quando il processo va a buon fine, questo passo porta ad una revisione più estesa della patch e alla scoperta di problemi d'integrazione con il lavoro altrui. ”h]”h¼)”}”(hXRevisione più ampia. Quando la patch è quasi pronta per essere inserita nel ramo principale, un manutentore importante del sottosistema dovrebbe accettarla - anche se, questa accettazione non è una garanzia che la patch arriverà nel ramo principale. La patch sarà visibile nei sorgenti del sottosistema in questione e nei sorgenti -next (descritti sotto). Quando il processo va a buon fine, questo passo porta ad una revisione più estesa della patch e alla scoperta di problemi d'integrazione con il lavoro altrui.”h]”hX Revisione più ampia. Quando la patch è quasi pronta per essere inserita nel ramo principale, un manutentore importante del sottosistema dovrebbe accettarla - anche se, questa accettazione non è una garanzia che la patch arriverà nel ramo principale. La patch sarà visibile nei sorgenti del sottosistema in questione e nei sorgenti -next (descritti sotto). Quando il processo va a buon fine, questo passo porta ad una revisione più estesa della patch e alla scoperta di problemi d’integrazione con il lavoro altrui.”…””}”(hj) h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K³hj% ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjðubeh}”(h]”h ]”h"]”h$]”h&]”Œbullet”Œ-”uh1jîh³jh´K¨hjêubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´K¨hj¯h²hubjï)”}”(hhh]”jô)”}”(hX¯Per favore, tenete da conto che la maggior parte dei manutentori ha anche un lavoro quotidiano, quindi integrare le vostre patch potrebbe non essere la loro priorità più alta. Se una vostra patch riceve dei suggerimenti su dei cambiamenti necessari, dovreste applicare quei cambiamenti o giustificare perché non sono necessari. Se la vostra patch non riceve alcuna critica ma non è stata integrata dal manutentore del driver o sottosistema, allora dovreste continuare con i necessari aggiornamenti per mantenere la patch aggiornata al kernel più recente cosicché questa possa integrarsi senza problemi; continuate ad inviare gli aggiornamenti per essere revisionati e integrati. ”h]”h¼)”}”(hX®Per favore, tenete da conto che la maggior parte dei manutentori ha anche un lavoro quotidiano, quindi integrare le vostre patch potrebbe non essere la loro priorità più alta. Se una vostra patch riceve dei suggerimenti su dei cambiamenti necessari, dovreste applicare quei cambiamenti o giustificare perché non sono necessari. Se la vostra patch non riceve alcuna critica ma non è stata integrata dal manutentore del driver o sottosistema, allora dovreste continuare con i necessari aggiornamenti per mantenere la patch aggiornata al kernel più recente cosicché questa possa integrarsi senza problemi; continuate ad inviare gli aggiornamenti per essere revisionati e integrati.”h]”hX®Per favore, tenete da conto che la maggior parte dei manutentori ha anche un lavoro quotidiano, quindi integrare le vostre patch potrebbe non essere la loro priorità più alta. Se una vostra patch riceve dei suggerimenti su dei cambiamenti necessari, dovreste applicare quei cambiamenti o giustificare perché non sono necessari. Se la vostra patch non riceve alcuna critica ma non è stata integrata dal manutentore del driver o sottosistema, allora dovreste continuare con i necessari aggiornamenti per mantenere la patch aggiornata al kernel più recente cosicché questa possa integrarsi senza problemi; continuate ad inviare gli aggiornamenti per essere revisionati e integrati.”…””}”(hjR h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´K¼hjN ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjK h²hh³jh´Nubah}”(h]”h ]”h"]”h$]”h&]”jC jD uh1jîh³jh´K¼hj¯h²hubjì)”}”(hX- Inclusione nel ramo principale. Eventualmente, una buona patch verrà inserita all'interno nel repositorio principale, gestito da Linus Torvalds. In questa fase potrebbero emergere nuovi problemi e/o commenti; è importante che lo sviluppatore sia collaborativo e che sistemi ogni questione che possa emergere. - Rilascio stabile. Ora, il numero di utilizzatori che sono potenzialmente toccati dalla patch è aumentato, quindi, ancora una volta, potrebbero emergere nuovi problemi. - Manutenzione di lungo periodo. Nonostante sia possibile che uno sviluppatore si dimentichi del codice dopo la sua integrazione, questo comportamento lascia una brutta impressione nella comunità di sviluppo. Integrare il codice elimina alcuni degli oneri facenti parte della manutenzione, in particolare, sistemerà le problematiche causate dalle modifiche all'API. Ma lo sviluppatore originario dovrebbe continuare ad assumersi la responsabilità per il codice se quest'ultimo continua ad essere utile nel lungo periodo. ”h]”jï)”}”(hhh]”(jô)”}”(hX8Inclusione nel ramo principale. Eventualmente, una buona patch verrà inserita all'interno nel repositorio principale, gestito da Linus Torvalds. In questa fase potrebbero emergere nuovi problemi e/o commenti; è importante che lo sviluppatore sia collaborativo e che sistemi ogni questione che possa emergere. ”h]”h¼)”}”(hX7Inclusione nel ramo principale. Eventualmente, una buona patch verrà inserita all'interno nel repositorio principale, gestito da Linus Torvalds. In questa fase potrebbero emergere nuovi problemi e/o commenti; è importante che lo sviluppatore sia collaborativo e che sistemi ogni questione che possa emergere.”h]”hX9Inclusione nel ramo principale. Eventualmente, una buona patch verrà inserita all’interno nel repositorio principale, gestito da Linus Torvalds. In questa fase potrebbero emergere nuovi problemi e/o commenti; è importante che lo sviluppatore sia collaborativo e che sistemi ogni questione che possa emergere.”…””}”(hjw h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KÇhjs ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjp ubjô)”}”(hŒ©Rilascio stabile. Ora, il numero di utilizzatori che sono potenzialmente toccati dalla patch è aumentato, quindi, ancora una volta, potrebbero emergere nuovi problemi. ”h]”h¼)”}”(hŒ¨Rilascio stabile. Ora, il numero di utilizzatori che sono potenzialmente toccati dalla patch è aumentato, quindi, ancora una volta, potrebbero emergere nuovi problemi.”h]”hŒ¨Rilascio stabile. Ora, il numero di utilizzatori che sono potenzialmente toccati dalla patch è aumentato, quindi, ancora una volta, potrebbero emergere nuovi problemi.”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KÍhj‹ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjp ubjô)”}”(hX Manutenzione di lungo periodo. Nonostante sia possibile che uno sviluppatore si dimentichi del codice dopo la sua integrazione, questo comportamento lascia una brutta impressione nella comunità di sviluppo. Integrare il codice elimina alcuni degli oneri facenti parte della manutenzione, in particolare, sistemerà le problematiche causate dalle modifiche all'API. Ma lo sviluppatore originario dovrebbe continuare ad assumersi la responsabilità per il codice se quest'ultimo continua ad essere utile nel lungo periodo. ”h]”h¼)”}”(hX Manutenzione di lungo periodo. Nonostante sia possibile che uno sviluppatore si dimentichi del codice dopo la sua integrazione, questo comportamento lascia una brutta impressione nella comunità di sviluppo. Integrare il codice elimina alcuni degli oneri facenti parte della manutenzione, in particolare, sistemerà le problematiche causate dalle modifiche all'API. Ma lo sviluppatore originario dovrebbe continuare ad assumersi la responsabilità per il codice se quest'ultimo continua ad essere utile nel lungo periodo.”h]”hXManutenzione di lungo periodo. Nonostante sia possibile che uno sviluppatore si dimentichi del codice dopo la sua integrazione, questo comportamento lascia una brutta impressione nella comunità di sviluppo. Integrare il codice elimina alcuni degli oneri facenti parte della manutenzione, in particolare, sistemerà le problematiche causate dalle modifiche all’API. Ma lo sviluppatore originario dovrebbe continuare ad assumersi la responsabilità per il codice se quest’ultimo continua ad essere utile nel lungo periodo.”…””}”(hj§ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KÑhj£ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjp ubeh}”(h]”h ]”h"]”h$]”h&]”jC jD uh1jîh³jh´KÇhjl ubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´KÇhj¯h²hubh¼)”}”(hX.Uno dei più grandi errori fatti dagli sviluppatori kernel (o dai loro datori di lavoro) è quello di cercare di ridurre tutta la procedura ad una singola "integrazione nel remo principale". Questo approccio inevitabilmente conduce a una condizione di frustrazione per tutti coloro che sono coinvolti.”h]”hX2Uno dei più grandi errori fatti dagli sviluppatori kernel (o dai loro datori di lavoro) è quello di cercare di ridurre tutta la procedura ad una singola “integrazione nel remo principaleâ€. Questo approccio inevitabilmente conduce a una condizione di frustrazione per tutti coloro che sono coinvolti.”…””}”(hjÇ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KÚhj¯h²hubeh}”(h]”Œil-ciclo-di-vita-di-una-patch”ah ]”h"]”Œil ciclo di vita di una patch”ah$]”h&]”uh1j©hj«h²hh³jh´K—ubjª)”}”(hhh]”(j¯)”}”(hŒ&Come le modifiche finiscono nel Kernel”h]”hŒ&Come le modifiche finiscono nel Kernel”…””}”(hjà h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j®hjÝ h²hh³jh´Kàubh¼)”}”(hXcEsiste una sola persona che può inserire le patch nel repositorio principale del kernel: Linus Torvalds. Ma, per esempio, di tutte le 9500 patch che entrarono nella versione 2.6.38 del kernel, solo 112 (circa l'1,3%) furono scelte direttamente da Linus in persona. Il progetto del kernel è cresciuto fino a raggiungere una dimensione tale per cui un singolo sviluppatore non può controllare e selezionare indipendentemente ogni modifica senza essere supportato. La via scelta dagli sviluppatori per indirizzare tale crescita è stata quella di utilizzare un sistema di "sottotenenti" basato sulla fiducia.”h]”hXiEsiste una sola persona che può inserire le patch nel repositorio principale del kernel: Linus Torvalds. Ma, per esempio, di tutte le 9500 patch che entrarono nella versione 2.6.38 del kernel, solo 112 (circa l’1,3%) furono scelte direttamente da Linus in persona. Il progetto del kernel è cresciuto fino a raggiungere una dimensione tale per cui un singolo sviluppatore non può controllare e selezionare indipendentemente ogni modifica senza essere supportato. La via scelta dagli sviluppatori per indirizzare tale crescita è stata quella di utilizzare un sistema di “sottotenenti†basato sulla fiducia.”…””}”(hjî h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KâhjÝ h²hubh¼)”}”(hX Il codice base del kernel è spezzato in una serie si sottosistemi: rete, supporto per specifiche architetture, gestione della memoria, video e strumenti, etc. Molti sottosistemi hanno un manutentore designato: ovvero uno sviluppatore che ha piena responsabilità di tutto il codice presente in quel sottosistema. Tali manutentori di sottosistema sono i guardiani (in un certo senso) della parte di kernel che gestiscono; sono coloro che (solitamente) accetteranno una patch per l'inclusione nel ramo principale del kernel.”h]”hXIl codice base del kernel è spezzato in una serie si sottosistemi: rete, supporto per specifiche architetture, gestione della memoria, video e strumenti, etc. Molti sottosistemi hanno un manutentore designato: ovvero uno sviluppatore che ha piena responsabilità di tutto il codice presente in quel sottosistema. Tali manutentori di sottosistema sono i guardiani (in un certo senso) della parte di kernel che gestiscono; sono coloro che (solitamente) accetteranno una patch per l’inclusione nel ramo principale del kernel.”…””}”(hjü h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KìhjÝ h²hubh¼)”}”(hX°I manutentori di sottosistema gestiscono ciascuno la propria parte dei sorgenti del kernel, utilizzando abitualmente (ma certamente non sempre) git. Strumenti come git (e affini come quilt o mercurial) permettono ai manutentori di stilare una lista delle patch, includendo informazioni sull'autore ed altri metadati. In ogni momento, il manutentore può individuare quale patch nel sua repositorio non si trova nel ramo principale.”h]”hX²I manutentori di sottosistema gestiscono ciascuno la propria parte dei sorgenti del kernel, utilizzando abitualmente (ma certamente non sempre) git. Strumenti come git (e affini come quilt o mercurial) permettono ai manutentori di stilare una lista delle patch, includendo informazioni sull’autore ed altri metadati. In ogni momento, il manutentore può individuare quale patch nel sua repositorio non si trova nel ramo principale.”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KõhjÝ h²hubh¼)”}”(hXfQuando la "finestra di integrazione" si apre, i manutentori di alto livello chiederanno a Linus di "prendere" dai loro repositori le modifiche che hanno selezionato per l'inclusione. Se Linus acconsente, il flusso di patch si convoglierà nel repositorio di quest ultimo, divenendo così parte del ramo principale del kernel. La quantità d'attenzione che Linus presta alle singole patch ricevute durante l'operazione di integrazione varia. È chiaro che, qualche volta, guardi più attentamente. Ma, come regola generale, Linus confida nel fatto che i manutentori di sottosistema non selezionino pessime patch.”h]”hXtQuando la “finestra di integrazione†si apre, i manutentori di alto livello chiederanno a Linus di “prendere†dai loro repositori le modifiche che hanno selezionato per l’inclusione. Se Linus acconsente, il flusso di patch si convoglierà nel repositorio di quest ultimo, divenendo così parte del ramo principale del kernel. La quantità d’attenzione che Linus presta alle singole patch ricevute durante l’operazione di integrazione varia. È chiaro che, qualche volta, guardi più attentamente. Ma, come regola generale, Linus confida nel fatto che i manutentori di sottosistema non selezionino pessime patch.”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´KühjÝ h²hubh¼)”}”(hX0I manutentori di sottosistemi, a turno, possono "prendere" patch provenienti da altri manutentori. Per esempio, i sorgenti per la rete rete sono costruiti da modifiche che si sono accumulate inizialmente nei sorgenti dedicati ai driver per dispositivi di rete, rete senza fili, ecc. Tale catena di repositori può essere più o meno lunga, benché raramente ecceda i due o tre collegamenti. Questo processo è conosciuto come "la catena della fiducia", perché ogni manutentore all'interno della catena si fida di coloro che gestiscono i livelli più bassi.”h]”hX:I manutentori di sottosistemi, a turno, possono “prendere†patch provenienti da altri manutentori. Per esempio, i sorgenti per la rete rete sono costruiti da modifiche che si sono accumulate inizialmente nei sorgenti dedicati ai driver per dispositivi di rete, rete senza fili, ecc. Tale catena di repositori può essere più o meno lunga, benché raramente ecceda i due o tre collegamenti. Questo processo è conosciuto come “la catena della fiduciaâ€, perché ogni manutentore all’interno della catena si fida di coloro che gestiscono i livelli più bassi.”…””}”(hj& h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MhjÝ h²hubh¼)”}”(hŒÇChiaramente, in un sistema come questo, l'inserimento delle patch all'interno del kernel si basa sul trovare il manutentore giusto. Di norma, inviare patch direttamente a Linus non è la via giusta.”h]”hŒËChiaramente, in un sistema come questo, l’inserimento delle patch all’interno del kernel si basa sul trovare il manutentore giusto. Di norma, inviare patch direttamente a Linus non è la via giusta.”…””}”(hj4 h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MhjÝ h²hubeh}”(h]”Œ&come-le-modifiche-finiscono-nel-kernel”ah ]”h"]”Œ&come le modifiche finiscono nel kernel”ah$]”h&]”uh1j©hj«h²hh³jh´Kàubjª)”}”(hhh]”(j¯)”}”(hŒSorgenti -next”h]”hŒSorgenti -next”…””}”(hjM h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j®hjJ h²hh³jh´Mubh¼)”}”(hXLa catena di sottosistemi guida il flusso di patch all'interno del kernel, ma solleva anche un interessante quesito: se qualcuno volesse vedere tutte le patch pronte per la prossima finestra di integrazione? Gli sviluppatori si interesseranno alle patch in sospeso per verificare che non ci siano altri conflitti di cui preoccuparsi; una modifica che, per esempio, cambia il prototipo di una funzione fondamentale del kernel andrà in conflitto con qualsiasi altra modifica che utilizzi la vecchia versione di quella funzione. Revisori e tester vogliono invece avere accesso alle modifiche nella loro totalità prima che approdino nel ramo principale del kernel. Uno potrebbe prendere le patch provenienti da tutti i sottosistemi d'interesse, ma questo sarebbe un lavoro enorme e fallace.”h]”hXLa catena di sottosistemi guida il flusso di patch all’interno del kernel, ma solleva anche un interessante quesito: se qualcuno volesse vedere tutte le patch pronte per la prossima finestra di integrazione? Gli sviluppatori si interesseranno alle patch in sospeso per verificare che non ci siano altri conflitti di cui preoccuparsi; una modifica che, per esempio, cambia il prototipo di una funzione fondamentale del kernel andrà in conflitto con qualsiasi altra modifica che utilizzi la vecchia versione di quella funzione. Revisori e tester vogliono invece avere accesso alle modifiche nella loro totalità prima che approdino nel ramo principale del kernel. Uno potrebbe prendere le patch provenienti da tutti i sottosistemi d’interesse, ma questo sarebbe un lavoro enorme e fallace.”…””}”(hj[ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MhjJ h²hubh¼)”}”(hX}La risposta ci viene sotto forma di sorgenti -next, dove i sottosistemi sono raccolti per essere testati e controllati. Il più vecchio di questi sorgenti, gestito da Andrew Morton, è chiamato "-mm" (memory management, che è l'inizio di tutto). L'-mm integra patch proveniente da una lunga lista di sottosistemi; e ha, inoltre, alcune patch destinate al supporto del debugging.”h]”hX…La risposta ci viene sotto forma di sorgenti -next, dove i sottosistemi sono raccolti per essere testati e controllati. Il più vecchio di questi sorgenti, gestito da Andrew Morton, è chiamato “-mm†(memory management, che è l’inizio di tutto). L’-mm integra patch proveniente da una lunga lista di sottosistemi; e ha, inoltre, alcune patch destinate al supporto del debugging.”…””}”(hji h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M#hjJ h²hubh¼)”}”(hXÇOltre a questo, -mm contiene una raccolta significativa di patch che sono state selezionate da Andrew direttamente. Queste patch potrebbero essere state inviate in una lista di discussione, o possono essere applicate ad una parte del kernel per la quale non esiste un sottosistema dedicato. Di conseguenza, -mm opera come una specie di sottosistema "ultima spiaggia"; se per una patch non esiste una via chiara per entrare nel ramo principale, allora è probabile che finirà in -mm. Le patch passate per -mm eventualmente finiranno nel sottosistema più appropriato o saranno inviate direttamente a Linus. In un tipico ciclo di sviluppo, circa il 5-10% delle patch andrà nel ramo principale attraverso -mm.”h]”hXËOltre a questo, -mm contiene una raccolta significativa di patch che sono state selezionate da Andrew direttamente. Queste patch potrebbero essere state inviate in una lista di discussione, o possono essere applicate ad una parte del kernel per la quale non esiste un sottosistema dedicato. Di conseguenza, -mm opera come una specie di sottosistema “ultima spiaggiaâ€; se per una patch non esiste una via chiara per entrare nel ramo principale, allora è probabile che finirà in -mm. Le patch passate per -mm eventualmente finiranno nel sottosistema più appropriato o saranno inviate direttamente a Linus. In un tipico ciclo di sviluppo, circa il 5-10% delle patch andrà nel ramo principale attraverso -mm.”…””}”(hjw h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M)hjJ h²hubh¼)”}”(hŒ`La patch -mm correnti sono disponibili nella cartella "mmotm" (-mm of the moment) all'indirizzo:”h]”hŒfLa patch -mm correnti sono disponibili nella cartella “mmotm†(-mm of the moment) all’indirizzo:”…””}”(hj… h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M4hjJ h²hubjì)”}”(hŒ#http://www.ozlabs.org/~akpm/mmotm/ ”h]”h¼)”}”(hŒ"http://www.ozlabs.org/~akpm/mmotm/”h]”jn)”}”(hj™ h]”hŒ"http://www.ozlabs.org/~akpm/mmotm/”…””}”(hj› h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”j™ uh1jmhj— ubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M7hj“ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´M7hjJ h²hubh¼)”}”(hŒ…È molto probabile che l'uso dei sorgenti MMOTM diventi un'esperienza frustrante; ci sono buone probabilità che non compili nemmeno.”h]”hŒ‰Ãˆ molto probabile che l’uso dei sorgenti MMOTM diventi un’esperienza frustrante; ci sono buone probabilità che non compili nemmeno.”…””}”(hjµ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M9hjJ h²hubh¼)”}”(hX¬I sorgenti principali per il prossimo ciclo d'integrazione delle patch è linux-next, gestito da Stephen Rothwell. I sorgenti linux-next sono, per definizione, un'istantanea di come dovrà apparire il ramo principale dopo che la prossima finestra di inclusione si chiuderà. I linux-next sono annunciati sulla lista di discussione linux-kernel e linux-next nel momento in cui vengono assemblati; e possono essere scaricate da:”h]”hX°I sorgenti principali per il prossimo ciclo d’integrazione delle patch è linux-next, gestito da Stephen Rothwell. I sorgenti linux-next sono, per definizione, un’istantanea di come dovrà apparire il ramo principale dopo che la prossima finestra di inclusione si chiuderà. I linux-next sono annunciati sulla lista di discussione linux-kernel e linux-next nel momento in cui vengono assemblati; e possono essere scaricate da:”…””}”(hjà h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M<hjJ h²hubjì)”}”(hŒ-http://www.kernel.org/pub/linux/kernel/next/ ”h]”h¼)”}”(hŒ,http://www.kernel.org/pub/linux/kernel/next/”h]”jn)”}”(hj× h]”hŒ,http://www.kernel.org/pub/linux/kernel/next/”…””}”(hjÙ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”j× uh1jmhjÕ ubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MChjÑ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´MChjJ h²hubh¼)”}”(hXLinux-next è divenuto parte integrante del processo di sviluppo del kernel; tutte le patch incorporate durante una finestra di integrazione dovrebbero aver trovato la propria strada in linux-next, a volte anche prima dell'apertura della finestra di integrazione.”h]”hX Linux-next è divenuto parte integrante del processo di sviluppo del kernel; tutte le patch incorporate durante una finestra di integrazione dovrebbero aver trovato la propria strada in linux-next, a volte anche prima dell’apertura della finestra di integrazione.”…””}”(hjó h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MEhjJ h²hubeh}”(h]”Œ sorgenti-next”ah ]”h"]”Œsorgenti -next”ah$]”h&]”uh1j©hj«h²hh³jh´Mubjª)”}”(hhh]”(j¯)”}”(hŒSorgenti in preparazione”h]”hŒSorgenti in preparazione”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j®hj h²hh³jh´MLubh¼)”}”(hX)Nei sorgenti del kernel esiste la cartella drivers/staging/, dove risiedono molte sotto-cartelle per i driver o i filesystem che stanno per essere aggiunti al kernel. Questi restano nella cartella drivers/staging fintanto che avranno bisogno di maggior lavoro; una volta completato, possono essere spostate all'interno del kernel nel posto più appropriato. Questo è il modo di tener traccia dei driver che non sono ancora in linea con gli standard di codifica o qualità, ma che le persone potrebbero voler usare ugualmente e tracciarne lo sviluppo.”h]”hX+Nei sorgenti del kernel esiste la cartella drivers/staging/, dove risiedono molte sotto-cartelle per i driver o i filesystem che stanno per essere aggiunti al kernel. Questi restano nella cartella drivers/staging fintanto che avranno bisogno di maggior lavoro; una volta completato, possono essere spostate all’interno del kernel nel posto più appropriato. Questo è il modo di tener traccia dei driver che non sono ancora in linea con gli standard di codifica o qualità, ma che le persone potrebbero voler usare ugualmente e tracciarne lo sviluppo.”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MNhj h²hubh¼)”}”(hXOGreg Kroah-Hartman attualmente gestisce i sorgenti in preparazione. I driver che non sono completamente pronti vengono inviati a lui, e ciascun driver avrà la propria sotto-cartella in drivers/staging/. Assieme ai file sorgenti dei driver, dovrebbe essere presente nella stessa cartella anche un file TODO. Il file TODO elenca il lavoro ancora da fare su questi driver per poter essere accettati nel kernel, e indica anche la lista di persone da inserire in copia conoscenza per ogni modifica fatta. Le regole attuali richiedono che i driver debbano, come minimo, compilare adeguatamente.”h]”hXOGreg Kroah-Hartman attualmente gestisce i sorgenti in preparazione. I driver che non sono completamente pronti vengono inviati a lui, e ciascun driver avrà la propria sotto-cartella in drivers/staging/. Assieme ai file sorgenti dei driver, dovrebbe essere presente nella stessa cartella anche un file TODO. Il file TODO elenca il lavoro ancora da fare su questi driver per poter essere accettati nel kernel, e indica anche la lista di persone da inserire in copia conoscenza per ogni modifica fatta. Le regole attuali richiedono che i driver debbano, come minimo, compilare adeguatamente.”…””}”(hj( h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MWhj h²hubh¼)”}”(hXuLa *preparazione* può essere una via relativamente facile per inserire nuovi driver all'interno del ramo principale, dove, con un po' di fortuna, saranno notati da altri sviluppatori e migliorati velocemente. Entrare nella fase di preparazione non è però la fine della storia, infatti, il codice che si trova nella cartella staging che non mostra regolari progressi potrebbe essere rimosso. Le distribuzioni, inoltre, tendono a dimostrarsi relativamente riluttanti nell'attivare driver in preparazione. Quindi lo preparazione è, nel migliore dei casi, una tappa sulla strada verso il divenire un driver del ramo principale.”h]”(hŒLa ”…””}”(hj6 h²hh³Nh´NubhŒemphasis”“”)”}”(hŒ*preparazione*”h]”hŒ preparazione”…””}”(hj@ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j> hj6 ubhXj può essere una via relativamente facile per inserire nuovi driver all’interno del ramo principale, dove, con un po’ di fortuna, saranno notati da altri sviluppatori e migliorati velocemente. Entrare nella fase di preparazione non è però la fine della storia, infatti, il codice che si trova nella cartella staging che non mostra regolari progressi potrebbe essere rimosso. Le distribuzioni, inoltre, tendono a dimostrarsi relativamente riluttanti nell’attivare driver in preparazione. Quindi lo preparazione è, nel migliore dei casi, una tappa sulla strada verso il divenire un driver del ramo principale.”…””}”(hj6 h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M`hj h²hubeh}”(h]”Œsorgenti-in-preparazione”ah ]”h"]”Œsorgenti in preparazione”ah$]”h&]”uh1j©hj«h²hh³jh´MLubjª)”}”(hhh]”(j¯)”}”(hŒ Strumenti”h]”hŒ Strumenti”…””}”(hjc h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j®hj` h²hh³jh´Mlubh¼)”}”(hXwCome è possibile notare dal testo sopra, il processo di sviluppo del kernel dipende pesantemente dalla capacità di guidare la raccolta di patch in diverse direzioni. L'intera cosa non funzionerebbe se non venisse svolta con l'uso di strumenti appropriati e potenti. Spiegare l'uso di tali strumenti non è lo scopo di questo documento, ma c'è spazio per alcuni consigli.”•kh]”hXCome è possibile notare dal testo sopra, il processo di sviluppo del kernel dipende pesantemente dalla capacità di guidare la raccolta di patch in diverse direzioni. L’intera cosa non funzionerebbe se non venisse svolta con l’uso di strumenti appropriati e potenti. Spiegare l’uso di tali strumenti non è lo scopo di questo documento, ma c’è spazio per alcuni consigli.”…””}”(hjq h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Mnhj` h²hubh¼)”}”(hXáIn assoluto, nella comunità del kernel, predomina l'uso di git come sistema di gestione dei sorgenti. Git è una delle diverse tipologie di sistemi distribuiti di controllo versione che sono stati sviluppati nella comunità del software libero. Esso è calibrato per lo sviluppo del kernel, e si comporta abbastanza bene quando ha a che fare con repositori grandi e con un vasto numero di patch. Git ha inoltre la reputazione di essere difficile da imparare e utilizzare, benché stia migliorando. Agli sviluppatori del kernel viene richiesta un po' di familiarità con git; anche se non lo utilizzano per il proprio lavoro, hanno bisogno di git per tenersi al passo con il lavoro degli altri sviluppatori (e con il ramo principale).”h]”hXåIn assoluto, nella comunità del kernel, predomina l’uso di git come sistema di gestione dei sorgenti. Git è una delle diverse tipologie di sistemi distribuiti di controllo versione che sono stati sviluppati nella comunità del software libero. Esso è calibrato per lo sviluppo del kernel, e si comporta abbastanza bene quando ha a che fare con repositori grandi e con un vasto numero di patch. Git ha inoltre la reputazione di essere difficile da imparare e utilizzare, benché stia migliorando. Agli sviluppatori del kernel viene richiesta un po’ di familiarità con git; anche se non lo utilizzano per il proprio lavoro, hanno bisogno di git per tenersi al passo con il lavoro degli altri sviluppatori (e con il ramo principale).”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Muhj` h²hubh¼)”}”(hŒaGit è ora compreso in quasi tutte le distribuzioni Linux. Esiste una sito che potete consultare:”h]”hŒaGit è ora compreso in quasi tutte le distribuzioni Linux. Esiste una sito che potete consultare:”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M€hj` h²hubjì)”}”(hŒhttp://git-scm.com/ ”h]”h¼)”}”(hŒhttp://git-scm.com/”h]”jn)”}”(hj¡ h]”hŒhttp://git-scm.com/”…””}”(hj£ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”j¡ uh1jmhjŸ ubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Mƒhj› ubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´Mƒhj` h²hubh¼)”}”(hŒIQui troverete i riferimenti alla documentazione e alle guide passo-passo.”h]”hŒIQui troverete i riferimenti alla documentazione e alle guide passo-passo.”…””}”(hj½ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M…hj` h²hubh¼)”}”(hŒrTra gli sviluppatori Kernel che non usano git, la scelta alternativa più popolare è quasi sicuramente Mercurial:”h]”hŒrTra gli sviluppatori Kernel che non usano git, la scelta alternativa più popolare è quasi sicuramente Mercurial:”…””}”(hjË h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M‡hj` h²hubjì)”}”(hŒ"http://www.selenic.com/mercurial/ ”h]”h¼)”}”(hŒ!http://www.selenic.com/mercurial/”h]”jn)”}”(hjß h]”hŒ!http://www.selenic.com/mercurial/”…””}”(hjá h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”jß uh1jmhjÝ ubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MŠhjÙ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´MŠhj` h²hubh¼)”}”(hŒƒMercurial condivide diverse caratteristiche con git, ma fornisce un'interfaccia che potrebbe risultare più semplice da utilizzare.”h]”hŒ…Mercurial condivide diverse caratteristiche con git, ma fornisce un’interfaccia che potrebbe risultare più semplice da utilizzare.”…””}”(hjû h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MŒhj` h²hubh¼)”}”(hŒ6L'altro strumento che vale la pena conoscere è Quilt:”h]”hŒ8L’altro strumento che vale la pena conoscere è Quilt:”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Mhj` h²hubjì)”}”(hŒ,http://savannah.nongnu.org/projects/quilt/ ”h]”h¼)”}”(hŒ*http://savannah.nongnu.org/projects/quilt/”h]”jn)”}”(hj h]”hŒ*http://savannah.nongnu.org/projects/quilt/”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”j uh1jmhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M‘hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´M‘hj` h²hubh¼)”}”(hXöQuilt è un sistema di gestione delle patch, piuttosto che un sistema di gestione dei sorgenti. Non mantiene uno storico degli eventi; ma piuttosto è orientato verso il tracciamento di uno specifico insieme di modifiche rispetto ad un codice in evoluzione. Molti dei più grandi manutentori di sottosistema utilizzano quilt per gestire le patch che dovrebbero essere integrate. Per la gestione di certe tipologie di sorgenti (-mm, per esempio), quilt è il miglior strumento per svolgere il lavoro.”h]”hXöQuilt è un sistema di gestione delle patch, piuttosto che un sistema di gestione dei sorgenti. Non mantiene uno storico degli eventi; ma piuttosto è orientato verso il tracciamento di uno specifico insieme di modifiche rispetto ad un codice in evoluzione. Molti dei più grandi manutentori di sottosistema utilizzano quilt per gestire le patch che dovrebbero essere integrate. Per la gestione di certe tipologie di sorgenti (-mm, per esempio), quilt è il miglior strumento per svolgere il lavoro.”…””}”(hj9 h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M”hj` h²hubeh}”(h]”Œ strumenti”ah ]”h"]”Œ strumenti”ah$]”h&]”uh1j©hj«h²hh³jh´Mlubjª)”}”(hhh]”(j¯)”}”(hŒListe di discussione”h]”hŒListe di discussione”…””}”(hjR h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j®hjO h²hh³jh´Mžubh¼)”}”(hXÇUna grossa parte del lavoro di sviluppo del Kernel Linux viene svolto tramite le liste di discussione. È difficile essere un membro della comunità pienamente coinvolto se non si partecipa almeno ad una lista da qualche parte. Ma, le liste di discussione di Linux rappresentano un potenziale problema per gli sviluppatori, che rischiano di venir sepolti da un mare di email, restare incagliati nelle convenzioni in vigore nelle liste Linux, o entrambi.”h]”hXÇUna grossa parte del lavoro di sviluppo del Kernel Linux viene svolto tramite le liste di discussione. È difficile essere un membro della comunità pienamente coinvolto se non si partecipa almeno ad una lista da qualche parte. Ma, le liste di discussione di Linux rappresentano un potenziale problema per gli sviluppatori, che rischiano di venir sepolti da un mare di email, restare incagliati nelle convenzioni in vigore nelle liste Linux, o entrambi.”…””}”(hj` h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M hjO h²hubh¼)”}”(hŒpMolte delle liste di discussione del Kernel girano su vger.kernel.org; l'elenco principale lo si trova sul sito:”h]”hŒrMolte delle liste di discussione del Kernel girano su vger.kernel.org; l’elenco principale lo si trova sul sito:”…””}”(hjn h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M¨hjO h²hubjì)”}”(hŒhttps://subspace.kernel.org ”h]”h¼)”}”(hŒhttps://subspace.kernel.org”h]”jn)”}”(hj‚ h]”hŒhttps://subspace.kernel.org”…””}”(hj„ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”j‚ uh1jmhj€ ubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M«hj| ubah}”(h]”h ]”h"]”h$]”h&]”uh1jëh³jh´M«hjO h²hubh¼)”}”(hŒ…Tuttavia, esistono liste gestite altrove; controllare il file MAINTAINERS per trovare la lista relativa ad un sottosistema specifico.”h]”hŒ…Tuttavia, esistono liste gestite altrove; controllare il file MAINTAINERS per trovare la lista relativa ad un sottosistema specifico.”…””}”(hjž h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M­hjO h²hubh¼)”}”(hXLa lista di discussione principale per lo sviluppo del kernel è, ovviamente, linux-kernel. Questa lista è un luogo ostile dove trovarsi; i volumi possono raggiungere i 500 messaggi al giorno, la quantità di "rumore" è elevata, la conversazione può essere strettamente tecnica e i partecipanti non sono sempre preoccupati di mostrare un alto livello di educazione. Ma non esiste altro luogo dove la comunità di sviluppo del kernel si unisce per intero; gli sviluppatori che evitano tale lista si perderanno informazioni importanti.”h]”hXLa lista di discussione principale per lo sviluppo del kernel è, ovviamente, linux-kernel. Questa lista è un luogo ostile dove trovarsi; i volumi possono raggiungere i 500 messaggi al giorno, la quantità di “rumore†è elevata, la conversazione può essere strettamente tecnica e i partecipanti non sono sempre preoccupati di mostrare un alto livello di educazione. Ma non esiste altro luogo dove la comunità di sviluppo del kernel si unisce per intero; gli sviluppatori che evitano tale lista si perderanno informazioni importanti.”…””}”(hj¬ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M°hjO h²hubh¼)”}”(hŒQCi sono alcuni consigli che possono essere utili per sopravvivere a linux-kernel:”h]”hŒQCi sono alcuni consigli che possono essere utili per sopravvivere a linux-kernel:”…””}”(hjº h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M¸hjO h²hubjï)”}”(hhh]”(jô)”}”(hŒ¼Tenete la lista in una cartella separata, piuttosto che inserirla nella casella di posta principale. Così da essere in grado di ignorare il flusso di mail per un certo periodo di tempo. ”h]”h¼)”}”(hŒ»Tenete la lista in una cartella separata, piuttosto che inserirla nella casella di posta principale. Così da essere in grado di ignorare il flusso di mail per un certo periodo di tempo.”h]”hŒ»Tenete la lista in una cartella separata, piuttosto che inserirla nella casella di posta principale. Così da essere in grado di ignorare il flusso di mail per un certo periodo di tempo.”…””}”(hjÏ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M»hjË ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjÈ h²hh³jh´Nubjô)”}”(hX Non cercate di seguire ogni conversazione - nessuno lo fa. È importante filtrare solo gli argomenti d'interesse (sebbene va notato che le conversazioni di lungo periodo possono deviare dall'argomento originario senza cambiare il titolo della mail) e le persone che stanno partecipando. ”h]”h¼)”}”(hXNon cercate di seguire ogni conversazione - nessuno lo fa. È importante filtrare solo gli argomenti d'interesse (sebbene va notato che le conversazioni di lungo periodo possono deviare dall'argomento originario senza cambiare il titolo della mail) e le persone che stanno partecipando.”h]”hX#Non cercate di seguire ogni conversazione - nessuno lo fa. È importante filtrare solo gli argomenti d’interesse (sebbene va notato che le conversazioni di lungo periodo possono deviare dall’argomento originario senza cambiare il titolo della mail) e le persone che stanno partecipando.”…””}”(hjç h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M¿hjã ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjÈ h²hh³jh´Nubjô)”}”(hŒLNon alimentate i troll. Se qualcuno cerca di creare nervosismo, ignoratelo. ”h]”h¼)”}”(hŒKNon alimentate i troll. Se qualcuno cerca di creare nervosismo, ignoratelo.”h]”hŒKNon alimentate i troll. Se qualcuno cerca di creare nervosismo, ignoratelo.”…””}”(hjÿ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MÄhjû ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjÈ h²hh³jh´Nubjô)”}”(hX Quando rispondete ad una mail linux-kernel (o ad altre liste) mantenete tutti i Cc:. In assenza di importanti motivazioni (come una richiesta esplicita), non dovreste mai togliere destinatari. Assicuratevi sempre che la persona alla quale state rispondendo sia presente nella lista Cc. Questa usanza fa si che divenga inutile chiedere esplicitamente di essere inseriti in copia nel rispondere al vostro messaggio. ”h]”h¼)”}”(hXŸQuando rispondete ad una mail linux-kernel (o ad altre liste) mantenete tutti i Cc:. In assenza di importanti motivazioni (come una richiesta esplicita), non dovreste mai togliere destinatari. Assicuratevi sempre che la persona alla quale state rispondendo sia presente nella lista Cc. Questa usanza fa si che divenga inutile chiedere esplicitamente di essere inseriti in copia nel rispondere al vostro messaggio.”h]”hXŸQuando rispondete ad una mail linux-kernel (o ad altre liste) mantenete tutti i Cc:. In assenza di importanti motivazioni (come una richiesta esplicita), non dovreste mai togliere destinatari. Assicuratevi sempre che la persona alla quale state rispondendo sia presente nella lista Cc. Questa usanza fa si che divenga inutile chiedere esplicitamente di essere inseriti in copia nel rispondere al vostro messaggio.”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MÆhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjÈ h²hh³jh´Nubjô)”}”(hŒÔCercate nell'archivio della lista (e nella rete nella sua totalità) prima di far domande. Molti sviluppatori possono divenire impazienti con le persone che chiaramente non hanno svolto i propri compiti a casa. ”h]”h¼)”}”(hŒÓCercate nell'archivio della lista (e nella rete nella sua totalità) prima di far domande. Molti sviluppatori possono divenire impazienti con le persone che chiaramente non hanno svolto i propri compiti a casa.”h]”hŒÕCercate nell’archivio della lista (e nella rete nella sua totalità) prima di far domande. Molti sviluppatori possono divenire impazienti con le persone che chiaramente non hanno svolto i propri compiti a casa.”…””}”(hj/ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MÍhj+ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjÈ h²hh³jh´Nubjô)”}”(hXRRispondete sotto alla porzione di righe citate, così da dare un contesto alle vostre risposte, e quindi renderle più leggibili (in altre parole, evitate di rispondere in cima, ovvero prima del testo citato). Per maggiori dettagli leggete :ref:`Documentation/translations/it_IT/process/submitting-patches.rst `. ”h]”h¼)”}”(hXPRispondete sotto alla porzione di righe citate, così da dare un contesto alle vostre risposte, e quindi renderle più leggibili (in altre parole, evitate di rispondere in cima, ovvero prima del testo citato). Per maggiori dettagli leggete :ref:`Documentation/translations/it_IT/process/submitting-patches.rst `.”h]”(hŒðRispondete sotto alla porzione di righe citate, così da dare un contesto alle vostre risposte, e quindi renderle più leggibili (in altre parole, evitate di rispondere in cima, ovvero prima del testo citato). Per maggiori dettagli leggete ”…””}”(hjG h²hh³Nh´Nubh)”}”(hŒ_:ref:`Documentation/translations/it_IT/process/submitting-patches.rst `”h]”hÊ)”}”(hjQ h]”hŒ?Documentation/translations/it_IT/process/submitting-patches.rst”…””}”(hjS h²hh³Nh´Nubah}”(h]”h ]”(hÕŒstd”Œstd-ref”eh"]”h$]”h&]”uh1hÉhjO ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”h⌠refdomain”j] Œreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆhèŒit_interleaved_replies”uh1hh³jh´MÑhjG ubhŒ.”…””}”(hjG h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MÑhjC ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjÈ h²hh³jh´Nubjô)”}”(hŒµChiedete nella lista di discussione corretta. Linux-kernel può essere un punto di incontro generale, ma non è il miglior posto dove trovare sviluppatori da tutti i sottosistemi. ”h]”h¼)”}”(hŒ´Chiedete nella lista di discussione corretta. Linux-kernel può essere un punto di incontro generale, ma non è il miglior posto dove trovare sviluppatori da tutti i sottosistemi.”h]”hŒ´Chiedete nella lista di discussione corretta. Linux-kernel può essere un punto di incontro generale, ma non è il miglior posto dove trovare sviluppatori da tutti i sottosistemi.”…””}”(hjƒ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MØhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóhjÈ h²hh³jh´Nubeh}”(h]”h ]”h"]”h$]”h&]”jC jD uh1jîh³jh´M»hjO h²hubh¼)”}”(hXInfine, la ricerca della corretta lista di discussione è uno degli errori più comuni per gli sviluppatori principianti. Qualcuno che pone una domanda relativa alla rete su linux-kernel riceverà quasi certamente il suggerimento di chiedere sulla lista netdev, che è la lista frequentata dagli sviluppatori di rete. Ci sono poi altre liste per i sottosistemi SCSI, video4linux, IDE, filesystem, etc. Il miglior posto dove cercare una lista di discussione è il file MAINTAINERS che si trova nei sorgenti del kernel.”h]”hXInfine, la ricerca della corretta lista di discussione è uno degli errori più comuni per gli sviluppatori principianti. Qualcuno che pone una domanda relativa alla rete su linux-kernel riceverà quasi certamente il suggerimento di chiedere sulla lista netdev, che è la lista frequentata dagli sviluppatori di rete. Ci sono poi altre liste per i sottosistemi SCSI, video4linux, IDE, filesystem, etc. Il miglior posto dove cercare una lista di discussione è il file MAINTAINERS che si trova nei sorgenti del kernel.”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´MÜhjO h²hubeh}”(h]”Œliste-di-discussione”ah ]”h"]”Œliste di discussione”ah$]”h&]”uh1j©hj«h²hh³jh´Mžubjª)”}”(hhh]”(j¯)”}”(hŒ#Iniziare con lo sviluppo del Kernel”h]”hŒ#Iniziare con lo sviluppo del Kernel”…””}”(hj¶ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j®hj³ h²hh³jh´Måubh¼)”}”(hŒèSono comuni le domande sul come iniziare con lo sviluppo del kernel - sia da singole persone che da aziende. Altrettanto comuni sono i passi falsi che rendono l'inizio di tale relazione più difficile di quello che dovrebbe essere.”h]”hŒêSono comuni le domande sul come iniziare con lo sviluppo del kernel - sia da singole persone che da aziende. Altrettanto comuni sono i passi falsi che rendono l’inizio di tale relazione più difficile di quello che dovrebbe essere.”…””}”(hjÄ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Mçhj³ h²hubh¼)”}”(hX–Le aziende spesso cercano di assumere sviluppatori noti per creare un gruppo di sviluppo iniziale. Questo, in effetti, può essere una tecnica efficace. Ma risulta anche essere dispendiosa e non va ad accrescere il bacino di sviluppatori kernel con esperienza. È possibile anche "portare a casa" sviluppatori per accelerare lo sviluppo del kernel, dando comunque all'investimento un po' di tempo. Prendersi questo tempo può fornire al datore di lavoro un gruppo di sviluppatori che comprendono sia il kernel che l'azienda stessa, e che possono supportare la formazione di altre persone. Nel medio periodo, questa è spesso uno delle soluzioni più proficue.”h]”hX Le aziende spesso cercano di assumere sviluppatori noti per creare un gruppo di sviluppo iniziale. Questo, in effetti, può essere una tecnica efficace. Ma risulta anche essere dispendiosa e non va ad accrescere il bacino di sviluppatori kernel con esperienza. È possibile anche “portare a casa†sviluppatori per accelerare lo sviluppo del kernel, dando comunque all’investimento un po’ di tempo. Prendersi questo tempo può fornire al datore di lavoro un gruppo di sviluppatori che comprendono sia il kernel che l’azienda stessa, e che possono supportare la formazione di altre persone. Nel medio periodo, questa è spesso uno delle soluzioni più proficue.”…””}”(hjÒ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Mëhj³ h²hubh¼)”}”(hXÁI singoli sviluppatori sono spesso, comprensibilmente, una perdita come punto di partenza. Iniziare con un grande progetto può rivelarsi intimidatorio; spesso all'inizio si vuole solo verificare il terreno con qualcosa di piccolo. Questa è una delle motivazioni per le quali molti sviluppatori saltano alla creazione di patch che vanno a sistemare errori di battitura o problematiche minori legate allo stile del codice. Sfortunatamente, tali patch creano un certo livello di rumore che distrae l'intera comunità di sviluppo, quindi, sempre di più, esse vengono degradate. I nuovi sviluppatori che desiderano presentarsi alla comunità non riceveranno l'accoglienza che vorrebbero con questi mezzi.”h]”hXÇI singoli sviluppatori sono spesso, comprensibilmente, una perdita come punto di partenza. Iniziare con un grande progetto può rivelarsi intimidatorio; spesso all’inizio si vuole solo verificare il terreno con qualcosa di piccolo. Questa è una delle motivazioni per le quali molti sviluppatori saltano alla creazione di patch che vanno a sistemare errori di battitura o problematiche minori legate allo stile del codice. Sfortunatamente, tali patch creano un certo livello di rumore che distrae l’intera comunità di sviluppo, quindi, sempre di più, esse vengono degradate. I nuovi sviluppatori che desiderano presentarsi alla comunità non riceveranno l’accoglienza che vorrebbero con questi mezzi.”…””}”(hjà h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Mõhj³ h²hubh¼)”}”(hŒDAndrew Morton da questo consiglio agli aspiranti sviluppatori kernel”h]”hŒDAndrew Morton da questo consiglio agli aspiranti sviluppatori kernel”…””}”(hjî h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´Mhj³ h²hubhŒ literal_block”“”)”}”(hX|Il primo progetto per un neofita del kernel dovrebbe essere sicuramente quello di "assicurarsi che il kernel funzioni alla perfezione sempre e su tutte le macchine sulle quali potete stendere la vostra mano". Solitamente il modo per fare ciò è quello di collaborare con gli altri nel sistemare le cose (questo richiede persistenza!) ma va bene - è parte dello sviluppo kernel.”h]”hX|Il primo progetto per un neofita del kernel dovrebbe essere sicuramente quello di "assicurarsi che il kernel funzioni alla perfezione sempre e su tutte le macchine sulle quali potete stendere la vostra mano". Solitamente il modo per fare ciò è quello di collaborare con gli altri nel sistemare le cose (questo richiede persistenza!) ma va bene - è parte dello sviluppo kernel.”…””}”hjþ sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1jü h³jh´Mhj³ h²hubh¼)”}”(hŒ"(http://lwn.net/Articles/283982/).”h]”(hŒ(”…””}”(hjh²hh³Nh´Nubjn)”}”(hŒhttp://lwn.net/Articles/283982/”h]”hŒhttp://lwn.net/Articles/283982/”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”juh1jmhjubhŒ).”…””}”(hjh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M hj³ h²hubh¼)”}”(hXIn assenza di problemi ovvi da risolvere, si consiglia agli sviluppatori di consultare, in generale, la lista di regressioni e di bachi aperti. Non c'è mai carenza di problematiche bisognose di essere sistemate; accollandosi tali questioni gli sviluppatori accumuleranno esperienza con la procedura, ed allo stesso tempo, aumenteranno la loro rispettabilità all'interno della comunità di sviluppo.”h]”hX”In assenza di problemi ovvi da risolvere, si consiglia agli sviluppatori di consultare, in generale, la lista di regressioni e di bachi aperti. Non c’è mai carenza di problematiche bisognose di essere sistemate; accollandosi tali questioni gli sviluppatori accumuleranno esperienza con la procedura, ed allo stesso tempo, aumenteranno la loro rispettabilità all’interno della comunità di sviluppo.”…””}”(hj/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»h³jh´M hj³ h²hubeh}”(h]”Œ#iniziare-con-lo-sviluppo-del-kernel”ah ]”h"]”Œ#iniziare con lo sviluppo del kernel”ah$]”h&]”uh1j©hj«h²hh³jh´Måubeh}”(h]”(Œ%come-funziona-il-processo-di-sviluppo”j¨eh ]”h"]”(Œ%come funziona il processo di sviluppo”Œit_development_process”eh$]”h&]”uh1j©hhh²hh³jh´K Œexpect_referenced_by_name”}”jKjsŒexpect_referenced_by_id”}”j¨jsubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”juh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)”}”(j®NŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”jŒfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”jtŒerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”jŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”j¨]”jasŒnameids”}”(jKj¨jJjGj¬j©jÚ j× jG jD j j j] jZ jL jI j° j­ jBj?uŒ nametypes”}”(jKˆjJ‰j¬‰jÚ ‰jG ‰j ‰j] ‰jL ‰j° ‰jB‰uh}”(j¨j«jGj«j©jÌj× j¯jD jÝ j jJ jZ j jI j` j­ jO j?j³ uŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”(hŒsystem_message”“”)”}”(hhh]”h¼)”}”(hŒeUnexpected possible title overline or transition. Treating it as ordinary text because it's so short.”h]”hŒgUnexpected possible title overline or transition. Treating it as ordinary text because it’s so short.”…””}”(hjÜh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»hjÙubah}”(h]”h ]”h"]”h$]”h&]”Œlevel”KŒtype”ŒINFO”Œline”K…Œsource”juh1j×hj×ubjØ)”}”(hhh]”h¼)”}”(hŒeUnexpected possible title overline or transition. Treating it as ordinary text because it's so short.”h]”hŒgUnexpected possible title overline or transition. Treating it as ordinary text because it’s so short.”…””}”(hjøh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h»hjõubah}”(h]”h ]”h"]”h$]”h&]”Œlevel”KŒtype”jòŒline”K…Œsource”juh1j×hjîubeŒtransform_messages”]”jØ)”}”(hhh]”h¼)”}”(hhh]”hŒ