基本上,所有物理磁盘的文件名都已经被模拟成/dev/sd[a~p]
的格式,第一块磁盘文件名为/dev/sda
,而分区的文件名若以第一块磁盘为例,则为/dev/sda[1~128]
。除了物理磁盘外,虚拟机的磁盘通常为/dev/vd[a~p]
的格式。
磁盘分区完毕后,还需要进行格式化,之后操作系统才能使用这个文件系统。传统的磁盘与文件系统应用中,一个分区就只能被格式化成为一个文件系统,所以我们说一个文件系统就是一个硬盘分区。但是由于新技术的应用,例如LVM与软件磁盘阵列,这些技术可以将一个分区格式化为多个文件系统,也能将多个分区合成一个文件系统,所以现在不在说针对分区来格式化了。
文件系统如何运行呢?文件除了文件内容以外还包括文件权限(rwx)与文件属性(拥有者、用户组、时间参数等),文件系统通常会将这两部分的数据分别存放在不同的区块,权限与属性放置到inode中,实际数据则放置到数据区块中。另外还有一个超级区块会记录整个文件系统的整体信息,包括inode与数据区块的总量、使用量、剩余量等。
当系统加载一个文件到内存后,如果该文件没有被修改过,则在内存区段的文件数据会被设置为干净,但如果内存中的文件数据被更改过了,该内存中的数据会被设置为脏的,此时所有的操作都在内存中进行,并没有写入到磁盘中,系统会不定时的将内存中设置为脏的数据写回磁盘,以保持磁盘与内存数据的一致性。
系统会将常用的文件数据放置到内存的缓冲区,以加速文件系统的读写操作,因此Linux的物理内存