Lecture 21

Hard Disk Drives (HDD) 的特性

1. HDD 定义

• 硬盘驱动器是计算机中最重要的永久性存储设备,尤其是在个人电脑(PC)中。

2. 与其他存储设备的主要区别

大小(Size):通常容量较大。

速度(Speed):相比于磁带等大容量存储设备,硬盘速度更快。

持久性(Permanence):硬盘通常固定在计算机内部,不可轻易移除。

硬盘的结构图

1. 关键组件

Voice Coil Actuator(音圈执行器)

• 控制读写磁头的位置,确保对数据的精确读取和写入。

Read-Write Head(读写磁头)

• 用于读取或写入磁盘表面上的数据。

Data Sectors(数据扇区)

• 数据存储在磁盘表面按轨道分布的扇区中。

Tracks(轨道)

• 每个磁盘上由同心圆组成的数据存储路径。

Tracks, Sectors 和 Cylinders

1. 磁盘的组织结构

Platter(磁盘盘片)

• 每个磁盘盘片的两个表面(surfaces)都可以存储数据。

• 每个表面对应一个 Head(磁头)

Each platter has two heads

Tracks(轨道)

• 数据按同心圆路径存储。

Sectors(扇区)

• 轨道分割成更小的单元,通常每个扇区存储 512 字节。

Cylinders(柱面)

• 多个磁盘中,所有轨道半径相同的轨道构成一个柱面。

Disk Cylinders, Tracks, Sectors(磁盘柱面、轨道和扇区)

Addressing(寻址方式)

1. CHS(柱面、磁头和扇区寻址):Cylinder, Head, Sector system.

• 基于柱面号(Cylinder)、磁头号(Head)、扇区号(Sector)来标识数据位置。

• 磁盘控制器(disk controller)使用这些信息定位并访问数据。

Can be mapped onto LBA.

2. LBA(逻辑块地址寻址):Large Block Addressing

• 使用绝对扇区号(逻辑块号)来标识数据位置。

硬盘工作原理

1. 数据访问流程

步骤 1:确定数据存储的位置。

• 使用 CHS 或 LBA 寻址找到数据。

步骤 2:通过磁盘驱动接口向磁盘发送请求。

• disk drive interface接口发送的请求中包含目标地址和需要的操作(读或写)。

硬盘数据访问流程的核心是:

1. 通过 CHS 或 LBA 地址确定数据位置。

2. 向磁盘控制器发出请求。

3. 磁头移动、定位数据,并完成数据传输。

总结

• CHS 和 LBA 是数据寻址的两种主要方法。

• LBA 由于其简单性,在现代硬盘中更为常用。

现代磁盘内部通常使用 LBA 表示位置,但为了兼容性,系统可以将 CHS 转换为 LBA

硬盘在过去 25 年的进步

1. 过去的硬盘

• 容量:10 MB。

• 成本:约 100 英镑(约 1100 元人民币)每 MB。

2. 当前的硬盘

• 容量:大于 300 GB。

• 成本:每 MB 少于半便士(极低成本)。

总结

• 在过去 25 年,硬盘容量显著增加,成本显著降低,这是存储技术进步的体现。

硬盘 vs 主存(RAM)

1. 比较

容量:硬盘容量更大。

速度:硬盘速度比主存慢得多。

成本:硬盘每 MB 的成本比主存更低。

2. 适用场景

• 硬盘适合长期存储大量数据。

• 主存(RAM)适合高速临时存储运行数据。

磁盘缓存(Disk Cache)

1. 定义

• 磁盘缓存是用主存的一部分作为缓冲区,临时存储要写入或读取磁盘的数据。

2. 特点

• 磁盘写操作是聚集的(clustered)

• 写操作通常集中处理,以减少频繁访问磁盘的开销。

• 写入数据后,这些数据可能会再次被访问:

• 缓存中的数据可以快速读取,无需再次访问磁盘。

3. 示例

• Java 中的 flush() 方法用于将缓存中的数据强制写入磁盘。

存储技术

1. 读取(Reading)

• 将文件从硬盘加载到 RAM 中。

• 示例:

• 加载应用程序。

• 打开文件(如文档或程序文件)。

2. 写入(Writing)

• 将数据从 RAM 保存到硬盘或其他次级存储设备。

总结

读取是从次级存储加载数据到主存。

写入是将主存的数据备份到次级存储。

文件、记录、字段和键

1. 文件(Files)

• 例如:一个人事文件(Personnel File)。

• 文件是数据的集合。

2. 记录(Records)

• 文件中的单条记录,例如某个人的个人数据。

• 示例:

• Adam Smith, 35, Manager, Purchasing。

3. 字段(Fields)

• 记录中的具体数据项。

• 示例:

• 姓名(Name)、年龄(Age)、职位(Position)、部门(Job Function)。

4. 键(Key)

• 标识记录的唯一字段。

