Unix网络编程
一个人的场域
目前主要做NLP、推荐算法相关工作
展开
-
(初级)并发服务器之子进程
大多数TCP服务器是并发的,他们为每个待处理的客户连接调用fork派生出一个子进程。 下面是一个很初级的使用子进程实现并发的例子。 1. server.cpp:#include#include#include#include#include#include#include#incl原创 2016-03-10 21:55:06 · 478 阅读 · 0 评论 -
Linux查看CPU和内存使用情况
参考 http://www.cnblogs.com/xd502djj/archive/2011/03/01/1968041.htmlLinux查看CPU和内存使用情况在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要。在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况。运行 top 命令后,CPU 使用状态会以全屏的方转载 2016-12-07 13:57:45 · 286 阅读 · 0 评论 -
linux netstat
简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。输出信息含义执行netstat后,其输出结果为Active Internet connections(w/oservers)原创 2016-08-07 23:22:08 · 276 阅读 · 5 评论 -
循环队列 作为消息队列
为了避免消息队列频繁的申请和释放内存,采用循环队列作为消息队列。 queue.h:#ifndef INC_QUEUE_H_#define INC_QUEUE_H_#include #include using namespace std;#define MAX_QUEUE_SIZE 500000#define SINGLE_DATA_SIZE 1024clas原创 2016-06-12 20:21:43 · 747 阅读 · 0 评论 -
IO模型之阻塞、非阻塞、IO多路复用、异步
参考 http://www.cnblogs.com/Anker/p/3254269.html 及网络编程卷1第6章网络IO模型详细分析 常见的IO模型有阻塞、非阻塞、IO多路复用,异步。以一个生动形象的例子来说明这四个概念。周末我和女友去逛街,中午饿了,我们准备去吃饭。周末人多,吃饭需要排队,我和女友有以下几种方案: (1)我和女友点完餐后,不知道什么时候能做好,只好坐在餐厅里原创 2016-05-09 20:00:49 · 4092 阅读 · 0 评论 -
网络io模型
参考自: http://blog.chinaunix.net/uid-28458801-id-4464639.html。 同步io部分讲的十分到位。 异步io稍有欠缺。同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如w转载 2016-06-02 10:44:31 · 361 阅读 · 0 评论 -
linux tcpdump
实际使用了:tcpdump -i eth1 host 121.42.202.77 and \(111.205.51.153\)以下内容参考自 http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html简介用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用转载 2016-05-09 10:14:56 · 252 阅读 · 0 评论 -
非阻塞socket设置方法
(1)阻塞block 所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回。 例如socket编程中connect、accept、recv、recvfrom这样的阻塞程序。 再如绝大多数的函数调用、语句执行,严格来说,他们都是以阻塞方式执行的。(2)非阻塞non-block原创 2016-05-05 15:16:15 · 954 阅读 · 0 评论 -
webservice 与socket
http://blog.csdn.net/m_123hj_520/article/details/9370723webservice是基于http协议的soap协议的封装和补充,如果你考虑公共稳定的接口,你可以努力的考虑一下。至于socket和http、webservices是否放在一起比较和考虑主要还是看你关心的角度,而这个角度可以是技术层面的 ,也可以是用户需求层面1转载 2016-05-27 19:56:38 · 437 阅读 · 0 评论 -
linux 文件套接字
转自: http://blog.csdn.net/changli_90/article/details/9043593Linux和UNIX都拥有一个非常实用的工具--UNIX套接字,或称为本地套接字,它可以被用在进程间通讯(IPC)当中。UNIX套接字的运转机制和Internet套接字类似,主要的区别UNIX套接字只能用在一台计算机中,而Internet套接字则可以在不同的计算机之间使转载 2016-05-27 17:49:13 · 4583 阅读 · 0 评论 -
Mac、PIN密钥体系
总体说来: 计算MAC:提供校验位 计算PIN块:提供对用户名和密码的加密(或其他重要块) 主密钥:对MACkey和PINkey加密的密钥。 放在磁盘上。 以下内容来自百度:我们知道,金融行业有很多数据要在网络上传递,包括从前置到主机,从自助终端到前置等,这些数据在网络上传来传去,我们很容易就会想到转载 2016-03-24 10:56:12 · 445 阅读 · 0 评论 -
linux下syscall函数,SYS_gettid
转自 http://blog.chinaunix.net/uid-28458801-id-4630215.htmlNAME syscall - 间接系统调用SYNOPSIS #define _GNU_SOURCE #include #include转载 2016-03-23 17:24:48 · 2173 阅读 · 0 评论 -
xml解析API
xml数据结构: xmlChar:对char的基本代替,是一个UTF-8编码字符串中的一个字节 xmlDoc 和 xmlDocPtr: 树的结构 xmlNode 和 xmlNodePtr:单个节点的结构生成xmldoc、获得根节点,获得子节点C代码 //4. 解析xml字符串 xmlDocPtr doc = xmlParseMemory(p转载 2016-03-23 15:11:04 · 479 阅读 · 0 评论 -
文件编码转换之iconv
iconv 文件编码转换linux shell 配置文件中默认的字符集编码为UTF-8 。UTF-8是unicode的一种表达方式,gb2312是和unicode都是字符的编码方式,所以说gb2312跟utf-8的概念应该不是一个层次上的。在LINUX上进行编码转换时,可以利用iconv命令实现,这是针对文件的,即将指定文件从一种编码转换为另一种编码。 查了下iconv命令用法如下转载 2016-03-23 14:21:17 · 657 阅读 · 0 评论 -
linux 之PATH、LD_LIBRARY_PATH及编译指定头文件、动态库
1. PATH是可执行程序的查找路径2. LD_LIBRARY_PATH是动态库的查找路径3. 编译时可以临时指定头文件路径、动态库路径及动态库 g++ main.cpp -I ~/tools/include -L/usr/lib/x86-aaa -lboost_thread原创 2016-03-25 16:53:24 · 1221 阅读 · 0 评论