实验一操作系统Windows“任务管理器”的进程管理

合集下载

如何在Windows操作系统中管理任务和进程

如何在Windows操作系统中管理任务和进程

如何在Windows操作系统中管理任务和进程第一章:任务和进程的概念及区别任务(Task)和进程(Process)是操作系统中的重要概念,理解它们的区别对于有效管理任务和进程至关重要。

1. 任务(Task)是应用程序的实例,它可以包含一个或多个进程。

任务是操作系统分配资源和管理进程的基本单位。

2. 进程(Process)是计算机程序执行时的一个实例。

每个进程都有自己的内存空间和系统资源,可以单独运行并独立于其他进程。

第二章:任务管理任务管理是指在Windows操作系统中对任务进行查看、创建、删除、切换等操作。

下面是一些常见的任务管理方法:1. 任务管理器:可以通过按下Ctrl+Shift+Esc快捷键直接打开任务管理器。

在任务管理器中,可以查看所有正在运行的任务、系统性能和资源占用情况,也可以结束任务、创建新任务等。

2. 任务栏:任务栏是Windows桌面的一部分,可以通过鼠标右键点击任务栏空白处,选择“任务管理器”打开任务管理器。

任务管理器将显示当前正在运行的任务列表,可以切换任务或结束任务。

3. 命令行:在命令提示符窗口中,使用tasklist命令可以查看当前所有运行的任务,使用taskkill命令可以结束特定的任务。

这些命令可以通过调用批处理文件或PowerShell脚本批量管理任务。

第三章:进程管理进程管理涉及对运行中的进程进行查看、创建、结束、优先级调整等操作。

以下是一些常用的进程管理方法:1. 任务管理器:在任务管理器中,可以查看当前运行的进程列表。

可以通过点击“进程”选项卡来查看详细的进程信息,如进程ID、CPU、内存占用等。

还可以通过“结束进程”来结束特定的进程。

2. 命令行:使用tasklist命令可以列出当前正在运行的进程列表,使用taskkill命令可以结束特定的进程。

通过添加参数,如/prio来调整进程的优先级。

第四章:调度策略调度策略是操作系统为进程分配系统资源的一种机制。

(完整word版)操作系统实验报告.实验一 WINDOWS进程初识

(完整word版)操作系统实验报告.实验一 WINDOWS进程初识

操作系统教程实验指导书实验一WINDOWS进程初识1、实验目的(1)学会使用VC编写基本的Win32 Consol Application(控制台应用程序)。

(2)掌握WINDOWS API的使用方法。

(3)编写测试程序,理解用户态运行和核心态运行。

2、实验内容和步骤(1)编写基本的Win32 Consol Application步骤1:登录进入Windows,启动VC++ 6.0。

步骤2:在“FILE”菜单中单击“NEW”子菜单,在“projects”选项卡中选择“Win32 Consol Application”,然后在“Project name”处输入工程名,在“Location”处输入工程目录。

创建一个新的控制台应用程序工程。

步骤3:在“FILE”菜单中单击“NEW”子菜单,在“Files”选项卡中选择“C++ Source File”, 然后在“File”处输入C/C++源程序的文件名。

步骤4:将清单1-1所示的程序清单复制到新创建的C/C++源程序中。

编译成可执行文件。

步骤5:在“开始”菜单中单击“程序”-“附件”-“命令提示符”命令,进入Windows “命令提示符”窗口,然后进入工程目录中的debug子目录,执行编译好的可执行程序:E:\课程\os课\os实验\程序\os11\debug>hello.exe运行结果 (如果运行不成功,则可能的原因是什么?) :答:运行成功,结果:(2)计算进程在核心态运行和用户态运行的时间步骤1:按照(1)中的步骤创建一个新的“Win32 Consol Application”工程,然后将清单1-2中的程序拷贝过来,编译成可执行文件。

步骤2:在创建一个新的“Win32 Consol Application”工程,程序的参考程序如清单1-3所示,编译成可执行文件并执行。

