嵌入式操作系统 2.5 代码的共享和重入 ? VxWorks提倡:单个子程序的备份或子程序库被多 个不同的任务调用 ? 定义:一个被多个任务调用的单个备份成为共享 代码 VxWorks动态链接功能很容易实现代码共享 嵌入式操作系统 重入 ? 共享代码必须是可重入的: – 一个子程序是可重入的,如果该程序的单个备 份可以被多个任务同时调用而不会发生冲突 ? 典型的冲突: – 对全局或静态变量的修改 ? VxWorks的很多子程序是可重入的 – 惯例:所有somename_r()命名的子程序被认为 是不可重入的 – VxWorks的I/O和驱动程序是可重入的 嵌入式操作系统 ? 大部分VxWorks函数使用下列3种重入技术: ? 动态堆栈变量 – 这种函数一般是纯代码,除动态堆栈变量外没有自己 的数据,以调用者提供的数据为参数进行操作。 ? 受信号量保护的全局和静态变量 – 这种函数一般含有公共数据,在调用时,必须借助于 互斥机制,禁止任务同时在代码临界区域内执行,明 确地实现重入。 ? 任务变量 – 一些可被多个任务同时调用的程序,程序中的全局变 量或静态变量对每次任务的调用需要不同的值。 嵌入式操作系统 VxWorks与Linux比较 ? 任务创建函数:taskSpawn()与fork()/e
您可能关注的文档
最近下载
- 建设工程施工现场消防安全技术规范GB.ppt VIP
- 2021年最新江西省普通高中新课程新教材实施方案.pdf VIP
- 新版宪法就在身边全国宪法日PPT专题课件.ppt VIP
- SH╱T 3504-2014 石油化工隔热耐磨衬里设备和管道施工质量验收规范.pdf VIP
- JCT985-2017 地面用水泥基自流平砂浆.docx VIP
- 江苏2026年中职职教高考文化统考英语试卷答案.pdf
- 供应链风险管理培训PPT课件.pptx VIP
- 《金属材料与热处理(第八版)习题册》-参考答案 劳动.pdf
- 专题:特殊方法测电阻(解析版).pdf VIP
- CRH380B型动车组电热开水炉宋慧娟郑州铁路10课件.pptx VIP
原创力文档

文档评论(0)