Not So C Constructs in the Linux KernelĀTejun Heo, NovellBeing a giant C program, the kernel has developed a lot of interesting programming constructs which isn't quite C. In some of them black magics including macros, assembly and linker play important roles such as in user memory access exception table and percpu variable access. In others, concepts are borrowed from high level languages but the application and implementation are often extensively compromised depending on the balance between the usefulness of the feature and implementation complexity. Examples of this type of constructs include try-catch blocks in user memory access, libata method inheritance and garbage collection via devres. This presentation takes a look at each of these constructs and show how they are designed and why. The target audience is software engineers who are proficient in C but not higly experienced with the kernel and they can expect to learn about each construct and the general theme behind them. |
Who Are We?
The Linux Foundation is a non-profit consortium dedicated to the growth of Linux.
More about the foundation...
Explore
Search / Browse / Sitemap
Home / News / Press
Blogs / Whitepapers
Training / Workgroups