中易网

linux内核,驱动,应用程三者的概念和之间的关系

答案:3  悬赏:50  
解决时间 2021-02-27 12:30
linux内核,驱动,应用程三者的概念和之间的关系
最佳答案
1、首先楼主脑子中要有个概念 U-BOOT(BOOTLOADER) LINUX内核(一般包含驱动,也就是和内核一起编译好后下载到板子中) 文件系统(包含用户应用程序等)这三个重要部分 是按照预先设定好的位置放置于NAND FLASH(我这里就不说BOOTLOADER放在NOR FLASH,从NOR 启动了),板子上电后直接运行 BOOTLOADER,BOOTLOADER 根据预先设置好的位置 把LINUX内核加载到内存,并将控制权交给LINUX内核,内核利用文件系统驱动(比如YAFFS驱动等)来从NAND FLASH中操作文件系统。
2、应用程序是放在文件系统(比如YAFFS文件系统)中的,所以应用程序不放在内核中,而是放在文件系统中,制作成文件系统一并下载到NAND FLASH中(或者通过其它途径把文件拷贝到该文件系统中)。
追问:文件系统编译好后单独利用U-Boot下载到开发板中的吗,是不是U-BOOT已经把nand flash分区好了,先将内核下载到一个分区,再下载文件系统啊,另外应用程序是编译好后放在文件系统的哪个文件夹中,还是将应用程序源文放到文件系统中一起编译,如果是这样那放到文件系统的哪个文件夹下
追答:是的,需要单独下载到开发板中,分区是事先根据各个大小确定好位置后,然后BOOTLOADER和内核的分区里面一致不冲突就可以了。你可以先下载文件系统后在下载内核,不冲突。因为现在已经对这两块内容固定起始位置了。先下载哪个都无所谓。
全部回答
先说内核,内核就是系统本身,你可以考虑为 win7 系统。 驱动呢,可以编译进内核,也可以不编译进去。不编译进去的时候,可以在内核跑起来之后,用insmod 加载进内核,这个过程,就好比你在win7 下,从网上下载一个显卡驱动并装上。应用呢,就是内核起来后,可以在系统里跑的程序,比如浏览器什么的。那么驱动和应用有啥不同呢,应用是调用内核提供给用户空间的接口,而驱动是在内核空间运行的,用的是内核内部的接口。
首先,要理解操作系统的概念,操作系统是用户和硬件之间的一层媒介程序。不管是Linux还是Windows或者安卓、IOS,它的主要功能有两点:
1、有效管理硬件。
2、方便用户操作。
其次,Linux内核是Linux系统的核心程序,主要完成任务调度、内存管理、IO设备管理等等功能,主要目的是为了应用程序提供一个稳定良好的运行环境,这是一个基础。
再次,驱动程序是操作系统有效管理硬件的一个途径。应用程序是方便用户操作提供的程序,比如Shell,Linux中的bash shell以及KDE、gnome等图形Shell都是应用程序。 你可以简单的理解为驱动程序实现了操作系统对硬件的有效管理,应用程序实现了操作系统方便用户操作的目的。
最后,从编程角度来看,Linux内核就是一个调用库,应用程序通过调用Linux提供的API函数来实现操作,Linux内核通过与驱动通信实现对硬件的有效管理。具体的编程细节,需要自己在实践编程中体会。这是一个整体的描述。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
爆料陈赫离婚的王姓男艺人是谁
好再来牛肉面地址在哪,我要去那里办事
屈臣氏燕窝丝炫亮白组合适合什么年纪的人用
静莲瑜伽馆这个地址在什么地方,我要处理点事
大神求教 四职业圣职者哪个远古套装给力
我问你一个、曲轴转360度凸轮轴转多少度?
启发塑钢门窗厂地址在哪,我要去那里办事
秦国张仪说楚是什么成语的由来,求解
富士达电动车车座锁怎么开钥匙没有了
齐亚农资公司峄城分公司地址在什么地方,想过
回家反省等待学校处理是开除吗
如何给监狱里的犯人写信?
草原特产超市(锡林郭勒苏尼特右旗)地址在什么
有谁知道南京丰盛集团怎么样?待遇如何?最好
伊鲜综合超市地址在哪,我要去那里办事
推荐资讯
求英语所有的词根,词缀。
如何在小学数学教学中渗透环境教育
招行一卡通和信誉卡在异地能消户吗
什么是拉普拉斯变换?
有谁知道这是迪奥毒药香水系列的什么毒?
公司注销了,有留底增值税4000元,按规定这部分
霞妹麻辣烫凉皮地址在哪,我要去那里办事
河清路地址在什么地方,想过去办事
e^(1/x)积分
小芳收集的外国邮票比中国邮票少35张,外国邮
一心堂玉溪都市经典小区连锁店地址在什么地方
以《最美 》为题目的作文怎么写
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?