Kernel de Linux: significado del árbol de origen, dentro del árbol y fuera del árbol

14

¿Qué significan exactamente los términos "dentro del árbol" y "fuera del árbol"? Además, ¿el "árbol de fuentes" se refiere específicamente al kernel oficial publicado / mantenido en kernel.org o es un término más general que puede referirse a cualquier fuente de kernel de Linux (modificada)?

Lavya
fuente

Respuestas:

11

"árbol fuente" no es un término específico para el desarrollo de la fuente del núcleo, por lo que debe ser un término más general y su significado con respecto a la fuente del núcleo depende del contexto.

No me he encontrado con "dentro del árbol" y "fuera del árbol" fuera del desarrollo de la fuente del kernel de Linux y solo para trabajar con módulos . Todos los módulos comienzan como desarrollos "fuera del árbol", que pueden compilarse utilizando el contexto de un árbol fuente. Una vez que un módulo es aceptado para ser incluido, se convierte en un módulo en árbol. Sin embargo, AI no ha encontrado una definición oficial para ambos términos, tal vez eso nunca fue necesario ya que para aquellos que trabajaban con módulos estaba claro lo que significaba.

Por ejemplo, aunque el módulo Reiserfs todavía era un módulo fuera del árbol, hice la generación del paquete RPM para SuSE, una vez que se convirtió en el árbol ya no era necesario.

Anthon
fuente
¡Gracias! Entonces, ¿básicamente dentro del árbol significa un módulo que viene como parte del árbol fuente y fuera del árbol que no lo hace?
Lavya
1
@Lavya Sí, esa es la única forma en que lo he visto utilizado. Pero como indiqué, no he encontrado una definición formal.
Anthon
"dentro del árbol" y "fuera del árbol" son en realidad términos genéricos de desarrollo de software. Se refiere a dónde se colocan los resultados / artefactos de compilación resultantes durante una compilación, ya sea "en el árbol", justo al lado de los archivos de donde provienen, o "fuera del árbol", en un directorio raíz separado que separa la compilación salida de los archivos fuente. Sin embargo, el kernel sobrecarga estos términos cuando habla de módulos, como ha descrito en su respuesta.
mtalexan
@mtalexan Algunas referencias que respalden su reclamo serían útiles. El único que encontré hasta ahora es que, autosetupen algún momento (no lo hicieron cuando lo usé por primera vez), comenzó a usar out-of-treela forma que usted describe, pero lo usan en in-placelugar de in-treeen su documento.
Anthon
@Anthon in-treey in-placeson sinónimos para el mismo término en mi experiencia. Realmente no tengo referencias para ello, ha sido algo que he aprendido trabajando en la industria en varias empresas y subcampos durante los últimos ~ 15 años en lugar de algo que leí en un libro. Solo estaba señalando que, en términos de jerga técnica, es algo que probablemente encuentres en otros contextos con significados ligeramente diferentes. Tampoco estaba criticando, solo agregué un contexto adicional para futuros lectores.
mtalexan