步骤3:在“命令提示符”窗口中运行步骤1中生成的可执行文件,测试步骤2中可执行文件在核心态运行和用户态运行的时间。

操作系统实验报告6

操作系统实验报告6

操作系统实验报告6一、实验目的本次操作系统实验的主要目的是深入了解和掌握操作系统中进程管理、内存管理、文件系统等核心概念和相关技术,通过实际操作和观察,增强对操作系统工作原理的理解,并提高解决实际问题的能力。

二、实验环境本次实验使用的操作系统为 Windows 10,实验工具包括 Visual Studio 2019 等。

三、实验内容(一)进程管理实验1、创建多个进程,并观察它们的运行状态和资源占用情况。

通过编写简单的C++程序,使用Windows API 函数创建多个进程。

在程序中,设置不同的进程优先级和执行时间,观察操作系统如何调度这些进程,以及它们对 CPU 使用率和内存的影响。

2、进程间通信实现了进程间的管道通信和消息传递。

通过创建管道,让两个进程能够相互交换数据。

同时,还使用了 Windows 的消息机制,使进程之间能够发送和接收特定的消息。

(二)内存管理实验1、内存分配与释放使用 C++的动态内存分配函数(如`malloc` 和`free`),在程序运行时动态申请和释放内存。

观察内存使用情况,了解内存碎片的产生和处理。

2、虚拟内存管理研究了 Windows 操作系统的虚拟内存机制,通过查看系统的性能监视器,观察虚拟内存的使用情况,包括页面文件的大小和读写次数。

(三)文件系统实验1、文件操作进行了文件的创建、读取、写入、删除等基本操作。

通过编写程序,对不同类型的文件(如文本文件、二进制文件)进行处理,了解文件系统的工作原理。

2、目录操作实现了目录的创建、删除、遍历等功能。

了解了目录结构在文件系统中的组织方式和管理方法。

四、实验步骤(一)进程管理实验步骤1、打开 Visual Studio 2019,创建一个新的 C++控制台项目。

2、在项目中编写代码,使用`CreateProcess` 函数创建多个进程,并设置它们的优先级和执行时间。

3、编译并运行程序,通过任务管理器观察进程的运行状态和资源占用情况。

3.1 Windows“任务管理器”的进程管理

3.1  Windows“任务管理器”的进程管理

3.1 Windows“任务管理器”的进程管理(实验估计时间:60分钟)背景知识实验目的工具/准备工作实验内容与步骤背景知识Windows 2000的任务管理器提供了用户计算机上正在运行的程序和进程的相关信息,也显示了最常用的度量进程性能的单位。

使用任务管理器,可以打开监视计算机性能的关键指示器,快速查看正在运行的程序的状态,或者终止已停止响应的程序。

也可以使用多个参数评估正在运行的进程的活动,以及查看CPU 和内存使用情况的图形和数据。

其中:1) “应用程序”选项卡显示正在运行程序的状态,用户能够结束、切换或者启动程序。

2) “进程”选项卡显示正在运行的进程信息。

例如,可以显示关于CPU 和内存使用情况、页面错误、句柄计数以及许多其他参数的信息。

3) “性能”选项卡显示计算机动态性能,包括CPU 和内存使用情况的图表,正在运行的句柄、线程和进程的总数,物理、核心和认可的内存总数 (KB) 等。

实验目的通过在Windows 任务管理器中对程序进程进行响应的管理操作,熟悉操作系统进程管理的概念,学习观察操作系统运行的动态性能。

工具/准备工作在开始本实验之前,请回顾教科书的相关内容。

需要准备一台运行Windows 2000 Professional操作系统的计算机。

实验内容与步骤1. 使用任务管理器终止进程2. 显示其他进程计数器3. 更改正在运行的程序的优先级启动并进入Windows环境,单击Ctrl + Alt + Del键,或者右键单击任务栏,在快捷菜单中单击“任务管理器”命令,打开“任务管理器”窗口。

