浙江大学操作系统课件,徐宗元
- 格式:ppt
- 大小:357.50 KB
- 文档页数:76
3.7.2 实验2:Windows 2000 内存管理API函数的使用一.实习要求在Windows 环境下,模拟Windows2000的本地过程调用LPC通信方式之一,用内存映射文件(共享内存方式)实现client/server架构进程间较大数据量的通信。
用VC编程,创建一个server进程和一个client进程,server进程用共享内存的名(lpName)调用CreateFileMapping()函数产生并初始化共享内存,client进程使用相同的共享内存的名来调用OpenFileMapping()函数,打开一个已命名的文件映射对象。
client进程先向共享存储区写信息,server进程再从共享存储区读信息,用信号量对象实现client和server进程间的同步。
二.与实验相关的API 介绍1. Windows进程控制API函数---CreateProcess函数当一个线程调用CreateProcess时,系统就会创建一个进程内核对象,为新进程创建一个虚拟地址空间,并将可执行文件加载到该进程的地址空间中。
然后系统再为新进程的主线程创建一个线程内核对象。
通过执行启动代码,该主线程便开始运行,它最终调用WinMain、wWinMain、main或wmain函数。
如果系统成功地创建了新进程和主线程,该函数便返回TRUE。
格式:BOOL CreateProcess( PCTSTR pszAppliCationName ,PTSTR pszCommandLine ,PSECURITY_ATTRIBUTES pSaProcess ,PSECURITY_ATTRIBUTES psaThread , BOOL bInheritHandles ,DWORD fdwCreate , PVOID pvEnvironment , PCTSTR pszCurDir ,PSTARTUPINF0 psiStartInfo , PPROCESS_INFORMATION ppiProcInfo ) ;参数:pszAppicationName:参数用于设定新进程将要使用的可执行文件的名字,该参数99%以上的情况是NULL。
浙大08秋冬学期《操作系统原理》课程第二章拓展资源◆什么是作业?在一次应用业务处理过程中,从输入开始到运行结束,用户要求计算机所做的有关该次业务处理的全部工作称为一个作业。
◆作业控制的方式有哪几种,各有什么特点?1.脱机控制方式脱机作业控制方式就是用户把对作业进行控制的意图连同程序和数据一起输入到计算机系统中,由系统根据该意图来控制作业的运行。
2.联机控制方式联机作业控制方式就是采用人机对话的方式来交互地控制作业的运行。
也称位“交互方式”。
联机用户接口由一组操作命令组成,用于联机作业的控制。
它采用人机对话的方式来控制作业的运行。
◆作业调度的主要功能是什么?按照某种调度算法从后备作业队列选取作业。
为选中的作业分配主存和外设资源。
为选入主存的作业建立相应的进程,即进程控制块。
作业运行结束时完成作业的善后处理工作,如收回资源,输出作业结果等◆何谓死锁?产生死锁的原因和必要条件是什么?死锁:两个或两个以上的进程都无限止地等待永远不会发生的事件而出现的一种状态。
⏹产生死锁的原因:(1)竞争资源。
为多个进程所共享的资源不足,引起它们对资源的竞争而产生死锁;(2)进程推进顺序不当。
进程运行过程中,请求和释放资源的顺序不当,而导致死锁。
⏹产生死锁必要条件:(1)互斥条件;一个资源每次仅能被一个进程使用,进程一旦申请到了资源后占为己有,则排出其它进程享受该资源。
(2)请求和保持条件;已分配到了一些资源的进程又可以申请新的资源,进程因未分配到新的资源也不释放自己占有的资源。
(3)非剥夺条件;已分配给一进程的资源不可剥夺,进程获得的资源尚未使用完毕之前,只能被占者自己释放,其它进程不能强行占用。
(4)循环等待条件;存在由两个或两个以上进程组成的循环等待链,链中的每一个进程都在等待相邻进程占用的资源。
◆考虑下列资源分配策略:对资源的申请和释放可以在任何时刻进行。
如果一进程的资源得不到满足,则检查所有由于等待资源而被阻塞的进程。