Translation Information

Project website docs.freebsd.org/en
Translation process
  • Translations can be made directly.
  • Translation suggestions can be made.
  • Only chosen users can contribute.
  • The translation uses bilingual files.
Translation license BSD 2-Clause "Simplified" License
Filemask documentation/content/*/articles/linux-emulation/_index.po
Translation file Download documentation/content/pt_BR/articles/linux-emulation/_index.po
`sched_bind` is an API used in order to bind a thread to a particular CPU for all the time it executes the code, until a `sched_unbind` function call does not unbind it. This feature has a key role in situations where you cannot trust the current state of CPUs (for example, at very early stages of boot), as you want to avoid your thread to migrate on inactive CPUs. Since `sched_bind` and `sched_unbind` manipulate internal scheduler structures, they need to be enclosed in `sched_lock` acquisition/releasing when used.
<function>sched_bind</function> é uma API usada para vincular uma thread a uma CPU em particular durante todo o tempo em que ele executa o código, até que uma chamada de função <function>sched_unbind</function> não a desvincule. Esse recurso tem um papel importante em situações em que você não pode confiar no estado atual das CPUs (por exemplo, em estágios iniciais de inicialização), já que você deseja evitar que sua thread migre em CPUs inativas. Como <function>sched_bind</function> e <function>sched_unbind</function> manipulam as estruturas internas do agendador, elas precisam estar entre a aquisição/liberação de <function>sched_lock</function> quando usadas.
9 days ago
New contributor 9 days ago
Various emulation layers sometimes require some additional per-process data. It can manage separate structures (a list, a tree etc.) containing these data for every process but this tends to be slow and memory consuming. To solve this problem the FreeBSD `proc` structure contains `p_emuldata`, which is a void pointer to some emulation layer specific data. This `proc` entry is protected by the proc mutex.
Várias camadas de emulação exigem alguns dados adicionais por processo. Ele pode gerenciar estruturas separadas (uma lista, uma árvore etc.) contendo esses dados para cada processo, mas isso tende a ser lento e consumir memória. Para resolver este problema, a estrutura <literal>proc</literal> do FreeBSD contém <literal>p_emuldata</literal>, que é um ponteiro vazio para alguns dados específicos da camada de emulação. Esta entrada <literal>proc</literal> é protegida pelo mutex proc.
9 days ago
New contributor 9 days ago
The FreeBSD `proc` structure contains a `p_sysent` entry that identifies, which ABI this process is running. In fact, it is a pointer to the `sysentvec` described above. So by comparing this pointer to the address where the `sysentvec` structure for the given ABI is stored we can effectively determine whether the process belongs to our emulation layer. The code typically looks like:
A estrutura <literal>proc</literal> do FreeBSD contém uma entrada <literal>p_sysent</literal> que identifica, qual ABI este processo está executando. Na verdade, é um ponteiro para o <literal>sysentvec</literal> descrito acima. Portanto, comparando esse ponteiro com o endereço em que a estrutura <literal>sysentvec</literal> da ABI especificada está armazenada, podemos efetivamente determinar se o processo pertence à nossa camada de emulação. O código normalmente se parece com:
9 days ago
New contributor 9 days ago
Every syscall implemented in the Linuxulator must have its prototype with various flags in [.filename]#syscalls.master#. The form of the file is:
Cada syscall implementada no Linuxulator deve ter seu protótipo com vários flags no <filename>syscalls.master</filename>. A forma do arquivo é:
9 days ago
New contributor 9 days ago
...
AUE_FORK STD { int linux_fork(void); }
...
AUE_CLOSE NOPROTO { int close(int fd); }
...
...
AUE_FORK STD { int linux_fork(void); }
...
AUE_CLOSE NOPROTO { int close(int fd); }
...
9 days ago
New contributor 9 days ago
Browse all translation changes

Statistics

Percent Strings Words Chars
Total 395 12,252 77,394
Translated 31% 126 588 3,887
Needs editing 15% 63 3,662 22,605
Failing checks 9% 38 149 1,059

Last activity

Last change April 8, 2021, 10:51 a.m.
Last author Anonymous

Daily activity

Daily activity

Weekly activity

Weekly activity