Linux之初识磁盘
磁盘知识体系概括

机械硬盘和固态硬盘

机械磁盘剖开图

磁盘工作的视频动画,主轴转动,机械手读写

模拟磁盘工作视频,点击中间三角播放
磁盘结构详解
磁盘外部结构
组成
主要由三部分组成:盘片、主轴(机械硬盘)、磁头。
转速
SAS硬盘,根据转速来划分,有常见的三种
7200转 容量在1TB~10TB
10K转 容量在300G~1.8T
15k转 容量在300G~900G
注:转速的表达用rpm,即round per minute
接口类型
磁盘接口:水壶的壶嘴,定义与服务器如何连接,将决定数据的读写速度
SATA, 也叫串口
SCSI,最早用于高端服务器,特点就是速度快,造价高
SAS,既要scsi的性能,又要sata的方便,就诞生了SAS
PCI-E,最初主要用于快速的设备价格最高,速度最快,网卡、显卡。慢慢的出现了硬盘,现在主要用于固态硬盘
机械硬盘一般用SATA、SAS;固态硬盘sata、sas、pci-e都有用
百度不同接口的图片,以他们的区别不同
磁盘内部组成

磁头(Head)
由上到下,从0开始编号
盘面数量 == 磁头数量
作用:用来写入和读取数据的
磁道(Track)
由外向内,从0开始编号
以主轴为中心的不同的圆环区域(呼啦圈)
扇区(Sector)
一个磁道上面的最小单位,从数字1开始
默认大小512字节
柱面(Cylinder)
不同盘面上相同的磁道,组成的图形(圆柱体)。
柱面的数量 == 磁道的数量
磁盘默认是按照柱面进行读写。
两种读写的方式:
磁头的切换---0磁头切换为1磁头,由电信号控制
磁道的变化(寻道)--- 机械的变化
单元块(Units)
表示一个柱面的大小(其实是固定的)
计算磁盘的大小
磁盘的大小 = 柱面数量 * 每个柱面的大小
柱面的大小 = 磁道的大小 * 磁头的数量
磁道的大小 = 扇区的大小 * 每个磁道的扇区数量
[root@learn-Linux001 ~]# fdisk -l Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
# 255磁头 63扇区/磁道 1044柱面
Units = cylinders of 16065 * 512 = 8225280 bytes
# 一个单元块的大小(柱面的大小) Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000ad34b Device Boot Start End Blocks Id System
/dev/sda1 * 1 26 204800 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 26 124 786432 82 Linux swap / Solaris
Partition 2 does not end on cylinder boundary.
/dev/sda3 124 1045 7396352 83 Linux
计算
[root@learn-Linux001 ~]# echo 512*63|bc
32256
[root@learn-Linux001 ~]# #磁道的大小
[root@learn-Linux001 ~]# echo 512*63|bc
32256
[root@learn-Linux001 ~]# #柱面的大小
[root@learn-Linux001 ~]# echo 512*63*255|bc
8225280
[root@learn-Linux001 ~]# #磁盘的大小
[root@learn-Linux001 ~]# echo 512*63*255*1044|bc
8587192320
磁盘容量单位与常见的计算方法
位:bit
字节:Byte ,等于8bit
1kb = 1024Byte
1mb = 1024kb = 1024*1024 Byte
GB、TB、.......
但是硬件厂商的是按照1000来计算的。所以,买回来的硬盘500GB硬盘实际可以使用的是465GB左右。
[root@learn-Linux001 ~]# #将上面的结果换算成G [root@learn-Linux001 ~]# echo 512*63*255*1044/1024/1024/1024|bc
7
[root@learn-Linux001 ~]# #结果不对,变成了7.因为bc是基础计算器,只能算整数
[root@learn-Linux001 ~]# #我们需要使用awk [root@learn-Linux001 ~]# awk 'BEGIN{print 1/3}'
0.333333
[root@learn-Linux001 ~]# awk 'BEGIN{print 512*63*255*1044/1024/1024/1024}'
7.99745
[root@learn-Linux001 ~]#
磁盘的选择

固态硬盘和机械硬盘的区别
diy.pconline.com.cn/750/7501340.html 固态硬盘的颗粒详细介绍
https://www.mydigitaldiscount.com/everything-you-need-to-know-about-slc-mlc-and-tlc-nand-flash.html

