同济装潢设计
进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。
苏州许一
这里提到,「在操作系统中执行的程序,都以进程的方式运行在更低的权限中」。事实上, 操作系统是以进程为单位去分配空间和执行的 。但是,进程和程序有什么不同呢?我们说 程序是一组指令的集合,它静态存储于诸如磁盘之类的存储器里; 当一个程序被操作系统执行时,它就会被载入内存空间,并在逻辑上产生一个独立的实例,这就是进程。 这就好像是说,程序是一道菜谱,其中的指令,就是指挥你开火加盐的步骤;进程则是烹饪的过程,操作系统按照指令一丝不苟地烹饪,得到的结果就是我们的菜肴。 随着 CPU 频率增长逐渐停滞,CPU 开始向多核的方向发展。为了让多个 CPU 核心同时为我们工作,并行地执行任务,就需要涉及线程的概念。线程的英文是 Thread,有时也称为轻量级进程 (Lightweight Process),它是操作系统进行任务调度的最小单元。线程存活于进程之中;同一个进程中的线程,共享一个虚拟内存空间,以及其中的资源;线程之间各自持有自己的线程 ID、当前指令的指针(PC)、寄存器集合以及栈。 通常来说,使用多线程(一个core假装自己是多个core)会带来一下一些优势: 将等待 I/O 操作的时间,调度到其他线程执行,提高 CPU 利用率; 将计算密集型的操作留给工作线程,预留线程保持与用户的交互; 在多 CPU/多核计算机下,有效吃干计算能力; 相比多进程的程序,更有效地进行数据共享(在同一个进程空间)。 关于操作系统和操作系统内核这两个概念,很多人尝试去区分与解释,但是发现很难得解释的完全(包括我自己,这里只是把我自己的理解整理出来,有什么不对的地方,希望大家批评指正,共同进步)。 查看了一些网上和CS系列书籍中的关于操作系统内核的概念解释,总结之后,我的理解是: (1)操作系统包括操作系统内核(这是必然的),也就是说内核程序是操作系统所包含的一组计算机程序中的一个子集,所以内核程序也是一组计算机程序,而这些内核程序是操作系统中最常使用基本模块,直接与硬件打交道,主要由用于管理存储器、文件、外设和系统资源的那些部分组成。 (2)内核程序一直占据内存中的一段内存,这样处理器可以随时调用这些内核程序; (3)而操作系统除了内核程序外,还有包括其他一些基本组件,如文本编辑器、编译器、用来与用户进行交互的程序等 对于第(2)点,可以引入《深入理解计算机系统》这本书中关于“虚拟存储器”(P12)解释的一幅图来说明,如下:上图中,关于进程的虚拟地址空间的说明中,最上面的子区域“内核虚拟存储器”就是用来存储内核程序和数据的,这个地址空间是一个固定的结构,所以对于每一个应用程序(进程)来说,都具有同样结构的虚拟地址空间,这就可以保证每个进程都能调用操作系统内核程序来完成自己的功能。 下面再用一幅图说明操作系统内核是操作系统的一组子程上图中,操作系统的内核包围硬件,同时,其外层是系统调用接口,这就是操作系统中除内核以外的其他组件。 下面整理两个网友关于操作系统与操作系统内核的解释,个人觉得解释的还是比较好的: (1)内核,是操作系统的基础模块,用于管理系统资源。例如提供对软件层面的抽象(例如对进程、文件系统、同步、内存、网络协议等对象的操作和权限控制),和对硬件访问的抽象(例如磁盘,显示,网络接口卡(NIC));操作系统,在内核的基础上有延伸,包括了提供基础服务的系统组件。 (2)内核,就是计算机学科意义上的操作系统,直接与硬件交互,提供CPU时间片管理、中断、内存管理、IO管理等等;一般意义上的操作系统包含的东西要更多一些,至少要有用户交互的基本程序,比如一个命令行界面和基本的指令(文件遍历、进程管理等等),或者图形界面的桌面和文件浏览器。Standard C library handling of write(). The library provides a portion of the system-call interface for many versions of Unix and Linux.
文武大叔
进程是计算机中:1、程序关于某数据集合上的一次运行活动,2、是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。
好猫宝宝
系统进程的中英文对照表(简略)最基本的系统进程(也就是说,这些进程是系统运行的基本条件,有了这些进程,系统就能正常运行): smss.exe Session Manager csrss.exe 子系统服务器进程winlogon.exe 管理用户登录services.exe 包含很多系统服务lsass.exe 管理 IP 安全策略以及启动 ISAKMP/Oakley (IKE) 和 IP 安全驱动程序。(系统服务)产生会话密钥以及授予用于交互式客户/服务器验证的服务凭据(ticket)。(系统服务) svchost.exe 包含很多系统服务svchost.exe SPOOLSV.EXE 将文件加载到内存中以便迟后打印。(系统服务) explorer.exe 资源管理器internat.exe 托盘区的拼音图标附加的系统进程(这些进程不是必要的,你可以根据需要通过服务管理器来增加或减少): mstask.exe 允许程序在指定时间运行。(系统服务)regsvc.exe 允许远程注册表操作。(系统服务)winmgmt.exe 提供系统管理信息(系统服务)。 inetinfo.exe 通过 Internet 信息服务的管理单元提供 FTP 连接和管理。(系统服务)tlntsvr.exe 允许远程用户登录到系统并且使用命令行运行控制台程序。(系统服务)允许通过 Internet 信息服务的管理单元管理 Web 和 FTP 服务。(系统服务)tftpd.exe 实现 TFTP Internet 标准。该标准不要求用户名和密码。远程安装服务的一部分。(系统服务)termsrv.exe 提供多会话环境允许客户端设备访问虚拟的 Windows 2000 Professional 桌面会话以及运行在服务器上的基于 Windows 的程序。(系统服务)dns.exe 应答对域名系统(DNS)名称的查询和更新请求。(系统服务)以下服务很少会用到,上面的服务都对安全有害,如果不是必要的应该关掉 tcpsvcs.exe 提供在 PXE 可远程启动客户计算机上远程安装 Windows 2000 Professional 的能力。(系统服务)支持以下 TCP/IP 服务:Character Generator, Daytime, Discard, Echo, 以及 Quote of the Day。(系统服务)ismserv.exe 允许在 Windows Advanced Server 站点间发送和接收消息。(系统服务) 6ups.exe 管理连接到计算机的不间断电源(UPS)。(系统服务)wins.exe 为注册和解析 NetBIOS 型名称的 TCP/IP 客户提供 NetBIOS 名称服务。(系统服务)llssrv.exe License Logging Service(system service)ntfrs.exe 在多个服务器间维护文件目录内容的文件同步。(系统服务)RsSub.exe 控制用来远程储存数据的媒体。(系统服务)locator.exe 管理 RPC 名称服务数据库。(系统服务)lserver.exe 注册客户端许可证。(系统服务)dfssvc.exe 管理分布于局域网或广域网的逻辑卷。(系统服务)clipsrv.exe 支持“剪贴簿查看器”,以便可以从远程剪贴簿查阅剪贴页面。(系统服务) msdtc.exe 并列事务,是分布于两个以上的数据库,消息队列,文件系统,或其它事务保护资源管理器。(系统服务)faxsvc.exe 帮助您发送和接收传真。(系统服务)cisvc.exe Indexing Service(system service)dmadmin.exe 磁盘管理请求的系统管理服务。(系统服务)mnmsrvc.exe 允许有权限的用户使用 NetMeeting 远程访问 Windows 桌面。(系统服务)netdde.exe 提供动态数据交换 (DDE) 的网络传输和安全特性。(系统服务)smlogsvc.exe 配置性能日志和警报。(系统服务)rsvp.exe 为依赖质量服务(QoS)的程序和控制应用程序提供网络信号和本地通信控制安装功能。(系统服务)RsEng.exe 协调用来储存不常用数据的服务和管理工具。(系统服务) RsFsa.exe 管理远程储存的文件的操作。(系统服务)grovel.exe 扫描零备份存储(SIS)卷上的重复文件,并且将重复文件指向一个数据存储点,以节省磁盘空间。(系统服务) SCardSvr.exe 对插入在计算机智能卡阅读器中的智能卡进行管理和访问控制。(系统服务)snmp.exe 包含代理程序可以监视网络设备的活动并且向网络控制台工作站汇报。(系统服务) snmptrap.exe 接收由本地或远程 SNMP 代理程序产生的陷阱消息,然后将消息传递到运行在这台计算机上 SNMP 管理程序。(系统服务)UtilMan.exe 从一个窗口中启动和配置辅助工具。(系统服务)msiexec.exe 依据 .MSI 文件中包含的命令来安装、修复以及删除软件。(系统服务)
优质英语培训问答知识库