本文主要是介绍SylixOS write 0 字节问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1 问题描述
在移植中间件过程中,在SylixOS调用write函数写入0字节的数据到文件中时,会导致对应的中间件测试用例失败,失败的原因是文件系统中的write函数在Linux系统和SylixOS有区别,两种实现的差别如下。
2 write函数的实现机制
2.1 SylixOS实现机制
在SylixOS下通过write 函数写数据到普通文件中时,第一步会判断写入的数据是否为0,如果是0直接返回失败,具体实现如程序清单 2.1所示。
程序清单 2.1 SylixOS文件系统写函数
static ssize_t __ramFsPWrite (PLW_FD_ENTRY pfdentry, PCHAR pcBuffer, size_t stNBytes, off_t oftPos) { PLW_FD_NODE pfdnode = (PLW_FD_NODE)pfdentry->FDENTRY_pfdnode; PRAM_NODE pramn = (PRAM_NODE)pfdnode->FDNODE_pvFile; ssize_t sstWriteNum = PX_ERROR;
|
这篇关于SylixOS write 0 字节问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!