文章目录

  • 一、操作系统
    • 1. 实时操作系统
    • 2. 非实时操作系统
  • 二、操作系统内核
    • 1.微内核
    • 2.宏内核
    • 3. 其它区别

一、操作系统

1. 实时操作系统

实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统。提供及时响应和高可靠性是其主要特点。

原则:实时操作系统注重单个任务的响应时间,需要在指定时间内完成关键行为。

举例:uCOS/FreeRTOS/ThreadX/VxWorks/RTLinux

调度方式:基于任务优先级的调度方式,一旦内核把资源分配给某进程后,便让该进程一直执行,直到该进程完成或发生某事件而被阻塞(常见的方式主动调用delay),才再把处理机分配给其他进程,否则高优先级的任务会一直运行。所以这种情况下,如果某个高优先级的任务运行时间过长最好有阻塞机制,来让出CPU使其他低优先级的任务也有机会运行。同时也存在基于时间片调度方式,如FreeRTOS系统也有时间片调度模式,当几个任务的优先级相同时,会按照时间片来管理,在优先级相同的任务间切换运行。

当优先级更高的任务就绪时,即便低优先级任务正在运行中,也必须立刻交出CPU的使用权来执行高优先级任务,等到高优先级任务执行完或者主动挂起/让出CPU的时候,低优先级任务才能继续运行。

2. 非实时操作系统

通常的通用操作系统Windows和Linux都叫分时操作系统,一般采用公平调度算法,线程/进程一多就得分享CPU时间,Linux下有针对“实时进程”的调度,调度算法和普通进程不一样,但也只是相对的响应时间降低而已,类似的Windows下的“实时”优先级,也只不过是最高优先级,而不是真正的实时。

原则:非实时操作系统期望缩短任务的平均响应时间并提高系统的吞吐率,从而尽可能为更多请求提供服务。

举例:Linux/Windows/Android

调度方式:基于时间片的调度方式,这种方式下,所有任务的优先级相同,当内核给该进程分配的时间片结束后,内核会停止正在执行的这个进程,下一个时间片分配给其他进程执行,即便这个任务没有执行完也没有主动delay自己。

这种基于时间片轮转的非实时操作系统中,CPU是不可抢占的。即便高优先级的任务就绪了,也不能马上中断低优先级任务而得到执行,必须要等到低优先级任务主动挂起/让出或者该任务的时间片结束才能得到执行。所以我们在使用PC的时候经常会遇到应用程序无响应的问题,就是硬件资源被其他任务占用导致本任务得不到立即执行。

二、操作系统内核

1.微内核

内核管理着所有的系统资源,在微内核中用户服务和内核服务在不同的地址空间中实现。在应用程序和硬件的通信中,内核进程和内存管理的极小的服务,而客户端程序和运行在用户空间的服务通过消息的传递来建立通信,它们之间不会有直接的交互。

缺点:当一个应用程序想要请求操作系统的服务,这个服务的处理同时涉及到进程管理、存储管理、设备管理,这时候微内核的劣势就出来了,它需要频繁的在用户态和内核态之间交换。每一次变态的过程都是有成本的,要消耗不少时间,频繁地变态会降低系统性能,这也就是我们常说微内核的运行效率低的原因所在。

优点:在内核架构中,用户服务是独立于内核服务的,因此任何用户服务崩溃都不会影响到内核服务,这就加强了操作系统的健壮性。添加一个功能,只需要建立一个新的服务到用户空间当中,而内核空间不需要任何的修改,因此微内核可移植性强、安全并且易于扩展。

2.宏内核

宏内核同样管理着用户程序和硬件之间的系统资源,但是和微内核不一样的是,在宏内核架构中,用户服务和内核服务在同一空间中实现。内核可以代表内核进程运行代码,而当用户进程经过系统调用或者中断进入到内核态时,内核也可以代表它运行代码。

缺点:宏内核需要管理的资源多于微内核,其大小就相对庞大,在一些嵌入式设备中是难以接受的。当内核中的某个服务崩溃了,整个内核也会崩溃。在内核中添加新的功能就意味着内核中的各个模块需要做相应的修改,因此其扩展性很弱。

优点:在宏内核架构当中,内核管理着CPU调度,内存管理,文件管理和系统调用等各模块的的工作,由于用户服务和内核服务被实现在同一空间中,这样在执行速度上要比微内核快。

3. 其它区别

微内核和宏内核在设计上还存在一些其它的区别,比方IO管理方面,宏内核的设备驱动直接在内核中实现,硬件中断也直接在内核中处理。但是在微内核中,内核是不直接处理IO中断管理的,来自硬件的请求将被重定向到用户服务中去,比方内核捕获了一个中断,那么内核发送给设备驱动服务就完事了,设备驱动服务会去处理这个中断。


以上内容来源于网络知识总结,如有侵权请私信联系立即删除:)

