嵌入式Linux中文站

linux文件系统之mount流程分析

阅读(92)

本质上,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

阅读(153)

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

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

阅读(89)

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

阅读(174)

前几天调试时候,因为处理速度问题,师父给的建议是把应用中不重要的打印删掉。内核中也不要直接用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

阅读(164)

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

linux 加载ntfs和fat32分区

阅读(92)

前言:关于加载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

比起 Windows,怎样解读 Linux 的文件系统与目录结构?

阅读(176)

Linux 和 Windows 的文件系统有些不同,在学习使用 Linux 之前,若能够了解这些不同,会有助于后续学习。 本文先对 Windows 和 Linux 上面文件系统原理、组织概念进行区分,并给出例子、列举两者的优缺点以具体说明,最后较为详细地介绍了 Linux 系统的目录结构。 Windows 和 Linux 文件系统 下面将介绍启动 Windows 和 Linux 后,在文件系统的角度上,它们分别是怎样看待自己世界的。 访问原理 在 Windows 系统中, 一切东西都是存放在硬盘上的。启动

Linux内核中的proc文件系统

阅读(147)

简介 procfs文件系统是内核中的一个特殊文件系统。它是一个虚拟文件系统: 它不是实际的存储设备中的文件,而是存在于内存中。procfs中的文件是用来允许用户空间的程序访问内核中的某些信息(比如进程信息在 /proc/[0-9]+/ 中),或者用来做调试用途( /proc/ksyms ,这个文件列出了已经登记的内核符号,这些符号给出了变量或函数的地址。每行给出一个符号的地址,符号名称以及登记这个符号的模块。程序ksyms、insmod和kmod使用这个文件。它还列出了正在运行的任务数,总任务数和最后分配