Date: Sat, 10 Jan 2015 00:52:34 +0000 (UTC) From: Benjamin Kaduk <bjk@FreeBSD.org> To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r46183 - head/en_US.ISO8859-1/htdocs/news/status Message-ID: <201501100052.t0A0qY1N092745@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: bjk Date: Sat Jan 10 00:52:34 2015 New Revision: 46183 URL: https://svnweb.freebsd.org/changeset/doc/46183 Log: Add linuxulator Heavily edited by me and may have some content errors. Approved by: hrs (mentor, blanket) Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml ============================================================================== --- head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml Sat Jan 10 00:27:22 2015 (r46182) +++ head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml Sat Jan 10 00:52:34 2015 (r46183) @@ -1788,4 +1788,82 @@ </help> </project> + <project cat='kern'> + <title>Linux emulation layer a.k.a. Linuxulator</title> + + <contact> + <person> + <name> + <given>Dmitry</given> + <common>Chagin</common> + </name> + <email>dchagin@FreeBSD.org</email> + </person> + </contact> + + <body> + <p>The main goal of the lemul project is the execution of + multithreaded Linux applications, which requires the glibc library + version 2.20 or later to be available on &os;. Glibc 2.20 + requires a Linux kernel (or emulation thereof) of version 2.6.32 + or later. The main obstacle preventing this is that the current + Linuxulator uses native FreeBSD processes for emulating Linux + threads. This leads to several problems, including problems with + process reparenting and dethreading, <tt>wait()</tt> and signal + handling. It would be much better to reuse the FreeBSD kernel + code for thread management than to create a completely new + codebase for pseudothread management in the Linuxulator.</p> + + <p>At present, the linux emulation layer project has + implemented all of the necessary system calls for supporting glibc + 2.20, and more:</p> + + <ul> + <li>Using native threads for emulating Linux threads</li> + <li>Implemented VDSO support, including DWARF for signal + trampolines, which are needed for stack unwinding in + <tt>pthread_cancel()</tt></li> + <li>Implemented the "vsyscall hack", used by some + Linux-based distributions, including CentOS 6</li> + <li>Implemented the <tt>epoll()</tt> system call + emulation</li> + <li>Many bugs were fixed</li> + </ul> + + <p>The project's code is located in the FreeBSD Project's + Subversion repository, at <tt>base/user/dchagin/lemul</tt> (a + little bit old). To facilitate merging the improvements back to + head, several patches have been placed on reviews.FreeBSD.org with + the tag <tt>#lemul</tt>. Nearly half of the patches have already + been approved by &a.emaste; and &a.trasz;.</p> + </body> + + <help> + <task> + <p>Review and merge the lemul branch to head within the next + month or two.</p> + </task> + + <task> + <p>Implement native and Linuxulator <tt>inotify()</tt> + system calls.</p> + </task> + + <task> + <p>Implement the <tt>ptrace()</tt> system call for the x86_64 + Linuxulator.</p> + </task> + + <task> + <p>Implement the <tt>signalfd()</tt> and <tt>timerfd</tt> + system calls for the Linuxulator.</p> + </task> + + <task> + <p>Extend <tt>xucred</tt> support, which is required for + many Linux applications.</p> + </task> + </help> + </project> + </report>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201501100052.t0A0qY1N092745>