+ -
当前位置:首页 → 问答吧 → 用户程序每次访问内存都是要经过操作系统的干预的吗?

用户程序每次访问内存都是要经过操作系统的干预的吗?

时间:2011-12-07

来源:互联网

因为我想啊,如果用户的访存指令不经过操作系统的话,如果我恶意的改变某个内存的内容不是会导致不好的结果。
但是反过来访存指令没有用到操作系统的系统调用,按理该代码应该在用户态下运行。
我在想内存本身是不分用户态和核心态的吧,内存只是一个容易,在逻辑上区分用户态和核心态的只是虚拟地址空间是吗?

作者: ynnej_ivy   发布时间: 2011-12-07

访问溢出(比如写数据越界)本身就是对内存的任意访问了
只不过,你的指针地址如果指向了内核地址,才会被阻止,也就是弹出内存不能为读或者写这类的错误
所以系统对内存访问肯定是有干预的.

作者: xiaohuh421   发布时间: 2011-12-07

内存还真的分为用户使用的和系统使用的这两个部分的啊。。我不懂。能不能解释下
引用 1 楼 xiaohuh421 的回复:
访问溢出(比如写数据越界)本身就是对内存的任意访问了
只不过,你的指针地址如果指向了内核地址,才会被阻止,也就是弹出内存不能为读或者写这类的错误
所以系统对内存访问肯定是有干预的.

作者: ynnej_ivy   发布时间: 2011-12-07

热门下载

更多