【Vxworks操作系统】系统介绍与系统组成-NO.1

2023-05-16

目录

1、VxWorks系统介绍

2、VxWorks特点

3、vxWorks操作系统的组成

       1)实时操作系统核心Wind  

       2)I/O系统

       3)文件系统

       4)板级支持包(BSP)

       5)网络设施

       6)系列网络产品

       7)目标代理

       8)实用库

       9)基于目标机的工具


1、VxWorks操作系统介绍

        VxWorks是美国Wind River System公司,简称风和推出的实时操作系统,主要用于军工和航天领域,Vxworks是一个功能强大且复杂的操作系统,VxWorks是专门为嵌入式实时系统设计开发的操作系统内核可以实现实时多任务调度,中断管理,实时的系统资源和任务通信;程序员更多的是在应用层上进行开发,基于Vxworks操作系统下的应用程序可以在不同的CPU平台移植。

        VxWorks系统主要包括:任务管理,存储管理、设备管理、文件系统管理、网络协议及系统应用几大部分。因为VxWorks系统占用空间小,仅靠人工变成调试,很难设计出可靠的高效的嵌入式系统,这其中应用而生的Tornado/Worchbench就是为开发Vxworks提供的集成开发环境,其中包含工程管理文件,用户可以将自己编写的代码和vxWorks的核心进行组合,按需配置内核。

2、VxWorks操作系统的特点

       1)VxWorks是实时操作系统中比较有特色的一个系统,具有可伸缩性、可裁剪性和高可靠性、适用于流行目标的CPU平台的实时操作系统;

#可伸缩性#:VxWorks提供超过1800个应用编程接口(API);

#可裁剪性#:用户更具需求对VxWorks系统进行配置;

#高可靠性#:在重要项目中发挥重要可靠作用;

       2)VxWorks运行环境支持的CPU包括:PowerPC、68K、CPU32、SPARC、i960、x86、mips等,同时支持RISC、DSP技术。

        3)vxWorks的微内核wind是高性能实时操作系统,主要特点包括:快速多任务切换、抢占式任务调度、任务间通信多样化等。该内核相比其他嵌入式实时操作系统相比,任务切换时间短、中断延时小、网络流量大,更加具有优势。

       4)vxWorks具有良好的兼容性,在不同的环境中可以方便的移植;vxWorks是最早兼容POSIX1003.1b标准的嵌入式实时操作系统之一,同时也是POSIX的主要成员。vxWorks支持POSIX1003.1b规范以及1003.1规范的基本系统调用,主要包括:进程原语、文件目录、I/O原语、语言服务以及目录管理;此外,vxWorks还遵循POSIX1003.1b的实时扩展的标准: 包括:异步I/O、技术信号量、消息队列、信号、内存管理、以及任务调度。

       5)vxWorks的TCP/IP协议栈部分在保持与BSD4.4版本的TCP/IP兼容的基础上,在实时性方面有较大的提高,这使得基于BSD。4.4 UNIX Socket的应用程序可以方便地移植到Vxworks当中去,并且网络的实时性得到提高。

       6)风和公司提供了一些可选附件:BSP开发工具包、支持Flash文件系统的TrueFFS组件;用于虚拟存储管理的VxVMI组件、用于支持多处理器的VxMP组件和VxFusion组件以及各种图形方面的组件。

