Changes
Translation components API.
See the Weblate's Web API documentation for detailed description of the API.
GET /api/components/documentation/booksdevelopers-handbookx86_index/changes/?format=api&page=189
{ "count": 9447, "next": null, "previous": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/changes/?format=api&page=188", "results": [ { "unit": "https://translate-dev.freebsd.org/api/units/1603597/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:26:48.196333Z", "action": 5, "target": "Três assemblers muito diferentes estão disponíveis para o FreeBSD. Tanto man:llvm-as[1] (included in package:devel/llvm[]) and man:as[1] (included in package:devel/binutils[]) usam a sintaxe tradicional da linguagem assembly UNIX(R).", "id": 951064, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951064/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1603598/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:27:14.499636Z", "action": 5, "target": "Por outro lado, man:nasm[1] (installed through package:devel/nasm[]) uses the Intel syntax. Sua principal vantagem é que ele pode compilar código para muitos sistemas operacionais.", "id": 951065, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951065/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197213/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:27:27.063133Z", "action": 5, "target": "Este capítulo utiliza a sintaxe do NASM porque a maioria dos programadores de linguagem assembly que migram para o FreeBSD a acharão mais fácil de entender. E, francamente, porque é com ela que estou acostumado.", "id": 951066, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951066/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084180/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:27:48.424129Z", "action": 5, "target": "O vinculador", "id": 951067, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951067/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084181/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:27:57.366033Z", "action": 5, "target": "O código gerado pelo montador, assim como o de qualquer compilador, precisa ser vinculado para formar um arquivo executável.", "id": 951068, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951068/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197214/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:28:11.218177Z", "action": 5, "target": "O linker padrão man:ld[1] vem com o FreeBSD. Ele funciona com o código montado com qualquer um dos assemblers.", "id": 951069, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951069/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084184/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:28:27.671781Z", "action": 5, "target": "Convenção de chamada padrão", "id": 951070, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951070/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197215/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:29:32.698858Z", "action": 5, "target": "Por padrão, o kernel do FreeBSD usa a convenção de chamada C. Além disso, embora o kernel seja acessado usando `int 80h`, presume-se que o programa chamará uma função que retorna `int 80h`, em vez de retornar `int 80h` diretamente.", "id": 951071, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951071/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197216/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:29:55.697927Z", "action": 5, "target": "Essa convenção é muito conveniente e bastante superior à convenção Microsoft(R) usada pelo MS-DOS(R). Por quê? Porque a convenção UNIX(R) permite que qualquer programa escrito em qualquer linguagem acesse o kernel.", "id": 951072, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951072/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197217/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:30:10.595352Z", "action": 5, "target": "Um programa em linguagem assembly também pode fazer isso. Por exemplo, poderíamos abrir um arquivo:", "id": 951073, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951073/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084188/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:30:25.452735Z", "action": 5, "target": "kernel:\n\tint\t80h\t; Chama o kernel\n\tret\n", "id": 951074, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951074/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084189/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:30:50.171630Z", "action": 5, "target": "open:\n\tpush\tdword mode\n\tpush\tdword flags\n\tpush\tdword path\n\tmov\teax, 5\n\tcall\tkernel\n\tadd\tesp, byte 12\n\tret\n", "id": 951075, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951075/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197218/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:31:09.734795Z", "action": 5, "target": "Esta é uma forma muito limpa e portátil de codificar. Se você precisar portar o código para um sistema UNIX(R) que usa uma interrupção diferente ou uma forma diferente de passar parâmetros, tudo o que você precisa alterar é o procedimento do kernel.", "id": 951076, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951076/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197219/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:31:29.028705Z", "action": 5, "target": "Mas os programadores de linguagem assembly gostam de economizar ciclos. O exemplo acima requer uma combinação de `call/ret`. Podemos eliminá-la adicionando um dword extra:", "id": 951077, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951077/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084192/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:31:50.201837Z", "action": 5, "target": "open:\n\tpush\tdword mode\n\tpush\tdword flags\n\tpush\tdword path\n\tmov\teax, 5\n\tpush\teax\t\t;Ou qualquer outro dword\n\tint\t80h\n\tadd\tesp, byte 16\n", "id": 951078, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951078/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084193/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:32:00.911896Z", "action": 5, "target": "O `5` que colocamos em `EAX` identifica a função do kernel, neste caso `open`.", "id": 951079, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951079/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084194/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:32:11.100821Z", "action": 5, "target": "Convenção de Chamada Alternativa", "id": 951080, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951080/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197220/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:32:29.161698Z", "action": 5, "target": "O FreeBSD é um sistema extremamente flexível. Ele oferece outras maneiras de acessar o kernel. Para que isso funcione, no entanto, o sistema precisa ter a emulação de Linux instalada.", "id": 951081, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951081/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197221/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:32:47.615451Z", "action": 5, "target": "O Linux é um sistema semelhante ao UNIX(R). No entanto, seu kernel usa a mesma convenção de chamada de sistema de passagem de parâmetros em registradores que o MS-DOS(R). Assim como na convenção UNIX(R), o número da função é colocado em `EAX`. Os parâmetros, porém, não são passados na pilha, mas em `EBX, ECX, EDX, ESI, EDI, EBP`.", "id": 951082, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951082/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197221/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:33:00.891823Z", "action": 2, "target": "O Linux é um sistema semelhante ao UNIX(R). No entanto, seu kernel usa a mesma convenção de chamada de sistema de passagem de parâmetros em registradores que o MS-DOS(R). Assim como na convenção UNIX(R), o número da função é colocado em `EAX`. Os parâmetros, porém, não são passados na pilha, mas em `EBX, ECX, EDX, ESI, EDI, EBP`:", "id": 951083, "action_name": "修改了译文", "url": "https://translate-dev.freebsd.org/api/changes/951083/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084197/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:33:08.119743Z", "action": 5, "target": "open:\n\tmov\teax, 5\n\tmov\tebx, path\n\tmov\tecx, flags\n\tmov\tedx, mode\n\tint\t80h\n", "id": 951084, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951084/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197222/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:33:47.768173Z", "action": 5, "target": "Essa convenção tem uma grande desvantagem em relação ao método UNIX(R), pelo menos no que diz respeito à programação em linguagem assembly: a cada chamada ao kernel, é necessário \"empurrar\" os registradores e, posteriormente, \"desempurrá-los\". Isso torna o código mais extenso e lento. Mesmo assim, o FreeBSD oferece uma alternativa.", "id": 951085, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951085/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197223/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:33:56.820272Z", "action": 5, "target": "Se você optar pela convenção Linux, deverá informar o sistema sobre isso. Após a compilação e a vinculação do seu programa, você precisa personalizar o executável:", "id": 951086, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951086/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084200/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:34:23.594418Z", "action": 5, "target": "% brandelf -t nome do arquivo Linux\n", "id": 951087, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951087/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084201/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:34:32.666327Z", "action": 5, "target": "Qual convenção você deve usar?", "id": 951088, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951088/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084202/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:34:46.564161Z", "action": 5, "target": "Se você estiver programando especificamente para FreeBSD, deve sempre usar a convenção UNIX(R): é mais rápida, permite armazenar variáveis globais em registradores, não precisa personalizar o executável e não impõe a instalação do pacote de emulação Linux no sistema de destino.", "id": 951089, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951089/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197224/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:35:02.652938Z", "action": 5, "target": "Se você deseja criar um código portátil que também possa ser executado no Linux, provavelmente ainda vai querer fornecer aos usuários do FreeBSD um código o mais eficiente possível. Mostrarei como você pode fazer isso depois de explicar os conceitos básicos.", "id": 951090, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951090/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084204/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:35:22.648396Z", "action": 5, "target": "Números de chamada", "id": 951091, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951091/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197225/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:35:40.034441Z", "action": 5, "target": "Para informar ao kernel qual serviço do sistema você está chamando, coloque o número dele em `EAX`. Obviamente, você precisa saber qual é o número.", "id": 951092, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951092/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084206/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:35:59.084903Z", "action": 5, "target": "O arquivo [.filename]#syscalls#", "id": 951093, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951093/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197226/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:36:18.727208Z", "action": 5, "target": "Os números estão listados em [.filename]#syscalls#. `locate syscalls` encontra este arquivo em vários formatos diferentes, todos produzidos automaticamente a partir de [.filename]#syscalls.master#.", "id": 951094, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951094/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1197227/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:36:30.876751Z", "action": 5, "target": "Você pode encontrar o arquivo mestre para a convenção de chamada UNIX(R) padrão em [.filename]#/usr/src/sys/kern/syscalls.master#. Se você precisar usar a outra convenção implementada no modo de emulação Linux, leia [.filename]#/usr/src/sys/i386/linux/syscalls.master#.", "id": 951095, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951095/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084209/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:36:45.473794Z", "action": 5, "target": "O FreeBSD e o Linux não apenas usam convenções de chamada diferentes, como às vezes usam números diferentes para as mesmas funções.", "id": 951096, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951096/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084210/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:36:57.080512Z", "action": 5, "target": "[.filename]#syscalls.master# descreve como a chamada deve ser feita:", "id": 951097, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951097/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084211/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:37:05.660320Z", "action": 5, "target": "0\tSTD\tNOHIDE\t{ int nosys(void); } syscall nosys_args int\n1\tSTD\tNOHIDE\t{ void exit(int rval); } exit rexit_args void\n2\tSTD\tPOSIX\t{ int fork(void); }\n3\tSTD\tPOSIX\t{ ssize_t read(int fd, void *buf, size_t nbyte); }\n4\tSTD\tPOSIX\t{ ssize_t write(int fd, const void *buf, size_t nbyte); }\n5\tSTD\tPOSIX\t{ int open(char *path, int flags, int mode); }\n6\tSTD\tPOSIX\t{ int close(int fd); }\netc...\n", "id": 951098, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951098/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1084212/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "author": "https://translate-dev.freebsd.org/api/users/_int2eh/?format=api", "timestamp": "2026-04-27T23:37:29.929615Z", "action": 5, "target": "É a coluna mais à esquerda que nos indica o número a ser inserido em `EAX`.", "id": 951099, "action_name": "新译文", "url": "https://translate-dev.freebsd.org/api/changes/951099/?format=api" }, { "unit": null, "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/pt_BR/?format=api", "user": null, "author": null, "timestamp": "2026-04-28T04:45:00.373626Z", "action": 17, "target": "", "id": 951100, "action_name": "提交了更改", "url": "https://translate-dev.freebsd.org/api/changes/951100/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1802033/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/ru/?format=api", "user": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "author": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "timestamp": "2026-05-17T09:14:18.250112Z", "action": 27, "target": "Код приведён ниже. Я разместил комментарии и пояснения прямо в коде:", "id": 955757, "action_name": "搜索并替换", "url": "https://translate-dev.freebsd.org/api/changes/955757/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1802058/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/ru/?format=api", "user": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "author": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "timestamp": "2026-05-17T09:16:27.723700Z", "action": 27, "target": "Затем вам нужно использовать браузер для просмотра вывода. Чтобы увидеть вывод на моем веб-сервере, перейдите по ссылке http://www.int80h.org/webvars/[http://www.int80h.org/webvars/]. Если вам интересно узнать о дополнительных переменных окружения в защищённом паролем веб-каталоге, перейдите по адресу http://www.int80h.org/private/[http://www.int80h.org/private/], используя имя `asm` и пароль `programmer`.", "id": 955770, "action_name": "搜索并替换", "url": "https://translate-dev.freebsd.org/api/changes/955770/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1802061/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/ru/?format=api", "user": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "author": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "timestamp": "2026-05-17T10:20:13.288383Z", "action": 27, "target": "В самом деле, начнём с конца, то есть с утилиты преобразования файлов. Всегда легче программировать, когда с самого начала известно, каким должен быть конечный продукт.", "id": 955801, "action_name": "搜索并替换", "url": "https://translate-dev.freebsd.org/api/changes/955801/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1802399/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/ru/?format=api", "user": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "author": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "timestamp": "2026-05-17T10:20:13.301406Z", "action": 27, "target": "Мы начнём каждую строку вывода с фокусного расстояния. Это может показаться избыточным сначала, особенно в интерактивном режиме: пользователь вводит фокусное расстояние, а мы его повторяем.", "id": 955802, "action_name": "搜索并替换", "url": "https://translate-dev.freebsd.org/api/changes/955802/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1802417/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/ru/?format=api", "user": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "author": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "timestamp": "2026-05-17T10:20:13.313676Z", "action": 27, "target": "Для этого мы просто проигнорируем все ведущие нули. Как только мы найдем ненулевую цифру, мы инициализируем счетчик значением `0` и начнём выполнять три шага:", "id": 955803, "action_name": "搜索并替换", "url": "https://translate-dev.freebsd.org/api/changes/955803/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1802282/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/ru/?format=api", "user": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "author": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "timestamp": "2026-05-17T10:24:27.433193Z", "action": 27, "target": "Редактор изображений будет читать из другого канала, подключённого к `fd.out` нашего фильтра, чтобы он мог установить первую строку выходного изображения _до_ того, как отправит нам вторую строку входного.", "id": 955857, "action_name": "搜索并替换", "url": "https://translate-dev.freebsd.org/api/changes/955857/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1801983/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/ru/?format=api", "user": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "author": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "timestamp": "2026-05-17T10:44:10.354714Z", "action": 27, "target": "Вот наш изменённый исходный код:", "id": 955904, "action_name": "搜索并替换", "url": "https://translate-dev.freebsd.org/api/changes/955904/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1802204/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/ru/?format=api", "user": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "author": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "timestamp": "2026-05-17T10:57:22.824309Z", "action": 27, "target": "Первая строка файла содержит список различных полей, разделённых запятыми. Остальная часть файла содержит данные, перечисленные построчно, со значениями, разделёнными запятыми.", "id": 955952, "action_name": "搜索并替换", "url": "https://translate-dev.freebsd.org/api/changes/955952/?format=api" }, { "unit": "https://translate-dev.freebsd.org/api/units/1802336/?format=api", "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/ru/?format=api", "user": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "author": "https://translate-dev.freebsd.org/api/users/v.popolitov/?format=api", "timestamp": "2026-05-17T10:57:22.837681Z", "action": 27, "target": "Другими словами, число f равно фокусному расстоянию, делённому на диаметр отверстия. Это также означает, что большее f-число подразумевает либо меньшее отверстие, либо большее фокусное расстояние, либо и то, и другое. В свою очередь, это означает, что чем больше число f, тем дольше должна быть выдержка.", "id": 955953, "action_name": "搜索并替换", "url": "https://translate-dev.freebsd.org/api/changes/955953/?format=api" }, { "unit": null, "component": "https://translate-dev.freebsd.org/api/components/documentation/booksdevelopers-handbookx86_index/?format=api", "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksdevelopers-handbookx86_index/ru/?format=api", "user": null, "author": null, "timestamp": "2026-05-18T04:45:04.328772Z", "action": 17, "target": "", "id": 956016, "action_name": "提交了更改", "url": "https://translate-dev.freebsd.org/api/changes/956016/?format=api" } ] }