虽然我理解模拟和仿真的含义一般,但我几乎总是对它们感到困惑.假设我创建了一个模仿现有硬件/软件的软件,我该怎么称呼它?模拟器还是模拟器?
任何人都能解释编程方面的差异吗?
额外奖励:这两个术语的英语差异是什么?(对不起,我不是母语人士:))
我看到他们是不同的东西,但我真的不知道为什么.有人说:"仿真器用于游戏;虚拟机用于操作系统"我不同意这个答案,因为除了视频游戏控制台之外还有用于平台的仿真器(AMIGA(?))
你能帮我吗?
我正在编写小型操作系统 - 用于练习.我从bootloader开始.
我想创建一个以16位实模式运行的小命令系统(现在).
我创建了重置驱动器的bootloader,然后在bootloader之后加载扇区.
问题是因为jmp功能后没有任何实际发生.
我不想尝试在0x7E00加载下一个扇区(我不完全确定如何使用es:bx指向地址,这可能是一个问题,我相信它的地址:偏移),就在引导加载程序之后.
这是代码:
;
; SECTOR 0x0
;
;dl is number of harddrive where is bootloader
org 0x7C00
bits 16
;reset hard drive
xor ah,ah
int 0x13
;read sectors
clc
mov bx,0x7E00
mov es,bx
xor bx,bx
mov ah,0x02 ;function
mov al,0x1 ;sectors to read
mov ch,0x0 ;tracks
mov cl,0x1 ;sector
mov dh,0x0 ;head
int 0x13
;if not readed jmp to error
jc error
;jump to 0x7E00 - executed only if loaded
jmp 0x7E00 …Run Code Online (Sandbox Code Playgroud) 我正在为 64 位处理器编写自己的操作系统,但遇到了一般保护问题。我的操作系统不会依赖页面错误来实现用户空间保护机制,所以我发现有一种方法可以通过段限制检查来实现:
这个来自 VMWare 的演示
http://download3.vmware.com/vmworld/2005/pac346.pdf
在第 20 页上说:
最初的 AMD64 架构不包括 64 位模式下的分段
- EMT64T 中也缺少分段
我们如何保护 VMM?
- 64 位来宾支持需要额外的硬件协助
- 在较新的 AMD 处理器上的 64 位模式下可用的段限制检查
现在,我有了更新的 AMD 处理器型号,我的问题是如何在 64 位(长)模式下对 AMD 处理器进行限制段限制检查?我已经下载了 2011 年 9 月版本(最新)的开发人员手册,但我无法在任何地方找到如何执行此操作,请帮助。
assembly ×2
emulation ×2
bootloader ×1
nasm ×1
simulation ×1
terminology ×1
virtualbox ×1
x86-16 ×1
x86-64 ×1