关于问题vxworks与linux区别
vxWorks |
Linux |
|
内核 结构 |
微内核, 内核只提供 了基本的服 务,如:任 务管理,内 存管理,中 断处理等 |
宏内核, 除了基本的 服务,内核 还包括文件 系统,网络 协议等 |
运行 模式 |
应用程序运 行在“实模 式”下,无 用户模式和 内核模式之 分 |
采用“保护 模式”,用 户进程、线 程运行在用 户模式下, 内核线程运 行于内核模 式 |
内存 访问 和内 存保 护 |
内核采用实 存储管理方 式,所有任 务运行于同 一物理地址 空间,用户 程序直接操 作物理地 址,不能直 接地提供内 存保护,不 能防止错误 蔓延 |
内核采用虚 拟存储管理 方式,用户 具有独立的 地址空间 ,用户进程 只能访问本 进程的虚拟 空间,提供 了内存保 护,可以防 止错误蔓延 |
执行 单元 |
任务 |
进程、线程 |
请求 内核 服务 方式 |
函数调用, 更快 |
系统调用 ,更安全 |
实 时 性 |
硬实时 |
软实时 |
http://baike.baidu.com/view/1027685.htm?fr=ala0_1
宏内核与为内核的区别
宏内核的内部可被分为若干模块(或者是层次或其他)。但是在运行时,它是一个独立的二进制大映像。模块间的通信不是通过消息传递,而是通过直接调用其他模块中的函数来实现的。
关于微内核的概念见:http://www.dzsc.com/data/html/2009-1-16/75785.html
在微内核中,用以完成系统调用功能的程序模块通常只进行简短的处理,而把其余工作通过消息传递交给内核之外的进程来处理。在典型情况下,每个系统调用程序模块都有一个与之对应的进程,微内核部分经常只不过是一个消息转发站,这种方式有助于实现模块间的隔离。这种内核设计的最根本思想就是要保持操作系统的内核尽可能小,因为内核是直接与计算机硬件相关的,内核越小,就越便于在不同的硬件系统间进行移植。微内核结构的另外一个优点是,可以使不需要的模块不加载到内存中,因此,微内核就可以更有效地利用内存。
http://www.itqun.net/content-detail/155701.html
设备驱动部分的比较和分析
由于Linux操作系统和Linux引导装载器在结构上的分离,使得它俩之间的设备驱动程序不能够通用,当然在芯片的硬件初始化一些硬件相关的代码上可以互相借鉴。而 VxWorks的BOOTROM和运行版本的设备驱动是相同的,因为,它的运行版本和BOOTROM的结构是一致的,使用同一操作系统内核。 Linux操作系统的设备驱动运行在内核空间,用户进程运行在用户空间。在Linux操作系统中,内核空间和用户空间的内存管理和映射方式是不同的,应用和设备驱动在数据交换时会涉及到不同的内存空间,会影响到一定效率,但这个问题可以通过修改系统内存空间配置等方法来解决。 VxWorks操作系统没有分开内核空间和用户空间,设备驱动和应用都运行于同一空间,相互之间的内存都可以访问,数据交换非常方便,但是,这种结构的稳定性就不如 Linux系统好了。两种操作系统都提供了很多设备驱动的资源和模板。但是由于Linux的开源特性,它提供的设备驱动的种类和数量远远超过了VxWorks.
4 结论
本文简单介绍了Linux和VxWorks操作系统的BSP开发的内容。通过比较发现,VxWorks作为专业的商用实时操作系统,提供BSP开发方式,开发资源都非常适宜于嵌入式应用。而Linux作为从通用操作系统发展而来的,在嵌入式应用的BSP开发方面,需要多做一些工作,但是它却有更丰富的资源。
关于问题vxworks与linux区别相关推荐
- Windows与Linux区别3
Windows与Linux区别3 转载于:https://blog.51cto.com/241998/43673
- linux识别fat16还是32,FAT16 、FAT32 、NTFS、LINUX区别.doc
FAT16 .FAT32 .NTFS.LINUX区别 1)FAT16 这是MS-DOS和最早期的WIN95操作系统中最常见的硬盘分区格式.它采用16位的文件分配表,能支持最大为2GB的硬盘,是目前应用 ...
- Windows与Linux区别1
Windows与Linux区别1 转载于:https://blog.51cto.com/241998/43671
- linux之上运行Vxworks,在MPSoC上能同时运行VxWorks和Linux吗?
原标题:在MPSoC上能同时运行VxWorks和Linux吗? Xen项目管理程序从上个世纪90年代就已经在剑桥大学里开始进行,到了2002年项目开源.如今它是最流行的开源管理程序之一,可以在云计算上 ...
- 服务器运维用macos,MacOS和Linux区别_网站服务器运行维护,linux,macos
MacOS catalina升级后Vmware黑屏的问题解决_网站服务器运行维护 macOS Catalina是苹果macOS全新版本.本文就来为大家介绍一下MacOS catalina升级后Vmwa ...
- VxWorks和Linux内核实时性
通用的分时操作系统面向多用户的不同任务,意在追求系统整体运行的效率和资源的均衡利用,软件的执行在时间上要求并不严格. 实时操作系统不同于分时操作系统,它主要是对任务进行实时的处理,要求任务的运行具有可 ...
- 嵌入式多任务OS中Vxworks和linux的一些区别
自己目前开发的嵌入式开发所用的操作系统是VxWorks,以前读大学的时候用的最多的是linux操作系统,但是,对于这两种操作系统之间到底有什么区别,还真没有真正去细心的总结过,被别人问起时,难免有些尴 ...
- solaris与linux区别,solaris与linux命令的区别
最近使用axis2做webservice,在solaris上使用axis2生成客户端,当执行命令 export JAVA_HOME=/usr/j2se 设置环境变量时,报如下的错误: JAVA_HOM ...
- vxworks gcc linux,针对VxWorks的GCC交叉编译器无法编译C++
我试图移植Linux库以在VxWorks上运行.我已经成功构建了binutils和gcc,目标为i486-wrs-vxworks,我可以成功构建一个简单的C程序.但是,当我尝试编译C++时,事情就会中 ...
最新文章
- jquery 操作字符串、数组、对象常用方法
- 数据结构 判断数组元素是否互不相同
- 中国人工智能学会通讯——后深度学习时代的人工智能
- python里面if语句一直出错_python错误,写了个小程序,if语句总是不执行,求高手指点...
- 和为s的两个数字 - 双指针
- FancyCoverFlow(GalleryView)
- 有哪些方法下载外文文献?
- 番茄时间--C#实现
- 永磁同步电机dq坐标系中转矩公式中系数3/2的由来
- 天使之音——Declan Galbraith
- Linux 用户授权的方法,linux中用户和权限管理
- 玩转诺基亚5800XM,新手上路指南
- CentOS安装NTFS-3G读写Windows 10的移动NTFS磁盘
- Google Common Lisp 风格指南
- kubernetes pod一直是ContainerCreating,READY是0/1
- Linux下编译build的命令,Linux内核编译中build目录设置
- 如何把windows锁屏画面提取成JPG图像,并作为桌面壁纸
- 最简单的方式实现竖排文字显示
- dede 修改首页默认访问路径/dede修改安装目录
- 在安卓手机安装Linux