嵌入式Linux中文站

混合文件系统(ramdisk+jffs)

阅读(169)

背景知识: 一、Ramdisk文件系统: 1.掉电丢失 2.读写速度高 3.数据存储到内存 二、jffs文件系统 1.掉电不丢失 2.可存储于NOR NAND,但是适用于NOR 3.数据存储于flash 三、ramdisk+jffs启动流程: 以ramdisk为真正根文件系统,jffs为jffs格式的数据分区。 内核起来后,挂载ramdisk,再挂载jffs数据分区到ramdisk的文件系统 四、混合文件系统意义 通常jffs分区里面存放应用程序和配置文件。 ramdisk制作成一个基本的文件系统,不同项

Linux文件系统性能优化

阅读(72)

由于各种的I/O负载情形各异,Linux系统中文件系统的缺省配置一般来说都比较中庸,强调普遍适用性。然而在特定应用下,这种配置往往在I/O性能方面不能达到最优。因此,如果应用对I/O性能要求较高,除了采用性能更高的硬件(如磁盘、HBA卡、CPU、MEM等)外,我们还可以通过对文件系统进行性能调优,来获得更高的I/O性能提升。总的来说,主要可以从三个方面来做工作: 1、Disk相关参数调优 2、文件系统本身参数调优 3、文件系统挂载(mount)参数调优 当然,负载情况不同,需要结合理论分析与充分的测试和实

linux文件系统之mount流程分析

阅读(117)

本质上,Ext3 mount的过程实际上是inode被替代的过程。 例如,/dev/sdb块设备被mount到/mnt/alan目录。命令: mount -t ext3 /dev/sdb /mnt/alan。 那么mount这个过程所需要解决的问题就是将/mnt/alan的dentry目录项所指向的inode屏蔽掉,然后重新定位到/dev/sdb所表示的inode索引节点。 在没有分析阅读linux vfs mount代码的时候,我的想法是修改dentry所指向的inode索引节点,以此实现mount文件

Linux内核空间-用户空间通信之debugfs

阅读(169)

一、debugfs文件系统简介 debugfs虚拟文件系统是一种内核空间与用户空间的接口,基于libfs库实现,专用于开发人员调试,便于向用户空间导出内核空间数据(当然,反方向也可以)。debugfs在linux内核版本2.6.10引入,作者是Greg Kroah-Hartman。 与procfs和sysfs不同,前者主要提供进程信息(当然后来又加入设备、内存、网络等信息,比较杂乱),后者主要提供设备信息,且有一个文件提供一个值的规则,是Linux通用设备模型的影射。debugfs没有类似的限制,开发者可

Linux 文件系统:procfs, sysfs, debugfs 用法简介

阅读(110)

1前言 内核中有三个常用的伪文件系统:procfs,debugfs和sysfs。 procfs The proc filesystem is a pseudo-filesystem which provides an interface to kernel data structures. sysfs The filesystem for exporting kernel objects. debugfs Debugfs exists as a simple way for kernel develope

调试内核打印debugfs

阅读(199)

前几天调试时候,因为处理速度问题,师父给的建议是把应用中不重要的打印删掉。内核中也不要直接用printk,可以把想查看的数据通过debugfs来查看。 debugfs的用法和sysfs的用法相似。***在注册制好后,路径在/sys/kernel/debug路径下。 使用方法: 添加头文件linux/debugfs.h 1)注册debugfs:struct dentry* debugfs_create_dir(const char *name, struct dentry *parent); 注册通常放在m

Linux内核里的DebugFS

阅读(176)

DebugFS,顾名思义,是一种用于内核调试的虚拟文件系统,内核开发者通过debugfs和用户空间交换数据。类似的虚拟文件系统还有procfs和sysfs等,这几种虚拟文件系统都并不实际存储在硬盘上,而是Linux内核运行起来后才建立起来。 通常情况下,最常用的内核调试手段是printk。但printk并不是所有情况都好用,比如打印的数据可能过多,我们真正关心的数据在大量的输出里不是那么一目了然;或者我们在调试时可能需要修改某些内核变量,这种情况下printk就无能为力,而如果为了修改某个值重新编译内核或

linux 加载ntfs和fat32分区

阅读(116)

前言:关于加载ntfs和fat文件系统的文章极多,但写的不太明确,新手上路还是有点困难,重新实验以及一些比较常用的命令一起解说,希望对新手有所帮助。一、最基本的几个命令; 1、查看磁盘分区情况的命令fdisk -l ; 比如: 代码: [root@localhost beinan]# /sbin/fdisk -l Disk /dev/hda: 80.0 GB, 80026361856 bytes 255 heads, 63 sectors/track, 9729 cylinders Units = cyl