Translation components API.

See the Weblate's Web API documentation for detailed description of the API.

GET /api/components/documentation/booksarch-handbookusb_index/changes/?format=api&page=24
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "count": 1185,
    "next": null,
    "previous": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/changes/?format=api&page=23",
    "results": [
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/it_IT/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-08T17:02:03.546741Z",
            "action": 44,
            "target": "",
            "id": 900619,
            "action_name": "要翻译的新字符串",
            "url": "https://translate-dev.freebsd.org/api/changes/900619/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/ko/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-08T17:02:03.548848Z",
            "action": 44,
            "target": "",
            "id": 900620,
            "action_name": "要翻译的新字符串",
            "url": "https://translate-dev.freebsd.org/api/changes/900620/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/nb_NO/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-08T17:02:03.551104Z",
            "action": 44,
            "target": "",
            "id": 900621,
            "action_name": "要翻译的新字符串",
            "url": "https://translate-dev.freebsd.org/api/changes/900621/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/nl_NL/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-08T17:02:03.553420Z",
            "action": 44,
            "target": "",
            "id": 900622,
            "action_name": "要翻译的新字符串",
            "url": "https://translate-dev.freebsd.org/api/changes/900622/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/pl/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-08T17:02:03.556100Z",
            "action": 44,
            "target": "",
            "id": 900623,
            "action_name": "要翻译的新字符串",
            "url": "https://translate-dev.freebsd.org/api/changes/900623/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/pt/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-08T17:02:03.558406Z",
            "action": 44,
            "target": "",
            "id": 900624,
            "action_name": "要翻译的新字符串",
            "url": "https://translate-dev.freebsd.org/api/changes/900624/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/pt_BR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-08T17:02:03.560693Z",
            "action": 44,
            "target": "",
            "id": 900625,
            "action_name": "要翻译的新字符串",
            "url": "https://translate-dev.freebsd.org/api/changes/900625/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/ru/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-08T17:02:03.562912Z",
            "action": 44,
            "target": "",
            "id": 900626,
            "action_name": "要翻译的新字符串",
            "url": "https://translate-dev.freebsd.org/api/changes/900626/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/tr_TR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-08T17:02:03.565063Z",
            "action": 44,
            "target": "",
            "id": 900627,
            "action_name": "要翻译的新字符串",
            "url": "https://translate-dev.freebsd.org/api/changes/900627/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/zh_CN/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-08T17:02:03.567261Z",
            "action": 44,
            "target": "",
            "id": 900628,
            "action_name": "要翻译的新字符串",
            "url": "https://translate-dev.freebsd.org/api/changes/900628/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/zh_TW/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-08T17:02:03.569532Z",
            "action": 44,
            "target": "",
            "id": 900629,
            "action_name": "要翻译的新字符串",
            "url": "https://translate-dev.freebsd.org/api/changes/900629/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1829268/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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": "2025-11-10T15:55:25.563370Z",
            "action": 2,
            "target": "Универсальный интерфейс хост-контроллера (UHCI) Спецификация (link:ftp://ftp.netbsd.org/pub/NetBSD/misc/blymn/uhci11d.pdf[ftp://ftp.netbsd.org/pub/NetBSD/misc/blymn/uhci11d.pdf])",
            "id": 909805,
            "action_name": "修改了译文",
            "url": "https://translate-dev.freebsd.org/api/changes/909805/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/ru/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-11T04:45:00.456732Z",
            "action": 17,
            "target": "",
            "id": 909915,
            "action_name": "提交了更改",
            "url": "https://translate-dev.freebsd.org/api/changes/909915/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776794/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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": "2025-11-11T16:13:08.563920Z",
            "action": 27,
            "target": "Существует четыре различных типа конечных точек и соответствующих каналов: - Управляющий канал / канал по умолчанию: На каждое устройство приходится один управляющий канал, подключенный к конечной точке по умолчанию (конечная точка 0). Этот канал передаёт запросы устройства и связанные с ними данные. Разница между передачами через канал по умолчанию и другими каналами заключается в том, что протокол для этих передач описан в спецификации USB. Эти запросы используются для сброса и настройки устройства. Базовый набор команд, который должен поддерживаться каждым устройством, приведен в главе 9 спецификации USB. Команды, поддерживаемые на этом канале, могут быть расширены спецификацией класса устройства для обеспечения дополнительной функциональности.",
            "id": 910212,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/910212/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/ru/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-12T04:45:01.053469Z",
            "action": 17,
            "target": "",
            "id": 910405,
            "action_name": "提交了更改",
            "url": "https://translate-dev.freebsd.org/api/changes/910405/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776747/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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": "2025-11-20T20:18:22.480132Z",
            "action": 27,
            "target": "_Леннарт Аугустссон выполнил большую часть работы по реализации поддержки USB для проекта NetBSD. Огромная благодарность за этот невероятный объём работы. Также большое спасибо Арди и Дирку за их комментарии и вычитку этой статьи._",
            "id": 910877,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/910877/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776793/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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": "2025-11-20T20:18:22.493805Z",
            "action": 27,
            "target": "Иногда для устройства не является проблемой вернуть меньше данных, чем запрошено. Например, при передаче данных в режиме bulk-in на модем может быть запрошено 200 байт данных, но у модема в данный момент доступно только 5 байт. Драйвер может установить флаг короткого пакета (SPD). Это позволяет хост-контроллеру принять пакет, даже если объём переданных данных меньше запрошенного. Этот флаг действителен только для in-передач, так как объём данных, отправляемых на устройство, всегда известен заранее. Если во время передачи в устройстве происходит неустранимая ошибка, канал останавливается (stalled). Прежде чем принимать или отправлять дополнительные данные, драйвер должен устранить причину остановки и сбросить условие остановки конечной точки, отправив запрос `clear endpoint halt` через канал по умолчанию. Конечная точка по умолчанию никогда не должна останавливаться.",
            "id": 910878,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/910878/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/ru/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2025-11-21T04:45:00.776703Z",
            "action": 17,
            "target": "",
            "id": 911178,
            "action_name": "提交了更改",
            "url": "https://translate-dev.freebsd.org/api/changes/911178/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776770/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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-03-04T16:34:43.737980Z",
            "action": 27,
            "target": "Каждая передача состоит из одного или нескольких пакетов. Драйвер UHCI разделяет большие передачи на несколько пакетов. Для каждой передачи, за исключением изохронных, выделяется QH. Для каждого типа передачи эти QH собираются в QH для соответствующего типа. Изохронные передачи должны выполняться первыми из-за требования фиксированной задержки и непосредственно указываются указателем в списке кадров. Последний изохронный TD ссылается на QH для прерывающих передач для этого кадра. Все QH для прерывающих передач указывают на QH для управляющих передач, который, в свою очередь, указывает на QH для массовых передач. Следующая диаграмма даёт графическое представление этого:",
            "id": 931744,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/931744/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/ru/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2026-03-04T20:01:45.569829Z",
            "action": 17,
            "target": "",
            "id": 932180,
            "action_name": "提交了更改",
            "url": "https://translate-dev.freebsd.org/api/changes/932180/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776745/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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-03-08T07:50:16.041807Z",
            "action": 9,
            "target": "Введение",
            "id": 946809,
            "action_name": "上传了译文",
            "url": "https://translate-dev.freebsd.org/api/changes/946809/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776745/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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-03-08T07:51:13.775592Z",
            "action": 2,
            "target": "Введение",
            "id": 947077,
            "action_name": "修改了译文",
            "url": "https://translate-dev.freebsd.org/api/changes/947077/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/ru/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2026-03-08T09:11:11.983464Z",
            "action": 17,
            "target": "",
            "id": 947936,
            "action_name": "提交了更改",
            "url": "https://translate-dev.freebsd.org/api/changes/947936/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1129476/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/tr_TR/?format=api",
            "user": "https://translate-dev.freebsd.org/api/users/demirkolak/?format=api",
            "author": "https://translate-dev.freebsd.org/api/users/demirkolak/?format=api",
            "timestamp": "2026-03-29T15:37:57.946417Z",
            "action": 45,
            "target": "",
            "id": 950099,
            "action_name": "新贡献者",
            "url": "https://translate-dev.freebsd.org/api/changes/950099/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1129476/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/tr_TR/?format=api",
            "user": "https://translate-dev.freebsd.org/api/users/demirkolak/?format=api",
            "author": "https://translate-dev.freebsd.org/api/users/demirkolak/?format=api",
            "timestamp": "2026-03-29T15:37:57.946712Z",
            "action": 5,
            "target": "Giriş",
            "id": 950100,
            "action_name": "新译文",
            "url": "https://translate-dev.freebsd.org/api/changes/950100/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/tr_TR/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2026-03-30T03:11:22.971365Z",
            "action": 17,
            "target": "",
            "id": 950287,
            "action_name": "提交了更改",
            "url": "https://translate-dev.freebsd.org/api/changes/950287/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776794/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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.023651Z",
            "action": 27,
            "target": "Существует четыре различных типа конечных точек и соответствующих каналов: - Управляющий канал / канал по умолчанию: На каждое устройство приходится один управляющий канал, подключенный к конечной точке по умолчанию (конечная точка 0). Этот канал передаёт запросы устройства и связанные с ними данные. Разница между передачами через канал по умолчанию и другими каналами заключается в том, что протокол для этих передач описан в спецификации USB. Эти запросы используются для сброса и настройки устройства. Базовый набор команд, который должен поддерживаться каждым устройством, приведён в главе 9 спецификации USB. Команды, поддерживаемые на этом канале, могут быть расширены спецификацией класса устройства для обеспечения дополнительной функциональности.",
            "id": 955741,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/955741/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776771/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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:18:58.250347Z",
            "action": 27,
            "target": "В результате выполняется следующее расписание в каждом кадре. После получения указателя на текущий кадр из списка кадров контроллер сначала выполняет TDs для всех изохронных пакетов в этом кадре. Последний из этих TDs ссылается на QH для прерывающих передач этого кадра. Хост-контроллер затем переходит от этого QH к QHs для отдельных прерывающих передач. После завершения этой очереди, QH для прерывающих передач ссылается на QH для всех управляющих передач. Он выполняет все подочереди, запланированные там, а затем все передачи, поставленные в очередь в QH для массовых передач. Для упрощения обработки завершённых или неудачных передач аппаратное обеспечение генерирует различные типы прерываний в конце каждого кадра. В последнем TD для передачи бит *Interrupt-On Completion* устанавливается драйвером HC, чтобы вызвать прерывание по завершении передачи. Прерывание ошибки возникает, если TD достигает максимального количества ошибок. Если в TD установлен бит *short packet detect* и передано меньше установленной длины пакета, это прерывание уведомляет драйвер контроллера о завершении передачи. Задача драйвера хост-контроллера — определить, какая передача завершилась или вызвала ошибку. При вызове процедура обслуживания прерывания находит все завершённые передачи и вызывает их callback-функции.",
            "id": 955795,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/955795/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776774/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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:18:58.264472Z",
            "action": 27,
            "target": "Программирование OHCI-контроллера значительно проще. Контроллер предполагает, что доступен набор конечных точек, и учитывает приоритеты планирования и порядок типов передач в кадре. Основная структура данных, используемая хост-контроллером, — это дескриптор конечной точки (ED), к которому присоединена очередь дескрипторов передачи (TD). ED содержит максимальный размер пакета, разрешенный для конечной точки, а аппаратное обеспечение контроллера выполняет разделение на пакеты. Указатели на буферы данных обновляются после каждой передачи, и когда начальный и конечный указатели становятся равны, TD перемещается в очередь завершённых (done-queue). Четыре типа конечных точек (прерывание, изохронная, управление и массовая) имеют свои собственные очереди. Управляющие и массовые конечные точки помещаются каждая в свою очередь. ED прерываний организуются в дерево, где уровень в дереве определяет частоту их выполнения.",
            "id": 955796,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/955796/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776775/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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:18:58.277918Z",
            "action": 27,
            "target": "Порядок действий, выполняемых хост-контроллером в каждом кадре, выглядит следующим образом. Контроллер сначала запускает непериодические очереди управления и массовых передач, вплоть до ограничения времени, установленного драйвером HC. Затем выполняются прерывающие передачи для данного номера кадра, используя младшие пять битов номера кадра в качестве индекса уровня 0 дерева ED прерываний. В конце этого дерева подключены изохронные ED, которые затем обходятся. Изохронные TD содержат номер кадра, в котором должна быть запущена первая передача. После выполнения всех периодических передач очереди управления и массовых передач обходятся снова. Периодически вызывается процедура обслуживания прерывания для обработки очереди завершённых операций и вызова обратных вызовов для каждой передачи, а также для перепланирования прерывающих и изохронных конечных точек.",
            "id": 955797,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/955797/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776754/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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:26.822945Z",
            "action": 27,
            "target": "Разработка драйверов для подсистемы USB и подключённых к ней устройств поддерживается спецификациями, которые были разработаны и будут разрабатываться. Эти спецификации общедоступны на домашних страницах USB. Apple активно продвигает стандартизированные драйверы, предоставляя драйверы для универсальных классов в своей операционной системе MacOS и не поощряя использование отдельных драйверов для каждого нового устройства. Эта глава пытается собрать основную информацию для базового понимания реализации стека USB 2.0 в FreeBSD/NetBSD. Однако рекомендуется читать её вместе с соответствующими спецификациями 2.0 и другими ресурсами для разработчиков:",
            "id": 955812,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/955812/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776794/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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:26.836882Z",
            "action": 27,
            "target": "Существует четыре различных типа конечных точек и соответствующих каналов: - Управляющий канал / канал по умолчанию: На каждое устройство приходится один управляющий канал, подключённый к конечной точке по умолчанию (конечная точка 0). Этот канал передаёт запросы устройства и связанные с ними данные. Разница между передачами через канал по умолчанию и другими каналами заключается в том, что протокол для этих передач описан в спецификации USB. Эти запросы используются для сброса и настройки устройства. Базовый набор команд, который должен поддерживаться каждым устройством, приведён в главе 9 спецификации USB. Команды, поддерживаемые на этом канале, могут быть расширены спецификацией класса устройства для обеспечения дополнительной функциональности.",
            "id": 955813,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/955813/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776802/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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:26.849934Z",
            "action": 27,
            "target": "Поиск драйвера для нового подключённого устройства сначала проверяет наличие специфичных для устройства драйверов. Если они не найдены, код проверки перебирает все поддерживаемые конфигурации, пока драйвер не будет подключен в одной из них. Для поддержки устройств с несколькими драйверами на разных интерфейсах проверка перебирает все интерфейсы в конфигурации, которые ещё не были заняты драйвером. Конфигурации, превышающие выделенный бюджет мощности для концентратора, игнорируются. Во время подключения драйвер должен инициализировать устройство в его рабочее состояние, но не сбрасывать его, так как это приведёт к отключению устройства от шины и перезапуску процесса проверки. Чтобы избежать излишнего потребления пропускной способности, не следует запрашивать канал прерывания во время подключения, а отложить его выделение до момента открытия файла и фактического использования данных. При закрытии файла канал следует снова закрыть, даже если устройство остаётся подключённым.",
            "id": 955814,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/955814/?format=api"
        },
        {
            "unit": "https://translate-dev.freebsd.org/api/units/1776806/?format=api",
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_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:26.863269Z",
            "action": 27,
            "target": "Отключение устройства сигнализируется концентратором в пакете прерывания, передаваемом драйверу концентратора. Информация об изменении состояния указывает, на каком порту произошло изменение подключения. Метод отключения устройства для всех драйверов устройств, подключённых к этому порту, вызывается, и структуры очищаются. Если состояние порта указывает, что за это время к порту было подключено устройство, начнется процедура обнаружения и подключения устройства. Сброс устройства вызовет последовательность отключения-подключения на концентраторе и будет обработан, как описано выше.",
            "id": 955815,
            "action_name": "搜索并替换",
            "url": "https://translate-dev.freebsd.org/api/changes/955815/?format=api"
        },
        {
            "unit": null,
            "component": "https://translate-dev.freebsd.org/api/components/documentation/booksarch-handbookusb_index/?format=api",
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookusb_index/ru/?format=api",
            "user": null,
            "author": null,
            "timestamp": "2026-05-18T04:45:00.736080Z",
            "action": 17,
            "target": "",
            "id": 955978,
            "action_name": "提交了更改",
            "url": "https://translate-dev.freebsd.org/api/changes/955978/?format=api"
        }
    ]
}