使用 在多核上进行多任务处理
联系我们
eBinder/eDEVS 概述 > eSOL 的开发工具 > eBinder 概述 > 使用 eBinder 在多核上进行多任务处理


eBinder® 的详细内容


1. eBinder 概述
2. 敏捷式开发
3. 高级/复杂的开发工具
4. 使用 eBinder 进行目标开发
5. 用于 配套Arm的 eBinder
6. 使用 eBinder 在多核上进行多任务处理
7. 使用 eBinder 进行目标开发
8. eBinder 运行环境
9. eT-Kernel™: 软件重用的部件包



eBinder 支持在具有内存保护功能的实时操作系统(例如eT-Kernel)上使用多线程多进程模型进行开发。 在这篇文章中,我们将描述一些有助于您在多核环境中开发多线程应用程序的 eBinder 功能,并详细介绍一些实例


用于多线程多进程的 eBinder 功能


程序加载

eMCOS® POSIX 和eT-Kernel 有一个加载器,用于在操作系统本身中动态加载程序。
此加载器功能可用于加载线程级别上的进程和系统程序。
您可以通过 eBinder 提供的部分加载功能加载其他内核应用。

调试

使用 eBinder 的线程级调试器,不仅可以在线程级别调试进程中的单个线程,还可以通过停止进程中的所有线程来进行进程级调试。
还可以调试由 eSOL 的 RTOS 处理的所有程序,包括系统程序、共享库、DLL,而无需担心这些程序的存储地址等信息。

系统分析

所有 eBinder 系统分析工具也可用于多线程应用程序:EvenTrek、PartScope 和实时分析器。
EvenTrek 可用于获取进程内线程组的跟踪信息,以及系统程序或其他内核应用内的线程的跟踪信息,还有其他信息。
PartScope 可用于引用信息,例如进程和加载的模块、进程内部的线程信息以及进程使用的不同操作系统资源类型的信息等。
实时分析器可用于分析系统中的程序瓶颈。可以获取每个线程的分析结果,以便轻松了解哪些线程经常执行哪些功能。

eT-Kernel:平台开发支持

eBinder 的平台打包功能可以有效地用于 eT-Kernel 平台。
该 eSOL 标准支持大型项目的分布式开发, 这类项目都是由多个团队共同完成的多进程软件应用程序的开发。
PackageBuilder 和 PackageInstaller 工具将支持该标准。
使用 eSOL RTOS 中标配的平台创建模板信息可以轻松创建平台包。

多线程多进程开发中的 eSOL 开发工具使用示例


线程级调试

在多核处理器中,线程同步和精确隔离尤其重要。您可以使用线程级调试器来帮助您解决一些软件设计问题。
您可以为每个线程都打开一个调试窗口, 您可以在不停止整个系统的情况下中断某个特定的线程, 或者单步执行某个线程以便并行验证多个线程. 即使不知道目标任务正在哪个 CPU 内核上运行,您也可以进行调试。
由于 eBinder 会自动跟踪线程向另一个 CPU 内核的迁移,这样您就可以专注于调试线程了。


不同 CPU 内核和整个系统上的程序之间的分析

使用系统分析工具 EvenTrek 以图形方式检查在不同 CPU 内核上运行的程序的行为。俯视图显示了整个系统的跨程序协作或操作。下图是一个 EvenTrek 截屏,显示了在具有四个 CPU 内核的多核处理器上运行的程序的分析结果,其中线程和对象根据内核进行颜色编码。

下图中的图表重点关注在两个特定 CPU 内核上运行的线程和对象的行为。EvenTrek 可以过滤指定的 CPU 内核以进行清晰的显示,并通过将范围缩小至分析目标来轻松识别行为。

下面的图表重点关注在一个特定 CPU 内核上运行的线程和对象的行为。对一个在专用内核上运行的程序进行分析时,在此显示模式下进行调试。例如,当安全应用部件的硬实时任务绑定到专用内核时,可以使用此显示。


Back to top


想要查找更多信息?

联系我们