linux和vxworks对比有哪些不相同
Admin 2022-08-18 群英技术资讯 1225 次浏览
这篇文章主要讲解了“linux和vxworks对比有哪些不相同”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux和vxworks对比有哪些不相同”吧!linux和vxworks的区别:1、内核结构不同,vxworks是微内核,只提供基本的服务,而linux是宏内核,除了基本的服务、内核还包括文件系统、网络协议等;2、运行模式不同,vxworks应用程序在“实模式”下,无用户模式和内核模式之分,而linux采用“保护模式”,用户进程、线程运行在用户模式下,内核线程运行与内核模式。

本教程操作环境:linux7.3系统、Dell G3电脑。
自己目前开发的嵌入式开发所用的操作系统是VxWorks,以前读大学的时候用的最多的是linux操作系统,但是,对于这两种操作系统之间到底有什么区别,还真没有真正去细心的总结过,被别人问起时,难免有些尴尬的感觉,毕竟自己是学嵌入式开发的,竟然对嵌入式开发系统了解的不深入,今天专门抽时间好好的总结下,二者到底有什么区别?
|
VxWorks |
linux |
内核结构 |
微内核,内核只提供了基本 的服务,如:任务管理,内 存管理,中断处理等 |
宏内核,除了基本的服务,内 核还包括文件系统,网络协议 等 |
运行模式 |
应用程序运行在“实模式” 下,无用户模式和内核模式 之分 |
采用“保护 模式”,用 户进 程、线程运行在用户模式下, 内核线程运行于内核模式 |
内存访问和内存保护 |
内核采用实 存储管理方式, 所有任务运行于同一物理地 间,用户程序直接操作物理地 址,不能直接地提供内存护, 不能防错误蔓延
|
内核采用虚拟存储管理方式,用 户具有独立的地址空间,用户进 程只能访问本进程的虚拟空间提供 了内存保护,可以防止错误蔓延 |
执行单元 |
任务 |
进程、线程 |
请求内核服务方式 |
函数调用,更快 |
系统调用,更安全 |
实时性 |
硬实时 |
软实时 |
VxWorks主要应用于电信级别的数通等产品,而linux主要应用于消费类、工控产品等
微内核、宏内核
内核中提供各种服务的成分与使用这种服务的进程之间形成一种client/server关系,这种服务并不一定非得留在内核中,它本身也可以被设计实现成“服务进程”,其中必须留在内核中的部分只有进程间的通信,如果把这些服务从内核转移到进程的层次上,那么内核本身的结构就可以大大减小和减化,而各个服务进程也可以单独设计、实现及调试。
微内核便是将服务转移到进程上的一种内核模式,主要应用在实时系统和嵌入式系统上,主要是因为通常这些系统都不带磁盘,整个系统必须都放在EPROM中,常常受到存储空间的限制,而且所需的服务也比较单一,如PSOS,VxWorks等。
宏内核是一种传统的内核结构,它将进程管理,内存管理等各项服务功能都放到内核中去,通常用在通用式内核上,如UNIX,linux等.
设备驱动部分的比较和分析
由于linux操作系统和linux引导装载器在结构上的分离,使得它倆之间的设备驱动程序不能够通用,当然在芯片的硬件初始化一些硬件相关的代码上可以互相借鉴。而VxWorks的BOOTROM和运行版本的设备驱动是相同的,因为它的运行版本和BOOTROM的结构是一致的,使用同一操作系统内核。linux操作系统的设备驱动运行在内核空间,用户进程运行在用户空间。在linux操作系统中,内核空间和用户空间的内存管理和映射方式是不同德,应用和设备驱动在数据交换时会涉及到不同的内存空间,会影响到一定效率,但这个问题可以通过修改系统内存空间配置等方法来解决。VxWorks操作系统没有分开内核空间和用户空间,设备驱动和应用都运行于同一空间,相互之间的内存都可以访问,数据交换非常方便,但是这种结构的稳定性就不如linux系统好,两种操作系统都提供了很多设备驱动的资源和模板。但是由于linux的开源特性,它提供的设备驱动的种类和数量远远超过了VxWorks.
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
Linux有很多的发行版,不同的版本会有一些细微区别,所以经常需要查看服务器系统的版本号。下面来看下CentOS下如何查看CentOS版本。方法1:
在linux中,打开端口的命令是“firewall-cmd --zone=public --add-port=端口/通讯协议 --permanent”;该命令中的“--zone”表示作用域,“--permanent”表示打开端口之后用永久生效,利用该命令开启指定端口后需要重启防火墙使其生效。
在linux中,可以利用grep命令的“-v”参数来查找不包含,grep命令用于查找文件中符合条件的字符串,当参数设置为“-v”时,表示反向选择,显示不包含匹配文本的所有行,语法为“grep -v 不包含的字符串 文件名”。
Linux下的at命令怎么用,如何查看和删除at命令?小编今天来给大家说说Linux中的at如何使用方法,有这方面学习需要的朋友就继续往下看吧!
8种常用包管理有:1、DPKG,Debian系的包管理系统;2、apt,Debian、Ubuntu上的包管理系统;3、apt-cache,一个apt软件包管理工具;4、RPM,红帽系的包管理系统;5、yum,一个解决包依赖关系而存在的软件包管理器;6、DNF,新一代的rpm软件包管理器;7、pkg,FreeBSD默认使用的包管理器;8、Pacman,Arch系的包管理系统。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008