Windows程序设计-Win32程序运行原理

 80386三种工作模式:
1.实模式
2.保护模式
3.虚拟86模式
实模式和虚拟86模式是为了和8086处理器兼容而设置的,保护模式是80386处理器的主要工作模式。
多任务的实现:
进程是正在运行的程序的实例
线程是进程内代码的执行单元,但用CPU时间片
同一时间内会有多个活动的进程,在CPU的支持下,每个进程都被给予它自己的私有地址空间,当进程内的线程运行时,该线程仅仅能够访问属于它的进程的内存,而属于其他进程的内存被屏蔽了起来,不能够被这个线程访问。
举个例子:进程A在它的地址空间0x12345678地址处有个数据结构,进程B能够在它的地址空间的0x12345678处存储一个完全不同的数据,A访问0x12345678是访问的是进程A的数据,B访问0x12345678是访问进程B的数据,进程A中运行的线程不允许访问进程B的内存空间,反之亦然。
虚拟内存:
32的操作系统可寻址4GB地址空间。允许一个指针有4 294 967 296个不同的取值,覆盖了整个4GB的范围。
CPU保护模式下支持虚拟存储,即虚拟内存,它帮助操作系统将磁盘空间当作内存空间来使用,在磁盘上用于这一机制的文件被称为页文件(paging file),它包含了对所有进程都有效的虚拟内存。
Windows虚拟内存机制就是基于32的线性地址空间,
Windows将此空间的前半部分留给进程作为私有存储,自己使用后一部分。
各个空间被分为用户空间和系统空间
用户空间是进程私有地址空间,进程不能以任何方式读写其他进程此部分空间中的数据。
系统空间部分在所有进程中是共享的。

内核模式和用户模式
当应用程序调用一个系统函数的时候,用户的应用程序会从用户模式切换到内核模式去执行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值