Speeding up the FreeBSD boot process
Student: IsaacCiliaAttard icattard@freebsd.org
Mentor: ColinPercival cperciva@freebsd.org
Description
Using the TSLOG framework, and flamecharts, the objective of this project is to discover, and alleviate any unnecessary, or inefficient processes taking place during the boot process. Some examples of major time-wasters in FreeBSD include the device event management daemon /sbin/devd (especially on aarch64), and dhclient which is responsible for soliciting an IP address from a network's DHCP server.
Deliverables
To prove that the boot process is being sped up, flamecharts are produced, and used to measure the time reductions. This follows patches to the operating system that make the profiling of boot hotspots more verbose, as well as patches to speed up the boot process itself.
Test Plan
In conjunction with the previous paragraph, before, and after flamecharts are used to see the difference made by the changes. To verify that everything works smoothly, the software patches are trialled, and liason is made between the student, mentor, and relevant code owners to see that there are no conflicts with other parts of the system. This usually takes place via a combination of email, and Phabricator revisions.