Microsoft's Lessons Learned From Linux
Another session taking place next week at the 6th Linux Foundation Collaboration Summit, besides Qualcomm allegedly wanting to kill all proprietary drivers, is two Microsoft engineers talking about their Linux driver development experiences.
The session, entitled "Microsoft's Journey to the Linux Kernel", is to be presented by Tom Hanrahan and Ky Srinivasan. Hanrahan serves as Microsoft's program manager for Linux integration services while Srinivasan led the effort of Linux device drivers for Microsoft's Hyper-V hypervisor. The session abstract is found here.
Like the Qualcomm driver presentation, the Microsoft slides are already available. Their presentation is set to go over Microsoft's journey with creating thousands of lines of Linux kernel code as they created their Hyper-V drivers for Linux. It was a long development journey, especially when the Microsoft Hyper-V drivers were in staging, but earlier this year the drivers finally left staging. (Microsoft's first Linux code was released in 2009.)
The Microsoft slides state that the passage through the kernel's staging tree had "benefitted [sic] our drivers immensely" and that their drivers now conform to the Linux driver model. As a result of being beaten through staging process, their Hyper-V drivers are now significantly cleaner and tighter to the point of 60% reduction in the overall lines of code, significant performance and stability improvements were made, and a solid architectural basis created.
Some of the lessons that Microsoft learned for others is that the staging tree is not designed for quick (massive) re-architecture/clean-up efforts, upstream developers do not care for company-specific product deadlines, and the developers need to be extremely responsive with the community.
The session, entitled "Microsoft's Journey to the Linux Kernel", is to be presented by Tom Hanrahan and Ky Srinivasan. Hanrahan serves as Microsoft's program manager for Linux integration services while Srinivasan led the effort of Linux device drivers for Microsoft's Hyper-V hypervisor. The session abstract is found here.
Like the Qualcomm driver presentation, the Microsoft slides are already available. Their presentation is set to go over Microsoft's journey with creating thousands of lines of Linux kernel code as they created their Hyper-V drivers for Linux. It was a long development journey, especially when the Microsoft Hyper-V drivers were in staging, but earlier this year the drivers finally left staging. (Microsoft's first Linux code was released in 2009.)
The Microsoft slides state that the passage through the kernel's staging tree had "benefitted [sic] our drivers immensely" and that their drivers now conform to the Linux driver model. As a result of being beaten through staging process, their Hyper-V drivers are now significantly cleaner and tighter to the point of 60% reduction in the overall lines of code, significant performance and stability improvements were made, and a solid architectural basis created.
Some of the lessons that Microsoft learned for others is that the staging tree is not designed for quick (massive) re-architecture/clean-up efforts, upstream developers do not care for company-specific product deadlines, and the developers need to be extremely responsive with the community.
12 Comments