• 示例:

• “Adam Smith”可以作为记录的主键。

总结

• 文件由多条记录组成,每条记录包含若干字段,其中键用来唯一标识记录。

Virtual Memory 概念

虚拟内存定义

• 一种技术,和缓存技术在某种意义上是相反的。

• 通过使用低级别内存(如硬盘)来扩展高级别内存(主内存)。

作用

• 提供一种方便的方法,将主内存的数据溢出(overflowing)到磁盘中,从而扩展了主内存。

关键术语

Swap Area:磁盘中专门用于存储被溢出数据的区域,称为交换区。

Virtual Memory 限制

虚拟内存的逻辑表示

虚拟内存上限:系统的虚拟内存可以扩展到的最大容量(如1GB)。

物理内存上限:实际存在的主内存容量(如512MB)。

• 通过虚拟内存,逻辑上看系统拥有比物理内存更大的内存空间。

图表含义

• 虚拟内存在逻辑层面扩展了物理内存的限制。

Memory Management - Virtual Memory

虚拟内存的关键点

• 虚拟内存使用的是硬盘空间(hard disk space)。

• 当处理器需要更多的RAM(主存)空间时,会将不常用的数据交换到硬盘的虚拟内存区域。

优缺点

• 提高了内存的灵活性。

• 缺点是虚拟内存比直接访问RAM慢很多。

Virtual Memory Management

内存分块机制

• 主存被分成若干固定大小的块,称为帧(Frames),每块大小通常为4KB。

• 可执行程序被分割成与帧大小一致的块,称为页(Pages)

加载机制

• 程序启动时,并不是将所有的页加载到主存,而是仅加载一部分(通常是程序开始需要的部分)。

• 其余的页存储在磁盘的**交换区(Swap Area)**中。

页面调入和交换

• 当程序需要从尚未加载到主存的页中获取指令时,该页会从磁盘加载到主存中。

• 如果主存中没有空闲帧,则会选择最少使用的帧(Least Used Frame),将其内容写回磁盘,腾出空间加载新的页。

术语

• 这种操作被称为页面交换(Swapping)

虚拟内存数据交换图解

图解描述

• 数据在硬盘和主存之间流动:

Page Out:当内存空间不足时,将主存中的数据页移到硬盘。

Page In:当需要硬盘上的数据时,将数据页从硬盘移回主存。

交换流程

• 当数据页被频繁交换时,会影响系统性能(即页面抖动(Thrashing))。

Virtual Memory Addressing(虚拟内存寻址)

逻辑地址的概念

• 在用户程序中,地址以32位逻辑地址(logical address)的形式存在。

4KB分页系统(paging system)中的寻址

低12位:表示页内偏移(即页面内的具体地址address within a page)。

高20位:表示页号(即该逻辑地址对应的页面编号)。

作用

• **内存管理单元(Memory Management Unit MMU)**负责将逻辑地址映射为帧号及帧内的具体地址。

 

Virtual Memory Management(虚拟内存管理架构)

系统架构图解

CPU:中央处理器负责处理指令。

MMU(内存管理单元):执行地址转换,将逻辑地址转换为物理地址。

SRAM Cache(高速缓存):提供快速访问临时存储的数据。

Main Memory(主内存):存储程序和当前活跃的数据。

IO Subsystem(输入输出子系统):与外部设备的交互通道。

System Bus(系统总线):连接各个组件以传输数据。

 

Q: When you save to this, your data will remain intact even when the computer is 

turned off.

• a. RAM(随机存取存储器)

• b. motherboard(主板)

• c. secondary storage device(辅助存储设备)

• d. primary storage device(主要存储设备)

答案

c. secondary storage device(辅助存储设备,如硬盘、SSD等)。

问题:哪种数据访问方法会减慢数据检索的过程?

选项

• a. direct access storage(直接访问存储)

• b. sequential storage(顺序存储)

• c. random access storage(随机访问存储)

答案

b. sequential storage(顺序存储)。

Q: The closed, concentric rings on a diskette are referred to as

磁盘上的封闭同心圆被称为?

选项

• a. grooves(凹槽)

• b. tracks(磁道)

• c. sectors(扇区)

• d. circles(圆)

答案

b. tracks(磁道)

原因:磁盘上的数据以同心圆形式存储,每一个同心圆称为磁道。

• 问题:当从辅助存储(secondary storage)中检索文件并显示在屏幕上时,以下哪种情况是正确的?

选项

• a. 实际上检索了所需文件的副本并将其放置在桌面上。

• b. 旧版本文件仍保留在辅助存储中。

• c. 文件被发送到ROM。

• d. 如果检索后没有修改文件内容,原始文件不会被替换。

答案

b. 旧版本文件仍保留在辅助存储中

原因:文件检索通常是将文件副本加载到内存或缓冲区中,原始文件仍保存在辅助存储中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值