程序是怎么运行起来的

  1 咱们用c语言写一个exe程序,双击就能够运行,它是怎么运行起来的呢?spa

实际上,咱们写的exe程序保存在硬盘上,双击运行程序的时候操做系统会把保存在硬盘上的数据复制到内存。为何?由于CPU被设计成只能从内存中读取数据和指令。操作系统

为何这么设计CPU?由于为了运行速度,在读写速度上,内存是远高于硬盘的,为了避免拖累CPU的高速度,操做系统运行程序时先把数据复制到内存。设计

 

2 谁把硬盘上的数据复制到内存?内存

这个程序叫作加载器。Windows平台上就是Windows加载器。资源

 

3 个人电脑内存8G,我运行了5个程序,这5个程序共须要占12G的内存空间,若是程序运行前都须要把数据加载到内存,当前程序须要的内存超出了电脑内存上限,为何程序仍是正常运行?程序

  这涉及到虚拟内存的概念,Windows上叫虚拟内存,Linux上叫交换空间。数据

操做系统是这么作的,当程序运行须要的空间大于内存容量时,会将内存中暂时不用的数据再写回硬盘,须要这些数据时再从硬盘中读取,读取同时把另一部分暂时不用的数据写回硬盘。语言

因而可知,内存小,硬盘读取速度低都是影响电脑运行速度低的重要缘由文件

 4 虚拟内存co

  Windows上做为内存使用的一部分硬盘空间叫作虚拟内存。虚拟内存在硬盘上其实就是为一个硕大无比的文件,文件名是PageFile.Sys,一般状态下是看不到的。必须关闭资源管理器对系统文件的保护功能才能看到这个文件。虚拟内存有时候也被称为是“页面文件”就是从这个文件的文件名中来的。

相关文章
相关标签/搜索