第39天-进程 _1(2013.09.11)
1.信号的三种响应方式 ; 忽略, 默认响应, 自定义
2.信号相对于进程的控制流程来说是异步的。
3.使用kill -l 查看系统定义的信号列表
1-33 不支持排队 34-64支持排队
例 ; Ctrl-C产生SIGINT信号, Ctrl-\产生SIGQUIT信号, Ctrl-Z产生 SIGTSTP 信号(可使前台进程停止)
4.SIGQUIT的默认处理动作是终止进程并且Core Dump
ulimit -c 1024 : 允许core文件爱女最大为1024K
5.kill命令是调用kill函数实现的。
6.kill函数的作用 ; 可以给一个指定的进程发送指定的信号
raise 函数 : 可以给当前进程发送指定的信号。
函数原型 : #include <signal.h>
int kill(pid_t pid, int signo);
int raise(int signo);
返回值 : 成功返回0,失败返回-1
signo 为那几个数的几种情况 :
0 : 杀死本组进程
-1 :杀死除init之外的所有进程
>= 1 : 杀死某个进程
-10 : 杀死组号为10的进程
7. abort函数使当前进程接受到SIGABRT信号而异常终止
函数原型: #include <stdlib.h>
void abort(void);
返回值 : 总是会成功,所以么有返回值
8.alarm()函数和SIGALRM信号
函数原型 : #include <unistd.h>
unsigned int alarm(unsigned int seconds);
调用alarm函数可以设定一个闹钟, 可以告诉内核在seconds 秒后给当前进程发SIGALRM 信号。该信号的默认处理动作是终止当前进程。
如果seconds为0,表示取消以前设定的闹钟, 函数返回值仍然是以前设定的闹钟时间还余下的秒数
9.信号递达 : 实际执行信号的处理的动作
信号未决 : 信号从产生到递达之间的状态
10 , 每个信号都有两个标志位分别表示阻塞和未决
11. 信号集操作函数 :
sigset_t 类型对于每种信号用一个bit表示“有效”或“无效”状态
函数原型 : #include <signal.h>
int sigemptyset(sigset_t *set); 清零
int sigfillset(sigset_t *set); 置1
int sigaddset(siget_t *set, int signo); 某一位置1
int sigdelset(sigset_t *set, int signo); 某一位清零
int sigismemeber(const sigset_t *set, int signo); 判断某一位是否为1
12. 调用 sigprocmask : 读取或更改进程屏蔽字
函数原型 : #include <signal.h>
int sigprocmask(int how, const sigset_t *set, sigset_t *oset);
返回值 : 成功为 0, 失败为 -1
若oset非空指针, 则读取进程的当前信号屏蔽信号通过oset参数传出
若set非空指针, 则更改进程的信号屏蔽字。
若两者都非空 , 先将原来的信号屏蔽备份到oset里, 然后根据set和how参数更改信号屏蔽字。
how :
SIG_BLOCK : set包含了我们希望添加到当前信号屏蔽字的信号
SIG_UNBLOCK : set包含了从当前信号屏蔽字着中解除阻塞的信号。
SIG_SETMASK : 设置当前信号屏蔽字位set所指向的值。
13.函数原型 : #include <signal.h>
int sigpending(sigset_t *set);
sigpending读取当前进程的未决信号集, 通过set参数传出。
成功返回0, 失败返回-1
转载于:https://www.cnblogs.com/cxw825873709/p/3315027.html
第39天-进程 _1(2013.09.11)相关推荐
- 电脑公司GHOST WIN7 装机旗舰版 2013 09
电脑公司GHOST WIN7 装机旗舰版 2013 09 == ================================================ 本系统主要适用于笔记本.品牌机, ...
- 2013年11月26日 20:26:36 做某香米过程中问题总汇
个人工作: A.图片编辑界面: ①图片旋转 ②滤镜效果[*] 使用GPU Image开源库,120种滤镜效果,3-4天之内 ③缩放 ④亮度[*] ⑤文字编辑 B.代码方面: ①代码合并 细节点比如一天 ...
- 2013.09.14 不能继续,就应该趁早放弃
2013.09.14不能继续,就应该趁早放弃 后悔没有用,趁早放弃是最好的决定 当眼睛里只有只有仇恨的时候,是最应该放弃的时候 转载于:https://blog.51cto.com/smilecong ...
- 2013年最后2个月的学习目标(成果)(上次更新2013年11月18日)
1.2013年11月7日. a.新人毕业-老人跳槽 专栏. 简化标题,调整字体,增加和修改"相关阅读". 增加和修改Tag. b.新人毕业-老人跳槽 专栏. 删除3篇非原创文章. ...
- V9摄影美学三亚国际公馆2013年11月正式登陆三亚,同年12盛大开幕!
V9摄影美学三亚国际公馆 公司简介: V9摄影美学三亚国际公馆2013年11月正式登陆三亚,同年12盛大开幕!本店的各位专家和董事会成员均在香港.中国及台湾地区之同行业界.摄影团体等 ...
- 新萝卜家园GHOST WIN7 SP1 装机旗舰版 2013 09
新萝卜家园GHOST WIN7 SP1 装机旗舰版 2013 09 == ===================================================== 本系统主要适 ...
- 【美】约翰.佩里 - 拖拉一点也无妨(2013年11月4日)
<拖拉一点也无妨> 作 者:[美]约翰.佩里 译 者:苏西 系 列: 出 版:浙江大学出版社 字 数:96千字 阅读完成:2013年11月4日 转载于:https://www.cnblog ...
- 2013年11月份我国网络不良与垃圾短信息分析报告
IDC评述网(idcps.com)12月17日报道:近日,12321网络不良与垃圾信息举报受理中心最新播报了11月份我国不良与垃圾短信息发送情况.根据报告显示,11月份垃圾邮件发送IP地址与上月大体相 ...
- [信息系统集成考试]2013年11月错题
[单选] 组织过程资产在项目管理中扮演很重要的角色,(3)不属于组织过程资产. A:基础设施 B:组织的经验学习系统 C:产品组件标准 D:招聘.培养.使用和解聘技术人员的指导方针 正确答案:A 你的 ...
最新文章
- C++中的两种绑定方式(静态绑定、动态绑定)
- 解决nginx使用proxy_pass反向代理时,session丢失的问题
- 【Groovy】Groovy 动态语言特性 ( Groovy 中的变量自动类型推断以及动态调用 | Java 中必须为变量指定其类型 )
- ie8 object param没有效果_如何用php实现分页效果
- sqoop hive导出到mysql_Sqoop hive导出到mysql[转]
- Jquery 全选,反选
- win10升级后chrome碰到对话框就卡死
- PowerDesigner(三)-企业架构模型
- 在WinForm中使用Web Service来实现软件自动升级
- redis 客户端_你在使用什么 Redis 客户端工具?
- 微软:警惕 Web3 和去中心化网络中的“冰钓”威胁
- 获得密钥_《哪吒》公映密钥延期一个月?关于“密钥延期”的全揭秘来了
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_9 spring的依赖注入
- mysql在线修复主从同步
- 南天打印机(NANTIAN PR2)配合税控机安装
- phpdesigner 8 注册码
- php今日头条抓取正文,今日头条文章爬虫采集 - 八爪鱼采集器
- android 联系人 字母索引,Android手机联系人带字母索引的快速查找
- spring多参java注解_spring参数注解校验
- CentOS7环境安装oracleRAC集群遇到的问题总结二(执行root.sh报错ORA-15018和ORA-15020)
热门文章
- 一张图看懂VnTrader的数据流
- IT报表开发者必看:别加班了,快用这个神器提高报表开发效率
- 牛市该理智还是疯狂?python+BI可视化的股票分析,都是你想看的
- set/multiset容器
- 攻击服务器修改数据库,SQL服务器数据库注入式攻击解释
- 中科大c语言试卷,中科大考研试题.doc
- pptx库ppt演示 python_Python自动化操作PPT看这一篇就够了
- tomcat 启动需要java环境吗?_三分钟教你Windows环境下,如何设置Tomcat随机自动启动?...
- 怎么将excel中的url批量转化为图片_Python+Wind 批量下载上市公司年报 - Part 1/2
- linux tensorflow demo_独家 | 在浏览器中使用TensorFlow.js和Python构建机器学习模型(附代码)...