栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

应用编程与裸机编程、驱动编程的区别(Linux应用编程篇)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

应用编程与裸机编程、驱动编程的区别(Linux应用编程篇)

用嵌入式Linux硬件平台下的软件开发来说,我们大可将编程分为三种,分别为裸机编程、Linux驱动编程以及 Linux应用编程。

裸机编程:
一般把没有操作系统支持的编程环境称为裸机编程环境,譬如单片机上的编程开发,编写直接在硬件上运行的程序,没有操作系统支持

驱动编程:
狭义上 Linux驱动编程指的是基于内核驱动框架开发驱动程序, 驱动开发工程师通过调用 Linux内核提供的接口完成设备驱动的注册,驱动程序负责底层硬件操作相关逻辑

应用编程(系统编程):
是基于 Linux操作系统的应用编程,在应用程序中通过调用系统调用 API 完成应用程序的功能和逻辑,应用程序运行于操作系统之上。

操作系统下面有两种不同的状态:
常在操作系统下有两种不同的状态:内核态和用户态,应用程序运行在用户态、而内核则运行在内核态。他们直接是靠系统调用API来交互的。

内核提供了一系列的服务、资源、支持一系列功能,应用程序通过调用系统调用 API 函数来使用内核提供的服务、资源以及各种各样的功能。

总结:
应用程序与驱动程序是分隔、分离的,它们单独编译,它们并不是整合在一起的,应用程序运行在操作系统之上,有操作系统支持,应用程序处于用户态,而驱动程序处于内核态,与纯粹的裸机程序存在着质的区别。最重要的一点驱动属于内核的一部分

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/747286.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号