关于Windows的虚拟内存
Windows系统的中断向量常驻内存中低4K的位置,然后就看书上直接来了个汇编程序,直接写低4K的内存地址来更改中断向量,然后我就不懂了。。。
Windows程序不都是用的4G的虚拟地址么,在程序中的低4K位置能对应到物理地址的低4K ?还有,Windows不是有内存保护的么?!应用程序能直接写入不属于自己的物理内存单元?而且还是属于操作系统的内存单元?!
还有,Windows的内存到底是怎么管理的?!分页?分段?还是其他啥的?。。。
在图书馆找了半天书,翻遍了图书馆都找不到答案,求高手解答!!!。。。
设置终端向量表的代码如下:
mov ax,0
mov ex,ax
mov di,6*4 ;6号中断
mov ax,offset intsp ;intsp为中断处理程序
stosw
mov ax,cs
stosw