学习视频:【北京迅为】再谈Linux学习方法-框架学习法
学习UBOOT
框架学习法
linux基础框架
文件系统框架
- bootloader是上电后执行的第一个程序
- bootloader会引导linux内核,会执行zimage
- linux内核会挂载文件系统,文件系统可大可小,例如QT或unbuntu或安卓
linux应用框架
通过软中断使得运行在用户态的应用程序能够有机会进入内核态
文件IO通过内核的系统调用来使用操作系统资源
而标准IO通过标准C库来调用操作系统资源【带缓冲】
绿色部分是CPU
主机通过socket接口来调用底层TCP/IP协议栈
socket是标准接口,和标准IO一样,可以在多个操作系统中使用
linux驱动框架
驱动的发展过程要了解
原始架构的引入使得应用程序和驱动程序分离
平台总线的引入使得平台驱动和平台设备分离,平台驱动可以做成标准的形式,根据电路原理图适配平台设备即可
设备树的引入使得平台设备的程序从操作系统源码中独立出来,使得电路图修改后也不必编译系统(系统源码)就可以实现硬件适配
将下层的函数定义好后,放在file_operations结构体中,通过register_chrdev()注册到linux内核当中,该函数的一个参数就是主设备号。实现主设备号和结构体关联起来
应用层通过那几个文件操作函数去操作设备节点实现操作硬件吗,原理是内核态完成了设备节点与硬件操作的关联