This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] 编译器/TMS320C6674:RTFS 文件描述符>17一次打开?

Guru**** 2044370 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/735807/compiler-tms320c6674-rtfs-file-descriptors-17-open-at-a-time

器件型号:TMS320C6674
主题中讨论的其他器件:66AK2G02

工具/软件:TI C/C++编译器

您好!

   我使用的是 CCS v7.4。 我知道 RTFS 无法打开超过17个文件、但 我需要在代码中打开32个文件。 如何克服这一障碍?

   我使用  的是 ti-cgt-C6000-8.1.0编译     器、xdctools_3_32_00_06和 BIOS_6_45_01_29。  

相关信息

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您将哪个版本的处理器 SDK 与 C6674 DSP 配合使用? 我们在 Processor SDK RTOS 中仅支持 FATFS 与 TI RTOS、因此我不知道您在帖子中提到的 RTFS 产品。 您能不能指出什么示例和 RTFA 文件系统库。

    如果这是开源产品或第三方产品、则我们无法在器件论坛中支持该组件。

    此致、
    Rahul
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    我正在使用66AK2G02板和 rts6600_elf.lib。

    相关信息
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    我正在使用66AK2G02板和 rts6600_elf.lib。

    相关信息
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我缺少并与之混淆的详细信息是术语 RTFS。 RTOS 环境中的术语是指一种类型的文件系统、我正在尝试了解这是在目标上使用 SD/MMC 或 USB 还是任何其他海量存储器实现的、还是指主机通过 JTAG 仿真器进行的文件 IO 操作 使用 TI 编译器的 RTS 库。

    请提供这一说明,以便我们作出相应的答复。

    此致、

    Rahul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

       它使用 TI 编译器的 RTS 库通过我的 PC 上的 JTAG 仿真器进行的文件 I/O 操作。

    相关信息

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 user="蝶 形计算] 它使用 TI 编译器的 RTS 库从我的 PC 对 JTAG 仿真器进行的文件 I/O 操作。[/quot]根据  C6000 C/C++优化编译器 v8.x 用户指南中的第9.1.6节"允许的打开文件数 "、您需要增大  _nfile 宏的值并重新编译运行时间 库。

      由于_nfile 的值包括三个预定义流 stdin、stdout、stderr、因此您需要将 _nfile 设置为>= 35。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    我在 stdio.h 中将_nfile 的值更改为35、并重建了 rts6600_elf.lib、但仍无法打开超过17个文件...
    我是否在其他软件包中更改了_nfile 的值并重新生成了它? 如果是、如何重建它? 我也遇到了 xdctools_3_32_00_06_core 中的_nfile。


    相关信息
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    butterfly 说:
    我在 stdio.h 中将_nfile 的值更改为35、并重建了 rts6600_elf.lib、但仍无法打开超过17个文件...

    我也这样做了、 使用 C6000编译器 v8.2.4测试裸机 C66程序、并且遇到同样的问题、无法打开超过17个文件。

    [引用 user="buttercy">我是否在其他软件包中更改了_nfile 的值并再次重建了它?当我单步进入调试器中的 fopen()调用以调查发现 lib/src/file.h 中还有_NSTREAM 常量也需要从20增加到 35.

    当 lib/src/stdio.h 中的_nfile 和 lib/src/file.h 中的_NSTREAM 都增加到35时、在重新编译 rts6600_elf.lib 后能够打开32个文件。

    [引用 user="butterfly">我也在 xdctools_3_32_00_06_core 中遇到了_nfile。我需要检查 SYS/BIOS 是否使用备用运行时库。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 user="butterfly"]我是否在其他软件包中更改了_nfile 的值并重新生成了它? 如果是、如何重建它? 我也遇到了 xdctools_3_32_00_06_core 中的_nfile。我创建了一个 C66程序、该程序使用编译器 v8.2.4和 SYS/BIOS 6.45.01.29和 XDCtools 3.32.00.06内核。

    编译器 RTS rts6600_elf.lib 根据之前的帖子进行重建、并将_nfile 和_NSTREAM 设置为35、SYS/BIOS 程序能够使用 fopen 创建32个文件。 链接器映射文件显示 fopen()是从 rts6600_elf.lib 链接的。

    搜索 XDCtools 3.32.00.06内核时、我看不到_nfile。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    切斯特、您好!

           我也将_NSTREAM 的值更改为35、现在我能够打开32个文件。  

    是的,XDCtools 中没有_nfile,我的 bad,我 在编译器版本8.1.3中看到它。

    谢谢你

    相关信息