回到首页| 网络安全 名人故事 申请书 | 名人名言 财富榜 关于我们

当前位置:名人故事传 > 互联网 > Win服务器 > > 正文

正确认识windows的EXE文件和进程以及程序

07-15  Win服务器     来源: 未知  
【EXE文件】exe文件,通常也习惯称为可执行文件。这是操作系统的核心角色,系统上的任务通常都是以一个exe文件开始。与普通文档不同,这种文件里面存储的是可以让cpu直接或间接执行的”指令“,即二进制代码。当然exe文件中还可以存储位图、图标、字符串等资源,我们看到的exe文件显示的图标就是从exe文件本身提取的,如上图中记事本文件那个小本本样的图。当我们运行一个exe文件时(比如双击),系统便启动相应的解析机制,将此文件中的二进制代码加载到内存的某个空闲 区域,这个区域就是我们在任务管理器中看到的”进程“。接下来,系统“告诉"CPU执行这个区域中一个特定偏移处的指令,这个偏移处就是windows可 以执行文件的入口,然后这个新建立的进程获得了系统的控制权。我们可以再次双击exe文件,系统按照同样的方法在内存中建立起进程。正因为这样,我们才可 以打开多个浏览器窗口,登录多个QQ账户。可以看出,exe文件好比一张图纸,进程好比系统依照这张图纸建立的实物。可执行文件一旦被运行,就拥有较大的权限,比如可以写入注册表信息、删除磁盘文件、在磁盘上建立文件、发送网络信息等。所以陌生人向我们发送exe文件时不要随便打开,可能是病毒或者木马。可执行文件在系统上运行,必须遵守约定格式,比如”入口“函数等,否则不能够运行。比如将一个windows下执行的exe文件放到dos或者linux 下不可行,64位系统下的exe文件放到32位系统下也不行(当然32位windows exe文件可在64位上执行,这是为了兼容目的特别设计的)。【进程】实际上,CPU不是直接调度进程的,而是对进程建立起来的“线程”甚至是“纤程”进行调度。windows系统拥有强大的任务调度机制,让CPU快速执行”线程“指令,并实现线程之间的切换,这使得我们可以在各种窗口之间切换,可以在后台执行隐藏任务。作为电脑使用者而非程序开发人员,我们不需要对这种机制做深入了解,但理解进程的概念以及熟练使用”任务管理器"管理进程却是必要的。下面的例子以windows7的任务管理器为例。当某个进程由于获取不到资源、或者存在bug,可能会“卡死”无法正常关闭。可以使用任务管理器结束此进程。下面看一段gif动画,演示如何结束ie浏览器。在任务管理器的进程标签中,可以按照进程对CPU资源占用率排序,使用这个特性,当我们降序排列的时候,可以看出哪个进程比较“忙”。通过这 个方法能够找到“卡死”的进程将其结束。当然System Idle Process进程除外,这个系统空闲进程的CPU越高,说明系统越闲。【程序及安装部署】一个程序可以简单到只有一个exe文件,如记事本。也可以很复杂,由很多exe文件、dll动态库文件、配置文件等组成,如office、QQ等。在很久...很久...以前,windows程序是“绿色”的,可以直接从一个地方拷贝到另外一个地方后直接运行,而现在的程序往往需要“安装”后才可以 使用。这个安装工作通常也是由一个程序(常被称为安装向导)来完成,通常是setup.exe、install.exe。网上下载的安装程序常常是一个rar、zip这样的压缩文件,解压后可以看到安装程序。有的会被制作成一个自解压文件,就是一个可以将文件本身内部压缩的文件自动解压出来的exe文件,而不需要第三方解压缩程序,这种自解压文件直接运行即可进入安装向导。网上也流行一些第三方加工过的“绿色”版程序,如office 绿色精简版,不需要安装直接拷贝使用。但电脑小白最好不要用,稳定性兼容性都是大问题,甚至是带有病毒。【中间语言】有的exe文件的指令,并不能够被cpu直接执行,需要一个实时编译器编译之后才可以被cpu执行。比如java开发出来的程序,需要jre运行环境;微 软.net平台开发的程序,需要.NET Framework,安装这个框架除了安装依赖的库文件之外还会将实时编译器安装到电脑上。【程序与内存】对于电脑来说,任何程序想要被执行,都必须加载到内存中,因为CPU只从内存提取指令和数据,并把执行结果放到内存中,因此我们需要不停的”保存“,将内存中的数据复制到存储介质上。内存中众多的程序同时运行,难免出现问题,因此我们重启电脑后往往可恢复正常。
互联网 网络安全 申请书 创业资讯 创业故事明朝十六帝故事
© 2012-2022 名人故事传网版权所有 关于我们 | 版权声明 | 网站协议 | 友情申请 | 免责声明 | 网站地图 | 联系我们 | 广告服务