本节书摘来自异步社区《精通Linux设备驱动程序开发》一书中的第1章,第1.5节,作者:【印】Sreekrishnan Venkateswaran(斯里克里斯汉 温卡特斯瓦兰)著,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.5 Linux发行版

一个GNU/Linux系统除了内核以外,还包括大量的实用程序、程序、库和工具,因此,获得和正确安装所有的组件是一项艰巨的任务。而Linux发行版有序地将这些组件进行了分类,并捆绑成相应的包,从而分担了这一艰巨任务。一个常见的发行版包含数以千计的捆绑好的包。这使得用户无需担心下载不到正确版本的程序,也无需关心程序间的依赖问题。

因为打包是GNU许可证范围内的一种有效的赚钱方式,因此,目前的市场上诞生了数个Linux发行版。其中,Red Hat/Fedora、Debian、SuSE、Slackware、Gentoo、Ubuntu和Mandriva这些发行版面向桌面用户,而MontaVista、TimeSys和Wind River发行版则面向嵌入式系统开发。嵌入式Linux的发行版还包括一套可动态配置的紧凑的应用程序集,以便针对资源的限制为系统进行量体裁衣。

除了打包以外,发行版还为内核的开发提供了增值服务。因此,许多项目都开始于发行版提供的内核而非kernel.org发布的官方内核,这样做的理由如下。

  • 遵守设备行业领域标准的Linux发行版更适合作为开发的起点。特殊兴趣组(SIG)已经成立,其目的是促进Linux在各个领域的应用。消费电子产品Linux论坛主要讨论消费类电子领域的Linux应用。CELF标准定义了一些功能的支持等级,如可扩展性、快速启动、片上执行以及电源管理等。开源开发实验室则致力于讨论电信级设备。OSDL的电信级Linux(CGL)标准包含了对可靠性、高可用性、运行时补丁、增强的错误恢复能力的诠释,这些问题在电信领域非常重要。
  • 主线内核版本可能并未包含对用户所选择的嵌入式控制器的充分支持,即使用户的系统建立在内核所支持的CPU核心之上。但是,一个Linux的发行版则可能包含了控制器内所有外围设备模块的设备驱动程序。
  • 在内核开发过程中你计划使用的调试工具可能不包含在主线内核中。例如,内核并不包含内嵌的调试器支持。如果想在内核开发过程中使用内嵌的调试器,用户必须下载并打上相应的补丁。如果针对用户内核版本的补丁并不齐备,用户将必须忍受更多的麻烦。而发行版则包装了很多有用的调试功能,所以你可以立即开始使用它们。
  • 一些发行版提供了法律保护,让你的公司无须为任何由于内核bug所引发的诉讼承担责任。
  • 发行版往往会对它们发布的内核进行较多的测试[3]。
  • 用户可以从内核发行版的供应商处购买它们提供的服务以及软件包支持。

