【Linux】磁盘文件

简介: 【Linux】磁盘文件

思维导图

学习目标

      了解磁盘的物理结构和存储结构,并将其存储结构进行抽象!!

一、了解一下磁盘及其物理结构

1.1 计算机只认识二进制

      什么是二进制??0,1是被规定出来的,在计算机里面我们用高低电平规定0, 1,或者表示有或区等……因此,0, 1在物理中有不同的表示。

1.2 磁盘的物理结构

  • 盘片:一个磁盘(如一个 1T 的机械硬盘)由多个盘片(如下图中的 0 号盘片)叠加而成。盘片的表面涂有磁性物质,这些磁性物质用来记录二进制数据。因为正反两面都可涂上磁性物质,故一个盘片可能会有两个盘面
  • 磁头:硬盘通常由重叠的一组盘片构成,每个盘面都被划分为数目相等的磁道,并从外缘的“0”开始编号,具有相同编号的磁道形成一个圆柱,称之为磁盘的柱面。磁盘的柱面数与一个盘面上的磁道数是相等的。由于每个盘面都有自己的磁头,因此,盘面数等于总的磁头数。
  • 磁道:每个盘片被划分为一个个磁道
  • 扇区:每个磁道又划分为一个个扇区

1.3 盘片和磁头的关系

  1. 盘片和磁头有一定的距离
  2. 磁头悬浮在盘片上,距离很近
  3. 磁盘中不能有灰尘,避免损伤盘片
  4. 盘片和磁头容易进行损坏,不能有巨大的碰撞

1.4 磁盘的分类

  • 桌面级磁盘(民用)
  • 企业级磁盘(企业)

1.5 磁盘的放置位置

      放置磁盘的位置,因为磁盘在运行中,磁盘会发热,所以磁盘大多数在水中,利用水的流动将热气带走。

1.6 磁盘的速度

      磁盘是机械设备,磁盘还是一个外设,速度是很慢的,因此磁盘的速度会比较慢,差距很大。磁盘的性价比高!

二、磁盘的存储结构

2.1 磁盘的存储结构

  • 盘片:一个磁盘(如一个 1T 的机械硬盘)由多个盘片(如下图中的 0 号盘片)叠加而成。盘片的表面涂有磁性物质,这些磁性物质用来记录二进制数据。因为正反两面都可涂上磁性物质,故一个盘片可能会有两个盘面
  • 磁头:硬盘通常由重叠的一组盘片构成,每个盘面都被划分为数目相等的磁道,并从外缘的“0”开始编号,具有相同编号的磁道形成一个圆柱,称之为磁盘的柱面。磁盘的柱面数与一个盘面上的磁道数是相等的。由于每个盘面都有自己的磁头,因此,盘面数等于总的磁头数。
  • 磁道:每个盘片被划分为一个个磁道
  • 扇区:每个磁道又划分为一个个扇区
  • 一个盘片上有n个磁道,一个磁道上有m个扇区

      读写的基本单位是扇区,扇区的容量一般为512字节。怎么理解读写的基本单位是扇区呢??即使只修改一个比特的数据,我们也要将512字节的数据进行更新。

2.2 如何在磁盘中找到特定位置的数据?

      在这之前,我们先来看一看结构的英语单词:磁头(Head),柱面(Cylinder),扇区(Sector),这个方法称之为CHS定址法。

具体步骤:

  1. 先确定数据在哪一个面上,确定磁头(Head)
  2. 然后,在确定数据在哪个磁道(柱面)上,缩小磁道的半径(Cylinder)
  3. 最后确定数据在哪一个扇区中(Sector)

三、对磁盘的存储进行逻辑抽象

3.1 为什么要对磁盘的存储进行逻辑抽象?

      如果OS直接使用CHS,会导致耦合度太高,并且要方便内核进行磁盘管理。

3.2 利用磁带来引入对磁盘的抽象理解

      在以前的时候,会有一个磁带的东西。我很喜欢将磁带中的那一圈圈的东西给拉直,这样,我们就将圆形存储结构变成了线性存储结构。

      一般来说,操作系统直接访问4KB(8个连续的扇区)


相关文章
|
12天前
|
Linux Shell 网络安全
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
本指南介绍如何利用 HTA 文件和 Metasploit 框架进行渗透测试。通过创建反向 shell、生成 HTA 文件、设置 HTTP 服务器和发送文件,最终实现对目标系统的控制。适用于教育目的,需合法授权。
47 9
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
|
1月前
|
Linux 开发工具 Perl
在Linux中,有一个文件,如何删除包含“www“字样的字符?
在Linux中,如果你想删除一个文件中包含特定字样(如“www”)的所有字符或行,你可以使用多种文本处理工具来实现。以下是一些常见的方法:
41 5
|
1月前
|
安全 Linux 数据安全/隐私保护
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。本文介绍了使用 `ls -l` 和 `stat` 命令查找文件所有者的基本方法,以及通过文件路径、通配符和结合其他命令的高级技巧。还提供了实际案例分析和注意事项,帮助读者更好地掌握这一操作。
53 6
|
1月前
|
Linux
在 Linux 系统中,`find` 命令是一个强大的文件查找工具
在 Linux 系统中,`find` 命令是一个强大的文件查找工具。本文详细介绍了 `find` 命令的基本语法、常用选项和具体应用示例,帮助用户快速掌握如何根据文件名、类型、大小、修改时间等条件查找文件,并展示了如何结合逻辑运算符、正则表达式和排除特定目录等高级用法。
102 6
|
1月前
|
监控 Linux Perl
Linux 命令小技巧:显示文件指定行的内容
在 Linux 系统中,处理文本文件是一项常见任务。本文介绍了如何使用 head、tail、sed 和 awk 等命令快速显示文件中的指定行内容,帮助你高效处理文本文件。通过实际应用场景和案例分析,展示了这些命令在代码审查、日志分析和文本处理中的具体用途。同时,还提供了注意事项和技巧,帮助你更好地掌握这些命令。
108 4
|
1月前
|
网络协议 Linux
linux系统重要文件目录
本文介绍了Linux系统中的重要目录及其历史背景,包括根目录、/usr、/etc、/var/log和/proc等目录的结构和功能。其中,/etc目录下包含了许多关键配置文件,如网卡配置、DNS解析、主机名设置等。文章还详细解释了各目录和文件的作用,帮助读者更好地理解和管理Linux系统。
61 2
|
1月前
|
缓存 监控 Linux
|
1月前
|
Linux Shell 数据库
文件查找是Linux用户日常工作的重要技能介绍了几种不常见的文件查找方法
文件查找是Linux用户日常工作的重要技能。本文介绍了几种不常见的文件查找方法,包括使用`find`和`column`组合、`locate`和`mlocate`快速查找、编写Shell脚本、使用现代工具`fd`、结合`grep`搜索文件内容,以及图形界面工具如`Gnome Search Tool`和`Albert`。这些方法能显著提升文件查找的效率和准确性。
53 2
|
1月前
|
Linux 数据库
linux 全局搜索文件
在 Linux 系统中,全局搜索文件常用 `find`、`locate` 和 `grep` 命令。`find` 根据文件名、类型、大小、时间戳等条件搜索;`locate` 通过预构建的数据库快速查找文件;`grep` 在文件中搜索特定文本,常与 `find` 结合使用。选择合适的命令取决于具体需求。
131 2
|
2月前
|
运维 安全 Linux
Linux文件清空的五种方法总结分享
每种方法各有优势,选择最合适的一种或几种,可以极大提高您的工作效率。更多有关Linux系统管理的技巧与资源,欢迎访问,持续提升您的运维技能。
85 1