- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
三、RTX子系统详述
三、RTX子系统详述 进程与线程管理 一个RTX进程由地址空间、对象句柄、以及一个或多个可执行镜像路径组成。线程则执行诸如响应中断、处理同步事件之类的操作。 RTX进程的第一个可执行镜像实例称作本进程的主线程。 RTX下的进程和线程操作函数类似于Win32 API RTX与Win32各自的可执行镜像只能访问各自环境下的可执行镜像,子系统间进行通讯必须使用IPC通讯机制 进程创建 在VC编程环境中手工执行 通过命令行方式执行RTSS可执行文件 在Win32应用程序中开启RTSS进程 进程执行 将可执行文件以系统驱动方式进行加载 从不分页内存池中分配进程堆栈,并创建主线程 任何进程的初始线程拥有8KB大小的初始栈 进程终止 最后一个线程退出 某个线程实例调用ExitProcess()函数 进程被RTSS任务管理器关闭 使用CreateThread()函数创建线程 一个就绪的RTSS线程在调度时优先于所有的Windows线程!RTSS线程将持续运行直到其放弃CPU资源,当发生下列情况时,RTSS线程将放弃CPU资源: 等待同步事件体 降低本身的优先级或者提升其他线程的优先级 挂起线程本身 被高优先级事件中断 时间片用完 调用Sleep()函数时使用参数0,not 0,own CPU resourse Sleep()函数详解 VOID Sleep( DWORD dwMilliseconds // sleep time in milliseconds ); 参数dwMilliseconds:以毫秒为单位,确定挂起的时间。如果值为0,当前线程会放弃时间片的剩余时间,转给其他具有相同优先级的线程运行。如果没有相同优先级的线程就绪,或者没有设置时间片,Sleep()函数将返回,线程继续执行;如果值为INFINITE,线程将无限延迟,等同于Suspend()函数。 RTX系统优先级设置 Windows优先级 系统优先级由进程优先级和线程优先级组成 进程优先级与线程优先级共同确定系统任务的执行级别 RTX优先级 在RTX下,优先级的基本单位为线程 以0—127由低到高顺次排序的128个优先级决定系统任务的执行级别 Windows进程优先级(Priority Class ) IDLE_PRIORITY_CLASSNORMAL_PRIORITY_CLASSHIGH_PRIORITY_CLASSREALTIME_PRIORITY_CLASS Windows线程优先级(Priority Level ) THREAD_PRIORITY_IDLETHREAD_PRIORITY_LOWESTTHREAD_PRIORITY_BELOW_NORMALTHREAD_PRIORITY_NORMALTHREAD_PRIORITY_ABOVE_NORMALTHREAD_PRIORITY_HIGHESTTHREAD_PRIORITY_TIME_CRITICAL Windows基础优先级排布表(参见相关文件) RTX不存在优先级类的概念 所有RTX进程中的线程实例使用线程优先级作为竞争CPU资源的依据 任何线程实例都必须被分配0—127的相应优先级 同级线程之间按照“先入先出”的原则依照时间片调度算法运行 RTSS线程调度器维护RTSS线程的调度算法,并避免死锁以及优先级倒置的产生。 死锁现象及相应措施(一) 错误的PV操作 semaphore sCom, sMutex; T1 ( s ) { //PV操作 P ( sMutex ) ; P( sCom ); …… //critical section V ( sMutex ); V ( sCom ); } T2 ( s ) { //PV操作 P ( sMutex ) ; P(sCom ); …… //critical section V ( sMutex ); V ( sCom); } 死锁现象及相应措施(二) 正确的PV操作 semaphore sCom, sMutex; T1 ( s ) { //PV操作 P( sCom ); //先作同步操作 P ( sMutex ) ;//再作互斥操作 …… //critical section V ( sMutex ); V ( sCom ); } T2 ( s ) { //PV操作 P(sCom ); P ( sMutex ) ; …… //critical section V ( sMutex ); V ( sCom); }
您可能关注的文档
- 七年级英语下册第七单元课件Section_B_3a-self_check.ppt
- 七年级英语下册Unit 6 I‘am watching TV课件.ppt
- 七年级英语下册《Unit9》.ppt
- 七年级英语下册人教Unit8_Is_there_a_post_office_near_here_全部课件.ppt
- 七年级英语下册第九单元第一课时课件.ppt
- 七年级英语下册:Unit 7单元测试题.doc
- 七年级英语下册第九单元第三课时课件.ppt
- 七年级英语下第七单元教师讲学稿.doc
- 七年级英语下册《Unit9-What-does-he-look-like-Section-A》课件-(新版)人教新目标版.ppt
- 七年级英语下册第六单元知识点总结语法-3c.ppt
最近下载
- 专题02 宇宙中的地球-5年(2020-2024)高考1年模拟地理真题分类汇编(北京专用)(解析版).docx VIP
- 城市绿地分类标准 .pdf VIP
- 营养指导员题库.docx VIP
- 专题01 地球和地图-5年(2020-2024)高考1年模拟地理真题分类汇编(北京专用)(解析版).docx VIP
- 四年级【语文(统编版)】古诗三首(第一课时)课件 .pptx
- 质量管理体系工具统计技术.pptx VIP
- 2022年茅台考试真题及答案——计算机专业.pdf
- 发电机短路试验中转子接地保护误动作分析及关键问题探讨.pdf VIP
- Silvaco傻瓜教程—张林—长安大学—2018.06.pdf
- SpringBoot学习笔记(实用完整版).pdf VIP
文档评论(0)