操作系统第三讲进程通信习题课
操作系统第3章习题带答案

第三章一、问答题1、用户级线程与内核级线程的区别是什么?2、PCB中包含哪些信息?进程状态属于哪类信息?3、什么是操作系统的内核?4、简述时间片轮转调度算法的基本思想。
5、某系统采用时间片轮转调度算法的处理机调度算法,某个时刻根据用户要求创建了一个进程P,进程P在其存在过程中依次经历了:进程调度选中了进程P 占用处理机运行,进程P运行中提出资源申请,要求增加内存使用量,没有得到;进程等待一段时间后得到内存;进程调度再次选中了进程P占用处理机运行;进程P的时间片到;一段时间后,进程P再次占用处理机;有紧急进程Q进入,系统停止进程P的运行,将处理机分配进程Q;进程Q运行完,进程调度再次选中了进程P占用处理机运行;进程P运行完。
请分析进程P在其整个生命过程中的状态变化。
进程调度选中了进程P占用处理机运行(就绪→运行),进程P运行中提出资源申请,要求增加内存使用量,没有得到(运行→阻塞);进程等待一段时间后得到内存(阻塞→就绪);进程调度再次选中了进程P占用处理机运行(就绪→运行);进程P的时间片到(运行→就绪);一段时间后,进程P再次占用处理机(就绪→运行);有紧急进程Q进入,系统停止进程P的运行,将处理机分配进程Q(运行→就绪);进程Q运行完,进程调度再次选中了进程P占用处理机运行(就绪→运行);进程P运行完。
请分析进程P在其整个生命过程中的状态变化。
6、试比较进程与程序的异同。
7、引起创建进程的事件通常有哪些?简述进程的创建过程。
8、简述进程的阻塞过程。
911、简述操作系统的三级调度。
12、为什么要了解进程间的家族关系?因为父进程和子进程之间是隶属关系,子进程可以继承使用父进程的资源;如果父进程被撤销,还应撤销其所有的子孙进程。
13、什么是进程?。
14、试比较进程和线程的区别。
15、简述进程的基本状态,画出其状态转换图。
二、计算题1、若程序Pa,Pb和Pc单独执行时间分别Ta,Tb和Tc,Ta=1小时,Tb=1.5小时,Tc=2小时,其中处理机工作时间分别为Ta=10分钟,Tb=15分钟,Tc=35分钟。
操作系统进程部分的习题.docx

