磁盘 ->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】的更多相关文章

  1. Linux 系统的磁盘分区_【all】

    磁盘的存储逻辑结构 1.主引导扇区(446+64+2) MBR(主引导记录)0磁头0磁道的第一扇区 446字节 -->存放系统的引导程序,同Windows 剩下的64字节,分区表(每个分区16字 ...

  2. Linux系统SCSI磁盘扫描机制解析及命令实例(转)

    转载请在文首保留原文出处:EMC中文支持论坛 介绍 Linux系统扫描SCSI磁盘有几种方式?Linux新增LUN之后,能否不重启主机就认出设备?如果安装了PowerPath,动态添加/删除LUN的命 ...

  3. Linux系统SCSI磁盘扫描机制解析及命令实例

    介绍Linux系统扫描SCSI磁盘有几种方式?Linux新增LUN之后,能否不重启主机就认出设备?如果安装了PowerPath,动态添加/删除LUN的命令是什么?本文总结了Linux主机对磁盘设备进行 ...

  4. linux系统查看磁盘分区使用空间

    Df命令是linux系统以磁盘分区使用空间:df -hl

  5. Linux系统的磁盘管理

    Linux系统的磁盘管理有三个命令:df.du.fdisk. df:列出Linux中所有文件系统的整体磁盘使用量: du:对文件和目录所占用磁盘空间的查看: fdisk:用于磁盘分区时列出所有的磁盘. ...

  6. 阿里云(百度云)Linux系统挂载磁盘

    阿里云(百度云)Linux系统挂载磁盘

  7. 查看Linux系统的USB设备

    查看Linux系统的USB设备 lsusb (centos没有该命令) dmesg (内核日志会输出) 执行dmesg

  8. linux系统挂载磁盘

    linux系统挂载磁盘 ## 将硬盘挂载到/mnt/disk1下 # 检查磁盘状态,确认分区 fdisk -l # 格式化磁盘(分区) mkfs.ext4 /dev/sda #根据机器上的命名 以sd ...

  9. Linux系统添加硬盘设备(磁盘分区-格式化-挂载-使用)

    当全新安装了一块新的硬盘设备后,为了更充分.更安全的利用硬盘空间首先要进行磁盘的分区, 然后格式化,最后挂载使用. 实例:对新添加的硬盘设备进行分区.格式化并挂载到/newFS目录. 第一步:在vmw ...

随机推荐

  1. 推荐的bootstrap之 formgroup表单布局样式

    一直没能找到比较好的Form Group样式,直到找到如下样式 转自 https://www.cnblogs.com/jokerjason/p/5721349.html <form class= ...

  2. 资料汇总--java开发程序员必备技能

    1.  熟练使用Java语言进行面向对象程序设计(面向对象:继承.多态.抽象): 有良好的编程习惯(阿里开发手册  链接:http://pan.baidu.com/s/1dFEA6cT 密码:kqj4 ...

  3. Node.js缓存

    Node.js Buffer(缓冲区) JavaScript 语言自身只有字符串数据类型,没有二进制数据类型. 但在处理像TCP流或文件流时,必须使用到二进制数据.因此在 Node.js中,定义了一个 ...

  4. Func的介绍——c#封装的代理

    经常看到  Func<int, bool>...这样的写法,看到这样的就没有心思看下去了.我们学技术还是需要静下心来. 对Func<int,bool>的Func转到定义看它的解 ...

  5. DUBBO监控,设置接口调用数据的上报周期

    目录 DUBBO监控,设置接口调用数据的上报周期 dubbo已有的监控方案 针对已有方案的改进 DUBBO监控,设置接口调用数据的上报周期 dubbo是目前比较好用的,用来实现soa架构的一个工具,d ...

  6. idea入手配置

    一.编码配置 utf-8 二.注释模板(Java Doc) 三.Live Templates 快捷键模板, 如配置logger,(类似 sout)

  7. static dictionary methods of text compression

    Now I will introduce a way to compress a text. When we are confronted with numerous data, and the da ...

  8. DICOM简介

    背景: DICOM分为两大类(这里只是从DICOM相关从业者日常工作角度出发来分类的):1)DICOM医学图像处理,即DCM文件中具体数据的处理,说图像可能有些狭隘,广义上还包括波形(心电).视频(超 ...

  9. Ubuntu双系统环境下隐藏掉其他开机启动项

    系统环境:ubuntu16.04需求:PC装的双系统(ubuntu+win10),为了应对某些需求,需要将win10系统给从电脑上消失,让你看不见也进不去它.做法:当然不可能真的删除掉win10系统, ...

  10. c#如何将子窗体显示到父窗体的容器(panel)控件中

    如何将一个窗体显示到一个容器控件中,刚开始想的比较简单,用窗体容器控件添加一般控件的方法,试了一试,代码如下: Form2 frm = new Form2(); this.panel1.Control ...