Linux学习总结笔记(一):硬件理论基础
李青原(liqingyuan1986@aliyun.com)创作于博客园个人博客(http://www.cnblogs.com/liqingyuan/),转载请标明出处。
一.Linux的硬件识别:
1.Linux系统中,一切皆文件,硬件也被当作一个文件来处理。几乎所有的硬件都被安排在/dev/文件夹下。
CD ROM/DVD ROM:/dev/cdrom
usb设备:/dev/usb/***
IDE硬盘:/dev/hd[a-d]
SCSI/SATA/USB硬盘和U盘:/dev/sd[a-p]
当前鼠标:/dev/mouse
2.硬盘识别:
IDE硬盘:每个IDE扁平电缆可以连接2个IDE硬盘,IDE1接口的硬盘为hda hdb,IDE2接口的硬盘为hdc hdd。
SATA硬盘:根据识别顺序来命名,第一个识别的为sda,第二个为sdb,以此类推。因此SATA硬盘的命名并不是固定的,如果指定的启动盘不一样,会导致硬盘名称发生变化。
二.机械硬盘原理:
1.机械硬盘结构:
储存主体为盘片,硬盘的盘片可能会有多个,上下叠加放置,一个盘片一般只有一个磁头(head)。
每个盘片由内到外被划分为多个同心环,被称为磁道(track)。
同心环被划分为多个扇形区域,称为扇区(sector),每个扇区为512bytes。
硬盘所有盘片的同一个位置的磁道,合并在一起被称为柱面(cylinder),操作系统划分存储空间只能细分到柱面。
硬盘的读取时间,因此划分为2个部分:寻道时间,磁头切换到正确磁道的时间;转速时间,盘片旋转到数据正确位置的时间。
硬盘大小为head*cylinder*sector*512,也就是HCS参数。
早期硬盘内外磁道扇区数量一致,所以外部扇区大于内部扇区;新的磁盘为了提高磁道利用效率,外部磁道的扇区往往多于内部磁道,但是新硬盘提供了换算公式,所以依然可以用老实的扇区数量外内一致的模式来定位存储空间。
2.第一扇区:
硬盘的第一扇区为最关键的核心扇区(一般为最外层0号磁道的一个扇区),存储MBR和分区表。
A.MBR(master boot record):
446bytes,主要存储操作系统的引导程序,负责指明和加载操作系统内核。
B.分区表(partition table):
64bytes,存储整块硬盘的分区状态。
每个分区占用16bytes,最重要的就是指明分区的起始柱面和结束柱面,所以理论上物理分区最多只能存在4个。
这4个物理分区在linux中分别用1-4来指代,所以硬盘sda的4个物理分区应该是sda1到sda4。
为了能够进行更多的分区,操作系统允许其中一个物理分区被设置为扩展分区,区别于被称为主分区的其他物理分区。
扩展分区指明的存储空间,可以再被细分为逻辑分区,所以linux系统中逻辑分区的编号从5开始。
扩展分区的原理实际上是一个单向链表,扩展分区会只指明第一个逻辑分区的信息存在哪个扇区,而第一个逻辑分区的状态扇区则又会指明第二个逻辑分区的信息存在哪个扇区,以此类推。因此一旦扩展分区被损坏,所有逻辑分区都会失效。
三.Linux的文件系统基础:
1.Linux的文件系统以目录树存在,具有唯一根节点: / 。
2.Linux不存在盘符,分区需要挂载(mount)到某个目录上,才会被使用。
3.Linux文件的存储分区判断,使用向上推断+就近原则:最近的上级目录对应的分区就是文件的存储分区。
4.Linux采用ext2/3/4的文件格式,不识别windows的NTFS格式,所以windows的分区通常不能被Linux使用。如果要安装windows+Linux双系统,每个系统最好都分配一个主分区采用自己的格式用作系统分区,另外必须分配一个较大的扩展分区,可以切分多个不同格式的逻辑分区以供2个系统使用,剩下的主分区可以自由支配。