在本次实验中,你使用的操作系统版本是:Window 2000 5.00.2195 Service Pack 4当前机器中由你打开,正在运行的应用程序有:Windows“任务管理器”的窗口由3个选项卡组成,分别是:当前“进程”选项卡显示的栏目分别是 (可移动窗口下方的游标/箭头,或使窗口最大化进行观察) :1. 使用任务管理器终止进程步骤1:单击“进程”选项卡,一共显示了____个进程。

windows实验 系统管理命令与进程管理

windows实验  系统管理命令与进程管理

实验 windows系统管理命令与进程管理一、实验目的1)掌握命令行窗口的显示设置,显示系统基本信息。

2)掌握系统配置管理,任务管理。

3)通过观察任务管理器,来观察各个进程的动态信息。

二、预备知识cmd:启动windows命令行窗口chcp:活动控制台代码页(代码页规定了一个字符集中所有字符的数字编码)prompt:显示更改Windows命令提示符color:设置命令行窗口颜色title:命令行窗口标题date:显示或设置日期time:显示或设置系统时间w32tm:时间服务Doskey:创建宏systeminfo:显示系统信息mem:显示内存分配tasklist:显示任务进程taskkill:结束任务进程at:制定计划任务三.实验内容1)进入windows命令行窗口2)设置活动代码页输入命令chcp 936输入命令ver输入命令chcp 437输入命令ver比较结果3)更改windows命令提示符输入命令prompt $v$g4)改变Windows命令行窗口的前景和背景色输入命令color fc5)改变命令行窗口的标题输入命令title "windows命令行窗口"6)显示设置系统日期、时间和时区。

7)创建宏输入命令doskey ls=dir/w8)显示系统信息输入命令systeminfo | more9)显示内存分配输入命令mem10)显示任务进程输入命令tasklist11)结束任务进程输入命令taskill12)观察任务管理器按Ctrl+Alt+Delete(或Ctrl+Shift+Esc)键可调出任务管理器,单击“查看”->“选择列”选项,可以看到一些选项信息。

13)编程初步进行一个简单的windows的图形用户接口(GUI)编程步骤一:进入VC6.0开发环境步骤二:在菜单栏中单击“文件”->“新建”->“C++Source File,选择路径并命名,输入如下的源代码:#include <windows.h>#include <stdio.h>//告诉链接器与包括MessageBox API函数的user32库进行连接#pragma comment(lib,"user32.lib")int main(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow){::MessageBox(NULL, //没有父窗口"hello windows XP", //消息框中的文本显示hello windows XP"提示", //消息框的标题MB_OK); //其中只有一个确定按钮return 0;}步骤三:编译运行,也可以在命令行下使用编译命令CL进行编译14)获得和使用进程的句柄句柄,是整个windows编程的基础,一个句柄是指使用的一个唯一的整数值,是指一个四字节长的数值,用于标志应用程序中的不同对象和同类对象中的不同的实例,诸如,一个窗口,按钮,图标,滚动条,输出设备,控件或者文件等,应用程序能够通过句柄访问相应的对象的信息。

《操作系统》课内实验报告

《操作系统》课内实验报告

《操作系统》课内实验报告一、实验目的本次《操作系统》课内实验的主要目的是通过实际操作和观察,深入理解操作系统的基本原理和功能,掌握常见操作系统命令的使用,提高对操作系统的实际应用能力和问题解决能力。

二、实验环境本次实验在计算机实验室进行,使用的操作系统为 Windows 10 和Linux(Ubuntu 发行版)。

实验所使用的计算机配置为:Intel Core i5 处理器,8GB 内存,500GB 硬盘。

三、实验内容1、进程管理在 Windows 系统中,通过任务管理器观察进程的状态、优先级、CPU 使用率等信息,并进行进程的结束和优先级调整操作。

在 Linux 系统中,使用命令行工具(如 ps、kill 等)实现相同的功能。

2、内存管理使用 Windows 系统的性能监视器和资源监视器,查看内存的使用情况,包括物理内存、虚拟内存的占用和分配情况。

