Linux kernel developer's guide published

By Tom Espiner, ZDNet UK
Monday, August 18, 2008 07:02 AM

The Linux Foundation has released a guide for developers who wish to contribute Linux code.

A guide to the kernel development process aims to encourage participation by new programmers by explaining what is involved. Some developers and businesses attempting to submit changes to the Linux kernel find themselves tangled up with the processes used, according to the guide, which was written by Jonathan Corbet, executive editor of lwn.net and himself a Linux developer.

"A developer who does not understand the kernel community's ways (or, worse, who tries to flout or circumvent them) will have a frustrating experience in store," Corbet warned.

One major stumbling block is coders not taking into account the development lifecycle. According to the guide, patches deemed stable are "merged" into the mainline kernel at the beginning of the lifecycle, every two to three months.

The "merge window" lasts for two weeks, and is then closed. After that time, project lead Linus Torvalds issues a release candidate kernel, which is then stabilized. Developers who try to merge new features outside the merge window "tend to get an unfriendly reception", wrote Corbet, as usually only release-candidate fixes are accepted.

Dissatisfaction also arises from confusion over how patches are reviewed before being merged, according to the guide.

"Much developer frustration comes from a lack of understanding of this process or from attempts to circumvent it," wrote Corbet, who added that patches go through a series of reviews before and after they are accepted into the kernel.

At the moment, there are more than 1,000 developers at more than 100 companies making contributions to the kernel, according to the Linux Foundation. The not-for-profit organization said the 30-page guide is central to its efforts to expand this community.

Mark Taylor, president of the Open Source Consortium, said that while it is not that difficult to contribute to open source projects, to avoid disappointment there are processes that must be adhered to.

"The bigger and more important the project, the more likely it is to have a number of levels," Taylor told ZDNet Asia's sister site ZDnet UK on Friday. "Enterprise-class projects, including the Linux kernel, have more processes, but that shows how seriously they take the project. It's less difficult to get code into a project if you understand the rules."

Taylor added that it was "a misconception that open source projects are total anarchy", and that enterprise-class projects, including Linux, often have a "beneficent dictator".

"It's not chaos--they have rules," said Taylor. "They have a beneficent dictator. Linus in the Linux kernel has lieutenants around him, [as does] Jeremy Allison at Samba."


WORTHWHILE?

0

0 votes
Blog

Talkback 0 comments

There are currently no comments for this post.


Tech Jobs Now!

Search for your ideal tech job:

Export project data for future effort estimation

Tech Management

Learn to tweak your estimation matrix even further by analyzing the project data from your Microsoft Project schedule.


Read more »


 
Virtualize your way to cost savings
Build an infrastructure that is flexible, scalable, and economical, as you strive to become a truly agile business.

Red Hat Outlines Its Virtualization Strategy and Roadmap for 2009
» Watch the video




Are telcos new drivers of outsourcing industry?

Blog thumbnail

The recent TPI Index from TPI highlighted an interesting trend where a few very large telco-to-telco contracts--instances where one telecommunications carrier outsources its network operations requirements to another telecommunications service..... by Michael Rehkopf

Read more »

Tags

  1. antivirus
  2. apple ipod
  3. cnet networks inc.
  4. desktop
  5. e - mail
  6. hard drive
  7. intuit inc.
  8. mcafee inc.
  9. microsoft corp.
  10. microsoft windows
  11. microsoft windows vista
  12. microsoft windows xp
  13. norton co.
  14. pc
  15. performance
  16. security
  17. software
  18. tool
  19. web
  20. web site