
liunx
文章平均质量分 74
Stand__out
共同进步
展开
-
Linux中的mmap函数
1,mmap函数功能mmap函数为内存映射函数。负责把文件内容映射到进程的虚拟内存空间, 通过对这段内存的读取和修改,来实现对文件的读取和修改,而不需要再调用read,write等操作。注意:mmap将一个文件或者其它对象映射进内存。文件被映射到多个页上,如果文件的大小不是所有页的大小之和,最后一个页不被使用的空间将会清零。mmap在用户空间映射调用系统中作用很大。2,mmap原创 2016-07-25 12:20:35 · 1328 阅读 · 0 评论 -
阻塞信号和捕捉信号
一 阻塞信号1 概念:信号递达:实际执行信号的处理动作称为信号递达(Delivery)。信号未决:信号从产生到递达之间的状态,称为信号未决(Pending)。进程可以选择阻塞(Block )某个信号。被阻塞的信号产生时将保持在未决状态,直到进程解除对此信号的阻塞,才执行递达的动作。注意:阻塞和忽略是不同的,只要信号被阻塞就不会递达,而忽略是在递达之后可选的一种处理动作。每个原创 2016-07-27 00:10:59 · 2153 阅读 · 0 评论 -
线程安全与可重入
线程安全:一个函数被称为线程安全的当且仅当被多个并发线程反复调用时,它会一直产生正确的结果。任何线程不安全问题的根源都是“共享数据”。所以,不使用任何共享数据的函数(即:可重入函数)肯定是线程安全的。但这并不等于说,线程安全函数就是可重入函数。为什么呢?因为即使有线程有共享数据,线程被并发调用的时候产生的结果可以是正确的。那么这种正确性是如何保证的呢?对,就是通过同步操作。可重入:当被原创 2016-07-27 16:34:28 · 445 阅读 · 0 评论 -
死锁的产生和预防死锁
1,死锁的定义:死锁是指多个进 程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进。2,死锁产生的原因主要是:(1) 因为系统资源不足。(2) 进程运行推进的顺序不合适。(3) 资源分配不当等。3,死锁产生的必要条件:(1) 互斥条件:一个资源每次只能被一个进程使用。(2) 请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放原创 2016-07-28 20:34:03 · 685 阅读 · 0 评论 -
进程组,作业,会话,精灵进程
1. 进程组每个进程除了有一个进程ID之外,还属于一个进程组。进程组是一个或多个进程的集合。通常,它们与同一作业相关联,可以接收来自同一终端的各种信号。每个进程组有一个唯一的进程组ID。每个进程组都可以有一个组长进程。组长进程的标识是,其进程组ID等于其进程ID。组长进程可以创建一个进程组,创建该组中的进程,然后终止。只要在某个进程组中一个进程存在,则该进程组就存在,这与其组长进程是否终止原创 2016-07-31 18:06:52 · 619 阅读 · 0 评论