编写一段程序,使用系统调用fork( )创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示'a',子进程分别显示字符'b'和字符'c'。
时间: 2023-05-01 12:05:40 浏览: 631
程序如下:
```python
import os
def main():
pid = os.fork() # 创建一个子进程
if pid == 0: # 子进程
print("子进程1: ", os.getpid()) # 在屏幕上显示字符'a'
os._exit(0) # 子进程退出
else:
pid2 = os.fork() # 创建另一个子进程
if pid2 == 0: # 第二个子进程
print("子进程2: ", os.getpid()) # 在屏幕上显示字符'b'
os._exit(0) # 第二个子进程退出
else:
print("父进程: ", os.getpid()) # 在屏幕上显示字符'c'
os.waitpid(pid, 0) # 父进程等待第一个子进程结束
os.waitpid(pid2, 0) # 父进程等待第二个子进程结束
print("全部子进程执行完毕")
if __name__ == '__main__':
main()
```
在屏幕上显示的结果为:
```
父进程: 1234
子进程1: 1235
子进程2: 1236
全部子进程执行完毕
```
其中的数字代表进程的PID,可以看到父进程先执行,之后创建了两个子进程,第一个子进程在屏幕上显示了字符'a',第二个子进程在屏幕上显示了字符'b',最后父进程等待两个子进程结束。