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/geom-class/_index.po
Translation file Download documentation/content/pt_BR/articles/geom-class/_index.po
The main benefit of using a thread to handle I/O requests is that it can sleep when needed. Now, this sounds good, but should be carefully thought out. Sleeping is well and very convenient but can very effectively destroy performance of the geom transformation. Extremely performance-sensitive classes probably should do all the work in `.start`() function call, taking great care to handle out-of-memory and similar errors.
A principal vantagem de usar uma thread para lidar com solicitações de I/O é que ela pode dormir quando necessário. Agora, isso parece bom, mas deve ser cuidadosamente pensado. Dormir é bom e muito conveniente, mas pode ser muito efetivo em destruir o desempenho da transformação geom. As classes extremamente sensíveis ao desempenho provavelmente devem fazer todo o trabalho na chamada de função <function>.start</function>(), tomando muito cuidado para lidar com erros de falta de memória e similares.
8 days ago
New contributor 8 days ago
In GEOM code, the usual use of threads is to offload processing of requests from `g_down` thread (the `.start`() function). These threads look like "event handlers": they have a linked list of event associated with them (on which events can be posted by various functions in various threads so it must be protected by a mutex), take the events from the list one by one and process them in a big `switch`() statement.
No código GEOM, o uso usual de threads é para descarregar o processamento de requisições da thread <literal>g_down</literal> (a função <function>.start</function>). Estas threads se parecem com um <quote>event handlers</quote>: elas têm uma lista encadeada de eventos associados a elas (nos quais eventos podem ser postados por várias funções em várias threads, portanto, devem ser protegidos por um mutex), pegam os eventos da lista, um por um, e processa-os em uma grande instrução <literal>switch</literal>().
8 days ago
New contributor 8 days ago
This restriction is here to stop GEOM code clogging the I/O request path, since sleeping is usually not time-bound and there can be no guarantees on how long will it take (there are some other, more technical reasons also). It also means that there is not much that can be done in those threads; for example, almost any complex thing requires memory allocation. Fortunately, there is a way out: creating additional kernel threads.
Esta restrição está aqui para impedir que o código GEOM obstrua o caminho da solicitação de I/O, já que sleeping normalmente não é limitado pelo tempo e não pode haver garantias sobre quanto tempo levará (também existem algumas outras razões mais técnicas). Isso também significa que não existe muito o que possa ser feito nessas threads; por exemplo, quase qualquer coisa complexa requer alocação de memória. Felizmente, existe uma saída: criar threads adicionais no kernel.
8 days ago
New contributor 8 days ago
The request ends up as a call to the `.start`() function made on the g_down thread and reaches the top-level geom instance.
A requisição termina como uma chamada para a função <function>.start</function>() feita para a thread g_down e atinge a instância geom de nível superior.
8 days ago
New contributor 8 days ago
Geoms are instances of GEOM classes. They have internal data (a softc structure) and some functions with which they respond to external events.
Geoms são instâncias de classes GEOM. Eles possuem dados internos (uma estrutura softc) e algumas funções com as quais eles respondem a eventos externos.
8 days ago
New contributor 8 days ago
Browse all translation changes

Statistics

Percent Strings Words Chars
Total 145 2,948 18,891
Translated 32% 47 328 1,984
Needs editing 26% 38 1,182 7,333
Failing checks 8% 13 36 419

Last activity

Last change April 8, 2021, 8:01 p.m.
Last author Anonymous

Daily activity

Daily activity

Weekly activity

Weekly activity