Translation components API.

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

GET /api/translations/documentation/articleslinux-emulation_index/nl_NL/units/?format=api
HTTP 200 OK
Allow: GET, POST, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "count": 396,
    "next": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/units/?format=api&page=2",
    "previous": null,
    "results": [
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Linux® emulation in FreeBSD"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 2103488643743633124,
            "content_hash": 2103488643743633124,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:1",
            "context": "",
            "note": "type: YAML Front Matter: title",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 2,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 4,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380023/?format=api",
            "priority": 100,
            "id": 813288,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=9d3117c6d7684ee4",
            "url": "https://translate-dev.freebsd.org/api/units/813288/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.577000Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Linux(R) emulation in FreeBSD"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 7138517553758810544,
            "content_hash": 7138517553758810544,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:11",
            "context": "",
            "note": "type: Title =",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 3,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 4,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380025/?format=api",
            "priority": 100,
            "id": 813293,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=e3111be4c6af31b0",
            "url": "https://translate-dev.freebsd.org/api/units/813293/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.594945Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Abstract"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 2824600030541811663,
            "content_hash": 2824600030541811663,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:44",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 4,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380027/?format=api",
            "priority": 100,
            "id": 813297,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=a732fec32d008fcf",
            "url": "https://translate-dev.freebsd.org/api/units/813297/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.607215Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "This masters thesis deals with updating the Linux(R) emulation layer (the so called _Linuxulator_).  The task was to update the layer to match the functionality of Linux(R) 2.6.  As a reference implementation, the Linux(R) 2.6.16 kernel was chosen.  The concept is loosely based on the NetBSD implementation.  Most of the work was done in the summer of 2006 as a part of the Google Summer of Code students program.  The focus was on bringing the _NPTL_ (new POSIX(R) thread library) support into the emulation layer, including _TLS_ (thread local storage), _futexes_ (fast user space mutexes), _PID mangling_, and some other minor things.  Many small problems were identified and fixed in the process.  My work was integrated into the main FreeBSD source repository and will be shipped in the upcoming 7.0R release.  We, the emulation development team, are working on making the Linux(R) 2.6 emulation the default emulation layer in FreeBSD."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 8527189572267659825,
            "content_hash": 8527189572267659825,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:54",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 5,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 150,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612257/?format=api",
            "priority": 100,
            "id": 813300,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=f656a9bcab6dd231",
            "url": "https://translate-dev.freebsd.org/api/units/813300/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.616376Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "'''"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2596281593872070506,
            "content_hash": -2596281593872070506,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:56",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 6,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": true,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380031/?format=api",
            "priority": 100,
            "id": 813305,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=5bf827a5645ec896",
            "url": "https://translate-dev.freebsd.org/api/units/813305/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.633411Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Introduction"
            ],
            "previous_source": "",
            "target": [
                "Introductie"
            ],
            "id_hash": 5330140601372690748,
            "content_hash": 5330140601372690748,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:60",
            "context": "",
            "note": "type: Title ==",
            "flags": "no-wrap",
            "labels": [],
            "state": 20,
            "fuzzy": false,
            "translated": true,
            "approved": false,
            "position": 7,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380033/?format=api",
            "priority": 100,
            "id": 813309,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=c9f876a2fbb4c93c",
            "url": "https://translate-dev.freebsd.org/api/units/813309/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.642844Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "In the last few years the open source UNIX(R) based operating systems started to be widely deployed on server and client machines.  Among these operating systems I would like to point out two: FreeBSD, for its BSD heritage, time proven code base and many interesting features and Linux(R) for its wide user base, enthusiastic open developer community and support from large companies.  FreeBSD tends to be used on server class machines serving heavy duty networking tasks with less usage on desktop class machines for ordinary users.  While Linux(R) has the same usage on servers, but it is used much more by home based users.  This leads to a situation where there are many binary only programs available for Linux(R) that lack support for FreeBSD."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -4596987956739000755,
            "content_hash": -4596987956739000755,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:67",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 8,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 124,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612259/?format=api",
            "priority": 100,
            "id": 813310,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=403437cf29d2b64d",
            "url": "https://translate-dev.freebsd.org/api/units/813310/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.652915Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Naturally, a need for the ability to run Linux(R) binaries on a FreeBSD system arises and this is what this thesis deals with: the emulation of the Linux(R) kernel in the FreeBSD operating system."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -4758284540674849953,
            "content_hash": -4758284540674849953,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:69",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 9,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 34,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380037/?format=api",
            "priority": 100,
            "id": 813312,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=3df72d6bb4d7c35f",
            "url": "https://translate-dev.freebsd.org/api/units/813312/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.662617Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "During the Summer of 2006 Google Inc. sponsored a project which focused on extending the Linux(R) emulation layer (the so called Linuxulator) in FreeBSD to include Linux(R) 2.6 facilities.  This thesis is written as a part of this project."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -126713639620230720,
            "content_hash": -126713639620230720,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:72",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 10,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 39,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612261/?format=api",
            "priority": 100,
            "id": 813313,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=7e3dd29dba3d41c0",
            "url": "https://translate-dev.freebsd.org/api/units/813313/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.670613Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "A look inside..."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 4359652975199235239,
            "content_hash": 4359652975199235239,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:74",
            "context": "",
            "note": "type: Title ==",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 11,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 3,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380041/?format=api",
            "priority": 100,
            "id": 813316,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=bc80994852b9aca7",
            "url": "https://translate-dev.freebsd.org/api/units/813316/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.678146Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "In this section we are going to describe every operating system in question.  How they deal with syscalls, trapframes etc., all the low-level stuff.  We also describe the way they understand common UNIX(R) primitives like what a PID is, what a thread is, etc.  In the third subsection we talk about how UNIX(R) on UNIX(R) emulation could be done in general."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2729644439819379676,
            "content_hash": -2729644439819379676,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:80",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 12,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 61,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612263/?format=api",
            "priority": 100,
            "id": 813318,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=5a1e5ad821721c24",
            "url": "https://translate-dev.freebsd.org/api/units/813318/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.686183Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "What is UNIX(R)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2604235971850641357,
            "content_hash": -2604235971850641357,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:82",
            "context": "",
            "note": "type: Title ===",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 13,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 3,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380045/?format=api",
            "priority": 100,
            "id": 813322,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=5bdbe52e728c6033",
            "url": "https://translate-dev.freebsd.org/api/units/813322/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.719386Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "UNIX(R) is an operating system with a long history that has influenced almost every other operating system currently in use.  Starting in the 1960s, its development continues to this day (although in different projects).  UNIX(R) development soon forked into two main ways: the BSDs and System III/V families.  They mutually influenced themselves by growing a common UNIX(R) standard.  Among the contributions originated in BSD we can name virtual memory, TCP/IP networking, FFS, and many others.  The System V branch contributed to SysV interprocess communication primitives, copy-on-write, etc.  UNIX(R) itself does not exist any more but its ideas have been used by many other operating systems world wide thus forming the so called UNIX(R)-like operating systems.  These days the most influential ones are Linux(R), Solaris, and possibly (to some extent) FreeBSD.  There are in-company UNIX(R) derivatives (AIX, HP-UX etc.), but these have been more and more migrated to the aforementioned systems.  Let us summarize typical UNIX(R) characteristics."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -602307929982195972,
            "content_hash": -602307929982195972,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:94",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 14,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 156,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612265/?format=api",
            "priority": 100,
            "id": 813324,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=77a42c20fc02a6fc",
            "url": "https://translate-dev.freebsd.org/api/units/813324/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.742999Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Technical details"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -1341456609977217505,
            "content_hash": -1341456609977217505,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:96, documentation/content/en/articles/linux-emulation/_index.adoc:187, documentation/content/en/articles/linux-emulation/_index.adoc:279",
            "context": "",
            "note": "type: Title ====",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 15,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380049/?format=api",
            "priority": 100,
            "id": 813327,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=6d62305210b54e1f",
            "url": "https://translate-dev.freebsd.org/api/units/813327/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.775834Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Every running program constitutes a process that represents a state of the computation.  Running process is divided between kernel-space and user-space.  Some operations can be done only from kernel space (dealing with hardware etc.), but the process should spend most of its lifetime in the user space.  The kernel is where the management of the processes, hardware, and low-level details take place.  The kernel provides a standard unified UNIX(R) API to the user space.  The most important ones are covered below."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -3441924638121057275,
            "content_hash": -3441924638121057275,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:104",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 16,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 81,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612267/?format=api",
            "priority": 100,
            "id": 813331,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=503bd3c719212405",
            "url": "https://translate-dev.freebsd.org/api/units/813331/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.837728Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Communication between kernel and user space process"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5181308285011438034,
            "content_hash": 5181308285011438034,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:106",
            "context": "",
            "note": "type: Title ====",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 17,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 7,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380053/?format=api",
            "priority": 100,
            "id": 813334,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=c7e7b46ef7e529d2",
            "url": "https://translate-dev.freebsd.org/api/units/813334/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.897083Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Another possible way to communicate is by using a _trap_.  Traps occur asynchronously after some event occurs (division by zero, page fault etc.).  A trap can be transparent for a process (page fault) or can result in a reaction like sending a _signal_ (division by zero)."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -7682282805283912076,
            "content_hash": -7682282805283912076,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:118",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 19,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 46,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612271/?format=api",
            "priority": 100,
            "id": 813340,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=15630c7db6f60674",
            "url": "https://translate-dev.freebsd.org/api/units/813340/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.961196Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Communication between processes"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 4324812823228854053,
            "content_hash": 4324812823228854053,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:120",
            "context": "",
            "note": "type: Title ====",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 20,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 3,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380059/?format=api",
            "priority": 100,
            "id": 813345,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=bc04d259509c2f25",
            "url": "https://translate-dev.freebsd.org/api/units/813345/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:54.985733Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "There are other APIs (System V IPC, shared memory etc.) but the single most important API is signal.  Signals are sent by processes or by the kernel and received by processes.  Some signals can be ignored or handled by a user supplied routine, some result in a predefined action that cannot be altered or ignored."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 9069599338179316095,
            "content_hash": 9069599338179316095,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:125",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 21,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 55,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612273/?format=api",
            "priority": 100,
            "id": 813347,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=fdddb08b974bc97f",
            "url": "https://translate-dev.freebsd.org/api/units/813347/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.028777Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Process management"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5414074067824908380,
            "content_hash": 5414074067824908380,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:127",
            "context": "",
            "note": "type: Title ====",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 22,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380063/?format=api",
            "priority": 100,
            "id": 813352,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=cb22a7ae005b985c",
            "url": "https://translate-dev.freebsd.org/api/units/813352/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.071965Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Kernel instances are processed first in the system (so called init).  Every running process can create its identical copy using the man:fork[2] syscall.  Some slightly modified versions of this syscall were introduced but the basic semantic is the same.  Every running process can morph into some other process using the man:exec[3] syscall.  Some modifications of this syscall were introduced but all serve the same basic purpose.  Processes end their lives by calling the man:exit[2] syscall.  Every process is identified by a unique number called PID.  Every process has a defined parent (identified by its PID)."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 1606265605723905817,
            "content_hash": 1606265605723905817,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:137",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 23,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 95,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612275/?format=api",
            "priority": 100,
            "id": 813360,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=964a9a0edc19df19",
            "url": "https://translate-dev.freebsd.org/api/units/813360/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.129218Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Thread management"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -4825862437192624557,
            "content_hash": -4825862437192624557,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:139",
            "context": "",
            "note": "type: Title ====",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 24,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380067/?format=api",
            "priority": 100,
            "id": 813362,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=3d0717ae903b9653",
            "url": "https://translate-dev.freebsd.org/api/units/813362/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.145763Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Traditional UNIX(R) does not define any API nor implementation for threading, while POSIX(R) defines its threading API but the implementation is undefined.  Traditionally there were two ways of implementing threads.  Handling them as separate processes (1:1 threading) or envelope the whole thread group in one process and managing the threading in userspace (1:N threading).  Comparing main features of each approach:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -5132917243262938659,
            "content_hash": -5132917243262938659,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:145",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 25,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 60,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612277/?format=api",
            "priority": 100,
            "id": 813364,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=38c436f66dd5d1dd",
            "url": "https://translate-dev.freebsd.org/api/units/813364/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.155193Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "1:1 threading"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5617689692638879167,
            "content_hash": 5617689692638879167,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:147",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 26,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380071/?format=api",
            "priority": 100,
            "id": 813371,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=cdf60b02fc1d1dbf",
            "url": "https://translate-dev.freebsd.org/api/units/813371/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.195987Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "1:N threading"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 7501043793354372215,
            "content_hash": 7501043793354372215,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:154",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 31,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380081/?format=api",
            "priority": 100,
            "id": 813387,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=e8190f967b893477",
            "url": "https://translate-dev.freebsd.org/api/units/813387/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.308515Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "What is FreeBSD?"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -660438179071643190,
            "content_hash": -660438179071643190,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:161",
            "context": "",
            "note": "type: Title ===",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 36,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 3,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380091/?format=api",
            "priority": 100,
            "id": 813405,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=76d5a6f9ac5431ca",
            "url": "https://translate-dev.freebsd.org/api/units/813405/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.506673Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "The FreeBSD project is one of the oldest open source operating systems currently available for daily use.  It is a direct descendant of the genuine UNIX(R) so it could be claimed that it is a true UNIX(R) although licensing issues do not permit that.  The start of the project dates back to the early 1990's when a crew of fellow BSD users patched the 386BSD operating system.  Based on this patchkit a new operating system arose named FreeBSD for its liberal license.  Another group created the NetBSD operating system with different goals in mind.  We will focus on FreeBSD."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -6113811131956155234,
            "content_hash": -6113811131956155234,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:169",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 37,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 99,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612279/?format=api",
            "priority": 100,
            "id": 813410,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=2b27612af7ecac9e",
            "url": "https://translate-dev.freebsd.org/api/units/813410/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.564729Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "FreeBSD is a modern UNIX(R)-based operating system with all the features of UNIX(R).  Preemptive multitasking, multiuser facilities, TCP/IP networking, memory protection, symmetric multiprocessing support, virtual memory with merged VM and buffer cache, they are all there.  One of the interesting and extremely useful features is the ability to emulate other UNIX(R)-like operating systems.  As of December 2006 and 7-CURRENT development, the following emulation functionalities are supported:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 620774825368862150,
            "content_hash": 620774825368862150,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:174",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 38,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 66,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612281/?format=api",
            "priority": 100,
            "id": 813414,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=889d6f6a279dbdc6",
            "url": "https://translate-dev.freebsd.org/api/units/813414/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.583122Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "FreeBSD/i386 emulation on FreeBSD/amd64"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 7315226774681503910,
            "content_hash": 7315226774681503910,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:176",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 39,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 4,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380097/?format=api",
            "priority": 100,
            "id": 813415,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=e584e7fe6c5148a6",
            "url": "https://translate-dev.freebsd.org/api/units/813415/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.600000Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "FreeBSD/i386 emulation on FreeBSD/ia64"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2034001191708274898,
            "content_hash": -2034001191708274898,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:177",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 40,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 4,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380099/?format=api",
            "priority": 100,
            "id": 813420,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=63c5c6b15781cf2e",
            "url": "https://translate-dev.freebsd.org/api/units/813420/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.620475Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Linux(R)-emulation of Linux(R) operating system on FreeBSD"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -6761725175303374511,
            "content_hash": -6761725175303374511,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:178",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 41,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 7,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380101/?format=api",
            "priority": 100,
            "id": 813422,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=222986c73939f951",
            "url": "https://translate-dev.freebsd.org/api/units/813422/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.639175Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "NDIS-emulation of Windows networking drivers interface"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -8993672698710728602,
            "content_hash": -8993672698710728602,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:179",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 42,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 6,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380103/?format=api",
            "priority": 100,
            "id": 813428,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=03300e54bf37e066",
            "url": "https://translate-dev.freebsd.org/api/units/813428/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.668668Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "NetBSD-emulation of NetBSD operating system"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -6979053153777657819,
            "content_hash": -6979053153777657819,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:180",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 43,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 5,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380105/?format=api",
            "priority": 100,
            "id": 813430,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=1f256c221c835825",
            "url": "https://translate-dev.freebsd.org/api/units/813430/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.678564Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "PECoff-support for PECoff FreeBSD executables"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 2756935115872095011,
            "content_hash": 2756935115872095011,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:181",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 44,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 5,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380107/?format=api",
            "priority": 100,
            "id": 813434,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=a64299e18a5b4b23",
            "url": "https://translate-dev.freebsd.org/api/units/813434/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.691968Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "SVR4-emulation of System V revision 4 UNIX(R)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -8366850587232051308,
            "content_hash": -8366850587232051308,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:182",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 45,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 7,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380109/?format=api",
            "priority": 100,
            "id": 813437,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=0be2f9b86b43df94",
            "url": "https://translate-dev.freebsd.org/api/units/813437/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.705386Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Actively developed emulations are the Linux(R) layer and various FreeBSD-on-FreeBSD layers.  Others are not supposed to work properly nor be usable these days."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 8662663437052173258,
            "content_hash": 8662663437052173258,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:185",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 46,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 23,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612283/?format=api",
            "priority": 100,
            "id": 813442,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=f837f67fce425bca",
            "url": "https://translate-dev.freebsd.org/api/units/813442/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.730157Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "FreeBSD is traditional flavor of UNIX(R) in the sense of dividing the run of processes into two halves: kernel space and user space run.  There are two types of process entry to the kernel: a syscall and a trap.  There is only one way to return.  In the subsequent sections we will describe the three gates to/from the kernel.  The whole description applies to the i386 architecture as the Linuxulator only exists there but the concept is similar on other architectures.  The information was taken from [1] and the source code."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2714987895310303803,
            "content_hash": -2714987895310303803,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:195",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 47,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 91,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612285/?format=api",
            "priority": 100,
            "id": 813448,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=5a526ce4d28b3dc5",
            "url": "https://translate-dev.freebsd.org/api/units/813448/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.747999Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "System entries"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2786336990685942823,
            "content_hash": -2786336990685942823,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:197",
            "context": "",
            "note": "type: Title =====",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 48,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380115/?format=api",
            "priority": 100,
            "id": 813455,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=5954f14505a22bd9",
            "url": "https://translate-dev.freebsd.org/api/units/813455/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.785080Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "FreeBSD has an abstraction called an execution class loader, which is a wedge into the man:execve[2] syscall.  This employs a structure `sysentvec`, which describes an executable ABI.  It contains things like errno translation table, signal translation table, various functions to serve syscall needs (stack fixup, coredumping, etc.).  Every ABI the FreeBSD kernel wants to support must define this structure, as it is used later in the syscall processing code and at some other places.  System entries are handled by trap handlers, where we can access both the kernel-space and the user-space at once."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -3263472685650188725,
            "content_hash": -3263472685650188725,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:204",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 49,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 93,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612287/?format=api",
            "priority": 100,
            "id": 813460,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=52b5d0e20da1664b",
            "url": "https://translate-dev.freebsd.org/api/units/813460/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.805343Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Syscalls"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 8592014269915054761,
            "content_hash": 8592014269915054761,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:206, documentation/content/en/articles/linux-emulation/_index.adoc:288",
            "context": "",
            "note": "type: Title =====",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 50,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380119/?format=api",
            "priority": 100,
            "id": 813465,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=f73cf774bf5fc2a9",
            "url": "https://translate-dev.freebsd.org/api/units/813465/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.837802Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Syscalls on FreeBSD are issued by executing interrupt `0x80` with register `%eax` set to a desired syscall number with arguments passed on the stack."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -3151736875778316283,
            "content_hash": -3151736875778316283,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:209",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 51,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 24,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380121/?format=api",
            "priority": 100,
            "id": 813471,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=5442c80295bbe805",
            "url": "https://translate-dev.freebsd.org/api/units/813471/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.882617Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "When a process issues an interrupt `0x80`, the `int0x80` syscall trap handler is issued (defined in [.filename]#sys/i386/i386/exception.s#), which prepares arguments (i.e. copies them on to the stack) for a call to a C function man:syscall[2] (defined in [.filename]#sys/i386/i386/trap.c#), which processes the passed in trapframe.  The processing consists of preparing the syscall (depending on the `sysvec` entry), determining if the syscall is 32-bit or 64-bit one (changes size of the parameters), then the parameters are copied, including the syscall.  Next, the actual syscall function is executed with processing of the return code (special cases for `ERESTART` and `EJUSTRETURN` errors).  Finally an `userret()` is scheduled, switching the process back to the users-pace.  The parameters to the actual syscall handler are passed in the form of `struct thread *td`, `struct syscall args *` arguments where the second parameter is a pointer to the copied in structure of parameters."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5984599612387906091,
            "content_hash": 5984599612387906091,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:215",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 52,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 145,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612289/?format=api",
            "priority": 100,
            "id": 813473,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=d30d91a3c352522b",
            "url": "https://translate-dev.freebsd.org/api/units/813473/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.922066Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Traps"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -239372498580362847,
            "content_hash": -239372498580362847,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:217, documentation/content/en/articles/linux-emulation/_index.adoc:307, documentation/content/en/articles/linux-emulation/_index.adoc:794",
            "context": "",
            "note": "type: Title ===",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 53,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380125/?format=api",
            "priority": 100,
            "id": 813475,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=7cad93fb151ea9a1",
            "url": "https://translate-dev.freebsd.org/api/units/813475/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.935741Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Handling of traps in FreeBSD is similar to the handling of syscalls.  Whenever a trap occurs, an assembler handler is called.  It is chosen between alltraps, alltraps with regs pushed or calltrap depending on the type of the trap.  This handler prepares arguments for a call to a C function `trap()` (defined in [.filename]#sys/i386/i386/trap.c#), which then processes the occurred trap.  After the processing it might send a signal to the process and/or exit to userland using `userret()`."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -634270051511562576,
            "content_hash": -634270051511562576,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:224",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 54,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 77,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612291/?format=api",
            "priority": 100,
            "id": 813477,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=77329ebfa7fc0eb0",
            "url": "https://translate-dev.freebsd.org/api/units/813477/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.944132Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Exits"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 2212625586036277245,
            "content_hash": 2212625586036277245,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:226, documentation/content/en/articles/linux-emulation/_index.adoc:312",
            "context": "",
            "note": "type: Title =====",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 55,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380129/?format=api",
            "priority": 100,
            "id": 813481,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=9eb4d33f5ca1fffd",
            "url": "https://translate-dev.freebsd.org/api/units/813481/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.960424Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "Exits from kernel to userspace happen using the assembler routine `doreti` regardless of whether the kernel was entered via a trap or via a syscall.  This restores the program status from the stack and returns to the userspace."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -3015966001778263497,
            "content_hash": -3015966001778263497,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:230",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 56,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 38,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612293/?format=api",
            "priority": 100,
            "id": 813486,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=562522e69159fa37",
            "url": "https://translate-dev.freebsd.org/api/units/813486/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:55.982370Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "UNIX(R) primitives"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 7566178850446782466,
            "content_hash": 7566178850446782466,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:232, documentation/content/en/articles/linux-emulation/_index.adoc:318",
            "context": "",
            "note": "type: Title =====",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 57,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://translate-dev.freebsd.org/api/units/380133/?format=api",
            "priority": 100,
            "id": 813493,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=e9007793bff43002",
            "url": "https://translate-dev.freebsd.org/api/units/813493/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:56.054420Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "FreeBSD operating system adheres to the traditional UNIX(R) scheme, where every process has a unique identification number, the so called _PID_ (Process ID).  PID numbers are allocated either linearly or randomly ranging from `0` to `PID_MAX`.  The allocation of PID numbers is done using linear searching of PID space.  Every thread in a process receives the same PID number as result of the man:getpid[2] call."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -6887171304896814664,
            "content_hash": -6887171304896814664,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:238",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 58,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 65,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612295/?format=api",
            "priority": 100,
            "id": 813497,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=206bda30205ca1b8",
            "url": "https://translate-dev.freebsd.org/api/units/813497/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:56.072556Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "There are currently two ways to implement threading in FreeBSD.  The first way is M:N threading followed by the 1:1 threading model.  The default library used is M:N threading (`libpthread`) and you can switch at runtime to 1:1 threading (`libthr`).  The plan is to switch to 1:1 library by default soon.  Although those two libraries use the same kernel primitives, they are accessed through different API(es).  The M:N library uses the `kse_*` family of syscalls while the 1:1 library uses the `thr_*` family of syscalls.  Due to this, there is no general concept of thread ID shared between kernel and userspace.  Of course, both threading libraries implement the pthread thread ID API.  Every kernel thread (as described by `struct thread`) has td tid identifier but this is not directly accessible from userland and solely serves the kernel's needs.  It is also used for 1:1 threading library as pthread's thread ID but handling of this is internal to the library and cannot be relied on."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 3733229727299414720,
            "content_hash": 3733229727299414720,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:249",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 59,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 164,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612297/?format=api",
            "priority": 100,
            "id": 813502,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=b3cf18a8509c2ac0",
            "url": "https://translate-dev.freebsd.org/api/units/813502/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:56.090793Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articleslinux-emulation_index/nl_NL/?format=api",
            "source": [
                "As stated previously there are two implementations of threading in FreeBSD.  The M:N library divides the work between kernel space and userspace.  Thread is an entity that gets scheduled in the kernel but it can represent various number of userspace threads.  M userspace threads get mapped to N kernel threads thus saving resources while keeping the ability to exploit multiprocessor parallelism.  Further information about the implementation can be obtained from the man page or [1].  The 1:1 library directly maps a userland thread to a kernel thread thus greatly simplifying the scheme.  None of these designs implement a fairness mechanism (such a mechanism was implemented but it was removed recently because it caused serious slowdown and made the code more difficult to deal with)."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 7379365526656517244,
            "content_hash": 7379365526656517244,
            "location": "documentation/content/en/articles/linux-emulation/_index.adoc:257",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 60,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 124,
            "source_unit": "https://translate-dev.freebsd.org/api/units/612299/?format=api",
            "priority": 100,
            "id": 813506,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/articleslinux-emulation_index/nl_NL/?checksum=e668c5d95420047c",
            "url": "https://translate-dev.freebsd.org/api/units/813506/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-04-04T22:28:56.108913Z"
        }
    ]
}