Units API.

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

GET /api/units/1811517/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, DELETE, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesvm-design_index/ru/?format=api",
    "source": [
        "The page table optimizations make up the most contentious part of the FreeBSD VM design and they have shown some strain with the advent of serious use of `mmap()`.  I think this is actually a feature of most BSDs though I am not sure when it was first introduced.  There are two major optimizations.  The first is that hardware page tables do not contain persistent state but instead can be thrown away at any time with only a minor amount of management overhead.  The second is that every active page table entry in the system has a governing `pv_entry` structure which is tied into the `vm_page` structure.  FreeBSD can simply iterate through those mappings that are known to exist while Linux must check all page tables that _might_ contain a specific mapping to see if it does, which can achieve O(n^2) overhead in certain situations.  It is because of this that FreeBSD tends to make better choices on which pages to reuse or swap when memory is stressed, giving it better performance under load.  However, FreeBSD requires kernel tuning to accommodate large-shared-address-space situations such as those that can occur in a news system because it may run out of `pv_entry` structures."
    ],
    "previous_source": "",
    "target": [
        "Оптимизация таблицы страниц составляет самую содержательную часть архитектуры VM во FreeBSD и она проявляется при появлении нагрузки при значительном использовании `mmap()`. Я думаю, что это на самом деле особенность работы большинства BSD-систем, хотя я не уверен, когда это проявилось впервые. Есть два основных подхода к оптимизации. Первый заключается в том, что аппаратные таблицы страниц не содержат постоянного состояния, а вместо этого могут быть сброшены в любой момент с малыми накладными расходами. Второй подход состоит в том, что каждая активная таблица страниц в системе имеет управляющую структуру `pv_entry`, которая связана в структуру `vm_page`. FreeBSD может просто просматривать эти отображения, которые существуют, когда как в Linux должны проверяться все таблицы страниц, которые _могут_ содержать нужное отображение, что в некоторых ситуация дает увеличение сложности O(n^2). Из-за того, что FreeBSD стремится выбрать наиболее подходящую к повторному использованию или сбросу в область подкачки страницу, когда ощущается нехватка памяти, система дает лучшую производительность при нагрузке. Однако во FreeBSD требуется тонкая настройка ядра для соответствия ситуациям с большим совместно используемым адресным пространством, которые могут случиться в системе, обслуживающей сервер телеконференций, потому что структуры `pv_entry` могут оказаться исчерпанными."
    ],
    "id_hash": -6307955811766454775,
    "content_hash": -6307955811766454775,
    "location": "documentation/content/en/articles/vm-design/_index.adoc:286",
    "context": "",
    "note": "type: Plain text",
    "flags": "",
    "labels": [],
    "state": 20,
    "fuzzy": false,
    "translated": true,
    "approved": false,
    "position": 59,
    "has_suggestion": false,
    "has_comment": false,
    "has_failing_check": false,
    "num_words": 201,
    "source_unit": "https://translate-dev.freebsd.org/api/units/615421/?format=api",
    "priority": 100,
    "id": 1811517,
    "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesvm-design_index/ru/?checksum=2875a39c34ccb609",
    "url": "https://translate-dev.freebsd.org/api/units/1811517/?format=api",
    "explanation": "",
    "extra_flags": "",
    "pending": false,
    "timestamp": "2025-05-25T08:24:32.483339Z"
}