1.什么是虚拟内存
如果我们打开一个占用内存远超过我们计算机本身的物理内存,因为虚拟内存的存在,我们可以使得超过物理内存的程序正常执行 虚拟内存给每个进程提供一个一致的,私有的地址空间,它让每个进程都有独自拥有主存的错觉,更加高效,减少错误 虚拟内存其实是一种计算机内存管理技术 它定义了一段连续的虚拟地址空间,并且把内存扩展到内存空间
2.c++中override关键字
可显式在派生类中声明,那些成员函数需要重写,如果没有重写编译器报错 在程序中加override 关键字,可以避免派生类中忘记重写虚函数的错误 在继承中使用,在子类中覆盖实现父类的方法 注意:如果是在派生类的虚函数写上override关键字,如果父类没有这个方法,编译器会报错
3.用户态和内核态
一般的操作系统会进行分级,大致可以保护态和内核态,用户态相对于有较低的权限,很多操作不被允许 原因:简单来说用户态出现问题,不能让操作系统出问题(崩溃)
内核态 相当于在硬件和应用层中的层,可执行任何cpu指令,可以引用任何地址 用户态 在内存分配中有一部分仅为内核态使用,用户态不能访问那些地址, 每个进程只能访问自己申请到的内存,不允许访问外部设备 执行cpu指令的时候也可能被更高优先级的抢占资源
用户态->内核态 如果用户态执行一个指令它的 权限不够,可能会转到内核态去干一些事情 1.系统调用,2.异常 3.调用外部设备
4.显存和内存
显存: 也就是显卡内存,存储即将去或者是处理之后的渲染数据 缓存 数据交换的缓存区,如果要获取一个东西,首先去缓存中去找,如果没有,再去内存中找,帮助硬件更快的运行 ESC架构 守望先锋用这一点用的就比较得心应手 内存 计算机所有的程序的运行都在内存中
|