《精通Linux设备驱动程序开发》——1.5 Linux发行版相关推荐

  1. wdm设备驱动程序开发pdf_世界顶级Linux技术大师力作1000页Linux开发实战

    20世纪90年代初,Linux操作系统诞生,随着虚拟化.云计算.大数据.容器技术的出现和人工智能时代的来临,Linux 以迅雷不及掩耳之势飞速发展,占据着整个服务器行业的半壁江山,但同时也面临着巨大的 ...

  2. 《精通Linux设备驱动程序开发》——1.7 编译内核

    本节书摘来自异步社区<精通Linux设备驱动程序开发>一书中的第1章,第1.7节,作者:[印]Sreekrishnan Venkateswaran(斯里克里斯汉 温卡特斯瓦兰)著,更多章节 ...

  3. 《Linux设备驱动开发详解(第2版)》隆重出版

    Linux设备驱动开发详解(第2版)(前一版狂销3万册,畅销书最新升级) [新品] 点击看大图     基本信息 * 作者: 宋宝华       * 出版社:人民邮电出版社     * ISBN:97 ...

  4. linux设备驱动总结,《Linux设备驱动开发详解(第3版)》海量更新总结

    本博实时更新<Linux设备驱动开发详解(第3版)>的最新进展. 2015.2.26 几乎完成初稿. [F]是修正或升级:[N]是新增知识点:[D]是删除的内容 第1章 <Linux ...

  5. linux设备驱动开发详解 第三版,《Linux设备驱动开发详解(第3版)》进展同步更新...

    2014.8.25 目前初步完成2-11章以及第22章 <Linux设备驱动的调试>,相对于第2版,这几章主要的变更. 本博实时更新<Linux设备驱动开发详解(第3版)>的最 ...

  6. 《Linux设备驱动开发详解(第3版)》(即《Linux设备驱动开发详解:基于最新的Linux 4.0内核》)进展同步更新

    本博实时更新<Linux设备驱动开发详解(第3版)>的最新进展. 目前已经完成稿件. 2015年8月9日,china-pub开始上线预售: http://product.china-pub ...

  7. 《Linux设备驱动开发详解(第3版)》(即《Linux设备驱动开发详解:基于最新的Linux 4.0内核》)网购链接

    <Linux设备驱动开发详解:基于最新的Linux 4.0内核> china-pub   天猫     dangdang   京东 China-pub 8月新书销售榜 推荐序一 技术日新月 ...

  8. Linux设备驱动开发详解 第3版 (即 Linux设备驱动开发详解 基于最新的Linux 4 0内核 )前言

    Linux从未停歇脚步.Linus Torvalds,世界上最伟大的程序员之一,Linux内核的创始人,Git的缔造者,仍然在没日没夜的合并补丁,升级内核.做技术,从来没有终南捷径,拼的就是坐冷板凳的 ...

  9. linux设备驱动程序架构的研究,Linux设备驱动程序学习(12)-Linux设备模型(底层原理简介)...

    Linux设备驱动程序学习(12) -Linux设备模型(底层原理简介) 以<LDD3>的说法:Linux设备模型这部分内容可以认为是高级教材,对于多数程序作者来说是不必要的.但是我个人认 ...

最新文章

  1. 别让双手闲下来,来做一些练手项目吧
  2. MyDAL - .IsExistAsync() 使用
  3. Oracle数据库之基本查询
  4. android pc模拟器哪个好,安卓模拟器电脑版哪个好用
  5. 小米mysql安装教程_小米 SOAR 开源SQL优化工具安装
  6. 拼多多:有营销号“骗粉博出位” 将用法律武器维权
  7. 【有内鬼,终止交易】风靡朋友圈的壁纸,实现代码竟如此简单 | 原力计划
  8. 前景检测算法(四)--GMM
  9. gitlab增加p3c-hook强制代码规范
  10. 神经网络算法的基本原理,神经网络算法都有哪些
  11. ftp免费空间,1种适合小白级别的搭建ftp免费空间的方法
  12. PEM文件格式详细解析
  13. RxJava 学习笔记(八) --- Combining 结合操作
  14. 微信小程序cover-image手机上不显示问题
  15. java 移动目录_java 移动文件夹内的文件,从一个目录移动到另外一个目录
  16. Oracle不走索引hint,oracle不走hint原因1:依据hint会出现错误结果
  17. [Codeforces1238G]Adilbek and the Watering System
  18. 多网卡情况,使用静态路由,为访问目标网络指定路径
  19. 梦幻西游网页版无法在虚拟机上运行【游戏】【页游】【虚拟机】
  20. 计算机系统中常用的进制,计算机中常用 二进制 八进制 十进制 十六进制的特点...

热门文章

  1. 如何制作一个通用的多系统安装U盘七(Windows相关配置)
  2. 常见排序7--基数排序
  3. Xamarin.FormsShell基础教程(3)Shell项目构成
  4. 服务认证暴力破解工具Crowbar
  5. 基础认证伪造工具phishery
  6. 二元函数求最小值 c语言,用C语言实现简单的多元线性回归算法(二)
  7. axios mysql_axios的简单使用
  8. 希捷硬盘固件修复工具_电脑升级高速硬盘后的差异竟如此大!酷鱼510性能实测...
  9. c语言三元组稀疏矩阵的转置实验报告,稀疏矩阵三元组实现矩阵转置算法实验报告.doc...
  10. iOS友盟推送发送失败