君正X2100 RTOS 文件系统

2024-04-24 14:28
文章标签 文件系统 rtos 君正 x2100

本文主要是介绍君正X2100 RTOS 文件系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

官方参考文档:

/doc/开发使用说明//1_FreeRTOS工程编译说明.pdf

/doc/开发使用说明/FreeRTOS_FAT文件系统制作说明文档.pdf

/doc/开发使用说明/文件系统 API.pdf

一、创建和烧录文件系统

需要在ubuntu的PC上执行。 

1、创建文件系统

创建一个文件系统用于存放APP bin文件,文件系统大小3MB。命令如下:

mkfs.fat -S 4096 -C rootfs.img -C 3072

3072表示文件大小,单位1KB. 

2、存放文件

先挂载文件系统,然后存放一个测试文件,编辑文件、保存,再卸载文件系统。命令如下:

mkdir rootfs
sudo mount -t vfat rootfs.img ./rootfs
cd rootfs/
sudo touch test.txt
sudo vi test.txt
cd ..
sudo umount ./rootfs
3、配置ramdisk设备

进入配置界面->外设->ramdisk设备->勾选ramdisk Device。

查看配置,默认即可。 

参考此文档:/doc/开发使用说明/FreeRTOS_FAT文件系统制作说明文档.pdf

4、配置文件系统

进入配置界面->设备文件系统->勾选支持fat文件系统。

进入配置->勾选fat文件系统 挂载分区0->修改分区0名称(与之前创建的文件系统名一样)

注:可以创建多个文件系统,挂在多个分区。 

参考此文档:/doc/开发使用说明/FreeRTOS_FAT文件系统制作说明文档.pdf

5、烧写文件系统到设备

配置烧录工具,配置->SFC-分区信息->添加分区。

配置->POLICY->文件系统镜像。

二、测试

使用终端软件(如SecureCRT)连接设备调试串口, 

1、查看文件系统

列出文件系统:

$ ls
Type/Size      Name
<DIR>          rootfs
<DIR>          sys

设备上存在两个文件系统,sys是固件自带的。

查看文件系统大小:

$ df /rootfs/
MonutOn: "/rootfs/"
Disk-free: 2.9 MB, Disk-total: 2.9 MB  [ 756 block, 4096 bytes per block ]
$ 
$ df /sys/
MonutOn: "/sys/"
Disk-free: 0.0 KB, Disk-total: 0.0 KB  [ 0 block, 1 bytes per block ]
2、查看rootfs里的文件及内容
$ cd rootfs/
$ ls
Type/Size      Name
6              text.txt
$ cat text.txt 
hello

可以看到rootfs中有一个text.txt文件,文件里的内容为hello。

3、程序读取文件内容

包含头文件:

#include <dfs_posix.h>

代码:

    int fd;int size;char buffer[100];char *filename = "/rootfs/text.txt";fd = open(filename, O_RDONLY, 0);if(fd >= 0){printf("text: open: fd: %d.\n", fd);size = read(fd, buffer, sizeof(buffer));printf("text: first read: size: %d [%s]\n", size, buffer);close(fd);}else{printf("text: open fail.\n", fd);}

执行结果:

