#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<signal.h>
/*进程间的通讯-软中断信号:父->子->父同步序列*/
/*定义*/
int temp;
void handle();
void handle(){
temp=0;
}
main(){
int pro1;
while((pro1=fork())==-1);
if(pro1>0){
//父进程返回
int i;
for(i=0;i<3;i++){
printf("welcome to hr!\n");
sleep(1);
}
/*
向子进程发送软中断信号
12表示用户自定义信号量
*/
kill(pro1,12);
/*等待子进程结束*/
wait(0);
printf("father over!\n");
exit(0);
}else{
/*预设软中断信号对应的函数*/
signal(12,handle);
temp=1;
while(temp==1){
printf("i am a child!\n");
sleep(1);
}
printf("child over!\n");
exit(0);
}
}
分享到:
相关推荐
信号是通过软中断实现的,允许快速响应事件。 3. **进程状态**: - 错误选项:B、C、D。 - 正确的进程状态包括:运行态(正在CPU上执行)、就绪态(等待CPU,但已准备好执行)和等待态(等待特定资源或事件)。 ...
- 信号量机制用于解决进程间的同步问题。 - 示例题目可通过P或V操作实现资源的互斥访问和同步。 #### 第三章:存储管理 - **选择调度方式与算法**: - 用户角度:响应时间、吞吐量。 - 系统角度:资源利用率、...
- 甘特图是一种图形表示法,用于展示进程调度的时间序列,有助于理解进程间的调度顺序。 ### 5. 经典进程间通信问题 - **哲学家就餐问题**(Dining Philosophers Problem): - 五个哲学家坐在圆桌周围,每个哲学家...
- **信号量**是一种同步机制,用于解决进程间的互斥和同步问题。PV操作是信号量机制的基本操作。在本题中,当n个进程同时尝试获取3个资源时,最多会有\(n-3\)个进程被阻塞,因此信号量S的最小值为\(-(n-3)\)。 ####...
管道是无名的、单向的数据通道,而软中断(如SIGINT)是一种信号机制,用于进程间的同步和控制。 实验1中,管道通信演示了如何使用`pipe()`创建管道,`fork()`创建子进程,子进程向管道写入信息,而父进程从管道...
- **管道(Pipe)**:用于具有亲缘关系的进程间通信,如父进程和子进程。 - **消息队列(Message Queue)**:允许多个无亲缘关系的进程之间发送消息。 - **共享内存(Shared Memory)**:允许多个进程共享一段物理...
- **信号量机制**:信号量是一种常用的进程同步机制,用于解决进程间的同步与互斥问题。 - **同步与互斥**:同步是指多个进程按照一定的先后顺序协作执行,而互斥是指同一时刻只允许一个进程访问共享资源。 - **信号...
- **软中断**: 由软件触发,用于特定功能的处理。 **34. 内存** - **定义**: 计算机中用于存储数据和指令的部件。 - **类型**: RAM (随机存取存储器) 和 ROM (只读存储器)。 **35. 页面置换算法** - **最近最少...
- **进程间通信的方法、应用场景、优缺点**:管道、信号量、消息队列等。 - **临界区、互斥、同步**:临界区指必须独占访问的资源区域,互斥和同步是实现手段。 - **信号量原理**:通过计数器来控制对共享资源的访问...
- **进程通信机制**:掌握进程间通信的各种机制。 - **线程同步机制**:了解线程同步的基本方法。 - **死锁及处理方法**:理解死锁的概念,掌握死锁预防、避免和检测的方法。 #### 4. 存储管理 - **程序处理与内存...
- **信号特性**:信号是进程间通信的一种方式,也是软件中断,但信号不是用于资源回收,而是用于通知进程某个事件的发生或处理异常。 17. **反置页表**: - **反置页表内存占用**:40个进程,每个进程有1GB地址...
同步关系是指完成同一任务的伙伴进程间,因需要在某些位置上协调它们的工作而等待、传递信息所产生的制约关系。 临界资源是一个时间段内只允许一个进程使用的资源,各进程互斥地访问临界资源。临界区是访问临界资源...
利用`fork()`创建的子进程和`signal()`捕获键盘输入的软中断信号(SIGINT),父进程通过`kill()`发送自定义信号(SIGUSR1和SIGUSR2)给子进程,子进程响应这些信号输出相关信息,展示了进程间的同步和通信机制。...
5. **进程通信**:包括管道、信号量、消息队列、共享内存等多种方式,实现进程间的数据交换。 6. **调度算法**:Linux内核采用多种调度策略,如抢占式调度、实时调度等,保证系统性能和响应性。 7. **进程同步**:...
可以使用信号量机制来实现进程间的同步和互斥,例如使用信号量P、V操作来实现进程间的同步。 问题46:该问题要求分析请求分页管理系统中的一次内存的访问时间。可以根据问题描述,计算出各个虚地址的访问时间,并...
- **切换过程**:包括软切换和硬切换两种类型,软切换允许在两个基站间平滑切换,而硬切换则会在切换过程中短暂中断服务。 - **切换信令**:指移动终端与网络之间的信息交换,用于协调切换操作。 - **软切换要求**:...
由于每个用户的信号都被自己的码序列所调制,因此只有拥有正确码序列的接收器才能解调出有用信息。这为通信提供了额外的安全层,使得窃听变得非常困难。 **1.7 低发射功率** CDMA系统通常需要较低的发射功率就能...
3. 中断类型:访管中断(或称软中断)是由用户程序请求操作系统服务时产生的,例如执行特权指令。答案A的时钟中断是定期发生的硬件中断;B的外部中断可能是硬件事件,如键盘输入;D的溢出中断通常与计算错误有关。 ...