Linux之初识磁盘的更多相关文章
- Linux入门——初识Linux
Linux入门——初识Linux 摘要:本文主要说明了Linux是什么,Linux发展历史,以及同Linux系统有关的一些基本知识. 简介 操作系统 Linux系统同Windows系统.Mac系统一样 ...
- Linux下的磁盘分割和文件系统
一.各硬件装置在Linux下的文件名 1.IDE硬盘机 在Linux内的文件名: /dev/hd[a-d] (a-d 刚好是四个这个是有原因的具体如下) 解释:以 IDE 接口来说,由于一个 IDE ...
- VMware Linux Guest 增加磁盘无需重启的方法
摘要 常常需要需要给VMware Linux Guest增加磁盘适配一些测试场景,而又不想花费时间重启Guest,查找文档,发现一种简单的方法,记录一下操作步骤. 操作步骤 1 编辑Linux ...
- 如何在 Linux 中整理磁盘碎片
有一个神话是 linux 的磁盘从来不需要整理碎片.在大多数情况下这是真的,大多数因为是使用的是优秀的日志文件系统(ext3.4等等)来处理文件系统.然而,在一些特殊情况下,碎片仍旧会产生.如果正巧发 ...
- Linux Shell查看磁盘分区,内存使用,CPU使用率
Linux Shell查看磁盘分区,内存使用,CPU使用率 #!/bin/bash #disk_used_rate Location=/dev/xvdb Disk_Used_Rate=$(df -h ...
- linux系统查看磁盘分区使用空间
Df命令是linux系统以磁盘分区使用空间:df -hl
- 转载:为什么Linux不需要磁盘碎片整理
转载自:www.aqee.net 如果你是个Linux用户,你可能听说过不需要去对你的linux文件系统进行磁盘碎片整理.也许你注意到了,在Liunx安装发布包里没有磁盘碎片整理的工具.为什么会这样? ...
- Linux系统的磁盘管理
Linux系统的磁盘管理有三个命令:df.du.fdisk. df:列出Linux中所有文件系统的整体磁盘使用量: du:对文件和目录所占用磁盘空间的查看: fdisk:用于磁盘分区时列出所有的磁盘. ...
- linux下测试磁盘的读写IO速度-简易方法
linux下测试磁盘的读写IO速度-简易方法 参考资料:https://blog.csdn.net/zqtsx/article/details/25487185 一:使用hdparm命令 这是一个是用 ...
随机推荐
- springMVC_02hello案例
1.导入jar包 commons-logging-1.1.1.jar jackson-annotations-2.5.4.jar jackson-core-2.5.4.jar jackson-data ...
- Codeforces Round #304 (Div. 2) -----CF546
A. Soldier and Bananas A soldier wants to buy w bananas in the shop. He has to pay k dollars for t ...
- node实现简单的群体聊天工具
一.使用的node模块 1.express当做服务器 2.socket.io 前后通信的桥梁 3.opn默认打开浏览器的模块(本质上用不到) 难点:前后通信 源码地址:https://github.c ...
- Swap file ".BranchModel.class.php.swp" already exists!
在 Linux 下的 vim 编辑过程中,由于某种原因异常退出正在编辑的文件,再次编辑该文件时,会出现如下提示: 1.解决方法:直接 ll -a -a 列出目录下的所有文件,包括以 . 开头的隐含文件 ...
- 34.Odoo产品分析 (四) – 工具板块(5) – 设备及联系人目录(1)
查看Odoo产品分析系列--目录 设备管理 设备应用用于公司内部的设备管理,跟踪员工的设备及管理维护的要求. 安装"设备"模块: 1 设备 选择设备菜单,并新建一个设备,该表单 ...
- Windows上通过bat调用jmx进行循环运行
1.jmx测试脚本中有两个线程组: 1)第一个线程组:模拟60台客户机并发像服务器发送上报请求,需要调用线程组的循环运行 2)第二个线程组:60台客户机上线后,模拟管理平台对客户机进行基础操作,如:创 ...
- Testlink1.9.17使用方法(第十一章 其他易用性功能)
第十一章 其他易用性功能 QQ交流群:585499566 一. 自定义 一). 自定义字段管理 在主页点击[自定义字段管理]按钮-->进入自定义字段管理页面,点击[创建]按钮,可以创建一个字段, ...
- (后端)Spring Boot自定义错误页面,Whitelabel Error Page处理方式(转)
我已经是Spring Framework框架的忠实粉丝.对于企业软件开发者来说它提供了对常见问题的通用解决方案,包括那些你在未来开发中没有意识到的问题.但是,它构建的J2EE项目变得比较臃肿,需要被一 ...
- OID的编解码(即在报文中的体现)
先上干货: 我们常见到OID的地方是SNMP和MIB,实际上理论上所有对象都可以有自己的ID.已存在的ID可以在http://www.oid-info.com/查到.这些ID在报文里并非字符串或直接的 ...
- SpringBoot Controller 中 HttpServletRequest ServletInputStream 读取不到数据该怎么处理
在Springboot程序启动后,会默认添加OrderedCharacterEncodingFilter和HiddenHttpMethodFilter过滤器.在HiddenHttpMethodFilt ...