Akash Karnatak Asked: 2021-02-21 02:13:28 +0800 CST2021-02-21 02:13:28 +0800 CST 2021-02-21 02:13:28 +0800 CST 为什么在 MBR 上安装 GRUB 不会破坏分区表? 772 我读过我的分区表存储在 MBR 中。并且写入操作是按扇区执行的,即,即使您只想更改扇区的几个字节,您也需要覆盖该扇区的全部内容。那么在 MBR 上安装 GRUB 时,为什么它不会破坏我的分区表呢? hard-drive grub 1 个回答 Voted Best Answer user1686 2021-02-21T02:43:45+08:002021-02-21T02:43:45+08:00 软件读取原始扇区;在内存中更新它;然后写出更新的扇区。 在 Linux 上,这实际上是由操作系统自己完成的,因此 GRUB 不需要担心扇区——它可以发出 440 字节的写入,操作系统会相应地读取/修改/写入整个 512 字节的扇区。(操作系统的工作是抽象出不方便的硬件细节。)但是如果操作系统不这样做,那么 GRUB 仍然可以自己执行相同的读取/修改/写入操作。 这种“读取/修改/写入”模式不仅限于 MBR——它也是您能够更改文件中单个字节的方式,即使它们也存储在磁盘扇区中。操作系统将从磁盘读取相应的扇区,使用您的更改对其进行更新,然后将新扇区写回。
软件读取原始扇区;在内存中更新它;然后写出更新的扇区。
在 Linux 上,这实际上是由操作系统自己完成的,因此 GRUB 不需要担心扇区——它可以发出 440 字节的写入,操作系统会相应地读取/修改/写入整个 512 字节的扇区。(操作系统的工作是抽象出不方便的硬件细节。)但是如果操作系统不这样做,那么 GRUB 仍然可以自己执行相同的读取/修改/写入操作。
这种“读取/修改/写入”模式不仅限于 MBR——它也是您能够更改文件中单个字节的方式,即使它们也存储在磁盘扇区中。操作系统将从磁盘读取相应的扇区,使用您的更改对其进行更新,然后将新扇区写回。