在 Linux 系统中,通过命令(如 free、vmstat 等)获取类似的内存信息,并分析内存的使用效率。

3、文件系统管理在 Windows 系统中,对文件和文件夹进行创建、复制、移动、删除等操作,了解文件的属性设置和权限管理。

在 Linux 系统中,使用命令(如 mkdir、cp、mv、rm 等)完成相同的任务,并熟悉文件的所有者、所属组和权限设置。

4、设备管理在 Windows 系统中,查看设备管理器中的硬件设备信息,安装和卸载设备驱动程序。

在 Linux 系统中,使用命令(如 lspci、lsusb 等)查看硬件设备,并通过安装内核模块来支持特定设备。

四、实验步骤1、进程管理实验(1)打开 Windows 系统的任务管理器,切换到“进程”选项卡,可以看到当前系统中正在运行的进程列表。

(2)选择一个进程,右键点击可以查看其属性,包括进程 ID、CPU 使用率、内存使用情况等。

(3)通过“结束任务”按钮可以结束指定的进程,但要注意不要随意结束系统关键进程,以免导致系统不稳定。

操作系统:进程创建与撤消

操作系统:进程创建与撤消

操作系统实验报告试验一:进程创建与撤销计科112康岩岩2011008142202013/4/10实验一:进程创建与撤消一、实验目的1、加深对进程概念的理解和进程创建与撤消算法;2、进一步认识并发执行的实质。

二、实验内容本实验完成如下三个层次的任务:(1)系统级—以普通用户身份认识windows的进程管理。

通过windows的“任务管理器”观察进程的状态,进行进程的创建、切换和撤销。

(2)语言级—以普通程序员身份认识高级语言VC++/Java/C#的进程创建与撤销工具。

(3)模拟级—以OS设计师身份编程模拟实现进程创建与撤销功能,并在屏幕上观察进程活动的结果。

三、实验步骤1、windows的进程管理以下是win7的人物管理器,可以进行进程的查看、创建、撤销等操作,由于操作比较简单与琐碎,这里不再具体描述。

2、VC++/Java/C#的进程创建与撤销工具对于本次试验,我使用C#进行进程创建、撤销等测试,具体内容在下面给出。

3、进程创建与撤销的模拟实现(1)总体设计:此次程序完全由c#实现,能够通过窗体界面详细地生动地显示进程的运行状态。

