自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 学习笔记--libevent min_heap

libevent采用小根堆管理其timer,所以了解heap的特性是必须的小根堆的特性为:1完全二叉树   2子节点的值大于其根结点的值其实根据这两点,就可以实现小根堆了。完全二叉树决定了如果已知子结点索引child_index,则父结点索引parent_index为(child_index-1)/2,反之有了这些基础就可以看代码了/*这个函数的目的是根据hole_in

2016-04-06 18:54:03 300

原创 IP协议的学习笔记_01 ---IP分片

IP报文格式:先来分析报文段的意义:0-3bit:代表版本号 IPV4则为4,IPV6则为64-7bit:代表首部长度,由此我们可以知道4bit最大代表10进制数据为15,单位为4字节,则IP首部最长为60字节,但是现实生活中一般采用的首部长度为固定首部长度,即20字节8-15bit:代表服务类型,现在基本都是0x00(也有少数情况采用的),即不用这个字段16-

2016-03-17 17:03:03 365

转载 squid 介绍

squid介绍及其简单配置1.Squid是什么?  Squid是一种用来缓冲Internet数据的软件。它是这样实现其功能的,接受来自人们需要下载的目标(object)的请求并适当地处理这些请求。也就是说,如果一个人想下载一web页面,他请求Squid为他取得这个页面。Squid随之连接到远程服务器(比如:http://squid.nlanr.net/)并向这个页面发出请求。然

2016-03-14 14:18:55 686

原创 数据结构----串

今天一天看了茫茫多的数据结构,感觉有些东西写出来会更加的利于理解先从比较简单的串开始。串的定义:串是由零个或多个字符构成的有限序列串的抽象数据类型:ADT String{  数据对象:D={ai|ai(-CharacterSet,i=1,2,...,n,n>=0}  数据关系:R1={|ai-1,ai(-D,i=2,...,n}  基本操作:  

2016-03-13 16:02:41 343

转载 linux 文件描述符的一些底层实现

转载请说明出处:http://blog.csdn.net/cywosp/article/details/389652391. 概述    在Linux系统中一切皆可以看成是文件,文件又可分为:普通文件、目录文件、链接文件和设备文件。文件描述符(file descriptor)是内核为了高效管理已被打开的文件所创建的索引,其是一个非负整数(通常是小整数),用于指代被打开的文件

2016-03-08 20:23:13 393

转载 再探epoll实现机制

epoll IO多路复用模型实现机制由于epoll的实现机制与select/poll机制完全不同,上面所说的 select的缺点在epoll上不复存在。设想一下如下场景:有100万个客户端同时与一个服务器进程保持着TCP连接。而每一时刻,通常只有几百上千个TCP连接是活跃的(事实上大部分场景都是这种情况)。如何实现这样的高并发?在select/poll时代,服务器进程每次都把这100万

2016-03-08 17:49:19 334

原创 聊聊目标文件到底长什么样子

为了了解目标文件的布局方式,我写了几行简单但是有非常实用的测试代码 见图 在程序中我已经加入了注释,现在我们通过objdumg这个命令来观察一下,还是先上图我们可以看到这条命令将目标文件文件中的存储区域都标记了出来.text段为代码段.data段为数据段,存储的是初始化的全局变量(包括静态全局变量)和已经初始化的静态局部变量.rodata段为只读存储段,存储

2016-03-05 18:47:25 444

转载 操作系统页面置换

一、基本思想分页存储管理是将固定分区方法与动态重定位技术结合在一起提出的一种存储管理方案,它需要硬件的支持,基本思想如下:1. 等分内存把整个内存划分成大小相等的许多分区,每个分区称为”块“(具有固定分区的管理思想)分页式存储管理中,“块”是存储分配的单位2. 等分逻辑空间用户作业仍然相对于“0”进行编址,形成一个连续的相对地址空间操作系统按照内存块的尺寸对用户作业的逻

2016-03-05 18:28:42 682

转载 说说linux下文件系统

Linux文件系统的实现作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! Linux文件管理从用户的层面介绍了Linux管理文件的方式。Linux有一个树状结构来组织文件。树的顶端为根目录(/),节点为目录,而末端的叶子为包含数据的文件。当我们给出一个文件的完整路径时,我们从根目录出发,经过沿途各个目录,最终到达文件。

2016-03-04 16:49:44 323

转载 epoll模型及其框架(内附epoll 线程池项目代码)

在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且,在linux/posix_types.h头文件有这样的声明:#define __

2016-03-03 20:59:29 3524

转载 虽然我不是windows端程序员,但是这个IOCP讲的还是可以的

这篇文档我非常详细并且图文并茂的介绍了关于网络编程模型中完成端口的方方面面的信息,从API的用法到使用的步骤,从完成端口的实现机理到实际使用的注意事项,都有所涉及,并且为了让朋友们更直观的体会完成端口的用法,本文附带了有详尽注释的使用MFC编写的图形界面的示例代码。    我的初衷是希望写一份互联网上能找到的最详尽的关于完成端口的教学文档,而且让对Socket编程略有了解的人都能够看得懂,都能

2016-03-03 19:34:19 2543

转载 LINUX下segment产生以及调试

1. 段错误是什么一句话来说,段错误是指访问的内存超出了系统给这个程序所设定的内存空间,例如访问了不存在的内存地址、访问了系统保护的内存地址、访问了只读的内存地址等等情况。这里贴一个对于“段错误”的准确定义(参考Answers.com):A segmentation fault (often shortened to segfault) is a particular error

2016-03-03 19:04:38 680

转载 ubuntu14.04下安装hadoop

本人不擅长java语言,但是触类旁通,java的代码多少还是能看懂,前段时间与几个研究生们一起参加了云计算大赛,正好需要hadoop,于是上网各种荡资料搞了一晚上都没有搞定,为了不让后面的同学重蹈覆辙,我还是转载一下这位大神的blog

2016-03-03 15:30:16 226

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除