进程部分的习题1.在公共汽车上,司机进程和售票员进程各司其职。
司机在正常行车中售票员售票,两者之间没有制约关系,可以任意并发。
但是在其他环节,司机和售票员进程之间存在着如下同步关系:1)司机停车后等待售票员关门后才能启动车辆。
2)售票员售完票后,等待司机到站停车,停车后才能打开车门。
var door,stop:semaphore:=0,0;beginparbegin司机进程:beginwhile(true) {wait (door);〃等待售票员发送关门信息启动车辆;正常行车;到站停车;signal (stop) ;//给售票员发送到站信息}end;售票员进程:beginwhile(true) {关车门;signal (door) ;//给司机发送关门信息售票;wait (stop) ;//等待司机发送到站信息开车门;上下乘客;}end;parend;end.2.某寺庙,有小和尚,老和尚若干。
有一水缸,由小和尚提水入缸供老和尚饮用。
水缸可容10桶水,水取自同一井中。
水井径窄,每次中能容下一个桶取水。
水桶总数为3个。
每人一次取缸水仅为1桶,且不可同时进行。
试用记录型信号量给出有关取水、入水的算法描述。
根据题意,定义信号量及其初值如下:(1)水桶为临界资源需互斥使用,定义信号量bucket,因有3个桶,故初值为3;(2)水井一次只能允许下一个桶取水,定义互斥信号量well,初值为1;(3)水缸一次只能允许一个人取水,定义互斥信号量jar,初始值为1;(4)empty和full用于小和尚和老和尚之间的•同步制约关系。
因为缸能存10桶水,所以empty初始值为10;开始时缸中没有水,full的初始值为0。
semaphore bucket二3,jar=l,full二0,empty二10,well二1;young_monk() { /*小和尚入水算法*/wh订e(l) {wait(empty);wait (bucket);wait (well);从水井中打水;signal(well);wait (jar);倒入水缸;signal (jar);signal (bucket);signal (full);)}old_monk() { /*老和尚取水算法*/wh i1e (1) {wait(full);wait (bucket);wait (jar);从缸中取水;signal (jar);signal (bucket);signal (empty);从桶中倒入饮用;}}3.设有3个进程A、B、C,其中A与B构成一对生产者与消费者(A为生产者,B为消费者), 共享一个由n个缓冲区组成的缓冲池;B与C也构成一对生产者与消费者(此时B为生产者, C为消费者),共享另一个由m个缓冲区组成的缓冲池。
(完整版)第三章进程同步与通信作业习题与答案

第三章一.选择题(50题)1.以下_B__操作系统中的技术是用来解决进程同步的。
A.管道B.管程C.通道D.DMA2.以下_B__不是操作系统的进程通信手段。
A.管道B.原语C.套接字D.文件映射3.如果有3个进程共享同一程序段,而且每次最多允许两个进程进入该程序段,则信号量的初值应设置为_B__。
A.3B.2C.1D.04.设有4个进程共享一个资源,如果每次只允许一个进程使用该资源,则用P、V 操作管理时信号量S的可能取值是_C__。
A.3,2,1,0,-1B.2,1,0,-1,-2C. 1,0,-1,-2,-3D.4,3,2,1,05.下面有关进程的描述,是正确的__A__。
A.进程执行的相对速度不能由进程自己来控制B.进程利用信号量的P、V 操作可以交换大量的信息C.并发进程在访问共享资源时,不可能出现与时间有关的错误D.P、V操作不是原语操作6.信号灯可以用来实现进程之间的_B__。
A.调度B.同步与互斥C.同步D.互斥7.对于两个并发进程都想进入临界区,设互斥信号量为S,若某时S=0,表示_B_ _。
A.没有进程进入临界区B.有1个进程进入了临界区C. 有2个进程进入了临界区D. 有1个进程进入了临界区并且另一个进程正等待进入8. 信箱通信是一种_B__方式A.直接通信B.间接通信C.低级通信D.信号量9.以下关于临界区的说法,是正确的_C__。
A.对于临界区,最重要的是判断哪个进程先进入B.若进程A已进入临界区,而进程B的优先级高于进程A,则进程B可以打断进程A而自己进入临界区C. 信号量的初值非负,在其上只能做PV操作D.两个互斥进程在临界区内,对共享变量的操作是相同的10. 并发是指_C__。
A.可平行执行的进程B.可先后执行的进程C.可同时执行的进程D.不可中断的进程11. 临界区是_C__。
A.一个缓冲区B.一段数据区C.一段程序D.栈12.进程在处理机上执行,它们的关系是_C__。
操作系统第3章进程调度习题

第3章进程调度习题【例】在三种基本类型的操作系统中,都设置了进程调度,在批处理系统中还应设置( )调度【答案】AA 作业B 进程C 中级D 多处理机【例】下列算法中,()只能采用非抢占调度方式【解答】CA 高优先权法B 时间片轮转法C FCFS调度算法D 短作业优先算法【例】最适合分时系统的进程调度算法是()【解答】DA FCFSB SSJFC 优先数法D 轮转法【例】进程调度是从()选择一个进程投入运行。
【解答】AA 就绪队列B 等待队列C 作业后备队列D 提交队列【例】进程调度主要负责()【解答】BA 选作业进入内存B 选一进程占有CPUC 建立一进程D 撤销一进程【例】“可抢占”和“不可抢占”的优先级调度算法相比()【解答】BA 前者开销小B 前者开销大C 两者开销大致相同D 两者开销不能相比【解析】因为“可抢占”优先级调度时钟保证在处理机上运行的是优先级最高的进程,这样,当处理机正在运行某个进程时,很可能会被其他优先级更高的进程抢占引起处理机调度,和不可抢占算法相比,前者的调度次数会更频繁,而每调度一次都会引起保护现场,恢复现场的工作,所以可抢占的优先级调度算法开销更大。
【例】()优先权是在创建进程时确定的,确定之后在整个进程运行期间不再改变A 先来先服务B 静态C 动态D 短作业【答案】B【例】若进程P一旦被唤醒就能够投入运行,系统可能为( )A 分时系统,进程P的优先级最高B 抢占调度方式,就绪队列上的所有进程的优先级皆比P的低C 就绪队列为空队列D 抢占调度方式,P的优先级高于当前运行的进程【分析】1 在分析系统中,进程调度是按照轮转方式进行的。
系统并不登记进程的优先级2 在抢占调度方式中,P的优先级高于就绪队列上的所有进程,但不一定高于当前的运行进程,所以也不一定能立即运行3 无论哪种调度方式,若就绪队列为空队列,P被唤醒并插入后都会成为该队列的唯一进程,但这并不是说P可以立即获得处理机。
操作系统第三讲进程通信习题课教学资料

解:在本题公式的求值过程中,有些运算分 量的计算是可以并发进行的。为了描述方便起 见,我们设置了一些变量保存中间计算结果, 并为每条语句命名,如图2.6所示。其求值过 程的前驱图如图2.7所示。
C.管程外过程调用管程内数据结构的说明
D.对局部于管程的数据结构设置初始值的语 句
解:管程由局部于管程的共享变量说明、对管 程内数据结构进行操作的一组过程以及对局 部于管程的数据设置初始值的语句组成,故 本题答案为C。
❖ 【例3.9】对于两个并发进程,设互斥信号 量为mutex,若mutex=0,则__________。
❖ 【例3.18★】设有一个作业由四个进程组 成,这四个进程在运行时必须按下图的次 序,试用P, V操作表达四个进程的同步关 系。
T1
T2
T3
T4 四个进程的运行次序
❖ 解:图中说明作业启动后进程T1先执行。当 进程T1结束后,进程T2, T3可以开始执行。 进程T2, T3完成后,T4才能开始执行。为了 确 保 这 一 执 行 顺 序 , 设 三 个 同 步 信 号 量 b2, b3, b4分别表示进程T2, T3, T4是否可以开始 执行,其初值均为0。这四个进程的同步描 述如下:
操作系统第三讲进程通信习题课
第三讲 习题课
❖ 【例3.3】★若信号量S的初值为2,当前值 为-1,则表示有__________等待进程。
A. 0个
B. 1个
C. 2个
D. 3个
解:当信号量值小于0时,其绝对值表示系 统中因请求该类资源而被阻塞的进程数目, 故本题答案为B。
❖ 【例3.4பைடு நூலகம்进程从运行态到阻塞态不可能是 由于现运行进程( )。
进程间通信例题

// 进程P6 Void P6() { down(s26); down(s36); }
// 进程P8 Void P4() { down(s38); down(s78); }
例3. 有一个仓库,可以存放A和B两种产品,仓库的容量如走大。但要
求: (1) 每次只能放入一种产品(A或B) (2) –N<A产品数量-B产品数量<M 其中,N和M是正整数。试用信号量描述“存放A”,“存放B”两种入 库过程。 分析: 1. 从条件(1)得知,入库过程为互斥过程,定义信号量mutex来控制; 2. 通过条件(2)得知,仓库中A和B两种产品的入库量应该符合如下 两个条件的“与”关系: -N<A产品数量-B产品数量 存放的A产品不能比B产品少N个,即: B产品数量- A产品数量 > N B产品数量-A产品数量>= N-1 同理: A产品数量-B产品数量<=M-1. 以上约束条件可理解为:A产品数量不能比B产品少N个,且不能比 B产品多M个。 3. 因此设置两个信号量:Sa和Sb,初始值分别为:Sa=M-1, Sb=N-1。
typedef int Semaphore; Semaphore Sa, Sb; Sa=M-1; Sb=N-1; void store() { while(true){ produce x; If( x is type of A) then { down(Sa); down(mutex); 存放A; up(Sb); up(mutex); } } } If( x is type of B) then { down(Sb); down(mutex); 存放B; up(Sa); up(mutex); }
例1. 有4个进程A、B、C、D, 进程A通过一个缓冲区不断向进程B、C、
操作系统课后习题答案 3 进程同步与通信

习题 3 进程同步与通信一、选择题题号1 2 3 4 5 6 7 8 9 10答案A D D C B C A B A A题号11 12答案D C二、综合题1、答:临界资源也称独占资源、互斥资源,它是指某段时间内只充许一个进程使用的资源。
比如打印机等硬件资源,以及只能互斥使用的变量、表格、队列等软件资源。
各个进程中访问临界资源的、必须互斥执行的程序代码段称为临界区,各进程中访问同一临界资源的程序代码段必须互斥执行。
为防止两个进程同时进入临界区,可采用软件解决方法或同步机构来协调它们。
但是,不论是软件算法还是同步机构都应遵循下述准则:①空闲让进。
②忙则等待。
③有限等待。
④让权等待。
2、答:忙等待意味着一个进程正在等待满足一个没有闲置处理器的严格循环的条件。
因为只有一个CPU 为多个进程服务,因此这种等待浪费了CPU 的时钟。
其他类型的等待:与忙等待需要占用处理器不同,另外一种等待则允许放弃处理器。
如进程阻塞自己并且等待在合适的时间被唤醒。
忙等可以采用更为有效的办法来避免。
例如:执行请求(类似于中断)机制以及PV 信号量机制,均可避免“忙等待”现象的发生。
3、答:在生产者—消费者问题中,Producer 进程中P(empty)和P(mutex)互换先后次序。
先执行P(mutex),假设成功,生产者进程获得对缓冲区的访问权,但如果此时缓冲池已满,没有空缓冲区可供其使用,后续的P(empty)原语没有通过,Producer 阻塞在信号量empty 上,而此时mutex 已被改为0,没有恢复成初值1。
切换到消费者进程后,Consumer 进程执行P(full)成功,但其执行P(mutex)时由于Producer 正在访问缓冲区,所以不成功,阻塞在信号量mutex 上。
生产者进程和消费者进程两者均无法继续执行,相互等待对方释放资源,会产生死锁。
在生产者和消费者进程中,V 操作的次序无关紧要,不会出现死锁现象。
第3章课后习题+进程同步与通信

售票大厅可容纳200
人购票,说明最多允 许200人共享售票大 厅,用信号量empty 表示,初值为200;
售票员一次只能为一 个购票者服务,说明 必须互斥地进行购票 ,用信号量mutex表 示,初值为1。
5. 进程之间的关系如图3-16所示,试用P、V操作描 述它们之间的同步。
A
S2 C
S1 B
S4 F D
答:同步关系;因为一个工序必须在前一个工序完成后才能开始, 他们必须相互协作才能使进程圆满完成。
(4)商品的入库出库。
答:同步关系;因为商品出库可以为入库提供空间。
(5)工人做工与农民种粮。
答:没有制约关系。
4. 设有一个售票大厅,可容纳200人购票。如果厅 内不足200人则允许进入,超过则在厅外等候; 售票员某时只能给一个购票者服务,购票者买完 票后就离开。试问:
(1)购票者之间是同步关系还是互斥关系?
答:互斥关系。只能有一个人获得售票员的服务。
(2)用P、V操作描述购票者的工作过程。
semaphore empty=200; semaphore mutex=1;
void buyer() { P(empty);
P(mutex); 买票; V(mutex); V(empty); }
wait(mutexB); if (countB==0) wait(mutex);
countB++; signal(mutexB);
过桥;
wait(mutexB); countB--;
if (countB==0) signal(mutex); signal(mutexB); }
S3
S5
E
S6 G
semaphore A,B,C,D,E,F,G=0,0,0,0,0,0,0; P1( ){S1;V(A);V(B);} P2( ){P(A);S2;V(C);} P3( ){P(B);S3;V(D);V(E);} P4( ){P(D);S4;V(F);} P5( ){P(E);S5;V(G);} P6( ){P(C);P(F);P(G);S6;}
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三讲
习题课
【例3.3】★若信号量S的初值为2,当前值 为-1,则表示有__________等待进程。 A. 0个 B. 1个 C. 2个 D. 3个 解:当信号量值小于0时,其绝对值表示系 统中因请求该类资源而被阻塞的进程数目, 故本题答案为B。
【例3.4】进程从运行态到阻塞态不可能是 由于现运行进程( )。 A.出现缺页中断 B.发生越界中断 C.申请磁带读/写 D.执行了V操作 解:处于运行的进程由于A、B、C事件的 发生都可能变为阻塞状态。故本题答案为 D.
第三讲
二、填空题
习题课
【例3.11】临界资源的概念是________, 而临界区是指________。 解:临界资源是指多个进程必须互斥访问 的资源。临界区是指进程中访问临界资源的 那部分代码。
【例2.12】★如果信号量的当前值为-4,则 表示系统中在该信号量上有__________个 等待进程。 解:当信号量值小于0时,其绝对值表示系 统中因请求该类资源而被阻塞的进程数目。 故本题答案为:4。
PA 缓冲区1 PB 缓冲区2 复制 PC
从磁盘读入
打印
例题解答
【例3.21】★某自选商场最多能同时容纳100人 购物,出入口每次只允许一人通过。同时出入 口放有100个篮子,供购物者使用,要求购物 者进入商场时带一只篮子,出来时结账并归还 篮子。为了使商场正常运行,用PV操作写出 进 购物者购物流程。 取
【例3.18★】设有一个作业由四个进程组 成,这四个进程在运行时必须按下图的次 序,试用P, V操作表达四个进程的同步关 系。
T1
T2
T3
T4 四个进程的运行次序
解:图中说明作业启动后进程T1先执行。当 进程T1结束后,进程T2, T3可以开始执行。 进程T2, T3完成后,T4才能开始执行。为了 确保这一执行顺序,设三个同步信号量b2, b3, b4分别表示进程T2, T3, T4是否可以开始 执行,其初值均为0。这四个进程的同步描 述如下: semaphore b2=0;/*表示进程T2是否可 以开始执行 semaphore b3=0;/*表示进程T3是否可 以开始执行 semaphore b4=0;/*表示进程T4是否可 以开始执行
【例3.19】★写出P,V操作的含义。 解:P, V操作是两条原语,它们的定义如 下: P操作。P操作记为P(S),其中S为一信号量, 它执行时主要完成下述动作: (1)S=S-1; (2)若S≥0,则进程继续运行; (3)若S<0,则该进程被阻塞,并将它 插入该信号量的等待队列中。
【例3.10】设有4个进程,进程P1和P2共享变 量SA,进程P3和P4共享变量SB,在()种情 况下会出现与时间有关的错误。 A.进程P2正在访问SA,同时进程P4访问SB B.进程P1正在访问SA,同时进程P3访问SB C.进程P1正在访问SA,同时进程P4访问SB D.进程P1正在访问SA,同时进程P2访问SA 解:共享变量必须互斥使用,因P1和P2共享SA, 因此P1和P2不能同时访问SA。故本题答案为D。
【例3.9】对于两个并发进程,设互斥信号 量为mutex,若mutex=0,则__________。 A.表示没有进程进入临界区 B.表示有一个进程进入临界区 C.表示有一个进程进入临界区,另一个进 程等待进入 D.表示有两个进程进入临界区 解:互斥信号量mutex的初值为1,有一个进程 进入临界区时,mutex的值为0,有一个进程 进入临界区且另一个进程等待时,mutex的 值为-1,故本题答案为B。
【例2.15】信号量的物理意义是当信号量值 大于0时表示_________;当信号量值小于0 时,其绝对值为________。 解:当信号量值大于0时,表示系统中当前 可用资源的数目;当信号量值小于0时,其绝 对值表示系统中因请求该类资源而被阻塞的 进程数目。故本题答案为:① 可用资源的数 目 ② 因请求该资源而被阻塞的进程数目。
【例3.8】下述哪个选项不是管程的组成部 分____________。 A.局部于管程的共享数据结构 B.对管程内数据结构进行操作的一组过程 C.管程外过程调用管程内数据结构的说明 D.对局部于管程的数据结构设置初始值的语 句 解:管程由局部于管程的共享变量说明、对管 程内数据结构进行操作的一组过程以及对局 部于管程的数据设置初始值的语句组成,故 本题答案为C。
第三讲
进程通信与控制习题课
一、选择题 【例3.1】★在操作系统中,P, V操作是一种 ____________。 A.机器指令 B.系统调用命令 C.作业控制命令 D.低级进程通信原语 解:P, V操作交换的信息量小,为低级进程通信 原语,故本题答案为D。
第三讲
习题课
【例3.2】进程从运行状态到阻塞状态可能 是由于( )。 A.现运行进程执行了P操作 B.现运行进程时间片用完 C.现运行进程执行了V操作 D.进程调度程序的调度 解:处于运行状态的进程执行P操作,当信 号量值小于0时,进入等待队列而被阻塞。 帮本题答案为A。
三、综合题 【例3.17】己知一个求值公式(A2 +3B)/(B+ 5A),若A. B已赋值,试画出该公式求值过程的前 驱图。 解:在本题公式的求值过程中,有些运算分 量的计算是可以并发进行的。为了描述方便起 见,我们设置了一些变量保存中间计算结果, 并为每条语句命名,如图2.6所示。其求值过 程的前驱图如图2.7所示。
semaphore b2=b3=b4=0; main( ) cobegin {T1;V(b2);V(B3);} {P(b2); T2;V(B4);} {P(b3); T3;V(B4);} {P(b4); P(B4); T4;} coend
T1
b2 T2 b4 b3 T3 b4
T4
四个进程的运行 次序
入
例题解答
购存 物取 蓝区
放
出 去
结 帐 台
解:进程中访问临界资源的那段代码称为临 界区,故本题答案为C.
【例3.7】下列描述不正确的是( )。 A. P操作和V操作是对信号量实施的操作 B.并发进程在访问共享资源时可能出现与 时间相关的错误 C. P操作或V操作在执行时可能被并发进 程打断 D. PV操作能实现对临界区管理的要求 解:P、V操作是原语操作,执行过程中不 可能被打断。故本题答案为C.
V操作。V操作记为V(S), S为一信号量, 它执行时主要完成下述动作: (1)S=S+1; (2)若S>0,则进程继续执行; (3)若S≤0,则从信号量等待队列中移 出队首进程,使其变为就绪状态。
P, V操作可以形式化 定义如下: struct semaphore { int count; queuetype queue; }; P(semaphore s) { s.count--; if(s.count<0) { 阻塞该进程; 将该进程插入等待 队列s.queue; } }
【例2.16】假设有N个进程共享同一临界资源, 若使用信号量机制实现对临界资源的互斥访 问,则信号量值的变化范围是________。 解:采用信号量机制实现N个进程对临界资 源的互斥访问,信号量的初始值是1,也是该 信号量的最大值。如果有进程要访问临界资 源,需执行P操作,则信号量的值减1。考虑 极端情况,N个进程都要求访问临界资源,信 号量将执行N个减1操作,因此信号量的最小 值为1-N,故答案为:1~1-N
【例2.13】进程间的高级通信机制可归纳为 3 大 类 , 分 别 是 ________ , ________ 和 ________。 解:进程间的高级通信机制可归纳为3大类: 共享存储器系统、消息传递系统和管道通信。
ห้องสมุดไป่ตู้
[例2.14]在多道程序系统中,进程之间存在着 的不同制约关系可以划分为两类: __________与__________。__________指 进程间具有的一定逻辑关系;__________是 指进程间在使用共享资源方面的约束关系。 解:进程之间存在着的不同制约关系可以划 分为同步和互斥两类,同步指进程间具有的 一定逻辑关系,互斥是指进程间在使用共享 资源方面的约束关系。故本题答案为:① 同 步 ② 互斥 ③ 同步 ④ 互斥。
【例3.5】为了进行进程协调,进程之间应 当具有一定的联系,这种联系通常采用进 程间交换数据的方式进行,这种方式称为 ( )。 A.进程互斥 B.进程同步 C.进程通信 D.进程制约 解:进程间交换数据即进程通信。故本题 答案为C.
【例3.6】★临界区是__________。 A.一个缓冲区 B.一段共享数据区 C.一段程序 D.一个互斥资源
V(semaphore s) { s.count++ if(s.count<=0) { 从等待队列s.queue取 出第一个进程; 将该进程插入就绪队 列; } }
【例3.20】★ 有三个进程PA, PB和PC协作解 决文件打印问题(见下图):PA将文件记录 从磁盘读入内存的缓冲区1,每执行一次读一 个记录;PB将缓冲区1的内容复制到缓冲区2, 每执行一次复制一个记录;PC将缓冲区2的内 容打印出来,每执行一次打印一个记录。缓冲 区的大小和一个记录大小一样。请用P、V操 作来保证文件的正确打印。