| 摘要: |
| 实时CORBA(common object request broker architecture)规定了独立于操作系统的CORBA优先级,每个请求都可以携带CORBA优先级,而执行请求的所有线程都使用该CORBA优先级映射后的本地操作系统优先级.如何将范围较大的CORBA优先级映射到范围较小的操作系统优先级,并且尽量保持CORBA优先级的序关系,避免优先级翻转是实时CORBA需要解决的重要问题.该问题在实时中间件中具有普遍意义.简要介绍了实时中间件中的优先级映射机制,提出了中间件优先级到本地操作系统优先级的静态散列法和动态映射法,并给出了动态映射法的实现算法.散列法实现简单,但会影响中间件的互操作和可移植性,难以保证优先级映射的严格序关系;动态映射法实现复杂,但能严格保证优先级映射的序关系. |
| 关键词: 实时CORBA 优先级映射 |
| DOI: |
| 分类号: |
| 基金项目:Supported by the National Natural Science Foundation of China under Grant No.90104020 (国家自然科学基金); the National High-Tech Research and Development Plan of China under Grant No.2001AA113020 (国家高技术研究发展计划(863)); the National Grand Fundamental Research 973 Program of China under Grant No.G1999032703 (国家重点基础研究发展规划(973)) |
|
| Priority Mapping in Real-Time Middleware |
|
GUO Chang-Guo,WANG Huai-Min,ZOU Peng,WANG Feng
|
| Abstract: |
| As a specification of middleware, real-time CORBA (common object request broker architecture) defines uniform CORBA priority which is independent of any operating system. The CORBA priority is carried with the CORBA invocation and is used to ensure that all threads subsequently executing on behalf of the invocation run at the appropriate native priority, which is mapped from that CORBA priority. How to map many CORBA priority levels to fewer native priority levels and maintain the order of these priorities is very important. The mapping problem is common in real-time middleware. The priority mapping mechanism of real-time CORBA is introduced briefly. The two methods of how to map middleware priority to native operating system priority are presented, the two methods are static mapping method and dynamic mapping method. Static mapping method is simple to be implemented, but it can break the interoperability, portability and the strict order of middleware’s priorities. Dynamic mapping method is complex to be implemented, but it can maintain the strict order of middleware’s priorities. |
| Key words: real-time CORBA (common object request broker architecture) priority mapping |