3、vxWorks操作系统的组成

       1)实时操作系统核心Wind  

        内核Wind包括多任务调度(基于优先级的抢占方式)、任务间同步和通信机制、中断处理以及看门狗和内存管理机制,每个任务拥有独立的执行线程和自己的一套系统资源。Wind使用中断驱动和基于优先级的抢占调用方式,缩短了上下文切换时间开销和中断的延时。任何一个例程都可以被启动为一个单独的任务、拥有自己的上下文和堆栈,还有一些其他任务机制可以使任务挂起、继续、删除、延时或者改变优先级。 Wind提供信号量作为任务间同步或者互斥的机制,主要包括:二进制信号量、计数信号量和互斥信号量。对于任务间通信,Wind也提供了诸如消息队列、管道、套接字和信 等机制。
   
    总结其特点:


    1)高效的任务管理
    
            a)支持多任务,任务数没有限制;
    
            b)支持抢占式调度和时间片轮转调度;
    
            c)快速的、确定的上下文切换;
    
            d)256个任务优先级
    
    2)快速灵活的任务间通信;
    
            a)二进制,计数信号量以及具有优先级继承特点的互斥信号量;
    
            b)消息队列;
    
            c)POSIX的管道、计数信号量、消息队列和信号;
    
            d)Socket;
    
            e)共享内存;
    
    3)高度可裁剪性,
    
    4)增加链接和加载组件;
    
    5)快速、确定的中断响应;
    
    6)优化的浮点支持;
    
    7)动态内存管理;
    
    8)系统时钟以及定时器支持;


    2)I/O系统

       vxWorks提供快速灵活的与ANSI C兼容的I/O系统,包括UNIX标准的缓冲I/O和POSIX标准的异步I/O,vxWorks包括以下驱动程序:

   1)网络驱动:用于网络通信(以太网、共享内存),支持多种网卡;
   
   2)管道驱动:用于任务间通信;
   
   3)RAM盘驱动:用于常驻内存文件;
   
   4)键盘驱动:用于X86键盘(仅存在于X86BSP)
   
   5)显示驱动:用于X86VGA文本显示(仅存在于X86BSP)
   
   6)磁盘驱动:用于IDE/ATA键盘,软盘(仅存在于X86BSP)
   
   7)并口驱动:用于PC风格的目标机,


     3)文件系统

       vxWorks提供的快速文件系统适合实时系统应用,包括几种支持使用块的本地文件系统,这些设备使用一个标准接口,使得文件可以灵活的在设备驱动程序上移植。

vxWorks支持以下几种文件系统:

    a)dosFs:与MS_DOS兼容的文件系统;
    
    b)rt11Fs:一种与RT11操作系统兼容的文件系统;
    
    c)rawFs:该文件系统将整个盘作为一个文件,允许根据字节偏移读写硬盘的一部分,优点是仅仅需要底层I/O的操作,因此读写速度快,并且大小没有限制;
    
    d)tapeFs:SCS顺序文件系统,用于磁带设备,不使用标准的文件和目录结构,,将整个磁带作为一个大文件来处理;
    
    e)TrueFFS:内存文件系统;
    
    f)cdromFS:vxWorks提供文件的cdromFS 系统,

    4)板级支持包(BSP)

        板级支持包对各种板子的硬件功能提供了统一的软件接口,包括:硬件初始化、中断的产生和处理、硬件时钟和计时器管理、局域和总线内存地址映射、内存分配等。每个BSP包括一个ROM启动或其他启动机制。

    5)网络设施

    VxWorks网络结构提供了对其他网络和TCP/IP网络系统的“透明”访问,包括与BSD兼容的编程接口、远程过程调用(RPC)、SNMP(可选项)、远程文件访问(包括客户端和服务端的NFS机制以及使用RSH、FTP或TFTP的非NFS机制)以及BOOTP和ARP代理,并且所有的VxWorks网络机制都遵循标准的Internet机制。


    6)系列网络产品

    网络产品拓展了VxWorks的网络特性并增强了嵌入式特性,包括以下产品:
    
    a)BSD4.4TCP/IP网络;
    
    b)IP/IGMP,CIDR,TCP,UDP,ARP 
    
    c)RIP v.1/v.2
    
    d)Sockets
    
    e)SLIP、CSLIP、PPP
    
    f)BOOTP、DNS、DHCP、TFTP
    
    g)NFS、ONC、RPC、
    
    h)FTP、rlogin、rsh、telnet
    
    i)  SNTP 
    
    j)  WindNet SNMP v.1/v.2以及MIB编辑器
    
    k)WindNet OSPF v.2 
    
    l)WindNet STREAMS SVR4


    7)目标代理

      目标代理遵循WBD(Wind River Debug)协议,允许目标工具与主机上的Tronado开发工具相连。目标代理是以VxWorks的一个任务--tWdb Task的形式运行的。Tornado目标服务器向目标代理发送调试请求,调试请求通常决定目标代理对系统中其他任务的控制和处理。


    8)实用库

       vxWorks提供了一个实用例程的扩展集,包括中断处理、看门狗计时器、消息登录、内存分配、字符扫描、线缓冲和环缓冲管理、链表管理和ANSI C标准。


    
