Linux的总线、设备、驱动模型蕴含的思想

来源:互联网 发布:mac 无线传文件 安卓 编辑:程序博客网 时间:2024/04/30 17:52

一.Linux的总线、设备、驱动模型蕴含的思想

  可能绝大部分人对于总线、设备、驱动这个三个东西是没有明确的区分的,不会关注这三个有什么区别,但是恰恰相反的是,有时候啊的确需要咬文嚼字而后了然于胸。我们常常谈论驱动移植,其实这和linux的思修是恰恰相反的,linux的思想是一套驱动可以服务于无数各种硬件型号的板卡,而不是仅仅适配于其中某一块,换句话说就是我们在移植的时候不应该改驱动,而是改板级互联信息,其实这些信息就是设备信息。驱动就是驱动,设备就是设备。而他们之间的互联就是靠总线来互联。其实这就是一种去耦合的思想。





二.linux一套驱动为什么可以支持多个设备

 其实非常简单,如果我们有oo思想,就应该明确类和对象,一个类可以有无数的对象,linux可以走到今天,绝对不是什么面相过程,完全是依靠c实现的面相对象来维护。换句话说,一个驱动可以有无数个实体,从内存来说我只要每次动态分配空间就可以。