参数
| 项 |
描述 |
| 格式 |
指定包含以下两种类型的对象之一或两者的字符串:
- 纯字符,它们将复制到消息输出流。
- 转换规范,每个规范都会导致 0 值 参数列表中检索 0 个或多个项。 每个转换规范都由一个% (百分号) 后跟一个字符组成,该字符指示要应用的转换类型:
- %
- 不进行转换。 打印%。
- 德岛
- 接受整数 值 并将其转换为带符号的十进制表示法。
- u
- 接受整数 值 并将其转换为无符号十进制表示法。
- o
- 接受整数 值 并将其转换为无符号八进制表示法。
- X
- 接受整数 值 并将其转换为无符号十六进制表示法。
- 请
- 接受 值 作为字符串 (字符指针) ,并打印该字符串中的字符,直到迂到 \ 0 (空字符) 为止。 值 必须为非空值,并且字符串的最大长度限制为 UP_MAXSTR 个字符。
不支持字段宽度或精度转换规范。在 /usr/include/sys/uprintf.h 文件中定义了以下常量:
- UP_MAXSTR
- UP_MAXARGS
- UP_MAXCAT
- UP_MAXMSG
格式 字符串可能包含从 0 到由 UP_MAXARGS 常量指定的转换规范数的值。 格式 字符串的最大长度是由 UP_MAXSTR 常量指定的字符数。 格式 必须为非空。
构造的内核消息的最大长度限制为由 UP_MAXMSG 常量指定的字符数。 如果消息数大于 UP_MAXMSG 常量指定的字符数,那么将废弃这些消息。
|
| VALUE |
以数组的形式指定要转换的值。 值 参数列表中项的数量,类型和顺序应该与 格式 字符串中的转换规范相匹配。 |
描述
乌普林特夫 内核服务会提交内核消息请求。 在成功提交请求后, 乌普林特夫德 守护程序将根据请求的 格式 和 值 参数来构造消息。 然后, 乌普林特夫德 守护程序会将消息写入进程控制终端。
执行环境
乌普林特夫 内核服务只能从 流程 环境中进行调用。
返回值
| 项 |
描述 |
| 重大安全事件数量 |
指示操作成功。 |
| ENOMEM |
指示内存不可用,无法缓冲请求。 |
| ENODEV |
指示不存在用于该进程的控制终端。 |
| ESRCH |
指示 乌普林特夫德 守护程序未处于活动状态。 无法提交任何请求。 |
| EINVAL |
指示字符串 值 string pointer is null 或者字符串 值 参数大于 UP_MAXSTR 常量指定的字符数。 |
| EINVAL |
指示下列其中一项:
- 格式 字符串指针为空。
- 格式 字符串中的最大字符数大于 UP_MAXSTR 常量指定的数字。
- 包含在 格式 字符串中的转换规范数大于 UP_MAXARGS 常量指定的数目。
|