Linux 系统的磁盘设备_【all】
磁盘 ->RAID ->分区 ->格式化 ->挂载
基本的框架
a.硬盘的外部以及内部硬件结构,工作原理和读写原理
b.RAID的划分(一块盘划分为一块或者多块的小虚拟磁盘,可以冗余,可以)
c.磁盘名词知识以及分区的知识体系
d.格式化,创建文件系统,初始化inode和block; 了解文件系统名词知识以及体系
e.挂在到Linux文件系统中使用; 掌握系统命令操作知识
磁盘内部结构
正面:产地,大小,生成日期,条形码,品牌等
反面:绿色电路板,芯片,电容,电阻,气孔
buffer 写入缓冲器 cache读取缓存区
侧面:数据转换器,电源线,接口(SATA,SAS,ide,scsi)
内部结构:盘片(2-14,每个面都可以存放数据),磁头,盘片主轴,控制电机,磁头控制器等
所有的盘片都固定在一个旋转轴上,即盘片主轴,
所有的盘片直接都是平行的,每隔盘片的每个存储面都有一个磁头,磁头有盘片之间的距离很小
磁盘的主轴的转数是衡量磁盘读写性能重要参考之一;
磁盘的接口决定读取性能
SATA 串口磁盘,结构简单,可靠,性能高
SAS 结合SATA和SCSI优点而生
SSD固态盘:solid state driver
分类:
基于闪存(FLASH芯片)的SSD:可以移动,数据保护不受电源控制,适用各种环境 -->平时所用的U盘等
基于DRAM的SSD:采用DRAM作为存储介质,高性能,需要电源支持
优点:
启动快,碎片不影响读取时间,写入快,无噪音,发热低,无故障,抗振动
缺点;
成本高,容量小,寿命有限,数据难恢复
磁盘工作的过程:
自己理解:
磁盘工作的时候,磁盘会高速运动,当达到一定速度的时候,气流很强,足够将磁头托起并保持微小的距离(距离越小,磁头读取数据的灵活性越高),磁头会慢慢地由启停区向外移动,磁头读取最外面的0磁道的数据(由0磁道检测器进行引导)
磁头沿着直径做径向运动,盘片旋转,转一圈读取一圈的数据。·不工作的时候回到启停区。
规范版本:
1.磁盘的读写是按照柱面为单位进行的;从0盘面开始,读取完数据后,读取1盘面相同半径的数据,以此类推,读取半径相同的磁盘的数据到结束后读取另一个半径的数据
2.不同磁头之间的切换是电子切换,不同半径直接的切换是机械的(依靠电机移动磁头手臂)
磁盘存取数据的原理:电脉冲信号转换为电脑可识别的信息
1.利用特定的磁粒子的极性来记录数据。
2.磁头在读取数据时,将磁里自带不同极性转换成不同的电脉冲信号,再利用数据转换器将原有的初始信号变成电脑可用的数据。
写与此相反
磁盘读写数据的时候,应尽可能的让磁头不动,这样才能尽可能多的读取更多的数据
磁盘的相关知识
1.基础知识
系统启动时候的引导程序是在 0柱面0磁道的1扇区的512字节 (第一个盘片的最外的的0号数据区)
给磁盘分区实际上就是划分柱面号和扇区号
柱面数=一个盘的磁道数
Disk 磁盘 Head 磁头 Sector 扇区 Track 磁道 Cylinder 柱面 Units 单元块(一个柱面大小)
2.磁盘的盘面
1快磁盘 = 数个有效盘片(7个完整磁盘) 每隔盘片的有效盘面(2面)对应一个读写的磁头,从上往下由0开始编号,不同的磁盘盘面在逻辑上被划分为磁道,柱面以及扇区(出厂设定好)
一个磁头对应一个有效盘面(磁头数=2*盘片)
磁盘停止的时候,磁头放在磁头启停区,启停区以外都是数据区
磁盘工作的时候,磁盘会高速运动,当达到一定速度的时候,气流很强,足够将磁头托起并保持微小的距离(距离越小,磁头读取数据的灵活性越高),磁头会慢慢地由启停区向外移动,磁头读取最外面的0磁道的数据(由0磁道检测器进行引导)
磁头沿着直径做径向运动,盘片旋转,转一圈读取一圈的数据。·不工作的时候回到启停区。
3.磁盘的磁道
磁盘(盘面)格式化的时候,被划分成许多的同心圆,这些同心圆的轨迹叫做磁道
磁道的编号,由外向内进行编号,磁头读数据的时候由0磁道开始
4.磁盘的柱面
所有的盘面上同一个磁道的同心圆轨迹由上到下依次会形成一个圆柱体,叫做柱面
每个柱面上的磁头由上而下从“0”开始编号
有多少个磁道对应多少个柱面
5.磁盘的扇区
操作系统是以扇区为单位将信息存储在磁盘上的,一般情况下一个扇区的大小事512字节
定义:由圆心向周围划分直线,把磁道划分为多个扇型区域,这个区域叫做扇区
一个扇区主要有2部分内容组成:标示符,数据段
存储数据地点的标示符:扇区所在的磁头(盘面),磁道(柱面号),扇区在磁道的位置(扇区号)
存储数据的数据段:
多个扇区 == 一个磁道
每个扇区的大小都是512字节
每磁道的扇区数都是一样的 ,扇区从1开始编号
6.磁盘的总结
1.一个磁盘有2-14个盘片,每个盘片有2个有效的面,每个面对应一个读写磁头,用磁头号来区分盘面
即盘面数就是读写磁头数,盘片数*2=磁头数(盘面数)
2.盘面格式化的时候,以盘片中心为圆心,会划分多个同心圆,这些个同心圆就是我们说的磁道
磁道由外而内的进行编号0-n
3.不同磁道划分了多个扇形区域,每个扇形区域叫一个扇面
扇面由标示符 + 数据段组成 每个512字节
4.不同的盘面相同半径的磁道组成一个圆柱面叫做柱面
一个柱面包含多个磁道(半径同),一个磁道包含多个扇面
5.数据信息记录可表示为:
某磁头(盘面) 某磁道(柱面) 某扇区
6.系统的引导磁盘是0柱面0磁道的第1扇区
磁盘容量的计算
fdisk -l --> 查看磁盘分区
Disk /dev/mapper/VolGroup-lv_root: 16.8 GB, 16752050176 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes -->一个柱面的大小
方法1:
磁盘容量=512B * 扇区数 * 磁道数(每盘面) * 磁头数
=512 * 2636 * 63 * 255
echo $((255*63*2036*512)) -->只能计算整数
==>echo "255*2636*63*255"|bc -->可以计算小数
方法2:
磁盘容量=柱面数(磁道数) * 柱面大小(磁道大小 * 磁头数)
=512B*扇区数*磁道数*磁头数
=Units * 2610
echo $((8225280*2036))
机械磁盘读取数据工作原理
1.磁盘的读写是按照柱面为单位进行的;从0盘面开始,读取完数据后,读取1盘面相同半径的数据,以此类推,读取半径相同的磁盘的数据到结束后读取另一个半径的数据
2.不同磁头之间的切换是电子切换,不同半径直接的切换是机械的(依靠电机移动磁头手臂)
磁盘命令的总结
1.提示
1.Linux系统的特性是将系统不用的物理内存缓存起来
2.buffers 为写入缓冲区 sync将缓冲区数据写入磁盘
3.cache 为读取数据的缓冲区
4.机械硬盘的读取和写入都用到了缓存技术
2.命令
free :
-m: 显示经过计算的内存大小 如下所示,剩余内存为347M
[root@omc ~]# free -m
total used free shared buffers cached
Mem: 482 247 235 0 26 85
/+ buffers/cache: 135 347
其他
问题: 不同磁道的扇区大小看起来不一样,直观感觉越靠外面,磁道扇面越大
答案: 1.数据的存储密度在不同的磁道内不一样
2.磁道间隙密度不同,外面小,里面打
Linux 系统的磁盘设备_【all】的更多相关文章
- Linux 系统的磁盘分区_【all】
磁盘的存储逻辑结构 1.主引导扇区(446+64+2) MBR(主引导记录)0磁头0磁道的第一扇区 446字节 -->存放系统的引导程序,同Windows 剩下的64字节,分区表(每个分区16字 ...
- Linux系统SCSI磁盘扫描机制解析及命令实例(转)
转载请在文首保留原文出处:EMC中文支持论坛 介绍 Linux系统扫描SCSI磁盘有几种方式?Linux新增LUN之后,能否不重启主机就认出设备?如果安装了PowerPath,动态添加/删除LUN的命 ...
- Linux系统SCSI磁盘扫描机制解析及命令实例
介绍Linux系统扫描SCSI磁盘有几种方式?Linux新增LUN之后,能否不重启主机就认出设备?如果安装了PowerPath,动态添加/删除LUN的命令是什么?本文总结了Linux主机对磁盘设备进行 ...
- linux系统查看磁盘分区使用空间
Df命令是linux系统以磁盘分区使用空间:df -hl
- Linux系统的磁盘管理
Linux系统的磁盘管理有三个命令:df.du.fdisk. df:列出Linux中所有文件系统的整体磁盘使用量: du:对文件和目录所占用磁盘空间的查看: fdisk:用于磁盘分区时列出所有的磁盘. ...
- 阿里云(百度云)Linux系统挂载磁盘
阿里云(百度云)Linux系统挂载磁盘
- 查看Linux系统的USB设备
查看Linux系统的USB设备 lsusb (centos没有该命令) dmesg (内核日志会输出) 执行dmesg
- linux系统挂载磁盘
linux系统挂载磁盘 ## 将硬盘挂载到/mnt/disk1下 # 检查磁盘状态,确认分区 fdisk -l # 格式化磁盘(分区) mkfs.ext4 /dev/sda #根据机器上的命名 以sd ...
- Linux系统添加硬盘设备(磁盘分区-格式化-挂载-使用)
当全新安装了一块新的硬盘设备后,为了更充分.更安全的利用硬盘空间首先要进行磁盘的分区, 然后格式化,最后挂载使用. 实例:对新添加的硬盘设备进行分区.格式化并挂载到/newFS目录. 第一步:在vmw ...
随机推荐
- CSS3设置Table奇数行和偶数行样式
table:.myTable tr:nth-child(even){ //偶数行 background:#fff;}.myTable tr:nth-child(odd){ //奇数行 backgrou ...
- C语言——<算法>_冒泡算法的使用及理解
对数组内数值进行有规则排序时,就要用冒泡算法,也是比较简单的一个算法 #include <stdio.h> #include <stdlib.h> int main() { i ...
- JavaScript文档对象模型
文档对象模型(Document Object Model, DOM)是W3C提出的用于访问和修改文档的接口. JavaScript设计的初衷是为Web提供交互功能,它通过DOM接口来访问和修改文档. ...
- 源码速读及点睛:HashMap
Java 8 HashMap的分离链表 从Java 2到Java 1.7,HashMap在分离链表上的改变并不多,他们的算法基本上是相同的.如果我们假设对象的Hash值服从平均分布,那么获取一个对象需 ...
- org.springframework.web.context.ContextLoaderListener 解决办法
最近部署ssm项目在tomcat,tomcat启动的时候发出org.springframework.web.context.ContextLoaderListener 错误 严重: Error con ...
- Node.js学习笔记(七) --- Node.js的静态文件托管、路 由、EJS 模板引擎、GET 、POST
1 . Nodejs 静态文件托管静态 web 服务器封装 2 . 路由 官方解释: 路由(Routing)是由一个 URI(或者叫路径)和一个特定的 HTTP 方法(GET.POST 等)组成的, ...
- SpringMVC中数据转换
SpringMVC中接收到的数据都是String形式,然后再根据反射机制将String转换成对应的类型.如果此时想接收一个Date类型,那么我们可以定义一个转换器来完成. 例如,我们有下面的Emp类: ...
- Hive 基础你需要掌握这些
HDFS 中一个简单的 Join查询,是否需要撸一大串代码?我只会SQL语句 能不能入坑大数据?这里我们就来聊一聊 Hive. Hive 是什么? Hive 是一种数据仓库工具,不提供数据存储(数据还 ...
- IDEA 中edit configurations加号找不到tomcat server
前言:在本机 idea 中搭建 springMVC 项目,正准备配置 Tomcat 时,发现没有 tomcat server 选项,而我的 idea 是有这个插件的,所以解决问题的方案应该是另一个地方 ...
- 在android工程中,res目录下又有anim、drawable、layout、menu、raw、values和xml文件夹,分别用来保存?
res目录主要是存放资源文件的!layout 布局 这个就是你经常看到的与用户交互的界面的 xml 文件,就是各个 view 的排列和嵌套,没什 么好说的啦 风格和主题. 风格主要是指 view 的显 ...