9)基于目标机的工具

        在Tornado开发系统中,开发工具是驻留在主机上的,但是也可以根据需要将基于目标机的Shell和装载/卸载模块加入VxWorks。

结语:

      以上就是对VxWorks的初步介绍啦,接下来的篇章我将展开来讲一讲VxWorks操作系统的组成和功能,希望与各位读者朋友一起探讨进步,我是指尖比比,我们下个好文再见!!!
 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Vxworks操作系统】系统介绍与系统组成-NO.1 的相关文章

  • 使用 Nemo 替代 Ubuntu 自带的文件管理器

    Nautilus 是 Ubuntu 下默认的文件管理器 xff0c 为什么要替换它呢 xff1f 如果你用过 Ubuntu 13 04 或 13 10 xff0c 我想你就不会问这个问题了 xff0c 真是 谁用谁知道 Nemo 虽然没有
  • springboot错误: 找不到或无法加载主类

    IDEA如果遇到创建完springboot后 要简单运行 xff0c 却出现找不到或者无法加载主类的这种情况 请再maven那边先clean下 gt 然后再打包package 这样再重新运行就好啦 记得是在Maven gt Lifecycl
  • Linux驱动简介和开发流程--Linux驱动学习(1)

    Linux驱动简介和开发流程 学习笔记 Linux 驱动的分类 Linux三大设备驱动 1 字符设备驱动 IO的传输过程是以字符为单位的 xff0c 没有缓冲 比如I2C SPI都是字符设备 2 块设备驱动 IO传输过程中是以块为单位的 跟
  • 性能优化与内存优化

    性能优化 主要以这四个方向进行优化 xff1a 稳定流畅耗损apk 瘦身 稳定 避免内存溢出异常捕获反馈机制 流畅 卡顿的原因 xff1a 布局复杂动画过多View 的过度绘制UI 耗时操作频繁 GC 耗损 减少没必要的网络访问或合并相关网
  • java 实现快速排序

    1 介绍 快速排序是对冒泡排序的一种改进 它的基本思想是 xff1a 通过一趟排序将要排序的数据分割成独立的两部分 xff0c 其中一 部分的所有数据都比另外一部分的所有数据都要小 xff0c 然后再按此方法对这两部分数据分别进行快速排序
  • 计算机网络——FTP网络服务器

    目录 一 实验目的与要求 二 实验内容与方法 三 实验步骤与过程 一 实验目的与要求 学习安装 使用FTP服务器软件和FTP客户端软件 xff0c 掌握基本的FTP传输数据的控制方式 xff0c 能对FTP协议数据包抓取并进行分析 实验环境
  • 树莓派踩坑之VNC Timed out waiting for a response from the computer

    笔者纯小白入坑树莓派 xff0c 今天在通过VNC viewer 对树莓派进行远程操作时遇到了超时报错 xff0c 报错如下 xff1a VNC Timed out waiting for a response from the compu
  • 系统System.img解包和重新打包过程

    系统System img解包和重新打包过程 把system img转换成ext4格式 simg2img system img system ext4 img 挂载ext4到systemMount目录进行修改 sudo mount syste
  • 腾讯地图 API 调用入门

    本文仅为腾讯地图 API 调用入门 xff0c 如需进阶学习 xff0c 请在腾讯位置服务网站上进行学习 登陆网址 https lbs qq com 点击右上角的登陆按钮 xff0c 需要进行注册按照流程进行就好 完成之后 xff0c 选择
  • QT安装过程中遇到的问题

    问题描述 xff1a 安装了qt安装包后sudo qt opensource linux x64 5 14 2 run显示找不到命令 解决办法 xff1a 把这个文件变成可执行文件 chmod 43 x qt opensource linu
  • 解决Idea升级安装过程中出现Missing essential plugin: com.intellij (platform prefix: null) 的问题

    在进行idea从2020 2升级到2022 1安装成功启动的时候会报这个错 xff1a Missing essential plugin com intellij platform prefix null Please reinstall
  • 吐血整理!SpringMVC常用简单注解(超详细)

    注解解析直达目录 1 用于接收前端给后端的json数据 64 RequestBody 1 1需求分析1 2具体情境1 3最佳实操1 4运行结果以及分析 2 获取restful风格url中的参数值 64 PathVariable 2 1需求分
  • Expression #1 of ORDER BY clause is not in SELECT list, references column ‘d.dept_no‘ which is not i

    问题 xff1a 34 Expression 1 of ORDER BY clause is not in SELECT list references column 39 d dept no 39 which is not in SELE
  • Ubuntu 安装和配置 git

    安装 sudo apt get update y sudo apt get upgrade y sudo apt install git 检查 git version 配置 git config global user name 34 用户
  • Centos检查进程是否关闭的shell脚本

    在运维工作当中会遇到程序打不开或者不工作的类似情况 xff0c 有部分原因是因为维持这个服务的某个进程关闭了 xff0c 这时候需要检查哪些进程是否挂掉了 xff0c 由于进程较多一个个来检查的话效率太慢 在这里给伙伴们安利一个简单实用的检
  • 基于SpringBoot和vue的移动端音乐网站的设计与实现

    1 xff0c 项目介绍 基于SpringBoot和vue的移动端音乐网站拥有两种角色 xff0c 分别为管理员和用户 用户 xff1a 歌单分类 xff1b 歌手分类 xff1b 仿网易云音乐播放 xff1b 音乐收藏 xff1b 音乐评
  • 前端-01Html5基本知识

    1 基本 1 1 第一个前端程序 内容 lt html gt lt head gt lt title gt 我的网页 lt title gt lt head gt lt body gt Hello 我的第一个网页 lt body gt lt
  • 使用maven来进行JavaSE增删改查

    首先得搞清楚maven是什么 xff1f Maven是一款服务于Java平台的自动化构建工具 Maven 作为 Java 项目管理工具 xff0c 可以用作包管理 xff0c 可以支持整个项目的开发 打包 测试及部署等一系列行为 maven
  • 银河麒麟桌面操作系统V10上安装的docker常规使用及注意事项

    前言 本文介绍银河麒麟桌面系统V10上docker的常规使用及注意事项 一 docker信息 银河麒麟桌面系统V10预装的docker xff0c 且开机自动启动了docker服务 查看服务状态 systemctl status docke
  • 背包九讲PDF

    本资料仅限个人学习交流使用 xff0c 不得用于商业用途 背包九讲PDF xff1a https pan baidu com s 17rTxMwCo9iSTOW77yucdXQ 提取码 xff1a xbqa 转载于 https www cn

