File:  [NetBSD Developer Wiki] / wikisrc / projects / project / build-kernel-pie.mdwn
Revision 1.4: download - view: text, annotated - select for diffs
Mon Nov 27 09:23:47 2017 UTC (5 years ago) by maxv
Branches: MAIN
CVS tags: HEAD
I did it.

[[!template id=project

title="Build the kernel as PIE"


done_by="Maxime Villard"

Add a toolchain infrastructure that allows the kernel to be compiled as
Position Independent Executable (PIE). Typically, having the kernel compiled
as a kernel module itself - using the already-existing infrastructure - would
be a good start. Then, some choices and proposals can be made to optimize
performance of the kernel binary at the instruction level.


* A set of Makefile changes that allow to build a PIE kernel at least on amd64
  and i386.
* If possible, an evaluation of the performance cost.

It may be a little difficult to test the implementation, because the kernel
won't boot. But as long as the kernel ELF binary is structurally correct it's


CVSweb for NetBSD wikisrc <> software: FreeBSD-CVSweb