上一页 1 2 3 4 5 6 7 8 9 ··· 13 下一页
摘要: listen--监听数量#include int listen(int sockfd, int backlog);/* backlog指定了该套接口排队的最大连接个数 */调用listen导致套接口从CLOSED状态转换到LISTEN状态。监听窗口维持两个队列(队列的大小与backlog有关):未完成队列,每个这样的SYN分节对应一项;已由某个客户发出并到达服务器,而服务器正在等待完成相应的TCP三次握手,此套接口处于SYN_RCVD状态。完成队列,完成TCP三次握手过程的每一项;该套接口处于ESTABLISHED状态。问题来了,如何动态的改变listen监听的个数呢? 如果指定值在源代码中. 阅读全文
posted @ 2013-12-13 11:08 cococo点点 阅读(5942) 评论(0) 推荐(0) 编辑
摘要: 地址转换函数IPv4#include 点分十进制数串(例如192.168.1.1) ===(转换)===> 32位网络字节序地址int inet_aton(const char* strptr, struct in_addr *addrptr);返回: 1----串有效 0----串有错in_addr_t inet_addr(const char* strptr);返回: 成功,32位二进制的网络字节序地址 失败,返回INADDR_NONE32位网络字节序地址 ===(转换)===> 点分十进制数串char *inet_ntoa(struct in_addr inaddr);IPv 阅读全文
posted @ 2013-12-11 11:18 cococo点点 阅读(364) 评论(0) 推荐(0) 编辑
摘要: 字节流套接口的读写 字节流套接口上的read和write函数的使用与普通的I/O操作不同。由于内核中套接口的缓冲区是一个有限的空间,当这个缓冲空间不足以存储你要接收或发送的数据时,函数返回的字节数就会比预期发送的字节数少。这时,再次把剩余的数据操作一次即可。 为了预防缓冲区空间不足的情况,可以调用readn、writen、readline、writelin函数readn函数:从一个描述字读n个字节// return readn numberssize_t readn(int fd, void* vptr, size_t n){ size_t nleft; size_t nrea... 阅读全文
posted @ 2013-12-11 10:54 cococo点点 阅读(784) 评论(0) 推荐(0) 编辑
摘要: 地址转换协议ARP 在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。 所谓地址解析(address resolution)就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。理论结构 ARP软件可分为三部分:输出模块将高层协议地址与相应的物理地址进行绑定,返回给网络接... 阅读全文
posted @ 2013-11-28 09:42 cococo点点 阅读(4325) 评论(3) 推荐(4) 编辑
摘要: Ubuntu上安装ns2-2.34步骤1下载ns-allinone-2.34$ tar zxf ns-allinone-2.34.tar.gz步骤2sudo apt-get install build-essential # GCCsudo apt-get install tcl8.4 tcl8.4-dev tk8.4 tk8.4-dev # for TCL and TKsudo apt-get install libxmu-dev libxmu-headers # for nam步骤3./install出现的错误问题1ld -shared-o libotcl.so otcl.ootcl.o: 阅读全文
posted @ 2013-11-26 19:31 cococo点点 阅读(1751) 评论(0) 推荐(0) 编辑
摘要: 创建分支git branch abc切换分支git checkout abc删除分支(本地)git branch -d abc删除服务器上的分支(远端)git push origin :abc合并分支到主干git checkout mastergit pullgit merge abc对比分支git diff master abc修改 commit loggit commit –amend 阅读全文
posted @ 2013-11-26 09:27 cococo点点 阅读(406) 评论(0) 推荐(0) 编辑
摘要: Linux 进程间通信-管道 进程是一个独立的资源分配单位,不同进程之间的资源是相互独立的,没有关联,不能在一个进程中直接访问另一个进程中的资源。但是,进程不是孤立的,不同的进程之间需要信息的交换以及状态的传递,因此需要进程间数据传递、同步与异步的机制。 此篇博文记录管道。管道pipe 管道是进程间通信的主要手段之一。一个管道实际上就是个只存在于内存中的文件,对这个文件的操作要通过两个已经打开文件进行,它们分别代表管道的两端。管道是一种特殊的文件,它不属于某一种文件系统,而是一种独立的文件系统,有其自己的数据结构。根据管道的适用范围将其分为:无名管道和命名管道。管道分类●无名管道 主要... 阅读全文
posted @ 2013-11-25 14:41 cococo点点 阅读(5487) 评论(4) 推荐(2) 编辑
摘要: Simple Web Server web服务器hello world!-----简单的socket通信实现。HTTP HTTP是Web浏览器与Web服务器之间通信的标准协议,HTTP指明了客户端如何与服务器建立连接,如果从服务器请求数据,服务器如何响应请求,关闭连接。HTTP是使用TCP/IP协议进行传输数据的,也就是传输层利用TCP进行连接,进行可靠连接的。详情:点击请求一般格式,如: GET /index.html HTTP/1.0 Accept:text/html,text/plain User-Agent: Lyn Host:www.server.com我们主要需要的信息... 阅读全文
posted @ 2013-11-01 17:11 cococo点点 阅读(1426) 评论(0) 推荐(0) 编辑
摘要: UML类图 什么是UML?UML是一种用于创建程序模型的可视化语言。UML有多重功能不同的图。通过使用UML,可以让复杂的系统变的简单且容易理解。因为系统常常都是让人难人理解,并且系统之内的信息处理也是相当复杂,而UML提供了不同的图来表示不同类型的信息。 什么是类图 UML图中最最基本的是类图。它对类做描述,并表示类之间的关系。 类之间的关系包括: 类A 是 类B :is-a的关系 类A 包含 类B : has-a的关系 类A 使用 类B : has-a的关系 那么,对于一个类来说,主要表现三方面的内容: 类的名称 类的数据结构 类的方法 对一个类来说,“+”表示公... 阅读全文
posted @ 2013-10-28 15:52 cococo点点 阅读(1325) 评论(1) 推荐(1) 编辑
摘要: servlet+jsp+java实现Web 应用 用java来构建一个web应用是特别容易的事情,jsp和php很像,可以嵌套在html中。程序的结构很简单,也很清楚,本文主要记录下大概的开发过程和环境的搭建。环境搭建下载:eclipsetomcateclipse tomcat 插件开发过程1.建立一个Dynamic Web Project2.创建一个欢迎页面 页面可以是jsp/html,我们选择一个jsp页面(放在WebContent内)Insert title hereDo you come in? Select: 2.向工程添加一个serv... 阅读全文
posted @ 2013-10-26 21:15 cococo点点 阅读(49878) 评论(4) 推荐(3) 编辑
摘要: Hash与Map 面试时经常被问到,什么是Hash?什么是Map? 答:hash采用hash表存储,map一般采用红黑树(RB Tree)实现。因此其memory数据结构是不一样的,而且他们的时间复杂度也是不同的,hash为o(1),map为o(logN)。什么是Hash Hash,也可以称为“散列”,,就是把任意长度的输入,通过散列算法,变换成固定长度的输出,该输出就是散列值。这是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出(也就是多对一的关系)。哈希表的构造 在所有的线性数据结构中,数组的定位速度最快,因为它可通过数组下标直接定位到相应的... 阅读全文
posted @ 2013-10-24 15:17 cococo点点 阅读(2744) 评论(2) 推荐(2) 编辑
摘要: java 连接 MySQL1.准备工作 需要下载的工具: MySQL:http://www.mysql.com/downloads/ MySQL的可视化工具SQLyog:https://www.webyog.com/ java与MySQL进行连接的驱动:http://www.mysql.com/products/connector/ eclipse:http://www.eclipse.org/downloads/ MySQL默认安装,填写的密码要记住。 SQLyog安装后,新建一个MySQL的连接,填写你的用户名和密码。 下载后的MySQL驱动内有一个名为mysql-conn... 阅读全文
posted @ 2013-10-23 20:15 cococo点点 阅读(697) 评论(0) 推荐(0) 编辑
摘要: B-tree&B+tree B-tree,B是balance,一般用于数据库的索引。使用B-tree结构可以显著减少定位记录时所经历的中间过程,从而加快存取速度。而B+tree是B-tree的一个变种,大名鼎鼎的MySQL就普遍使用B+tree实现其索引结构。 那数据库为什么使用这种结构? 一... 阅读全文
posted @ 2013-09-20 17:16 cococo点点 阅读(20782) 评论(4) 推荐(4) 编辑
摘要: Python编码/文件读取/多线程个人笔记~~记录才有成长 编码/文件读取/多线程编码 常用的一般是gbk、utf-8,而在python中字符串一般是用Unicode来操作,这样才能按照单个字来处理,所以需要对不同的编码格式进行转化。 这里需要的函数decode和encode,形式都很简单,只... 阅读全文
posted @ 2013-09-15 11:14 cococo点点 阅读(8495) 评论(1) 推荐(0) 编辑
摘要: KMP&Boyer-Moore KMP算法是通过分析子串,预先计算每个位置发生不匹配的时候所需移动的下一个位置,直到达到字符串的末尾。KMP&Boyer-Moore算法是通过"字符串"与"搜索词"头部对齐,从尾部开始比较的一种方法。KMP 对于两个字符串:1.用短的字符串的第一个字符开始依次与另外一个字符串进行比较2.如果相同,继续比较下一位置的字符,否则,向后移动一定的距离(已经匹配上的字符个数-已经匹配字符串前缀和后缀对称的位数)3.直到字符串的最后一位Boyer-Moore 各种文本编辑器的"查找"功能(Ctrl 阅读全文
posted @ 2013-09-08 16:05 cococo点点 阅读(680) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 13 下一页