[0.053547] text: open: fd: 3.
[0.053989] text: first read: size: 6 [hello

 


 

这篇关于君正X2100 RTOS 文件系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/932009

相关文章

【Linux文件系统】被打开的文件与文件系统的文件之间的关联刨析总结

操作系统管理物理内存以及与外设磁盘硬件进行数据的交换 操作系统如何管理物理内存呢? 其实操作系统内核先对内存先描述再组织的!操作系统管理内存的基本单位是4KB,操作系统会为每一个4KB大小的物理内存块创建一个描述该4KB内存块的struct page结构体,该结构体存储着这4KB内存块的属性信息,通过管理struct page来对内存进行管理,page结构体的大小比较小,OS通常将它们组成一个

【操作系统】第五章 文件系统

文件系统 5.1 概述5.2 文件5.2.1 文件及文件系统的概念5.2.2 文件的属性5.2.3 文件的操作5.2.4 文件的类型文件分类 5.3 文件的访问文件的逻辑结构顺序文件顺序文件的优缺点 索引文件索引顺序文件直接文件和哈希文件 5.4 文件保护5.5 文件目录文件控制块(FCB)文件控制块的内容 文件目录索引结点磁盘索引结点内存索引结点 单级目录结构二级目录结构多级目录结构

第四章 文件系统 文件系统基础

原文地址:第四章 文件系统 —— 王道操作系统 – Beatless 目录 一、文件系统基础 文件的基本概念 文件控制块和索引节点 文件的操作 文件保护 文件的逻辑结构 文件的物理结构 一、文件系统基础 文件的基本概念 文件是以硬盘为载体的存储在计算机上的信息集合,文件可以是文本文档、图片或程序等。 在系统运行的时候,计算机以进程为基本单位进行资源的调度和分配;而在用户

Linux驱动开发笔记(十三)Sysfs文件系统

文章目录 前言一、Sysfs1.1 Sysfs的引入1.2 Sysfs的目录结构1.2 Sysfs的目录详解1.2.1 devices1.2.2 bus1.2.3 class1.2.4 devices、bus、class目录之间的关系1.2.5 其他子目录 二、Sysfs使用2.1 核心数据结构2.2 相关函数2.2.1 kobject_create_and_add2.2.2 kobjec

Node.js文件系统之文件监听

4.监听文件       fs.watchFile()       fs.watchFileSync()       fs.watch       FSWatcher类 // 导入模块const fs = require('fs');// 监听文件的变化//curr当前的修改的状态,prev上一次文件修改的状态// interval:1000每隔一段时间检测文件变化fs.watc

云计算【第一阶段(18)】磁盘管理与文件系统

一、磁盘基础 磁盘(disk)是指利用磁记录技术存储数据的存储器。 磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。 早期计算机使用的磁盘是软磁盘(Floppy Disk,简称软盘),如今常用的磁盘是硬磁盘(Hard disk,简称硬盘)。 也就是现在说的硬盘就相当于是说我们的磁盘。 二、磁盘结构 磁盘分为: 机械硬盘(HDD)和固态硬盘(SS

Linux开发讲课7---Linux sysfs文件系统

一、sysfs文件系统介绍         Sysfs(System Filesystem)是Linux内核提供的一种虚拟文件系统,用于向用户空间公开有关设备和驱动程序的信息。它类似于/proc文件系统,但是专注于设备和驱动程序信息,而非进程信息。         Sysfs通过文件和目录的方式组织信息,其中每个文件或目录对应于系统中的一个设备、驱动程序或者其他内核对象。这些文件通常包含有关设

windows下文件系统重定向机制

文件系统重定向是 Windows 操作系统中的一种机制,用于确保较旧的 32 位应用程序在 64 位 Windows 系统上运行时能够正确访问所需的系统文件和资源。让我们具体聊一下这个机制的细节: 什么是文件系统重定向 在 Windows 操作系统上,存在两种类型的系统目录: C:\Windows\System32:用于存放 64 位系统文件。C:\Windows\SysWOW64:用于存放

EtherCAT主站IgH解析(二)-- 如何将Igh移植到Linux/Windows/RTOS等多操作系统

版权声明:本文为本文为博主原创文章,转载请注明出处 https://www.cnblogs.com/wsg1100 如有错误,欢迎指正。 本文简单介绍如何将 igh 移植到 zephyr、freertos、rtems、rtthread等RTOS ,甚至 windows 上。 ##前言 目前,EtherCAT商用主站有:Acontis、TwinCAT3、KPA、Codesys等,开源EtherCA

剖析Docker文件系统:Aufs与Devicemapper

http://www.infoq.com/cn/articles/analysis-of-docker-file-system-aufs-and-devicemapper Docker在启动容器的时候,需要创建文件系统,为rootfs提供挂载点。最初Docker仅能在支持Aufs文件系统的Linux发行版上运行,但是由于Aufs未能加入Linux内核,为了寻求兼容性、扩展性,Dock