阅读前言
本文以QNX系统官方的文档英文原版资料为参考,翻译和逐句校对后,对QNX操作系统的相关概念进行了深度整理,旨在帮助想要了解QNX的读者及开发者可以快速阅读,而不必查看晦涩难懂的英文原文,这些文章将会作为一个或多个系列进行发布,从遵从原文的翻译,到针对某些重要概念的穿插引入,以及再到各个重要专题的梳理,大致分为这三个层次部分,分不同的文章进行发布,依据这样的原则进行组织,读者可以更好的查找和理解。
1. 自适应分区
在许多计算机系统中,保护不同的应用程序或应用程序组之间彼此不受干扰是很重要的。你肯定不希望某个应用程序破坏其他应用程序或者妨碍它们运行(无论是有缺陷的还是恶意的)。
为了解决这个问题,有些系统会在一组应用程序周围设置被称为“分区(partitions)”的虚拟屏障,以确保每个分区都能被分配到一组经过规划的资源。首要考虑的资源是 CPU 时间,但任何共享资源,比如内存和文件空间(磁盘或闪存),也都可能会被纳入考量范围。
QNX Neutrino 的自适应分区仅支持 CPU 时间的分配。

通过使用多个分区,你可以避免出现单点故障。例如,避免某个失控的进程占据整个系统的资源;这样做之后,其他分区中的进程仍然能够获得分配给它们的那部分系统资源。
即便没有自适应分区,QNX Neutrino 的进程模型所提供的保护也远比某些其他操作系统要多,这些保护包括:
- 进程间的全面内存保护;
- 通过消息传递来提供统一且受控制的进程间通信(IPC);
- 带有清晰“客户端-服务器模型”的优先级继承特性;
- 硬实时确定性调度;
- 针对设备、文件和内存的详细权限模型;
- 利用 POSIX


6362

被折叠的 条评论
为什么被折叠?



