{"id":76,"date":"2005-11-09T22:05:33","date_gmt":"2005-11-10T03:05:33","guid":{"rendered":"http:\/\/blogs.law.harvard.edu\/hoanga\/2005\/11\/09\/why-linux-doesnt-have-a-stable-kernel-"},"modified":"2005-11-09T22:05:33","modified_gmt":"2005-11-10T03:05:33","slug":"why-linux-doesnt-have-a-stable-kernel-api","status":"publish","type":"post","link":"https:\/\/archive.blogs.harvard.edu\/hoanga\/2005\/11\/09\/why-linux-doesnt-have-a-stable-kernel-api\/","title":{"rendered":"Why Linux doesn&#8217;t have a stable Kernel API"},"content":{"rendered":"<p><a name='a579'><\/a><\/p>\n<p>\n A binary driver<br \/>\n <br \/>\n <em><br \/>\n is sufficient if you want to provide a module for a specific release version of a specific Linux distribution. But multiply that single build by the number of different Linux distributions and the number of different supported releases of the Linux distribution and you quickly have a nightmare of different build options on different releases<br \/>\n <\/em>\n <\/p>\n<p>\n Considering some of the shoddy drivers I&#8217;ve experienced over the years this<br \/>\n developer strategy to drivers makes more sense although I can say that<br \/>\n compiling the Linux kernel these days is long even on faster processors and<br \/>\n getting the source is also not a small task.  Although that might be<br \/>\n mainly due to most of the distribution specific build tools  that have<br \/>\n surfaced over the years and require learning a new tool to test if it&#8217;s<br \/>\n actually better than just <i>make menuconfig<\/i> for me.  In some cases<br \/>\n they are, in quite a few cases it has not.\n <\/p>\n<p>\n <a href=\"http:\/\/www.kroah.com\/log\/linux\/stable_api_nonsense.html\">Read it yourself<\/a>\n <\/p>\n","protected":false},"excerpt":{"rendered":"<p>A binary driver is sufficient if you want to provide a module for a specific release version of a specific Linux distribution. But multiply that single build by the number of different Linux distributions and the number of different supported releases of the Linux distribution and you quickly have a nightmare of different build options [&hellip;]<\/p>\n","protected":false},"author":704,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-76","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/posts\/76","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/users\/704"}],"replies":[{"embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/comments?post=76"}],"version-history":[{"count":0,"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/posts\/76\/revisions"}],"wp:attachment":[{"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/media?parent=76"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/categories?post=76"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/tags?post=76"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}