顺序拷贝文件程序的核心语句是“while((n=read(fdr,abuf,512))>0) write(fdw,abuf,n);”,拷贝一个2000字节长度的文件需要调用read(……)系统调用【 】次。
查看答案
系统中countp表示空闲打印机的台数,每个进程释放打印机都会执行由“Rßcountp”、“RßR+1”和“countpßR”三条指令组成的程序段A(对应于 “countp + +;” 语句,R为寄存器),所以countp为共享变量。设当前countp=2,之后执行的两个进程P1和P2都有释放打印机的操作。如果P1、P2依次执行程序段A,则countp等于【 】,结果正确;如果P1先进入程序段A,执行完第1条指令“Rßcountp”后发生中断,中断处理后恢复中断现场前调用进程调度程序保护P1的调度现场,P1的调度现场中保存的R的值为【 】;调度选中P2,P2执行A的第1条指令后R的值为【 】;、P2执行 A的第3条指令”后寄存器R的值为【 】、countp的值为【 】;之后再调度选中P1恢复P1的调度现场后寄存器R的值为【 】,countp的值为【 】;P1接着执行A的第【】条指令后寄存器R的值为【】;P1执行完A的第3条指令后countp的值为【】。
系统中countp表示空闲打印机的台数,每个进程释放打印机都会执行由“Rßcountp”、“RßR+1”和“countpßR”三条指令组成的程序段A(对应于 “countp + +;” 语句,R为寄存器),所以countp为共享变量。设当前countp=1,之后执行的两个进程P1和P2都有释放打印机的操作。如果P1、P2依次执行程序段A,则countp等于【 】,结果正确;如果P1先进入程序段A,执行完第1条指令“Rßcountp”后发生中断,中断处理后恢复中断现场前调用进程调度程序保护P1的调度现场,P1的调度现场中保存的R的值为【 】;调度选中P2,P2执行A的第1条指令后R的值为【 】;、P2执行 A的第3条指令”后寄存器R的值为【 】、countp的值为【 】;之后再调度选中P1恢复P1的调度现场后寄存器R的值为【 】,countp的值为【 】;P1接着执行A的第【】条指令后寄存器R的值为【 】;P1执行完A的第3条指令后countp的值为【 】。