下面一步一步的进行实现①数据定义:类PCB的定义如下:class PCB{string pcbName; //进程名int pcbId; //IDlong startTime; //开始时间long pcbRuntime = 0; //运行时间int pcbLeve; //线程优先级}对于所有的进程信息,用以下表储存:Dictionary<int,Hashtable>ThreadTable=new Dictionary<int,Hashtable>();容器ThreadTable用来储存所有进程简直key 表示进程id,值为Hashtable,储存的为线程信息,②函数CREATE(PCB pcb)—进程创建:创建进程需要传入一个PCB 对象,然后启动一个单独的线程来操作该对象,操作该对象就是把线程运行的状态传送给PCB同时PCB也唯一地标示其所在的线程。

操作系统实验(一)

操作系统实验(一)

操作系统实验年级2014 级专业学号姓名指导教师年月日实验一 Windows任务管理器的使用一、实验目的通过在Windows 任务管理器中对程序进程进行响应的管理操作,熟悉操作系统进程管理的概念,学习观察操作系统运行的动态性能.二、实验内容启动并进入Windows环境,单击Ctrl + Alt + Del键,或者右键单击任务栏,在快捷菜单中单击“任务管理器”命令,打开“任务管理器”窗口.1.分别查看每个选项卡的内容,了解相关参数的含义及其当前内容.2.在“进程”选项卡上单击“查看”菜单,然后单击“选择列”命令.单击要增加显示为列标题的项目,然后单击“确定”.分别了解“进程”选项卡各列的含义及其当前内容.3.为更改正在运行的程序的优先级,可在“进程”选项卡上右键单击您要更改的程序,指向“设置优先级”,然后单击所需的选项.更改进程的优先级可以使其运行更快或更慢(取决于是提升还是降低了优先级) ,但也可能对其他进程的性能有相反的影响.(查看进程管理器,说明按照名字序号前5个进程的主要用途和功能.)4、修改windows服务选项,将windows的远程用户修改注册表的服务设置成禁止. :打开控制面板→管理工具→服务→找到"Remote Registry",双击,启动类型设置为禁用.5、修改windows的磁盘管理并设定配额选项。

设定配额的磁盘格式必须是NTFS,如果你的硬盘是FAT32格式;可通过以下命令:convert 盘符:/fs:ntfs 将某一磁盘分区转为NTFS。

6、修改windows启动选项,将其中的前三个自动启动的选项去掉. :开始→运行→输入msconfig,到启动页.7、修改windows的虚拟内存交换空间.8、修改windows使得windows启动时,显示操作系统列表时间为5秒,并写出启动文件的具体内容. :右键我的电脑→属性→高级→启动和故障恢复的设置→显示列表时间设为5,→点击编辑→列出具体内容,一般是:[boot loader]timeout=0default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS[operating systems]multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect9、查看windows本地安全策略,并修改为定期强制修改密码.写出本地安全策略的审核的内容. :开始→运行→输入gpedit.msc →计算机设置→Windows设置→安全设置→账户策略→密码策略→密码最长存留期设置为需要的天数即可.10、获得此计算机网卡的网络配置及mac地址.开始→运行→输入cmd回车→输入ipconfig /all回车即是.11、在D盘新建一个文件夹,以自己的拼音缩写命名,并利用命令将其映射为I盘,例如为aaa,命令:subst I: d:\aaa.即将c:\aaa映射为I盘. (注:I盘是虚拟盘,不是实际的硬盘)语法subst [drive1:[drive2:}Path}subst drive1:/d参数drive1:指定要为其指派路径的虚拟驱动器.drive2:指定包含指定路径的物理驱动器(如果不是当前的驱动器).Path指定要指派给虚拟驱动器的路径./d删除虚拟驱动器./?在命令提示符显示帮助.注释以下命令在subst 命令中使用的驱动器上无法工作(或不应使用):chkdskDiskcompDiskcopyformatlabelrecoverdrive1 参数必须在lastdrive 命令指定的范围之内.如果没有,subst 将显示下列错误消息:Invalid parameter - drive1:范例若要为路径B:\User\Betty\Forms 创建虚拟驱动器Z,请键入:subst z:b:\user\betty\forms现在,不用键入完整路径,而是通过键入虚拟驱动器号,后跟冒号,即可到达该目录,如下所示:z:winxp中的映射盘符命令:subst另附上软件extrasubst.zip(创建虚拟驱动器)12、通过设备管理器查看系统所有组件配置.包括驱动程序,装载的所有程序,windows组件,硬件组件的IRQ等.13、查看windows的版本及注册信息. :开始→运行→输入winver回车14、利用windows自带的聊天工具,进行局域网内的聊天,并写出详细步骤. 首先启动服务中的Messager服务,Sp2以后版本默认为禁止的,将其设为自动,然后要发消息就开始→运行→输入net send 对方IP地址信息内容.回车即可15、利用命令查看windows进程中每个进程所提供的服务.命令:tasklist /SVC (注:查看svchost进程情况)实验二 Windows进程观测一、背景知识Windows提供了创建控制台应用程序的能力,使用户可以利用标准的C++工具,如iostream库中的cout和cin对象,来创建小型应用程序。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3.1 Windows“任务管理器”的进程管理(实验估计时间:60分钟)➢背景知识➢实验目的➢工具/准备工作➢实验内容与步骤背景知识Windows 2000的任务管理器提供了用户计算机上正在运行的程序和进程的相关信息,也显示了最常用的度量进程性能的单位。

使用任务管理器,可以打开监视计算机性能的关键指示器,快速查看正在运行的程序的状态,或者终止已停止响应的程序。

也可以使用多个参数评估正在运行的进程的活动,以及查看CPU 和内存使用情况的图形和数据。

其中:1) “应用程序”选项卡显示正在运行程序的状态,用户能够结束、切换或者启动程序。

