B_QuRT_User_Guide(7)

240 篇文章 11 订阅

4 Processes

一个进程是一个可执行程序、一个地址空间和一个或多个线程的组合。一个进程中的每个线程都共享进程的内存区域。
一个进程不能访问另一个进程的内存,除非通过使用操作系统定义的资源共享机制。QuRT使用QDI框架在进程间共享资源。
进程在QuRT中被表示为共享对象,并具有以下属性。

  • 名称 - 作为QuRT系统的一部分,已经加载在内存中的进程对象的字符串标识。
  • Flags - 用于指定新创建的进程的属性的位数组。这些属性以定义的符号表示,这些符号映射到32位标志值的第0-31位。将单个属性符号放在一起,可以指定多个属性。
    当一个进程被创建时,它自动开始运行指定可执行文件中的代码。一个识别进程的标识值被分配给一个新创建的进程。
    进程对象支持下列QuRT操作。
  • qurt_process_attr_init()
  • qurt_process_attr_set_executable()
  • qurt_process_attr_set_flags()
  • qurt_process_cmdline_get()
  • qurt_process_create()
  • qurt_process_get_id()
  • qurt_process_attr_set_max_threads() - qurt_process_attr_set_ceiling_prio() - qurt_process_get_thread_count()
  • qurt_process_get_thread_ids()
  • qurt_process_attr_get()
  • qurt_process_dump_register_cb()
  • qurt_process_dump_deregister_cb() - 数据类型

4.1 qurt_process_attr_init()

4.1.1 Function Documentation

4.1.1.1 static void qurt_process_attr_init ( qurt_process_attr_t ∗ attr )

当一个线程被创建时,初始化设置进程属性的结构。
在属性结构被初始化后,该结构中的各个属性可以使用进程属性操作显式设置。
表4-1列出了由初始化操作设置的默认属性值。
在这里插入图片描述
相关数据类型
qurt_process_attr_t
参数
在这里插入图片描述
返回值
None.
依赖关系
None.

4.2 qurt_process_attr_set_executable()

4.2.1 Function Documentation

4.2.1.1 void qurt_process_attr_set_executable ( qurt_process_attr_t ∗ attr, char ∗ name )

设置指定进程属性结构中的进程名称。
进程名称识别已经作为QuRT系统的一部分加载到内存中的进程对象。注意:进程对象在构建时被纳入到QuRT系统中。
返回值
qurt_process_attr_t
参数
在这里插入图片描述
返回值
None.
依赖关系
None.

4.3 qurt_process_attr_set_flags()

4.3.1 Function Documentation

4.3.1.1 int qurt_thread_join ( unsigned int tid, int ∗ status )

设置指定进程属性结构中的进程属性。过程属性以定义的符号表示,这些符号映射到32位标志值的第0到31位。多个属性是通过将单个属性符号OR在一起而指定的。
参数
在这里插入图片描述
返回值
None.
依赖关系
None.

4.4 qurt_process_cmdline_get()

4.4.1 Function Documentation

4.4.1.1 void qurt_process_cmdline_get ( char ∗ buf, unsigned buf_siz )

获取与当前进程相关的命令行字符串。只要在QuRT安装过程中进行调用,并且要求程序在仿真环境中运行,就可以使用此函数检索Hexagon仿真器命令行参数。
如果该函数修改了所提供的缓冲区,它就会将该字符串归零。该函数有可能不修改所提供的缓冲区,所以调用者在调用前必须将buf[0]设置为一个NULL字节。当命令行长于所提供的缓冲区时,将返回一个截断的命令行。
参数
在这里插入图片描述
返回值
None.
依赖关系
None.

4.5 qurt_process_create()

4.5.1 Function Documentation

4.5.1.1 int qurt_process_create ( qurt_process_attr_t ∗ attr )

创建一个具有指定属性的进程,并启动该进程。
该进程执行指定的可执行ELF文件中的代码。
相关数据类型
qurt_process_attr_t
参数
在这里插入图片描述
返回值
None.
依赖关系
None.

4.6 qurt_process_get_id()

4.6.1 Function Documentation

4.6.1.1int qurt_process_get_id ( void )

返回当前线程的进程标识符。
返回值
None.
依赖关系
None.

4.7 qurt_process_attr_set_max_threads()

4.7.1 Function Documentation

4.7.1.1 static void qurt_process_attr_set_max_threads ( qurt_process_attr_t ∗ attr, unsigned max_threads )

设置指定进程属性结构中允许的最大线程数。
相关数据类型
qurt_process_attr_t
参数
在这里插入图片描述
返回值
None.
依赖关系
None.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值