继续补课。来自wikipedia。
一个disk drive包括两个移动部件:disk assembly(磁盘组合)和head assembly(磁头组合)。disk assembly是盘片(platter)的集合,一个盘片有2个盘面(side)。head assembly是磁头(head)的集合,一个盘面一个磁头。
(1)Tracks(磁道)
The tracks are the thin concentric circular strips on a floppy medium or platter surface which actually contain the magnetic regions of data written to a disk drive.
磁道是单个盘片上的同心圆环。
(2)Sectors(扇区)
一个磁道可以分成多个扇区。如果把磁道比作单个盘片上的同心圆环的话,那么扇区就是这个圆环上的一个扇面。
扇区之间通过间隔(gap)隔开,gap不能用来记录数据。gap大概占整个track的10%.
可以简单地认为扇区的分布是均匀的,如下图所示,这时每个磁道的扇区数相等。不过这么一来不同磁道上的扇区面积不等,若要求每个扇区保存的数据容量相同的话,那么不同磁道上扇区的数据密度就会相差非常大。所以一般的做法是内圈(比如内1/3)磁道的扇区数最少,中圈(比如中1/3)的稍多,外圈(比如外1/3)的磁道数最多。
(3)Cylinder(柱面)
Cylinders are
vertically formed by tracks. In other words, track 12 on platter 0 plus track
12 on platter 1 etc. is cylinder 12. The number of cylinders of a disk drive
exactly equals the number of tracks on a single surface in the drive.
柱面这个概念的提出可能是因为磁头组合的运动是“同手同脚”,n个磁头是共同进退。要将磁头h定位到盘片s上的磁道t中的扇区c,首先是磁头组合运动到柱面t (柱面t即是所有盘片的磁道t的集合),然后选择盘片s的磁头h,转动盘片s使磁头h到达扇区c上方,然后磁头h开始读写扇区c。
(柱面#, 盘片#, 扇区#)唯一确定一块扇区,相当于(盘片#, 磁道#, 扇区#)唯一确定一块扇区,因为柱面# == 磁道#。
- 大小: 9.8 KB
- 大小: 4.1 KB
分享到:
相关推荐
取磁盘驱动器参数INT 0x13 调用格式和返回信息如下: ! ah = 0x08 dl = 驱动器号(如果是硬盘则要置位7 为1)。 ! 返回信息: ! 如果出错则CF 置位,并且ah = 状态码。 ! ah = 0, al = 0, bl = 驱动器类型(AT/...
在枚举过程中,我们检查资源类型是否为`RESOURCETYPE_DISK`,表示这是个磁盘类型,也就是我们想要的网络映射驱动器。 需要注意的是,使用P/Invoke调用Windows API需要对底层系统有一定的理解,并且需要处理可能出现...
例如,QEMU 的 -drive 选项可以用来指定虚拟磁盘的存储格式和路径,例如 -drive file=/path/to/vol.raw,if=none,id=drive-virtio-disk0。QEMU 的 -device 选项可以用来指定虚拟机的硬件设备,例如 -device virtio-...
通过编写C++代码,我们可以查询`Win32_DiskDrive`类并统计返回的对象数量,从而得到硬盘驱动器的个数。在VS2015环境下,确保正确配置项目设置,使其能够链接到必要的库,并成功编译和运行这段代码。
"Invalid Drive Specification"和"Not ready reading drive A:"这类错误通常涉及驱动器识别问题,可能是驱动器未连接好,或者磁盘本身存在问题。检查驱动器连接和磁盘状态,如有必要,更换磁盘或驱动器。 对于...
#options snd-cmipcimu_port=0x330 fm_port=0x388 ``` 添加新的参数(适用于特定型号笔记本电脑): ```conf options snd_hda_intel model=lenovo-nb0763 ``` - **重启Alsa服务**: ```bash sudo /etc/...
当 FDD 模式的 u 盘(有 BPB,没有分区表)被 BIOS 分配驱动器号 0x80 时,映射为 0x00, 同时屏蔽驱动器号 0x80(避免通过 BIOS 读 u 盘,有可能死机)。 这一更改也避免了 Issue 162 读 64 位逻辑扇区的问题。...
硬盘序列号通常用来唯一标识一块硬盘驱动器。获取硬盘序列号可以通过查询注册表或者直接读取磁盘属性的方式。在Windows操作系统下,可以利用`WinNTHDSerialNumAsPhysicalRead`或`WinNTHDSerialNumAsScsiRead`函数来...
这段代码会遍历所有磁盘驱动器并返回第一个找到的序列号。 **获取网卡物理地址(MAC地址)** MAC地址是网络适配器的物理标识,用于局域网通信。在C#中,我们可以使用`System.Net.NetworkInformation`命名空间来...
IOCTL_DISK_READ_DRIVE_MEDIA, // 控制代码,读取驱动器介质信息 NULL, // 输入缓冲区 0, // 输入缓冲区大小 buffer, // 输出缓冲区 sizeof(buffer), // 输出缓冲区大小 &dwBytesRead, // 实际读取的字节数 ...
选择菜单Local→Disk→To Disk,在弹出的窗口中选择源硬盘(第一个硬盘),然后选择要复制到的目标硬盘(第二个硬盘)。注意,可以设置目标硬盘各个分区的大小,Ghost 可以自动对目标硬盘按设定的分区数值进行分区和...
在菜单中点击 Local(本地)项,在右面弹出的菜单中有3个子项,其中 Disk表示备份整个硬盘(即克隆)、Partition 表示备份硬盘的单个分区、Check 表示检查硬盘或备份的文件,查看是否可能因分区、硬盘被破坏等造成...
然后在Windows虚拟机中配置自动获取IP,这样就可以访问互联网并下载必要的驱动和更新。 如果你需要在Linux服务器上部署Windows应用,可以使用SFTP或FTP服务将软件从Windows主机上传到Linux服务器,再在Linux环境中...
图中2部分是DRIVE A和DRIVE B软驱设置,如果没有A或B驱动器,那么就设置NONE驱动器。我们可以在这里选择我们的软驱类型,当然了绝大部分情况中我们不必修改这个设置。 右下方还有系统内存的参数:BASE MEMORY:基本...