随笔分类 -  Linux基础

摘要:http://www.cnblogs.com/mengyan/archive/2012/08/30/2664607.html一、进程通信方法在说明线程通信前,有必要对进程通信进行说明;进程间通信的方法主要有以下几种: (1)管道(Pipe):管道可用于具有亲缘关系进程间的通信,允许一个进程和另一个与它有共同祖先的进程之间进行通信。 (2)命名管道(named pipe):命名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关 系进程间的通信。命名管道在文件系统中有对应的文件名。命名管道通过命令mkfifo或系统调用mkfifo来创建。 (3)信号(Signal):信 阅读全文
posted @ 2014-03-28 09:08 程序员大叔的博客 阅读(433) 评论(0) 推荐(0)
摘要:1、互斥使用(资源独占) 一个资源每次只能给一个进程使用 2、不可强占(不可剥夺) 资源申请者不能强行的从资源占有者手中夺取资源,资源只能由占有者自愿释放 3、请求和保持(部分分配,占有申请) 一个进程在申请新的资源的同时保持对原有资源的占有(只有这样才是动态申请,动态分配) 4、循环等待 存在一个进程等待队列 {P1 , P2 , … , Pn}, 其中P1等待P2占有的资源,P2等待P3占有的资源,…,Pn等待P1占有的资源,形成一个进程等待环路 阅读全文
posted @ 2014-03-28 08:57 程序员大叔的博客 阅读(201) 评论(0) 推荐(0)
摘要:操作系统的虚拟存储器管理技术中,有一项比较重要的分支叫分页存储管理。分页管理是在页架中装入一些需要使用或过去使用过的页面,但是页架的数量是有限的,这里就会用到一些页面置换算法,使得页面访问的效率提高。判断一个置换算法优劣的指标就是缺页率,缺页是指当前的页架中没有需要访问的页面,而需要将该页面加入其中一个页架。缺页率=访问缺页次数/访问总次数。1.最佳置换算法OPT不可现实的算法总结:若出现缺页,从该页向后查找,先找到的M-1个页面保留在内存,另外那个替换掉。2.先进先出FIFO页面置换算法缺点:存在Belady现象,抖动现象。3.最近最久未使用(LRU)置换算法最有效的页面置换算法总结:若出现 阅读全文
posted @ 2014-03-28 08:54 程序员大叔的博客 阅读(1435) 评论(0) 推荐(0)
摘要:http://1632004.blog.163.com/blog/static/29991497201231811231120/如果向您的服务器发出了某项请求要求显示您网站上的某个网页(例如,当用户通过浏览器访问您的网页),那么,您的服务器会返回 HTTP 状态代码以响应该请求。1xx - 信息提示这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应。· 100 - Continue 初始的请求已经接受,客户应当继续发送请求的其余部分。(HTTP 1.1新)· 101 - Switching Protocols 服务器将遵从客户的请求转换 阅读全文
posted @ 2014-03-22 10:51 程序员大叔的博客 阅读(983) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2014-03-22 10:14 程序员大叔的博客 阅读(123) 评论(0) 推荐(0)
摘要:1.基本语法规则: 目标:依赖文件 [Tab]command 或 目标:依赖文件; command2.伪目标 .PHONY: 目标 特点:伪目标的特点为总是被执行,故其依赖的目标总不如改目标新 应用: 1.无依赖文件 .PHONY:clean clean: commands 没有依赖文件,文件"clean"始终是最新的,命令永远不会执行;为避免这个问题,可使用".PHONY"指明该目标。 避免和同名文件冲突(防止存在和PHONY执行目标的名称相同的文件, 避免和文件名重名),显示指出文件为伪目标,make clean 2.有依赖文件 all: prog1 阅读全文
posted @ 2014-03-05 10:44 程序员大叔的博客 阅读(290) 评论(0) 推荐(0)
摘要:小结:常用的gdb命令backtrace 显示程序中的当前位置和表示如何到达当前位置的栈跟踪(同义词:where) breakpoint 在程序中设置一个断点 cd 改变当前工作目录 clear 删除刚才停止处的断点 commands 命中断点时,列出将要执行的命令 continue 从断点开始继续执行 delete 删除一个断点或监测点;也可与其他命令一起使用 display 程序停止时显示变量和表达时 down 下移栈帧,使得另一个函数成为当前函数 frame 选择下一条continue命令的帧 info 显示与该程序有关的各种信息 jump 在源程序中的另一点开始运行 kill 异常终止 阅读全文
posted @ 2014-03-01 14:54 程序员大叔的博客 阅读(218) 评论(0) 推荐(0)
摘要:http://blog.chinaunix.net/uid-23883288-id-3028968.html1.进程的三种基本状态 进程在运行中不断地改变其运行状态。通常,一个运行进程必须具有以下三种基本状态。就绪(Ready)状态 当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称为就绪状态。执行(Running)状态当进程已获得处理机,其程序正在处理机上执行,此时的进程状态称为执行状态。阻塞(Blocked)状态正在执行的进程,由于等待某个事件发生而无法执行时,便放弃处理机而处于阻塞状态。引起进程阻塞的事件可有多种,例如,等待I/O完成、申请缓冲区不能 阅读全文
posted @ 2014-02-21 15:48 程序员大叔的博客 阅读(19666) 评论(0) 推荐(0)
摘要:参考:http://blog.csdn.net/cyberhero/article/details/5827181 1、建立连接协议(三次握手) (1)客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的报文1. (2)服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和SYN标志。因此它表示对刚才客户端SYN报文的回应;同时又标志SYN给客户端,询问客户端是否准备好进行数据通讯。 (3) 客户必须再次回应服务段一个ACK报文,这是报文段3. 2、连接终止协议(四次握手) 由于TCP连接是全双工的,因此每个方向都必须单独进行关闭。这原则是当一... 阅读全文
posted @ 2013-11-21 10:38 程序员大叔的博客 阅读(1237) 评论(0) 推荐(0)