目录
VxWorks提供了一个完全支持ANSI C的标准I/O包(stdio.h),因此与Unix和Windows的标准I/O包兼容。
1.VxWorks配置标准I/O
对于VxWorks内核,主要的传统标准I/O函数由一个VxWorks组件提供,少数的函数由其他组件提供。这种模块化的方法使系统仅包含常用的函数功能组件,从而降低对系统内存的占用。
如下组件提供了标准的I/O函数:
- INCLUDE_ANSI_STDIO:提供ANSI标准I/O函数。
- INCLUDE_FORMATTED_IO:提供fioLib库(非缓冲的),包括了非ANSI标准的I/O函数,如oprintf()和fdprintf()。
fioLib中的函数不适用由标准I/O库ansiStdio所提供的缓冲I/O机制。所以就算VxWorks中没有包括ansiStdio库,也可以使用fioLib中的函数。
2.关于标准I/O和缓冲
当应用程序执行很多小数据量的读写操作时,使用由标准I/O提供的带缓冲的I/O函数将比基础的不具备缓冲的I/O函数有更好的性能。
尽管VxWorks I/O系统是高效的,但是对于每个低层次调用(基础I/O)还是存在一些问题。首先,I/O系统从设备独立的用户调用(read()、write())需要转换到

本文详细介绍了VxWorks操作系统中的标准I/O配置及缓冲机制。VxWorks通过模块化方式提供ANSI标准I/O函数,兼容Unix和Windows。文章解释了标准I/O与非缓冲I/O的区别,以及如何通过fopen()、fdopen()等函数进行文件操作。
2090

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



