When You Come to a Fork in the Road, Take It - Finding Configuration Constraints in Linux Kernel

When You Come to a Fork in the Road, Take It - Finding Configuration Constraints in Linux Kernel

Linux Foundation via YouTube Direct link

configuration localization is finding the inverse of the build process

11 of 20

11 of 20

configuration localization is finding the inverse of the build process

Class Central Classrooms beta

YouTube videos curated by Class Central.

Classroom Contents

When You Come to a Fork in the Road, Take It - Finding Configuration Constraints in Linux Kernel

Automatically move to the next video in the Classroom when playback concludes

  1. 1 Intro
  2. 2 the kernel has tons of configuration options
  3. 3 this configurability brings maintenance challenges
  4. 4 there are serious cases of unexpected interactions between configuration options
  5. 5 there are even more pernicious examples of bad combinations of configuration options
  6. 6 first steps towards tackling the maintenance challenges of configurability
  7. 7 a common problem: mapping code back to the configurations that control that code
  8. 8 what does linux's build system do?
  9. 9 let's look at the phases of build process
  10. 10 the build system as code generation using metaprogramming
  11. 11 configuration localization is finding the inverse of the build process
  12. 12 each phase of the build encodes rules to control the inclusion and exclusion of source code
  13. 13 we can use boolean logic to represent the "buildability" of code at each step
  14. 14 configuration localization then becomes the boolean satisfiability problem
  15. 15 when you come to a fork in the road, take it
  16. 16 tooling
  17. 17 SuperC does configuration-preserving C preprocessing (and parsing)
  18. 18 Kmax collects Kbuild Makefile conditions for each source file's constraints
  19. 19 Kclause converts Kconfig files into logical fomulas
  20. 20 conclusion

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.