2) “进程”选项卡显示正在运行的进程信息。

例如,可以显示关于CPU 和内存使用情况、页面错误、句柄计数以及许多其他参数的信息。

3) “性能”选项卡显示计算机动态性能,包括CPU 和内存使用情况的图表,正在运行的句柄、线程和进程的总数,物理、核心和认可的内存总数 (KB) 等。

实验目的通过在Windows 任务管理器中对程序进程进行响应的管理操作,熟悉操作系统进程管理的概念,学习观察操作系统运行的动态性能。

工具/准备工作在开始本实验之前,请回顾教科书的相关内容。

需要准备一台运行Windows 2000 Professional操作系统的计算机。

实验内容与步骤1. 使用任务管理器终止进程2. 显示其他进程计数器3. 更改正在运行的程序的优先级启动并进入Windows环境,单击Ctrl + Alt + Del键,或者右键单击任务栏,在快捷菜单中单击“任务管理器”命令,打开“任务管理器”窗口。

在本次实验中,你使用的操作系统版本是:_windowsXP当前机器中由你打开,正在运行的应用程序有:1)实验一-microsoft word2)操作系统电子书3) Microsoft word_4) _ftp://172.16.20.168/_5) __百度搜索—-qq空间-windows internet__Windows“任务管理器”的窗口由__4___个选项卡组成,分别是:1) 应用程序__2) __进程_____3) __性能4)联网当前“进程”选项卡显示的栏目分别是 (可移动窗口下方的游标/箭头,或使窗口最大化进行观察) :1) ___SGTool.exe_____________________________________________________2) __SogouCloud.exe__________________________________________________3) ___taskmgr.exe______________________________________________4) ____alg.exe_____________________________________________________5) _____ass.exe_______________________________________________________6) ________comine.exe________________________________________________7) ___jqs.exe_________________________________________________________8) ______LMS.exe____________________________________________________1. 使用任务管理器终止进程步骤1:单击“进程”选项卡,一共显示了__40____个进程。

请试着区分一下,其中:系统 (SYSTEM) 进程有___25___个,填入表3-1中。

表3-1 实验记录服务 (SERVICE) 进程有___4___个,填入表3-2中。

用户进程有___12___个,填入表3-3中。

步骤2:单击要终止的进程,然后单击“结束进程”按钮。

终止进程,将结束它直接或间接创建的所有子进程。

例如,如果终止了电子邮件程序 (如Outlook 98) 的进程树,那么同时也终止了相关的进程,如MAPI后台处理程序mapisp32.exe。

请将终止某进程后的操作结果与原记录数据对比,发生了什么:___________________BhkSvr.exe SYSTEM 00 2792k_____________________________结束进程后消失________________________________________________________________________________________________________________________________________________________________________________________2. 显示其他进程记数器在“进程”选项卡上单击“查看”菜单,然后单击“选择列”命令。

单击要增加显示为列标题的项目,然后单击“确定”。

为对进程列表进行排序,可在“进程”选项卡上单击要根据其进行排序的列标题。

而为了要反转排序顺序,可再次单击列标题。

经过调整,“进程”选项卡现在显示的项目分别是:__印像名称用户名 CPU 内存使用 USER… I/O写…_______________________________________________________________________________________________________________________________________________通过对“查看”菜单的选择操作,可以在“任务管理器”中更改显示选项:·在“应用程序”选项卡上,可以按详细信息、大图标或小图标查看。

·在“性能”选项卡上,可以更改CPU记录图,并显示内核时间。

“显示内核时间”选项在“CPU使用”和“CPU使用记录”图表上添加红线。

