GSOC 2013 project " Kernel Size Reduction for Embedded System "

Joshua Isom jrisom at gmail.com
Tue Apr 9 21:18:09 UTC 2013


On 4/9/2013 1:47 PM, Edward Tomasz Napierała wrote:
> In order to optimize - in this case for size - we need a way to measure
> what should we focus on, and it looks like we don't have it yet.
>
> Would it be possible to write a tool - e.g. by instrumenting LLVM - that
> would make it possible to calculate, for every function in the call graph,
> the amount of code in that function and everything it "pulls in", i.e. all
> the code paths that it might call.  When we have that, clustering the graph
> should give us some idea what to focus on.
>
> Or perhaps such a tool already exists?
>

Would clang's LTO help for size?  I know work's starting on the bsd 
elftools ld, but I doubt it has any LTO support yet.  Running -Os on the 
kernel as a whole instead of object files could probably help a lot 
also.  I might try to set it up and see a size comparision.

Also, what about the userland?  Linux got popular for embedded partly 
for busybox and uclibc.  If Linux didn't exist, someone would have 
ported minix instead.


More information about the freebsd-hackers mailing list