码迷,mamicode.com
首页 > 系统相关 > 详细

Linux设备驱动的整体结构

时间:2017-05-08 01:25:35      阅读:279      评论:0      收藏:0      [点我收藏+]

标签:img   存储   函数   linux系统   size   程序   .com   read   硬件   

这个话题其实很大,只需有大致了解即可,如果详细分析难度很大,粗略讲,一个操作系统的组成包括:进程调度、内存管理、设备驱动、文件系统、网络,其中进程调度需要cpu、内存管理需要ram、文件系统访问需要存储器(比如硬盘、nand flash等)、网络访问需要网卡,linux系统从下到下整体如图:

技术分享

对于一个应用程序,如果涉及到硬件操作,那么依次会按照上图进行操作,首先在应用层会调用C库提供的函数(比如open、read、write),然后这些操作会触发软中断(swi中断)从而进入内核空间(Kernel Space),由于内核提供的VFS(vitual file system)的接口,依次会调用设备驱动,从而实现对硬件的操作,以应用层操作led硬件为例,依次会进行下面操作:

技术分享

后续会根据代码详细分析这个过程,这里就不说了

Linux设备驱动的整体结构

标签:img   存储   函数   linux系统   size   程序   .com   read   硬件   

原文地址:http://www.cnblogs.com/Ethan-Gao/p/6822976.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!