摘要:

实时系统在过去几年里迅速成长,但能够提供实时功能的操作系统往往价格极为昂贵.由于Linux代码公开,且性能优异,使其成为实时操作系统领域里的新宠.然而Linux本身作为一个通用的分时操作系统,将它应用于实时环境有许多缺点和不足,所以要对现有的Linux进行实时化改造. 本文针对实时系统的特点对Linux操作系统各部分的实现机制进行了具体的分析,并对Linux不适于实时应用的几个方面做了改进: 对操作系统来说,时钟精度直接影响到任务能否被及时响应和调度.Linux的周期性时钟粒度是10ms,过于粗糙.为了在不损失性能的情况下提高时钟精度,本文设计并实现了用Intel PⅡ系列以上CPU内部的local APIC定时器产生细粒度时钟中断,负责调度实时进程的方案.没有改变Linux原来的时钟中断,既提高了时钟精度,又不造成性能损失,很好地解决了时钟精度问题. Linux操作系统为分时应用而设计,采用的优先级调度方式不与时间相联系,而实时任务都有时限要求.本文使用了三个与时间特征相关的定时器,负责按时间要求改变进程的运行状态,进而能够在随后执行的调度函数中按时间要求进行调度. 由于特定的实时调度算法适用于特定的实时应用,为了检测特定应用中各种实时调度算法的优劣,本文采用通用的调度框架的思想.并实现了此可插入不同的实时调度算法的框架,以检测特定应用中各算法的优劣,并具体实现了时钟驱动的实时调度算法. 实验结果证明,本文所做的改进使Linux能够在基本不增加系统负担的情况下调度微秒级的实时任务.

展开

linux算法平台,Linux实时调度算法与测试平台的研究与实现相关推荐

  1. 测试平台(一)为什么要搭建测试平台?

    前言 本章主要讲述[测试平台]搭建的理由及必要性 ps:之前本来想先把robotframework框架作为底层框架,然后搭建一套API/UI自动化框架,还是以之前打过的[企业微信]为例做一个实战项目 ...

  2. OPPO VIVO等多平台官方远程真机测试平台

    https://id.vivo.com.cn/?_201908061534#!/access/login   VIVO https://open.oppomobile.com/service/open ...

  3. 软件部件仿真测试平台的设计与实现(计算机工程与设计2017-11)

    引 言 嵌入式软件部件测试可在目标机平台执行:如果不具备目标机环境,可基于宿主机平台[1-3]以全数字仿真[4]的形式模拟部件运行环境.基于宿主机开发部件仿真测试平台时,通常采用基于时钟驱动的循环调度 ...

  4. 简单、易用、易学,这个全自动测试平台真香

    软件思想家 Gerald Weinberg 曾说过, "如果建筑师按照程序员编写程序的方式建造建筑物,那么飞来的第一只啄木鸟就会摧毁整个文明". 这句话告诉我们:第一,程序员编写的 ...

  5. AB测试平台的那些事

    最近一段时间在负责公司AB测试平台的建设过程中,调研了很多竞品的通用做法,其中涉及到的数据整体解决方案,包括AB测试数据采集与数仓模型.AB测试指标建设.AB测试可视化方案等,借此机会我把自己总结下来 ...

  6. 基于OpenStack的云测试平台

    1.云测试平台技术架构 \\ (一)云测试平台搭建的背景 \\ 笔者目前处于一家国内核心金融机构的测试中心部门,随着公司新业务的开展以及大数据时代的到来,金融软件系统逐步趋向于分布式.高稳定性.高可用 ...

  7. 【ARUN】FastAPIVue 拥有无敌颜值且易用的全栈测试平台 第三弹——测试追踪

    前言 我又又又来分享啦!!之前分享的接口测试不仅局限于普通的 http 接口,dubbo/开放平台接口通过深度定制已完美集成~ ​接口.UI 任务已作为上线流程中重要的一环,并具有发现异常问题的能力~ ...

  8. 免费做淘宝TOP Taoapi.com测试平台历程

    我与淘宝TOP相遇 以前在北京一直从事PHP开发工作,直到今年7月意外在淘宝网上看到TOP平台的介绍,当时并没有感到意外.因为从国外到国内有很多网站都提供了API,但由于对淘宝的兴趣还是从API的开放 ...

  9. linux嵌入式系统算法,嵌入式Linux操作系统调度算法研究

    嵌入式Linux操作系统调度算法研究 嵌入式操作系统在互联网时代的今天得到广泛应用.Linux系统本身并不是严格的实时操作系统.为了提高它对实时任务的处理能力,国内外对Linux进行了不断的实时性能的 ...

最新文章

  1. python画动态图代码-Python使用matplotlib画动态图
  2. Matlab-离散事件系统仿真实验
  3. php 基础函数写法,字符串,常用函数
  4. 使用 Azure PowerShell 管理 Azure 虚拟网络和 Windows 虚拟机
  5. android 布局设置背景的透明度
  6. asp.net ViewState详解
  7. Win7部署基础知识(2):制作WinPE
  8. openstreetmap_OpenStreetMap参加奥运会,SourceForge改造等
  9. 【BZOJ4247】挂饰,又一个奇特的背包
  10. 生成微信蓝色昵称,原来如此简单
  11. LeetCode 103. Binary Tree Zigzag Level Order Traversal
  12. hdu 1217 Arbitrage (最小生成树)
  13. Friendly Tiny6410的Superboot安装及DNW驱动的安装
  14. 傅里叶变换(时域频域)
  15. 经纬度校验、整数和小数校验
  16. css3 - 图标元素动画效果1 - 只执行一次动画
  17. 我的OpenBSD配置文件
  18. 通配符的匹配很全面, 但无法找到元素 ‘aop:aspectj-autoproxy‘ 的声明
  19. 自己实现Lock(独享锁)
  20. Android实现控制第三方音乐播放器暂停/播放

热门文章

  1. double小数点后最多几位_基金理财买入后,不断亏损,是最多本金亏光,还是会出现负值...
  2. java private 对象_[Java笔记]类的所有构造器都是private权限,就一定没有办法实例化它的对象了么?...
  3. 普通java程序怎样用cron_java – Spring cron vs普通cron?
  4. java项目processes设置,Jvm调优和SpringBoot项目优化的详细教程
  5. 快手用旺旺瓶子做机器人_100品牌入榜,在快手的品牌运营怎么做?|11月快手品牌新势力榜揭晓...
  6. 清华大学计算机系牛人,高考状元不靠加分靠实力
  7. python默认数据转换_Python_数据类型转换
  8. @vue/cli 3 运行支持报错 socket
  9. 关于 Error: No PostCSS Config found in 的错误
  10. Safari支持Service Worker,PWA还有多久爆发?