红线指示内核操作占用的CPU资源数量。

3. 更改正在运行的程序的优先级要查看正在运行的程序的优先级,可单击“进程”选项卡,单击“查看”菜单,单击“选择列”-“基本优先级”命令,然后单击“确定”按钮。

为更改正在运行的程序的优先级,可在“进程”选项卡上右键单击您要更改的程序,指向“设置优先级”,然后单击所需的选项。

更改进程的优先级可以使其运行更快或更慢 (取决于是提升还是降低了优先级) ,但也可能对其他进程的性能有相反的影响。

记录操作后所体会的结果:__________本次试验总体较简单,但是有些烦杂但依然让我学会了很多东西。

___ ________________________________________________________________________ ________________________________________________________________________ ________________________________________________________________________ ________________________________________________________________________在多处理器计算机上,用户还可以给处理器指派进程,将程序或进程的执行限制在选定的处理器上,但这有可能导致总体性能的下降。

3.3 Windows 2000进程的“一生”(实验估计时间:120分钟)➢背景知识➢实验目的➢工具/准备工作➢实验内容与步骤背景知识1. 创建进程2. 正在运行的进程3. 终止进程Windows所创建的每个进程都从调用CreateProcess() API函数开始,该函数的任务是在对象管理器子系统内初始化进程对象。

每一进程都以调用ExitProcess() 或TerminateProcess() API函数终止。

通常应用程序的框架负责调用 ExitProcess() 函数。

对于C++ 运行库来说,这一调用发生在应用程序的main() 函数返回之后。

1. 创建进程CreateProcess() 调用的核心参数是可执行文件运行时的文件名及其命令行。

表 3-4详细地列出了每个参数的类型和名称。

参数名称使用目的LPCTSTRlpApplivationName全部或部分地指明包括可执行代码的EXE文件的文件名LPCTSTR lpCommandLine向可执行文件发送的参数LPSECURIITY_ATTRIBUTE S lpProcessAttributes返回进程句柄的安全属性。

主要指明这一句柄是否应该由其他子进程所继承LPSECURIITY_ATTRIBUTES lpThreadAttributes返回进程的主线程的句柄的安全属性BOOL bInheritHandle一种标志,告诉系统允许新进程继承创建者进程的句柄DWORD dwCreationFlage特殊的创建标志 (如CREATE_SUSPENDED) 的位标记LPVOID lpEnvironment向新进程发送的一套环境变量;如为null值则发送调用者环境LPCTSTRlpCurrentDirectory新进程的启动目录STARTUPINFOlpStartupInfoSTARTUPINFO结构,包括新进程的输入和输出配置的详情LPPROCESS_INFORMATION 调用的结果块;发送新应用程序的进程和主线程的句柄和可以指定第一个参数,即应用程序的名称,其中包括相对于当前进程的当前目录的全路径或者利用搜索方法找到的路径;lpCommandLine参数允许调用者向新应用程序发送数据;接下来的三个参数与进程和它的主线程以及返回的指向该对象的句柄的安全性有关。

然后是标志参数,用以在dwCreationFlags参数中指明系统应该给予新进程什么行为。

经常使用的标志是CREATE_SUSPNDED,告诉主线程立刻暂停。

当准备好时,应该使用ResumeThread() API来启动进程。

另一个常用的标志是CREATE_NEW_CONSOLE,告诉新进程启动自己的控制台窗口,而不是利用父窗口。

这一参数还允许设置进程的优先级,用以向系统指明,相对于系统中所有其他的活动进程来说,给此进程多少CPU时间。

接着是CreateProcess() 函数调用所需要的三个通常使用缺省值的参数。

第一个参数是lpEnvironment参数,指明为新进程提供的环境;第二个参数是lpCurrentDirectory,可用于向主创进程发送与缺省目录不同的新进程使用的特殊的当前目录;第三个参数是STARTUPINFO数据结构所必需的,用于在必要时指明新应用程序的主窗口的外观。

相关文档
最新文档