随机推荐

  • electron在Windows、Linux和KYLIN操作系统下的不同表现

    一 electron简介 Electron 是一个由 Github 开发 用 HTML xff0c CSS 和 JavaScript 来构建跨平台桌面应用程序的框架 xff0c 然后这些应用程序可以打包在macOS Windows和Linu
  • vscode 终端美化

    1 进入网站 Base16 Terminal Colors for Visual Studio Code 2 选择自己喜欢的主题 点击Copy to clipboard 3 打开vscode 设置 输入setting 在 settings
  • kali美化与配置

    kali linux简单美化 前言 xff1a kali linux是一个神奇的系统 xff0c 里面含有大量的工具 xff08 虽然python很容易就可以做出来 xff09 xff0c 但是像msf这样的大作还是很有参考价值的 好不容易
  • ubuntu开机进入循环登录状态的解决方案

    ubuntu进入循环登陆的解决方案 1 出现问题的原因2 解决问题的方法2 1 登陆进入CLI2 2 检查 etc environment环境变量 1 出现问题的原因 我出现的这个问题的原因是由于修改系统的环境变量 etc profile
  • Tomcat 7.X安装教程(简单易懂)

    Tomcat 7 X安装教程 简单易懂 步骤1 下载Tomcat7 x版本 官网7 x下载地址 https tomcat apache org download 70 cgi https aoian lanzous com iCWyymcn
  • 社区医疗管理系统(JDBC+eclipse)

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 项目预览1 登陆界面2 首页3 修改密码和查看个人信息4 用户管理5 居民信息 二 导入步骤1 下载文件2 数据库导入3
  • linux shell 常用命令

    linux shell 终端操作命令 shutdown 默认1分钟内关机 43 n表示n分钟后关机 输入后可以打shutdown c 进行取消 shutdown h now表示立即关机sudo 在命令前书写 xff0c 表示已管理员的权限运
  • Shell脚本——kafka集群启停

    部署kafka集群的服务器名称为 xff1a node101 node102 node103 批量启动 停止zookeeper xff0c 查看zookeeper开启状态 在 opt module zookeeper bin 目录中 xff
  • Shell脚本——批量关闭服务器

    服务器名称为 xff1a node101 node105 node110 node113 bin bash array 61 102 103 104 105 110 113 101 xff09 for i 61 0 i lt array i
  • 设置文件夹共享

    本文使用共享文件夹名称为 xff1a test 1 右键文件夹 xff0c 点击 属性 xff0c 菜单栏选择 共享 xff0c 点击下面的 共享 S 按钮 2 选择要共享的用户 xff08 此处选择 Everyone xff0c 可以根据
  • Ubuntu16.04的图形化界面无法启动问题

    昨晚在 Ubuntu 下试图安装笔记本触控板的驱动的时候 xff0c 突然 Ubuntu 的图形化界面不见了 xff0c 尝试了 Ctrl 43 Alt 43 F1 F2 F3 无果 xff0c 又在一些博客的指导下尝试在命令行使用 sta
  • Shell脚本——设置ssh免密

    功能 xff1a 实现多台linux主机之间root用户的免密设置 主机名 xff1a node101 node106 在node101上切换至root用户 xff0c 编写以下脚本内容 xff1a bin bash 使用root用户 在n
  • 解析ET6接入ILRuntime实现热更

    1 介绍 ILRuntime项目为基于C 的平台 xff08 例如Unity xff09 提供了一个纯C 实现 xff0c 快速 方便且可靠的IL运行时 xff0c 使得能够在不支持JIT的硬件环境 xff08 如iOS xff09 能够实
  • Python 实现用网页展示多个结果表数据

    Python 实现用网页展示多个表格的数据 前言 一 效果图 二 代码 1 引入库 2 函数定义 3 主程序 前言 实现方法是利用pandas to html 与表格展示的美化相结合 使数据展示更美观 一 效果图 示例 二 代码 本文将使用
  • error while loading shared libraries

    问题描述 我在调试配置一个Linux计算环境的程序时候 xff0c 安装配置好相关的库 xff0c 但是在执行运行程序命令时候报错如下 xff1a error span class token keyword while span load
  • 要求在数组中间删除一个数字

    span class token comment 要求在数组中间删除一个数字 span span class token keyword var span arr span class token operator 61 span span
  • Ubuntu常见问题及解决办法

    在刚开始使用Ubuntu系统时 xff0c 总会遇到各种各样的小问题 xff0c 这里整理了一些遇到的问题及解决办法 xff0c 不断更新中 xff01 xff01 xff01 目录 一 创建文件夹权限不够 1 1 问题描述 1 2 解决办
  • 计算机网络考试题库

    第1章 计算机网络概论 1 xff0e 在20世纪50年代 xff0c 和 xff08 xff09 技术的互相结合 xff0c 为计算机网络的产生奠定了理论基础 2 xff0e 从传输范围的角度来划分计算机网络 xff0c 计算机网络可以分
  • Spring,搭建Spring环境

    控制反转 xff1a 控制了对象的创建 xff0c 反转 xff1a 反转的是获取对象的方式 xff0c 从自己创建对象变为由Spring工厂推送 1 搭建Spring环境 xff0c 导入依赖 spring aop xff1a 开发AOP
  • 【Vxworks操作系统】系统介绍与系统组成-NO.1

    目录 1 VxWorks系统介绍 2 VxWorks特点 3 vxWorks操作系统的组成 1 xff09 实时操作系统核心Wind 2 xff09 I O系统 3 xff09 文件系统 4 xff09 板级支持包 xff08 BSP xf