熟悉linux的目录结构及文件内容,对了解linux的启动过程有很大帮助,同时学习思路也会清晰明朗很多。下面介绍SmartARM2200开发板中uCLinux的目录结构:
/ 根目录,在Linux下所有的目录都放在该根目录下。
├─bin drwxr-xr-x 放置用户可执行的二进制文件。
│ ├─busybox -rwxr--r-- 标准Linux工具的一个可执行文件,BusyBox包含了很多的工具,如以下的chmod、ifconfig等命令。
│ ├─chmod lrwxrwxrwx 链接到busybox
│ ├─expand -rwxr-xr-x expand可执行文件(将输入制表符转换为空格的命令)。
│ ├─gdbserver -rwxr--r-- gdbserver可执行文件。
│ ├─ifconfig lrwxrwxrwx 链接到busybox
│ ├─init -rwxr-xr-x busybox的init,完成核内引导以后,就开始运行init程序,完成系统的初始化工作,它的进程号是1,是所有其他进程的起点。
│ ├─insmod lrwxrwxrwx 链接到busybox
│ ├─kill lrwxrwxrwx 链接到busybox
│ ├─killall lrwxrwxrwx 链接到busybox
│ ├─ln lrwxrwxrwx 链接到busybox
│ ├─lsmod lrwxrwxrwx 链接到busybox
│ ├─mknod lrwxrwxrwx 链接到busybox
│ ├─mktemp lrwxrwxrwx 链接到busybox
│ ├─more lrwxrwxrwx 链接到busybox
│ ├─mount lrwxrwxrwx 链接到busybox
│ ├─ping lrwxrwxrwx 链接到busybox
│ ├─portmap -rwxr--r-- portmap可执行文件。
│ ├─reboot -rwxr-xr-x reboot可执行文件。
│ ├─rmmod lrwxrwxrwx 链接到busybox
│ ├─route lrwxrwxrwx 链接到busybox
│ ├─sh -rwxr-xr-x shell执行文件
│ ├─telnet lrwxrwxrwx 链接到busybox
│ ├─umount lrwxrwxrwx 链接到busybox
│ ├─vi lrwxrwxrwx 链接到busybox
│ └─zlg_ffs -rwx------ zlg_ffs驱动模块
├─dev drwxr-xr-x 放置设备文件。
│ ├─console crw-r--r-- 控制台。
│ ├─ram0 rw------- ram0,挂载ramfs镜像。
│ ├─ram1 brw------- ram1,挂载/var目录。
│ ├─ttyS0 crw-r--r-- 串口0设备。
│ └─zlg_ffs brw-r--r-- zlg_ffs设备,主要是NandFlash设备。
├─etc drwxr-xr-x 放置系统主要的设置文件。
│ ├─fstab -rw-r--r-- 配置文件,系统准备装载的文件系统。
│ ├─inetd.conf -rw-r--r-- 保存了系统提供internet服务的数据库。
│ ├─inittab -rw-r--r-- init进程通过解析/etc/inittab并参照默认或设定的运行级运行/etc/rc中的脚本。
│ ├─motd -rw-r--r-- 登陆信息显示数据,就是那个uCLinux的文本图标。
│ ├─mtab -rw-r--r-- 记载的是现在系统已经装载的文件系统,包括操作系统建立的虚拟文件等。
│ ├─passwd -rw-r--r-- 用户的关键信息,好像在uClinux下不使用。
│ ├─ramfs.img -rw-r--r-- ramfs映像。文件
│ ├─rc -rw-r--r-- 脚本文件,Linux启动后,将会顺序执行该文件内的命令。主要是加载文件系统及创建/var文件夹。
│ └─version -rw-r--r-- cpu的版本号。
├─home drwxr-xr-x 空目录,默认的用户家目录。
├─lib drwxr-xr-x 空目录,放置系统使用的函数库。
├─mnt drwxr-xr-x 空目录,默认载入点。
├─proc dr-xr-xr-x 内存的虚拟文件系统,保存当前运行系统的动态资料,该系统并不真正存在块设备上,该目下的文件也并没有存放在设备中。
│ ├─1 dr-xr-xr-x 进程1的当前工作情况及信息,以下数字目录类似。
│ ├─2 dr-xr-xr-x
│ ├─26 dr-xr-xr-x
│ ├─3 dr-xr-xr-x
│ ├─4 dr-xr-xr-x
│ ├─5 dr-xr-xr-x
│ ├─6 dr-xr-xr-x
│ ├─bus dr-xr-xr-x
│ ├─cmdline -r--r--r-- 加载kernel执行的相关参数。
│ ├─cpuinfo -r--r--r-- 本机CPU的相关信息,包括频率、类型与运算功能等。
│ ├─devices -r--r--r-- 记录了系统各主要设备的主要代号,与mknod有关。
│ ├─dma -r--r--r-- 这个文件列出由驱动程序保留的DMA通道和保留它们的驱动程序名称。
│ ├─driver dr-xr-xr-x 这个文件列出字符和块设备的主设备号,以及分配到这些设备号的设备名称。
│ ├─execdomains -r--r--r-- 内核当前支持的执行域信息列表。
│ ├─filesystems -r--r--r-- 列出可供使用的文件系统类型。
│ ├─fs dr-xr-xr-x 文件系统特别数据。
│ ├─interrupts -r--r--r-- 当前系统上的IRQ分配。
│ ├─iomem -r--r--r-- 每个物理(IO)设备上的记忆体(RAM或者ROM)在系统内存中的映射信息
│ ├─ioports -r--r--r-- 列出了诸如磁盘驱动器,以太网卡和声卡设备等多种设备驱动程序登记的许多I/O端口范围。
│ ├─kcore -r-------- 内存的大小。
│ ├─kmsg -r-------- 这个文件用于检索用printk生成的内核消息。
│ ├─ksyms -r--r--r-- 列出了已经登记的内核符号;这些符号给出了变量或函数的地址。
│ ├─loadavg -r--r--r-- 几个不同的时间间隔计算的系统平均负载,这就如同uptime命令显示的结果那样。
│ ├─locks -r--r--r-- 包含在打开的文件上的加锁信息。
│ ├─meminfo -r--r--r-- 使用free列出的内存状态的信息。
│ ├─misc -r--r--r-- 报告用内核函数misc_register登记的设备驱动程序。
│ ├─modules -r--r--r-- 可加载内核模块的信息。
│ ├─mounts lrwxrwxrwx 系统已经载入的数据,mounts -> self/mounts。
│ ├─net dr-xr-xr-x 记录了不同网络接口(interface)上的各种包的记录。
│ ├─partitions -r--r--r-- 记录当前所有的分区。
│ ├─self lrwxrwxrwx self -> 26
│ ├─slabinfo -rw-r--r-- 系统中所有活动的slab缓存信息。
│ ├─stat -r--r--r-- 包含了所有CPU活动的信息,该文件中的所有值都是从系统启动开始累计到当前时刻。
│ ├─swaps -r--r--r-- 记录系统挂载的内存所在的分区。
│ ├─tty dr-xr-xr-x TTY端口信息。
│ ├─uptime -r--r--r-- linux命令:显示系统下列信息:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。
│ └─version -r--r--r-- 内核的版本。
├─sbin lrwxrwxrwx 放置系统管理员用到的执行命令,一般给root使用。链接到/usr/bin。
├─tmp lrwxrwxrwx 正在执行的程序临时放置文件的地方。链接到/var/tmp。
├─usr drwxr-xr-x 包含系统的主要程序,在SmartARM2200中,只有该目录是可写并能掉电保存的(存在NandFlash中)。
│ ├─bin drwxr-xr-x 放置可执行的文件。
│ │ └─rtl8019 -rwxr-xr-x 网卡芯片RT8019的驱动模块。
│ ├─boot drwxr-xr-x 放置Linux系统启动的时用到的文件。
│ │ ├─init.img -rwxr-xr-x ramfs镜像文件。
│ │ ├─k9fxx08.bin -rwxr-xr-x NandFlash驱动程序。
│ │ └─linux.bin -rwxr-xr-x 内核镜像,二进制格式。
│ ├─etc drwxr-xr-x 放置用户的设置文件。
│ │ └─rc -rwxr-xr-x Linux启动后,将会顺序执行该文件内的命令。主要是加载网络模块,设置网络参数等。
│ └─zlg_ftp.ini -rwxr-xr-x zlg_boot使用ftp方式下载时,SmartARM2200使用该文件设定的IP等网络参数。
└─var drwxr-xr-x 放置系统在执行过程中经常变化的文件。
├─empty drwxr-xr-x 空目录
├─lock drwxr-xr-x 空目录,某些设备具有一次性写入的特性,为了避免被其他人干扰正在运行的操作,因此会将该设备锁起来,以确定该设备只能被单一程序使用。
├─log drwxr-xr-x 空目录
├─run drwxr-xr-x 空目录,某些程序或者服务启动后,会将他们的PID放在这个目录下。
└─tmp drwxr-xr-x 空目录,请看/tmp文件夹的介绍。
文章评论(0条评论)
登录后参与讨论