实时操作系统与微内核相关推荐

  1. vxworks 实时操作系统

    VxWorks 是美国 Wind River System 公司( 以下简称风河公司 ,即 WRS 公司)推出的一个实时操作系统.Tornado 是WRS 公司推出的一套实时操作系统开发环境,类似Mi ...

  2. 实时内核(Core)和实时操作系统(RTOS)有何不同?

    大家都知道什么是实时操作系统,但是,大家熟知的实时操作系统,站在更广的角度来看,其实它就是一个实时内核. 一.实时内核和实时操作系统 一个实时内核是管理微处理器(MPU).微控制器(MCU)或数字信号 ...

  3. 实时操作系统-与QNX比较-qnx系统优势-qnx性能分析-qnx系统性能分析

    锋影 e-mail:174176320@qq.com LynxOS.QNX.Linux的分析和比较 ----本文对四种实时操作系统(RTOS)特性进行分析和比较.它们是:Lynx实时系统公司的Lynx ...

  4. 分时操作系统和实时操作系统

    1.linux分时操作系统和RTOS(实时操作系统) 我们知道,相对比vxworks,linux内核属于非实时操作系统,原因主要是: (1)实时任务抢占时间是不可预期的. (2)为什么抢占是不可预期的 ...

  5. android和rtos相互切换,通用操作系统与实时操作系统(RTOS)比较

    零.引 子---由终端设备到RTOS:RTOS无处不在.......... (1).Android手机有两个处理器,一个叫Application Processor(AP),一个叫Baseband P ...

  6. 什么是真正的实时操作系统

    做嵌入式系统开发有一段时间了,做过用于手机平台的嵌入式Linux,也接触过用于交换机.媒体网关平台的VxWorks,实际应用后回过头来看理论,才发现自己理解的肤浅,也发现CSDN上好多同学们都对实时. ...

  7. Linux实时操作系统Xenomai的一小时半入门视频推荐

    今天探索到了一个B站Up主工控小包总(上海翌控科技)的视频和最近的学习十分相关,感兴趣的小伙伴们可以去亲自探索一下,我在本篇文章里主要是做一些总结. 苏州诺达佳自动化NP6工控机 苏州诺达佳自动化NP ...

  8. 嵌入式操作系统和RTOS(实时操作系统)介绍。

    目录 嵌入式操作系统 RTOS(实时操作系统) 实时操作系统: 什么是嵌入式操作系统 一μClinux 二μC/OS-II 三eCos 四 FreeRTOS 五 mbed OS 六 RTX 七 VxW ...

  9. QNX 实时操作系统(Quick Unix)

    Gordon Bell和Dan Dodge在1980年成立了Quantum Software Systems公司,他们根据大学时代的一些设想写出了一个能在IBM PC上运行的名叫QUNIX(Quick ...

最新文章

  1. Microbiome:中科院微生物所蔡磊组揭示病害影响植物微生物组群落构建与功能适应...
  2. Gridview实现银行选择列表
  3. poj2478 Farey Sequence (欧拉函数)
  4. 使用cloudera manager搭建HUE后的使用,包括Oozie
  5. win10系统下载 Ghost Win10 RS1 1067 64位纯净3月版
  6. redlock java_Redlock分布式锁
  7. ci/cd heroku_在GitLab上设置CI / CD以在Heroku上部署Python Flask应用程序
  8. c语言RTK算法,C-RTK 9P定位系统
  9. 带有行数和标尺的RichTextBox
  10. Linux安全模块(LSM)学习——简单的LSM demo(1)
  11. 俄罗斯航空发动机AL-31F(solidworks模型)
  12. C语言误差用什么变量,C语言-实型变量
  13. 208计算机领域,中医药大学-计算机基础208版-1-7次作业.doc
  14. 亲测成功 office 2007 安装问题 无法找到OfficeLR.cab/OfficeMUI.msi
  15. 至简设计系列_按键控制数字时钟
  16. spss分析方法-多个独立样本检验(转载)
  17. 模型高性能优化 | 两步数据预处理让Alphafold 提速一倍
  18. 常用的英文缩写和短信缩写
  19. Rook下快速部署ceph分布式文件系统
  20. 在 JPA 中定义唯一约束

热门文章

  1. 盘点2021年全球AI芯片,详解“xPU”,请收下最新最全的知识点
  2. 阿里云轻量应用服务器流量用完了怎么办?
  3. 风华秋实冲刺港交所上市:营收来源单一,十分依赖腾讯音乐及鹿晗
  4. 最近几个月学习情况的总结
  5. LCD framebuffer驱动设计文档
  6. android手势密码csdn,Android手势密码LockPatternView、LockPasswordUtils、LockPatternUtils等分析...
  7. (SFT-GAN)18:Recovering Realistic Texture in Image Super-resolution by Deep Spatial Feature Transform
  8. 【FLASH存储器系列五】SPI NOR FLASH芯片使用指导之一
  9. 2000-2019 年中国各省、市、区县分年、分月、逐日平均降水量
  10. 信息系统分析与设计 第七章 用例建模