上一页 1 ··· 28 29 30 31 32 33 34 35 36 ··· 43 下一页

2018年1月27日

信号之信号集操作

摘要: 1、信号在内核中的表示 执行信号的处理动作称为信号递达。信号从产生到递达状态之间的状态成为未决(pending)。进程可以选择阻塞某个信号。被阻塞的信号产生时将保持在未决状态。直到进程解除对此信号的阻塞,才可以执行递达动作。 如下图,进程任务结构(PCB)中包含:信号屏蔽字64位,linux中用si 阅读全文

posted @ 2018-01-27 19:35 wsw_seu 阅读(337) 评论(0) 推荐(0) 编辑

信号之可重入函数

摘要: 为了增强程序的稳定性,在信号处理函数中应使用可重入函数。 可重入函数:指的是一个可以被多个任务调度的过程,任务在调度中不必担心数据是否出错。因为进程在收到信号后,就将跳转到信号处理程序去执行。如果信号处理程序中使用了不可重入函数,那么信号处理函数可能会修改原进程中不应被修改的数据,这样进程从信号处理 阅读全文

posted @ 2018-01-27 16:49 wsw_seu 阅读(222) 评论(0) 推荐(0) 编辑

信号的发送

摘要: 1、可靠信号与不可靠信号 可靠信号都是实时信号,不可靠信号都是非实时信号。实时信号都支持排队,都是可靠信号。 不可靠信号的早期问题:1、UNIX进程每次处理信号后,将对信号响应设置为默认动作,而LINUX中再次发送不会重置默认动作,继续是handler.早期解决这个问题的方法是,在信号处理程序最后继 阅读全文

posted @ 2018-01-27 16:42 wsw_seu 阅读(195) 评论(0) 推荐(0) 编辑

2018年1月22日

守护进程详解以及start-stop-daemon命令

摘要: 1、概念:守护进程是在后台运行的不受终端控制的进程,通常守护进程在系统启动时自动运行,守护进程的名称通常以d结尾,比如sshd、xinetd、crond等。 2、创建守护进程的步骤:a、调用fork(),创建新进程,它会是将来的守护进程;b、在父进程中调用exit(),保证子进程不是进程组组长;(进 阅读全文

posted @ 2018-01-22 19:53 wsw_seu 阅读(2435) 评论(0) 推荐(0) 编辑

信号基本概念

摘要: 1、中断 :中断源--》中断屏蔽?--》保护现场--》中断处理--》恢复现场。中断个数固定。中断向量:保存固定个数中断处理程序入口地址 硬件中断(外部中断):外设 软件中断(内部中断):程序出错或程序调用指令 2、信号:异步事件响应,有某些错误条件发生,是在软件层次上对中断的模拟。 信号、中断相似点 阅读全文

posted @ 2018-01-22 19:52 wsw_seu 阅读(229) 评论(0) 推荐(0) 编辑

2018年1月20日

常用进程调度算法(转)

摘要: 首先了解一下作业与进程的区别: 一个进程是一个程序对某个数据集的执行过程,是分配资源的基本单位。作业是用户需要计算机完成的某项任务,是要求计算机所做工作的集合。一个作业的完成要经过作业提交、作业收容、作业执行和作业完成4个阶段。而进程是对已提交完毕的程序所执行过程的描述,是资源分配的基本单位。其主要 阅读全文

posted @ 2018-01-20 10:40 wsw_seu 阅读(189) 评论(0) 推荐(0) 编辑

malloc/free与new/delete的区别(转)

摘要: 相同点:都可用于申请动态内存和释放内存 不同点:(1)操作对象有所不同。malloc与free是C++/C 语言的标准库函数,new/delete 是C++的运算符。对于非内部数据类的对象而言,光用maloc/free 无法满足动态对象的要求。对象在创建的同时要自动执行构造函数, 对象消亡之前要自动 阅读全文

posted @ 2018-01-20 10:09 wsw_seu 阅读(107) 评论(0) 推荐(0) 编辑

2018年1月19日

最长回文子串的Manacher算法

摘要: 对于一个比较长的字符串,O(n^2)的时间复杂度是难以接受的。Can we do better? 先来看看解法2存在的缺陷。 1) 由于回文串长度的奇偶性造成了不同性质的对称轴位置,解法2要对两种情况分别处理;2) 很多子串被重复多次访问,造成较差的时间效率。 缺陷2)可以通过这个直观的小🌰体现: 阅读全文

posted @ 2018-01-19 11:05 wsw_seu 阅读(154) 评论(0) 推荐(0) 编辑

2018年1月18日

IP地址转换

摘要: 1 /* 2 点分十进制转32位IP 3 */ 4 #include 5 #include 6 #include 7 using namespace std; 8 bool change2Binary(const string& str) 9 { 10 int arrInt[4] = {0};//存放4个IP地址整数 192.168.1.1 11 unsigne... 阅读全文

posted @ 2018-01-18 16:18 wsw_seu 阅读(360) 评论(0) 推荐(0) 编辑

2018年1月17日

exec系列函数详解

摘要: execve替换进程映像(加载程序):execve系统调用,意味着代码段、数据段、堆栈段和PCB全部被替换。在UNIX中采用一种独特的方法,它将进程创建与加载一个新进程映像分离。这样的好处是有更多的余地对两种操作进行管理。当我们创建一个进程之后,通常将子进程替换成新的进程映像,这可以用exec系列的 阅读全文

posted @ 2018-01-17 22:38 wsw_seu 阅读(755) 评论(0) 推荐(0) 编辑

上一页 1 ··· 28 29 30 31 32 33 34 35 36 ··· 43 下一页

导航