{"translation":"https://translate-dev.freebsd.org/api/translations/freebsd-doc/articles_linux-emulation/en/?format=json","source":["In the 2.6 version, the <trademark class=\"registered\">Linux</trademark> operating system redefined some of the traditional <trademark class=\"registered\">UNIX</trademark> primitives, notably PID, TID and thread. PID is defined not to be unique for every process, so for some processes (threads) <citerefentry><refentrytitle>getppid</refentrytitle><manvolnum>2</manvolnum></citerefentry> returns the same value. Unique identification of process is provided by TID. This is because <firstterm>NPTL</firstterm> (New <trademark class=\"registered\">POSIX</trademark> Thread Library) defines threads to be normal processes (so called 1:1 threading). Spawning a new process in <trademark class=\"registered\">Linux</trademark> 2.6 happens using the <literal>clone</literal> syscall (fork variants are reimplemented using it). This clone syscall defines a set of flags that affect behavior of the cloning process regarding thread implementation. The semantic is a bit fuzzy as there is no single flag telling the syscall to create a thread."],"previous_source":"","target":["In the 2.6 version, the <trademark class=\"registered\">Linux</trademark> operating system redefined some of the traditional <trademark class=\"registered\">UNIX</trademark> primitives, notably PID, TID and thread. PID is defined not to be unique for every process, so for some processes (threads) <citerefentry><refentrytitle>getppid</refentrytitle><manvolnum>2</manvolnum></citerefentry> returns the same value. Unique identification of process is provided by TID. This is because <firstterm>NPTL</firstterm> (New <trademark class=\"registered\">POSIX</trademark> Thread Library) defines threads to be normal processes (so called 1:1 threading). Spawning a new process in <trademark class=\"registered\">Linux</trademark> 2.6 happens using the <literal>clone</literal> syscall (fork variants are reimplemented using it). This clone syscall defines a set of flags that affect behavior of the cloning process regarding thread implementation. The semantic is a bit fuzzy as there is no single flag telling the syscall to create a thread."],"id_hash":5434135134896333711,"content_hash":5434135134896333711,"location":"article.translate.xml:571","context":"","note":"(itstool) path: sect4/para","flags":"","labels":[],"state":100,"fuzzy":false,"translated":true,"approved":false,"position":87,"has_suggestion":false,"has_comment":false,"has_failing_check":false,"num_words":125,"source_unit":"https://translate-dev.freebsd.org/api/units/157263/?format=json","priority":100,"id":157263,"web_url":"https://translate-dev.freebsd.org/translate/freebsd-doc/articles_linux-emulation/en/?checksum=cb69ed1d28f7238f","url":"https://translate-dev.freebsd.org/api/units/157263/?format=json","explanation":"","extra_flags":"","pending":false,"timestamp":"2020-04-18T18:14:55.316557Z"}