Other components
Component | Translated | Untranslated | Untranslated words | Checks | Suggestions | Comments | |
---|---|---|---|---|---|---|---|
books/porters-handbook/pkg-files/chapter
|
0% | 66 | 1,110 | ||||
|
|||||||
articles/_index
|
0% | 2 | 4 | ||||
|
|||||||
books/developers-handbook/bibliography/chapter
|
0% | 7 | 131 | ||||
|
|||||||
books/developers-handbook/policies/chapter
|
0% | 66 | 1,420 | ||||
|
|||||||
books/arch-handbook/pci/chapter
|
0% | 86 | 1,461 | ||||
|
|||||||
books/handbook/bibliography/_index
|
0% | 91 | 1,286 | ||||
|
|||||||
books/_index
|
0% | 2 | 4 | ||||
|
|||||||
books/arch-handbook/bibliography/chapter
|
0% | 2 | 37 | ||||
|
|||||||
books/developers-handbook/testing/chapter
|
0% | 86 | 1,717 | ||||
|
|||||||
articles/contributors/contrib-corealumni
|
0% | 55 | 236 | ||||
|
Translation Information
Project website | docs.freebsd.org/en |
---|---|
Translation process |
|
Translation license | BSD 2-Clause "Simplified" License |
Filemask | documentation/content/*/books/arch-handbook/boot/chapter.po |
Translation file |
Download
documentation/content/es/books/arch-handbook/boot/chapter.po
|
The system scheduler sysinit object is defined in the file [.filename]#sys/vm/vm_glue.c#, and the entry point for that object is `scheduler()`. That function is actually an infinite loop, and it represents a process with PID 0, the swapper process. The proc0 structure, mentioned before, is used to describe it.
El objeto sysinit del programador del sistema se define en el archivo <filename>sys/vm/vm_glue.c</filename>, y el punto de entrada para ese objeto es <function>scheduler()</function>. Esa función es en realidad un bucle infinito y representa un proceso con PID 0, el proceso de intercambio. La estructura proc0, mencionada anteriormente, se usa para describirlo.
/usr/include/sys/kernel.h:
enum sysinit_sub_id {
SI_SUB_DUMMY = 0x0000000, /* not executed; for linker*/
SI_SUB_DONE = 0x0000001, /* processed*/
SI_SUB_CONSOLE = 0x0800000, /* console*/
SI_SUB_COPYRIGHT = 0x0800001, /* first use of console*/
...
SI_SUB_RUN_SCHEDULER = 0xfffffff /* scheduler: no return*/
};
enum sysinit_sub_id {
SI_SUB_DUMMY = 0x0000000, /* not executed; for linker*/
SI_SUB_DONE = 0x0000001, /* processed*/
SI_SUB_CONSOLE = 0x0800000, /* console*/
SI_SUB_COPYRIGHT = 0x0800001, /* first use of console*/
...
SI_SUB_RUN_SCHEDULER = 0xfffffff /* scheduler: no return*/
};
<filename>/usr/include/sys/kernel.h:</filename>
enum sysinit_sub_id {
SI_SUB_DUMMY = 0x0000000, /* sin ejecutar; para enlazador*/
SI_SUB_DONE = 0x0000001, /* procesada*/
SI_SUB_CONSOLE = 0x0800000, /* consola*/
SI_SUB_COPYRIGHT = 0x0800001, /* primer uso de la consola*/
...
SI_SUB_RUN_SCHEDULER = 0xfffffff /*Planificador: sin retorno*/
};
enum sysinit_sub_id {
SI_SUB_DUMMY = 0x0000000, /* sin ejecutar; para enlazador*/
SI_SUB_DONE = 0x0000001, /* procesada*/
SI_SUB_CONSOLE = 0x0800000, /* consola*/
SI_SUB_COPYRIGHT = 0x0800001, /* primer uso de la consola*/
...
SI_SUB_RUN_SCHEDULER = 0xfffffff /*Planificador: sin retorno*/
};
Returning to the `mi_startup()` discussion, it is must be clear now, how the sysinit objects are being organized. The `mi_startup()` function sorts them and calls each. The very last object is the system scheduler:
Volviendo al <function>mi_startup()</function> discusión, debe quedar claro ahora, cómo se están organizando los objetos sysinit. los<function>mi_startup()</function> la función los ordena y llama a cada uno. El último objeto es el programador del sistema:
This screen dump shows that the size of .set.sysinit_set section is 0x664 bytes, so `0x664/sizeof(void *)` sysinit objects are compiled into the kernel. The other sections such as `.set.sysctl_set` represent other linker sets.
Este volcado de pantalla muestra que el tamaño de la sección .set.sysinit_set es 0x664 bytes, por lo que <literal>0x664/sizeof(void *)</literal> Los objetos sysinit se compilan en el kernel. Las otras secciones como <literal>.set.sysctl_set</literal> representan otros conjuntos de enlazadores.
The first `__asm` instruction will create an ELF section within the kernel's executable. This will happen at kernel link time. The section will have the name `.set.sysinit_set`. The content of this section is one 32-bit value, the address of announce_sys_init structure, and that is what the second `__asm` is. The third `__asm` instruction marks the end of a section. If a directive with the same section name occurred before, the content, i.e., the 32-bit value, will be appended to the existing section, so forming an array of 32-bit pointers.
El primero <literal>__asm</literal>La instrucción creará una sección ELF dentro del ejecutable del kernel. Esto sucederá en el momento del enlace del kernel. La sección tendrá el nombre<literal>.set.sysinit_set</literal>. El contenido de esta sección es un valor de 32 bits, la dirección de la estructura publish_sys_init, y eso es lo que el segundo <literal>__asm</literal> es. El tercero <literal>__asm</literal> instrucción marca el final de una sección. Si antes se produjo una directiva con el mismo nombre de sección, el contenido, es decir, el valor de 32 bits, se agregará a la sección existente, formando una matriz de punteros de 32 bits.
292 | File in original format as translated in the repository | gettext PO file | |||||||
---|---|---|---|---|---|---|---|---|---|
292 | All strings, converted files enriched with comments; suitable for offline translation | CSV | gettext MO | gettext PO | TBX | TMX | XLIFF with gettext extensions | XLIFF 1.1 | XLSX |
255 | Strings needing action, converted files enriched with comments; suitable for offline translation | CSV | gettext MO | gettext PO | TBX | TMX | XLIFF with gettext extensions | XLIFF 1.1 | XLSX |
Statistics
Percent | Strings | Words | Chars | ||
---|---|---|---|---|---|
Total | 292 | 11,006 | 74,475 | ||
Translated | 12% | 37 | 495 | 2,903 | |
Needs editing | 13% | 40 | 2,835 | 17,738 | |
Failing checks | 0% | 2 | 247 | 1,603 |
Last activity
Last change | April 9, 2021, 1:43 a.m. | |||
---|---|---|---|---|
Last author | Anonymous |