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 ...
随机推荐
- C#的进度条透明的情况(穿透问题)
如图: 很明显,可以看到透过进度条的框框可以看到下面的软件界面, 之前出现这种情况是因为pictureBox和panel层级之间的关系造成的, 没想到这次的原因居然不是这样,而是因为少了backCol ...
- 【LeetCode题解】237_删除链表中的节点
目录 237_删除链表中的节点 描述 解法 思路 Java 实现 Python 实现 237_删除链表中的节点 描述 请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除 ...
- Hibernate框架 hilo 方式配置MySQL 数据库的主键自增
hilo(高低位方式high low)是hibernate中最常用的一种生成方式,需要一张额外的表保存hi的值.保存hi值的表至少有一条记录(只与第一条记录有关),否则会出现错误.可以跨数据库. 创建 ...
- Spring IOC(DI)
软件152 余建强 1 什么是IOC IOC—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想.在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不 ...
- CPU结构与指令执行过程简介
CPU(Central Processing Unit)是计算机中进行算术和逻辑计算处理指令的主要部件. CPU结构 CPU由通用寄存器组,运算器,控制器和数据通路等部件组成. 寄存器包括 数据寄存器 ...
- .Net调用Java端带有WS-Security支持的Web Service【亲测通过】
做了几年的开发,今天终于鼓起勇气开通了博客园.平时都是找各种大牛,看他们的分享博客的解决BUG.从今天起,我也开始分享我学习之路.还望大家多多支持! 最近收到一个采用Axis2实现的WebServic ...
- select SCOPE_IDENTITY()用法
select SCOPE_IDENTITY() 返回上面操作的数据表最后row的IDENTITY 列的值: 返回插入到同一作用域中的 IDENTITY 列内的最后一个 IDENTITY 值.一个作用域 ...
- Open JDk 源码下载地址
OpenJDK 和Oracle JDK 共用了大量相同的代码,在性能.功能和执行逻辑上都和Oracle JDK非常一致,由于 现在Oracle JDK是闭源的,我们可以下载Open JDK的源码来研究 ...
- spring jpa和mybatis整合
spring jpa和mybatis整合 前一阵子接手了一个使用SpringBoot 和spring-data-jpa开发的项目 后期新加入一个小伙伴,表示jpa相比mybatis太难用,多表联合的查 ...
- 撩课-Web大前端每天5道面试题-Day20
1.vue生命周期的作用是什么? 它的生命周期中有多个事件钩子,让我们在控制整个Vue实例的过程时更容易形成好的逻辑. 2. Vue实现数据双向绑定的原理:Object.defineProperty( ...