进程是指一个具有一定独立功能的程序关于某个数据集合的一次运行活动。
进程与程序的区别:
1、 程序是指令的有序集合,是一个静态概念,其本事没有任何运行的含义。而进程是程序在处理机上的一次执行过程,是一动态的概念。
2、 程序可以作为一种软件资料长期保存,而进程则是有一定生命周期的,它能够动态的产生和消亡。
3、 进程是一个能独立运行的单位,能与其他进程并行活动。
4、 进程是竞争计算机系统有限资源的基本单位,也是进行处理机调度的基本单位。程序无此该概念。
5、 进程与程序之间无一一对应关系。不同的进程可以包含同一程序,同一程序在执行中也可以产生多个进程。
6、 程序是记录在介质上指令的有序集合,而进程则由程序、数据和进程控制块3部分组成。
软件—程序—算法之间的关系与区别
首先,要明白 软件 = 程序+
文档 = 数据结构+算法+文档(如右
图所示)
另外,软件是包含程序的有机
集合体,程序是软件的必要元素。
任何软件都有可运行的程序,至少
一个。比如: *** 作系统给的工具软
件计算器等,很多都只有一个可运
行程序。而Office是一个办公软件
包,却包含了很多可运行程序 严格来说程序指用编程语言编制的完成特定功能的软件.程序从属于软件.软件除包含程序外,一般把各种资料文档等也包括在内。 软件是程序以及开发、使用和维护所需要的所有文档的总称,而程序是软件的一部分。 算法就是程序的灵魂,一个需要实现特定功能的程序,实现它的算法可以有很多种,所以算法的优劣决定着程序的好坏。程序员很熟练的掌握了程序设计语言的语法,进行程序设计,软件开发的时候就是设计好的算法,加上软件工程的 理论才能做出较好的系统。
软件是包含程序的有机集合体,程序是软件的必要元素。任何软件都有可运行的程序,至少一个。比如: *** 作系统给的工具软件,很多都只有一个可运行程序。而Office是一个办公软件包,却包含了很多可运行程序
软件是程序以及开发、使用和维护所需要的所有文档的总称,而程序是软件的一部分。 一般一款软件具有起自身的各种各样的功能,而程序一般执行专一的命令。软件一般都是由很多程序组成的,每条程序在其中做着比较固定的工作。软件就好比是工程,程序就好比是工人
程序是通过计算机语言写出来的具有许多算法的摸板,是实现软件功能的底层推手(推手的意思可以理解为动力)。所以,程序是软件的内在因子,而软件是一个或多个程序通过编译器编译出来的成品。
打个比方,软件是一件衣服,那程序就是材料。软件是由许多能实现某些固定任务的程序的集合
也就是说,软件是由许许多多的程序组合而成的。程序是由编程人员通过某种编程语言,编写出来能实现某些固定任务的代码。
可这么说,编程人员能过 通过C语言或其他某种语言,编写出一些能实现任务某些固定任务的函数,再把这些函数集合起来,通过编译程序编成软件,也就是我们通常在电脑上用的各种软件了。
算法是指逻辑层面上解决问题方法的一种描述,一个算法可以被很多不同的程序实现 算法并不是程序或者函数本身。
一般来说,算法可以被计算机模拟出来,就是说可以被我们写程序写出来。程序只是一个手段,让计算机去机械式地执行,算法才是灵魂,驱动计算机“怎么去”执行。
举个例子,通向罗马的路有很多,有很多算法能通向罗马,而其中你选择的那一条路就是你的程序。希望你能理解。
软件 = 程序+文档 = 数据结构+算法+文档。
打个比方,软件是一件衣服,那程序就是材料。软件是由许多能实现某些固定任务的程序的集合。也就是说,软件是由许许多多的程序组合而成的。程序是由编程人员通过某种编程语言,编写出来能实现某些固定任务的代码。
可这么说,编程人员能过 通过C语言或其他某种语言,编写出一些能实现任务某些固定任务的函数,再把这些函数集合起来,通过编译程序编成软件,也就是我们通常在电脑上用的各种软件了。
软件和系统的关系:应用程序是软件, *** 作系统也是软件。cpu会将他们一视同仁,甚至,cpu不知道自己在执行的程序是 *** 作系统还是一般应用软件,cpu只知道去寄存器中指向的内存取指令并执行,它不知道什么是 *** 作系统,也无须知道。
*** 作系统是人想出来的,为了让自己管理计算机方便而创造出来的一套管理办法。应用程序要用某种语言编写,而语言又是编译器来提供的。其实根本就没有什么语言,有的只是编译器。是编译器决定怎样解释某种关键字及某种语法。
语言只是编译器和大家的约定,只要写入这样的代码,编译器便将其翻译成某种机器指令,翻译成什么样取决于编译器的行为,和语言无关,比如说c语言的printf函数,它的功能不是说一定要把字符打印到屏幕上,这要看编译器对这种关键字的处理。
对应用程序来说,进程就像一个大容器。在应用程序被运行后,就相当于将应用程序装进容器里了,你可以往容器里加其他东西(如:应用程序在运行时所需的变量数据、需要引用的DLL文件等),当应用程序被运行两次时,容器里的东西并不会被倒掉,系统会找一个新的进程容器来容纳它。
进程是由进程控制块、程序段、数据段三部分组成。一个进程可以包含若干线程(Thread),线程可以帮助应用程序同时做几件事(比如一个线程向磁盘写入文件,另一个则接收用户的按键 *** 作并及时做出反应,互相不干扰),在程序被运行后中,系统首先要做的就是为该程序进程建立一个默认线程,然后程序可以根据需要自行添加或删除相关的线程。
是可并发执行的程序。在一个数据集合上的运行过程,是系统进行资源分配和调度的一个独立单位,也是称活动、路径或任务,它有两方面性质:活动性、并发性。进程可以划分为运行、阻塞、就绪三种状态,并随一定条件而相互转化:就绪--运行,运行--阻塞,阻塞--就绪。
进程为应用程序的运行实例,是应用程序的一次动态执行。看似高深,我们可以简单地理解为:它是 *** 作系统当前运行的执行程序。在系统当前运行的执行程序里包括:系统管理计算机个体和完成各种 *** 作所必需的程序;用户开启、执行的额外程序,当然也包括用户不知道,而自动运行的非法程序(它们就有可能是病毒程序)。
危害较大的可执行病毒同样以“进程”形式出现在系统内部(一些病毒可能并不被进程列表显示,如“宏病毒”),那么及时查看并准确杀掉非法进程对于手工杀毒有起着关键性的作用。
进程是程序在计算机上的一次执行活动。当你运行一个程序,你就启动了一个进程。显然,程序是
死的(静态的),进程是活的(动态的)。进程可以分为系统进程和用户进程。凡是用于完成 *** 作系统的各种
功能的进程就是系统进程,它们就是处于运行状态下的 *** 作系统本身;用户进程就是所有由你启动的进程。进程是 *** 作系统进行资源分配的单位。
在Windows下,进程又被细化为线程,也就是一个进程下有多个能独立运行的更小的单位。
1进程的引入:
多道程序在执行时,需要共享系统资源,从而导致各程序在执行过程中出现相互制约的关系,程序的执行表现出间断性的特征。这些特征都是在程序的执行过程中发生的,是动态的过程,而传统的程序本身是一组指令的集合,是一个静态的概念,无法描述程序在内存中的执行情况,即我们无法从程序的字面上看出它何时执行,何时停顿,也无法看出它与其它执行程序的关系,因此,程序这个静态概念已不能如实反映程序并发执行过程的特征。为了深刻描述程序动态执行过程的性质,人们引入“进程(Process)”概念。
2进程的概念:
进程的概念是60年代初首先由麻省理工学院的MULTICS系统和IBM公司的CTSS/360系统引入的。
进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。它不只是程序的代码,还包括当前的活动,通过程序计数器的值和处理寄存器的内容来表示。
进程是 *** 作系统中最基本、重要的概念。是多道程序系统出现后,为了刻画系统内部出现的动态情况,描述系统内部各道程序的活动规律引进的一个概念,所有多道程序设计 *** 作系统都建立在进程的基础上。
*** 作系统引入进程的概念的原因:
从理论角度看,是对正在运行的程序过程的抽象;
从实现角度看,是一种数据结构,目的在于清晰地刻划动态系统的内在规律,有效管理和调度进入计算机系统主存储器运行的程序。
3进程的特征
动态性:进程的实质是程序的一次执行过程,进程是动态产生,动态消亡的。
并发性:任何进程都可以同其他进程一起并发执行
独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位;
异步性:由于进程间的相互制约,使进程具有执行的间断性,即进程按各自独立的、不可预知的速度向前推进
结构特征:进程由程序、数据和进程控制块三部分组成。
4进程与程序的关系
程序是指令的有序集合,其本身没有任何运行的含义,是一个静态的概念。而进程是程序在处理机上的一次执行过程,它是一个动态的概念。
程序可以作为一种软件资料长期存在,而进程是有一定生命期的。程序是永久的,进程是暂时的。
进程更能真实地描述并发,而程序不能;进程是由程序和数据两部分组成的。
进程具有创建其他进程的功能,而程序没有。
同一程序同时运行于若干个数据集合上,它将属于若干个不同的进程。也就是说同一程序可以对应多个进程。
在传统的 *** 作系统中,程序并不能独立运行,作为资源分配和独立运行的基本单元都是进程。
Windows XP 常见的进程列表
1、最基本的系统进程
这些进程是系统运行的基本条件,有了这些进程,系统才能正常运行。
smssexe Session Manager
csrssexe 子系统服务器进程
winlogonexe 管理用户登录
servicesexe 包含很多系统服务
lsassexe
管理IP安全策略以及启动ISAKMP/Oakley(IKE)和IP安全驱动程序。(系统服务)
产生会话密钥以及授予用于交互式客户/服务器验证的服务凭据(ticket)。(系统服务)
svchostexe 包含很多系统服务
SPOOLSVEXE 将文件加载到内存中以便迟后打印。(系统服务)
explorerexe 资源管理器
internatexe 托盘区的拼音图标
2、附加的系统进程
这些进程不是必要的,你可以根据需要通过服务管理器来增加或减少
mstaskexe 允许程序在指定时间运行。(系统服务)
regsvcexe 允许远程注册表 *** 作。(系统服务)
winmgmtexe 提供系统管理信息(系统服务)。
inetinfoexe
通过 Internet 信息服务的管理单元提供 FTP 连接和管理。(系统服务)
tlntsvrexe
允许远程用户登录到系统并且使用命令行运行控制台程序。(系统服务)
允许通过Internet信息服务的管理单元管理 Web 和 FTP 服务。(系统服务)
tftpdexe
实现TFTP Internet标准。该标准不要求用户名和密码。远程安装服务
的一部分。(系统服务)
termsrvexe
提供多会话环境允许客户端设备访问虚拟的Windows 2000 Professional 桌面会话以及运行在服务器上的基于Windows的程序。(系统服务)
dnsexe 应答对域名系统(DNS)名称的查询和更新请求。(系统服务)
程序
程序是完成特定任务的一系列指令集合。
进程
从用户的角度来看进程是程序的一次动态执行过程。
从 *** 作系统的核心来看,进程是 *** 作系统分配的内存、CPU时间片等资源的基本单位。
进程是资源分配的最小单位,每一个进程都有自己独立的地址空间与执行状态。
像Unix这样的多任务 *** 作系统能够让许多程序同时运行,每一个运行着的程序就构成了一个进程。
Linux中进程与程序的区别
1、进程是动态的,程序是静态的
程序是静态的,它只是一组指令的集合,不具有任何的运行意义;而进程是程序运行的动态过程。
2、进程的生命周期是相对短暂的,而程序是永久的
3、一个进程只能对应一个程序,一个程序可以对应多个进程
进程和程序并不是一一对应的关系,相同的程序运行在不同的数据集上就是不同的进程
4、进程还具有并发性和交往性,而程序却是封闭的
应用程序和进程都是计算机程序。 应用程序一般指用户可以看得见感觉的到的程序,如word,记事本、photoshop等。 进程是一个较为专业的称呼。一般用户可能感觉不到他的存在,比如一些服务,windows内核等计算机程序,他们在后台默默的运行着。 一个“应用程序”一定可以找到一个“进程”,但一个“进程”不一定会有一个“应用程序”与之对应,这些进程有可能是后台程序,用户看不到,感觉不到。 基本上这么理解就可以了。 如果要找到“应用程序”的“进程”,只需在任务管理器中右键点击某一个应用程序,选择“转到进程”,就会自动跳到该应用程序的进程上了。但对于进程只能找到与之相关的服务 或者父进程、子进程等。不一定会有“应用程序”。
以上就是关于进程与程序的区别和联系全部的内容,包括:进程与程序的区别和联系、程序和软件的关系是、算法与程序的关系,对于一个任务书写算法对程序设计有哪些关系等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)