svn commit: r46183 - head/en_US.ISO8859-1/htdocs/news/status

Benjamin Kaduk <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.doc
Message-ID <[email protected]>
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>[email protected]</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>
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-doc-all
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.