Pie-in-the-sky project: running Mach-O binaries
authorftigeot <ftigeot@web>
Thu, 21 Feb 2013 09:58:31 +0000 (01:58 -0800)
committerCharlie Root <root@leaf.dragonflybsd.org>
Thu, 21 Feb 2013 09:58:31 +0000 (01:58 -0800)
docs/developer/gsocprojectspage/index.mdwn

index 68add2f..eb3491e 100644 (file)
@@ -272,17 +272,6 @@ Meta information:
 * Contact point: kernel@crater.dragonflybsd.org, Aggelos Economopoulos <aoiko@cc.ece.ntua.gr>
 
 ---
-
-#####Ability to execute Mach-O (OS X) binaries
-This is a project for a student with something to prove, executing a binary touches a huge number of moving parts of a modern kernel. This project would entail adding or porting support for Mach-O binaries to the DragonFly BSD kernel. It would also involve adding an additional system call vector, like the Linux vector used for linux binary emulation. This is quite a large and complicated task and any proposal will be expected to be well-researched to reflect that. The ability to execute non-GUI binaries that make use of shared libraries should be the minimum to which such a project should aspire. OpenDarwin is available as a reference or to port relevant code from.
-
-Meta information:
-
-* Prerequisites: C, OS internals, binary file formats
-* Difficulty: Hard
-* Contact point: Samuel J. Greear <sjg@thesjg.com>
-
----
 ##### nmalloc (libc malloc) measurements and performance work
 
 nmalloc is our libc memory allocator it is a slab-like allocator; it recently had some work done to add per-thread caches, but there is much more work that could be done. A project on this might characterize fragmentation, try out a number of techniques to improve per-thread caching and reduce the number of total syscalls, and see if any are worth applying.
@@ -411,7 +400,7 @@ Meta information:
  (please add)
 
 
-#### Old not-so-useful project ideas, don't look here
+### Old not-so-useful project ideas, don't look here
 
 ##### Implement i386 32-bit ABI for x86_64 64-bit kernel
 * Add a 32-bit syscall table which translates 32-bit
@@ -434,7 +423,7 @@ Usefullness:
 DragonFly/x86_64 has been available for a few years, and is now
 the most used DragonFly architecture.
 There has never been an obvious need to use i386 DragonFly binaries
-with it, all available DragonFly/i386 software can be rebuilt from source code.
+with it, all available DragonFly/i386 software can be rebuilt from source code. (comment added on 2013-02-21)
 
 ---
 
@@ -452,6 +441,19 @@ Usefulness:
 A new dports/pkg packaging system based on FreeBSD ports and pkgng has
 been implemented and is far superior to pkgsrc for all practical purposes.
 Pkgsrc may not be the best base to start such a project and the time
-needed to implement it will be far greater than the regular GSoc timeframe. More like one year than two months.
+needed to implement it will be far greater than the regular GSoc timeframe. More like one year than two months. (comment added on 2013-02-21)
 
 ---
+#####Ability to execute Mach-O (OS X) binaries
+This is a project for a student with something to prove, executing a binary touches a huge number of moving parts of a modern kernel. This project would entail adding or porting support for Mach-O binaries to the DragonFly BSD kernel. It would also involve adding an additional system call vector, like the Linux vector used for linux binary emulation. This is quite a large and complicated task and any proposal will be expected to be well-researched to reflect that. The ability to execute non-GUI binaries that make use of shared libraries should be the minimum to which such a project should aspire. OpenDarwin is available as a reference or to port relevant code from.
+
+Meta information:
+
+* Prerequisites: C, OS internals, binary file formats
+* Difficulty: Hard
+* Contact point: Samuel J. Greear <sjg@thesjg.com>
+
+Usefullness:
+This project will only allow us to execute a few command-line utilities, most of which are already present in all Unix like systems.
+Beeing able to run Mac-OSX graphical applications will be a multi-year undertaking on top of it. Wine has been trying to reimplement Microsoft Windows APIs for 20 years already. (comment added on 2013-02-21)
+---