linux中的底层,应用层,驱动之间的关系
答案:2 悬赏:80 手机版
解决时间 2021-04-08 01:56
- 提问者网友:欲望失宠
- 2021-04-07 07:15
linux中的底层,应用层,驱动之间的关系
最佳答案
- 五星知识达人网友:轮獄道
- 2021-04-07 07:43
内核——系统的底层,最核心的东西,操作系统运转的基础
驱动——应用程序与内核之间的接口,沟通应用软件与操作系统的桥梁
应用层——所有的应用程序的统称,实现某一个或几个专有的功能
驱动——应用程序与内核之间的接口,沟通应用软件与操作系统的桥梁
应用层——所有的应用程序的统称,实现某一个或几个专有的功能
全部回答
- 1楼网友:西风乍起
- 2021-04-07 08:12
我也不完全理解,但是比你知道的多点。
linux中,分内核态和用户态。
你写的所有的驱动,都是出于内核态->可以直接使用内核相关资源;
应用层,都是用户态->无法直接操作底层的东西 -> 想要操作,比如获得权限,切换到内核态,然后才能操作。
你这里的需求,我的理解是:
对应你这句
“在中断服务程序中操作另一个外设”
不知道你的目的和打算用的手段是啥
一般的,isr中,操作别的设备,常见的是:
设置对应的(比如该硬件本身,或者别的设备b的)寄存器的对应的位,以便通知其某种事情发送或状态变化了。
然后设备b会:
要么是由于(被修改了寄存器而)发生了中断,然后可以接着处理其所要做的事情;
要么是一直轮训,检测对应的某种资源释放变化,比如上面被改的寄存器的对应的位,发现变化了,再去调用你的函数,做对应的处理。
注意:
中断,不论是哪个设备的中断,都不应该占用(cpu)太长时间
-> 导致别的中断或服务无法及时运行
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