BBS水木清华站∶精华区

发信人: Hanky@FruitTea1 (骗谁啊?), 信区: Linux 
标  题: kernel source code 的介绍 (二) 
发信站: 果茶小站 (Thu May 30 00:51:45 1996) 
 
这些是 Linux 所支援的 file systems: 
 
  * ext2 : 这在 Linux 中是最重要的档案系统。 
           一般来讲 Linux 现在均使用它为主要的档案系统。 
 
  * ext, xiafs : 虽说这是 Linux 中很基本的档案系统, 但 
                 这两个已经没什麽人在用了。 
 
  * proc : 这个是 Linux 依照 SysV 的 proc file system 
           来做的, 其中有一堆 processes information。 
 
root@Henry:/proc# ls 
1/           12263/       12514/       1893/        3369/        kmsg 
107/         12264/       12527/       1909/        4943/        ksyms 
11007/       12387/       126/         191/         4944/        loadavg 
11008/       12389/       132/         1910/        6/           locks 
11009/       12413/       136/         196/         709/         mdstat 
11010/       12414/       138/         199/         8906/        meminfo 
11011/       12415/       141/         2/           8907/        misc 
11176/       12418/       143/         200/         9886/        modules 
11177/       12423/       146/         201/         9887/        mounts 
112/         12428/       148/         205/         9889/        net/ 
116/         12429/       156/         206/         cmdline      pci 
120/         12473/       160/         208/         cpuinfo      rtc 
12004/       12479/       162/         209/         devices      scsi/ 
12030/       12481/       163/         212/         dma          self@ 
12031/       12482/       187/         3/           filesystems  stat 
12139/       12504/       188/         3066/        interrupts   sys/ 
12141/       12505/       189/         3296/        ioports      uptime 
122/         12513/       1891/        3368/        kcore        version 
 
           在此我们看个例子: 
 
root@Henry:/proc# cat interrupts 
 0:  5862172   timer 
 1:   153446   keyboard 
 2:        0   cascade 
 3:        0 + serial 
 4:   156449 + serial 
 5:        5   SoundBlaster 
 8:        0 + rtc 
 9:     1172   aha1542 
10:   613417 + aic7xxx 
11:   371123 + eata_dma 
12:  1540252   DE434/5 (eth0) 
13:        1   math error 
14:     3182 + ide0 
15:   340720 + ide1 
 
           就可以知道 interrupts 0~15 的状态。很多 ps 类的程式 
           都是以此为基础来得知一些 processes information。 
 
  * msdos, fat, vfat : 可以使用 DOS/Windows95 用的档案系统。 
 
  * smbfs : 是 samba protocol, 可以使用 Windows Work Groups 
            export 出来的 file system。 
 
  * ncpfs : 是 NCP protocol, 可以 mount novell 的 volumn。 
 
  * nfs   : 这是 Unix 上用的 network file system。 
 
  * isofs : 使用 iso file system, CDROM 的。 
 
  * minix : 现今 Linux 也很常用, 但是都用在软碟。 
 
  * sysv  : System V and Coherent filesystem 
 
  * affs  : Amiga FFS filesystem 
 
  * ufs   : UFS filesystem (readonly) 为 BSD 及 SunOS 使用。 
 
  * hpfs  : OS/2 HPFS filesystem 
 
  * umsdos: Unix like fs on top of std MSDOS FAT fs 
 
除了这些 fs/ 下的子目录外, 有一些档案也是很重要的, 
例如在 file system 中把一个档案载入要执行时, 会先 
分辨出它是那一种执行格式 (a.out, elf, java, script) 
再使用对应的执行方式。 或例如处理 dcache, buffer, fifo, 
fcntl, file locks, quota, iotcl 等等和档案有关的控制。 
 

BBS水木清华站∶精华区