作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
据说bios程序只能在实模式下才能看到,也知道bios是存放在ROM中的,但是CPU映射的通常是RAM,是不是说在实模式下,内存的一部分空间被映射到了ROM ,这样我们就可以看到bios程序了。
最佳答案
物理地址空间不仅仅是 RAM。它包含 ROM 和内存映射设备,例如 APIC 和视频内存。不能在实模式之外使用 BIOS 的主要原因是它是为在实模式下使用而编写的。一些函数可能在 16 位保护模式下工作,更多的将在虚拟 8086 模式下工作,但尝试调用错误的函数可能会导致系统崩溃。此外,中断在保护模式下与实模式下的工作方式不同,因此您必须重新映射函数。
BIOS 在实模式之外不可用的另一个原因是分页。分页是将虚拟地址映射到物理地址的过程。如果操作系统使用分页,它可以选择根本不将包含 ROM 的页面映射到虚拟内存中,因此它们实际上不存在,因此无法调用。 ROM 仍然占用一些物理地址空间,但不能通过虚拟内存使用。
关于operating-system - bios和实模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10354088/
我需要计算像这样存储的 2 个短数据数组的 FFT(重复百万次): 等等。 数组值用黄色和蓝色表示。每个 K 值都有一个大小为 K 的未使用数据空间,我需要跳过。 我对数据进行了重新排序(和 floa
我是一名优秀的程序员,十分优秀!