版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/flaoter/article/details/76861710

转载请标明出处floater的csdn blog,http://blog.csdn.net/flaoter

曾经接触过几种操作系统,开发项目中使用较多的是VxWorks和Linux操作系统,对它们也算有一定的认识,现在根据自身理解初步对它们进行一个对比,有错误或不足之处今后会再进行修正。

下表是对VxWorks与Linux内核的一个对比,是按照差别分的类别,无法代表内核的所有细节,比如实时操作系统经典的问题优先级翻转,内核抢占等由于在新版的linux内核中都有支持,所以这类内容在下表中没有体现。

    VxWorks Linux
基本特点 应用场景 实时操作系统,表现在强实时性和可靠性。对实时性的表述应是在规定的时间完成规定的任务,体现实时性的指标有任务切换时间,任务抢占时间,中断响应时间等。 可交互的通用型OS,会注重用户的交互体验
内核结构 微内核 宏内核
运行模式 实模式 保护模式,区分用户地址空间和内核地址空间
任务管理与调度 任务管理 进程即线程 进程,线程,内核线程
任务调度 •主调度器和周期性调度器
• 实时调度类
• 主调度器和周期调度器
•五个调度类,stop, dl, rt, cfs, idle
•调度组,调度域(SMP),负载均衡
内存管理   实存储,所有任务运行在同一内存空间,不提供任务间的内存保护 虚拟存储,用户进程运行在虚拟地址空间,MMU负责将虚拟地址转换为物理地址,用户进程间的页表独立,只能访问本进程的内存空间
中断   硬中断 中断上半部和中断下半部,上半部类似硬中断,运行在中断上下文,下半部是高优先级的内核线程,运行在进程上下文

浅析VxWorks与Linux操作系统的区别的更多相关文章

  1. 浅析CentOS和RedHat Linux的区别

    CentOS的简介 CentOS是Community ENTerprise Operating System的简称,我们有很多人叫它社区企业操作系统,不管你怎么叫它,它都是Linux操作系统的一个发行 ...

  2. 浅析CentOS和RedHat Linux的区别(转)

    CentOS的简介 CentOS是Community ENTerprise Operating System的简称,我们有很多人叫它社区企业操作系统,不管你怎么叫它,它都是Linux操作系统的一个发行 ...

  3. Unix、Linux、Windows操作系统的区别

    1.操作区别 原文地址: https://blog.csdn.net/qq_41026740/article/details/96018808 linux区分大小写,windows在dos界面命令下不 ...

  4. Linux操作系统的文件链接

    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++标题:Linux操作系统的文件链接内容:文件链接时间:2019年 ...

  5. UCOSii和Linux的区别和联系

    UCOSii和Linux的区别和联系 想通过UCOSii来理解Linux的系统架构,故参考一些资料,简单整理了一下UCOSii和Linux的区别和联系,以此来更好的学习Linux. 其具体对比如下: ...

  6. 计算机与linux操作系统的发展

    一.计算机 (一)计算机的概念 1.概念:计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能.是能够按照程序运行,自动.高速 ...

  7. Linux操作系统的压缩、解压缩工具介绍

    Linux操作系统的压缩.解压缩工具介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.compress/uncompress命令常用参数 Linux compress命令: ...

  8. 如何提高Linux操作系统的安全性 转自https://yq.aliyun.com/articles/24251?spm=5176.100239.blogcont24250.7.CfBYE9

    摘要: Linux系统不论在功能上.价格上或性能上都有很多优点,但作为开放式操作系统,它不可避免地存在一些安全隐患.关于如何解决这些隐患,为应用提供一个安全的操作平台,本文会告诉你一些最基本.最常用, ...

  9. Linux操作系统的简单认识

    1:Linux操作系统的历史 Linux操作系统是由unix操作系统发展而来的,但是Unix是收费的系统,而Linux操作系统的免费的,开源的,所以使用比较广泛,但是它是基于命令行的,不提供图形化用户 ...

随机推荐

  1. 4 java 笔记

    1 javadoc工具默认只处理以public,protected修饰的类,接口,方法,成员变量,构造器和内部类之前的文档注释 2 文档注释以斜线后紧跟两个星号开始/**,以星号后紧跟一个斜线结束*/ ...

  2. maven中如何将所有引用的jar包打包到一个jar中

    在pom文件的build节点中添加这个插件的引用: <plugins> <plugin> <artifactId>maven-assembly-plugin< ...

  3. Sublime Text 3:自定义语法高亮

    (http://ilkinulas.github.io/programming/2016/02/05/sublime-text-syntax-highlighting.html) 要安装"P ...

  4. c3p0似有属性配置

    c3p0私有属性配置: 始化时创建的连接数,应在minPoolSize与maxPoolSize之间取值.默认为3 initialPoolSize=20 接池中保留的最大连接数.默认为15 maxPoo ...

  5. php判断

    <?php $str = '我是张三?'; preg_match("/张三/", $str, $match); if($match) { echo ' 张三在文本中'; } ...

  6. casperjs 源码

    1.首当其冲github 地址: https://github.com/casperjs

  7. blucesun 解决npm报错:Module build failed: TypeError: this.getResolve is not a function

    1.sass-loader的版本过高导致的编译错误,当前最高版本是8.x,需要退回到7.3.1 运行: npm uninstall sass-loader(卸载当前版本) npm install sa ...

  8. kill命令和killall命令

    kill命令用于终止指定的进程(terminate a process),是Unix/Linux下进程管理的常用命令.通常,我们在需要终止某个或某些进程时,先使用ps/pidof/pstree/top ...

  9. python面向编程:面向对象、init、绑定方法、案例练习

    一.类的定义 二.面向对象概念三.对象的使用四.__init__函数的使用五.绑定方法六.面向对象联系 一.类的定义 1.什么叫做类? 类就是分类,类型的意思,一堆具备相同特征和行为的事物的抽象概念 ...

  10. Yii2常用操作

    获取添加或修改成功之后的数据id $insert_id = $UserModel->attributes['id']; 执行原生sql $list = Yii::$app->db-> ...