如何在磁盘和CD/DVD上识别扇区和磁道



我正在编写一些汇编BIOS代码,通常我们使用中断来访问磁盘功能。我们向这个扇区发出类似seek的命令,读取字节等,但磁盘如何知道它是否是第一个扇区,类似地,当cd/dvd从随机位置插入cd驱动器时,cd/dvd如何识别扇区。是否有任何与这些硬件中的扇区相关的识别号?

光盘向外有一个连续的螺旋,是的,驱动器有一些介绍区域,可以找出第一个扇区开始时的光盘角度。快速搜索并没有找到具体的细节来说明它是如何做到这一点的,但可能是在可用/用户数据之外的一些格式/元数据。

扇区之间的边界由其他地方未使用的同步代码标记(https://en.wikipedia.org/wiki/Track_(optical_disc(#Sector_structure(。对红皮书音频扇区的描述也适用于数据CD:CD-ROM使用与红皮书音频CD相同的底层框架,但其中包含数据。(还有另一层纠错,在2352字节的一级纠错扇区数据中,每个扇区提供2048个纠错字节的数据。(

光盘意义上的磁道与"硬盘驱动器/软盘"完全不同;轨道">。(因为只有一个螺旋,而不是多个数据环(。CD音轨是任意数量的扇区,音频CD上的音轨边界通常位于歌曲边界。


请注意,柱面/磁头对光盘没有意义。根据这个答案,只有BIOS LBA读取功能有效(AH=42h(,而不是传统的CHS功能(AH=02h(。因此,BIOS不需要发明一个伪CHS几何结构来访问纯线性扇区。

相关:

  • 如何获得CD或DVD上扇区的精确位置和角度(数据位置测量(
  • CD/DVD引导扇区(re:线性扇区空间之上的软件格式,包括可引导的El Torito(