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区别相关推荐

  1. Windows与Linux区别3

    Windows与Linux区别3 转载于:https://blog.51cto.com/241998/43673

  2. linux识别fat16还是32,FAT16 、FAT32 、NTFS、LINUX区别.doc

    FAT16 .FAT32 .NTFS.LINUX区别 1)FAT16 这是MS-DOS和最早期的WIN95操作系统中最常见的硬盘分区格式.它采用16位的文件分配表,能支持最大为2GB的硬盘,是目前应用 ...

  3. Windows与Linux区别1

    Windows与Linux区别1 转载于:https://blog.51cto.com/241998/43671

  4. linux之上运行Vxworks,在MPSoC上能同时运行VxWorks和Linux吗?

    原标题:在MPSoC上能同时运行VxWorks和Linux吗? Xen项目管理程序从上个世纪90年代就已经在剑桥大学里开始进行,到了2002年项目开源.如今它是最流行的开源管理程序之一,可以在云计算上 ...

  5. 服务器运维用macos,MacOS和Linux区别_网站服务器运行维护,linux,macos

    MacOS catalina升级后Vmware黑屏的问题解决_网站服务器运行维护 macOS Catalina是苹果macOS全新版本.本文就来为大家介绍一下MacOS catalina升级后Vmwa ...

  6. VxWorks和Linux内核实时性

    通用的分时操作系统面向多用户的不同任务,意在追求系统整体运行的效率和资源的均衡利用,软件的执行在时间上要求并不严格. 实时操作系统不同于分时操作系统,它主要是对任务进行实时的处理,要求任务的运行具有可 ...

  7. 嵌入式多任务OS中Vxworks和linux的一些区别

    自己目前开发的嵌入式开发所用的操作系统是VxWorks,以前读大学的时候用的最多的是linux操作系统,但是,对于这两种操作系统之间到底有什么区别,还真没有真正去细心的总结过,被别人问起时,难免有些尴 ...

  8. solaris与linux区别,solaris与linux命令的区别

    最近使用axis2做webservice,在solaris上使用axis2生成客户端,当执行命令 export JAVA_HOME=/usr/j2se 设置环境变量时,报如下的错误: JAVA_HOM ...

  9. vxworks gcc linux,针对VxWorks的GCC交叉编译器无法编译C++

    我试图移植Linux库以在VxWorks上运行.我已经成功构建了binutils和gcc,目标为i486-wrs-vxworks,我可以成功构建一个简单的C程序.但是,当我尝试编译C++时,事情就会中 ...

最新文章

  1. jquery 操作字符串、数组、对象常用方法
  2. 数据结构 判断数组元素是否互不相同
  3. 中国人工智能学会通讯——后深度学习时代的人工智能
  4. python里面if语句一直出错_python错误,写了个小程序,if语句总是不执行,求高手指点...
  5. 和为s的两个数字 - 双指针
  6. FancyCoverFlow(GalleryView)
  7. 有哪些方法下载外文文献?
  8. 番茄时间--C#实现
  9. 永磁同步电机dq坐标系中转矩公式中系数3/2的由来
  10. 天使之音——Declan Galbraith
  11. Linux 用户授权的方法,linux中用户和权限管理
  12. 玩转诺基亚5800XM,新手上路指南
  13. CentOS安装NTFS-3G读写Windows 10的移动NTFS磁盘
  14. Google Common Lisp 风格指南
  15. kubernetes pod一直是ContainerCreating,READY是0/1
  16. Linux下编译build的命令,Linux内核编译中build目录设置
  17. 如何把windows锁屏画面提取成JPG图像,并作为桌面壁纸
  18. 最简单的方式实现竖排文字显示
  19. dede 修改首页默认访问路径/dede修改安装目录
  20. 在安卓手机安装Linux

热门文章

  1. ultra edit ftp帐号管理导入导出方法
  2. PS 色调——老照片效果
  3. java调用、执行groovy代码
  4. 微信小程序的基础 (一)
  5. linux shell命令行选项与参数用法详解
  6. 第十周软件工程作业-每周例行报告
  7. MySQL--SQL中的安全问题
  8. IIS错误与解决方法
  9. 是用Entity.Save(),还是用DAL.Save(Entity e)
  10. 记一次vue 普通异步请求微信二进制二维码 乱码 问题解决然后渲染