这是自微软的Win98系统以后引入的概念
不管是在系统的前台,后台运行的程序,在系统进程的列表中都可以找到痕迹.
你用"Ctrl+Alt+Del"组合键就可以打开任务管理器,第二号选项卡就是进程列表.正常情况,列表中会有10--15个进程.但是驻留在内模激存里的后台程序远不止这个数,通常情况大约有40--70个.
为什么没有全部显示呢?因为对于进程这个概念,很多后台程序可以归为一类进程,就叫"共用进程".最常见的进程是Explorer.exe(电源管理进程),其实里面包含了"系统待机""远程唤醒""程序后台支持""错误报告发送""程序响应"等后台脚本程序.
为什么要创建独立进程?
因为对于活动程序(就是可选择性打开的程序)创建独立进程可以节省内存空间.比如在Explorer.exe(电源管理进程)中,我关掉"错误报告"服务,占35M内存的Explorer.exe还是占35M,但是如果给"错误报告"服务创建独立进程的话.进程列表好码让里就会变成31M的Explorer.exe加一个4M的"错误报告"服务进程.关掉"错误报告",4M的进程会消失,只留下31M的Explorer.exe(电源管理进程友局).
但是为什么要有"共有进程"这个概念?
因为每个进程都独立的话会加重CPU的处理负担.
进程是一个独立粗余游的程序吗解说如下进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度岩销的基本单位,是 *** 作系统结构的基础。在早期面向进程设计的计算机结构毁派中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。[1]进程是60年代初首先由麻省理工学院的MULTICS系统和IBM公司的CTSS/360系统引入的。[2]进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。它不只是程序的代码,还包括当前的活动,通过程序计数器的值和处理寄存器的内容来表示。
是的,一般来说,每个进程是拥有自己独立的存储空间,那怕它们是同一个程序的多次执行。但其实每个进程所占用的空间其实包含了代码段,数据段,堆栈段等。这些用途不同的存储空间是可以分别进行管理的,这也是段式内存管理的一个重要目标。这直接导致了不同的进程间可以拥有不同的数据内容(比如写字板里不同的文本),但它们可以共用一个代码段,因为这一部分不会因为运算的数据运祥亏不同而有旁神任何变化。
其实在Windows里,dll动态链接库也是这个思想,一些函数功能和它的代码部分,甚至在程序执行时并不装入内存,只有当程序运行到需要调用他们时才会被动态的真正装入内存,同时只装入内存一次,如果再有其它程序也需要调用这个dll,那么它们会共享这部分代码段,从而能有效的提高内存的使用,减少浪费。尤其是很多 *** 作系统的底层调用宴陪,比如用于处理图形界面的显示等功能就可能被所有的图形界面程序用到,这时就可以大大提高内存的利用率。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)