《windows编程零基础》__1 Hello,World

第一个工程 1)打开Visual Studio,如下地建一个工程 2)选择一个空的工程 3) 新建一个文件 这个不解释了吧,你肯定会添加一个cpp文件的。 4)输入如下代码 #include <windows.h&...

2013-07-31 23:28:00

阅读数:5

评论数:0

《Windows编程零基础学》__0

首先很开心申请到了这一个专栏《Windows编程零基础学》 这是第一篇文章,在这里,我将讲述一些基础的知识。 什么是Windows编程 所谓Windows编程就是在Windows平台上开发,并且运行于Windows平台上的程序,当然,开发的时候运用的东西是Windows API或者封装之后的...

2013-07-31 15:06:00

阅读数:7

评论数:0

UDP怎么会返回Connection refused错误

有时候,写UDP socket程序的时候,在调用sendto或者recvfrom的时候,会发现有Connection refused错误返回,错误码是ECONNREFUSED。对于懂得socket接口但是不很很懂网络的人,可能这根本就不是个问题,他会根据错误码知道远端没有这个服务端口,正如sock...

2013-07-28 21:26:00

阅读数:4

评论数:0

OpenVPN莫名其妙断线的问题及其解决

1.问题不得不说,这是一个OpenVPN的问题,该问题几乎每个使用OpenVPN的人都碰到过,也有很多人在网上发问,然而一直都没有人能给出解决办法,甚至很多帖子上表示因为这个问题而放弃了使用OpenVPN。说实话,我面临这个问题已经两年有余,自从第一次接触OpenVPN,这个问题就一直困扰着我,去...

2013-07-27 15:13:00

阅读数:7

评论数:0

这就是所谓的历史剧?

今天晚上看了一集《精忠岳飞》,之后就把电视关了!我并不是不喜欢看国产的历史剧,是感觉拍得太假,历史剧感觉跟唱戏的一样。总结下来,国产历史剧就两个特点:1.主人公都是儿女情长;2.主人公都会飞檐走壁。如果西方的历史剧也拍成这样,第一,凯撒不会和克里奥佩特拉就那么点事,第二,凯撒不会在完全清醒状态下被...

2013-07-27 14:47:00

阅读数:6

评论数:0

微信被光缆所断-脆弱的行业

脆弱的是网络设计,而不是网络本身!我不晓得为何挖断一根线就能宕机数个小时,这明显是一个物理灾难,为何会影响业务逻辑那么久?网络是分层设计的,一个TCP段丢失了,协议层就会重传,一个有连接链路帧丢失了,甚至IP都感觉不到,不影响上层在于下层提供的冗余!如果说应用服务器不堪重负或者其它原因宕机数个小时...

2013-07-27 14:46:00

阅读数:3

评论数:0

C/C++中内联(inline)函数的优点和缺点

优点 缺点 1. 内联函数代码被放入符号表中,在使用时进行替换,和宏展开一样,效率很高; 1. 不允许过多的代码,代码过多的话会造成大的内存消耗,最好在5行以内; 2. 编绎器在调用一个内联函数,首先会检查参数问题,保证调用正确,与...

2013-07-21 16:59:00

阅读数:8

评论数:0

Linux系统如何平滑生效NAT-DNAT改进以及解释

在《Linux系统如何平滑生效NAT》中,我介绍了如何在Linux中让NAT瞬间生效的patch,提到了那个patch只在SNAT环境中测试过,没有在DNAT环境中测试过,实际上,DNAT中也是可以使用的,只需要将nf_nat_rule_find做以下修改即可:int nf_nat_rule_fi...

2013-07-21 14:29:00

阅读数:10

评论数:0

Linux系统如何平滑生效NAT

1.Linux实现的NAT概述以及问题所在Linux的NAT基于ip_conntrack。iptables设置的nat规则仅仅对一个流的第一个数据包有效。当然xtables-addons实现的rawnat除外!即便是rawnat,它也必须设置两条规则。真正好的设计是,有个选项可以自定义nat的行为...

2013-07-21 01:25:00

阅读数:3

评论数:0

Lucene核心--构建Lucene搜索(上篇,理论篇)

2.1构建Lucene搜索 2.1.1 Lucene内容模型 一个文档(document)就是Lucene建立索引和搜索的原子单元,它由一个或者多个字段(field)组成,字段才是Lucene的真实内容。每一个字段有都有一个名字来标识它,一个文本或者一个二进制值以及一系列的详细的选择项...

2013-07-19 14:29:00

阅读数:5

评论数:0

Lucene核心--构建Lucene搜索(下篇,理论篇)

2.1.6 截取索引(Indextruncate) 一些应用程序的所以文档的大小先前是不知道的。作为控制RAM和磁盘存储空间的使用数量的安全机制,你可能想要限制每个字段允许输入索引的输入数量。一个大的二进制文档偶尔被错误地划分为文本文档,或者包含嵌入在它中的二进制被你的过滤器错误地处...

2013-07-19 14:28:00

阅读数:5

评论数:0

Lucene简介(理论篇)

Lucene 是一个软件程序的库或者说是一个工具套件,而不是一个完全的具有搜索特性的应用程序。它关注于自己的文本检索和搜索功能,提供API来完成商业中所涉及到的搜索功能。在搜索功能中,Lucene的功能如图深色框所示。 外围的功能组要主要由一些比较流行的框架来实现,比如Solr、...

2013-07-18 23:06:00

阅读数:7

评论数:0

Operation not permitted引发的惊魂72小时

0.问题及描述在测试产品的时候,莫名其妙发现了我们的主进程VPNd会出现以下的报错:2013-07-18 13:05:13 www.1.com/192.168.200.220:65527 write UDPv4 []: Operation not permitted (code=1)2013-07...

2013-07-18 22:30:00

阅读数:5

评论数:0

必须熟记英语短语

英语越来越重要,所以,学习英语真的有必要先学好基本的词汇。本人收录一些: 1. it is not likely that : 这时不大可能。 It is not likely that you will actually do it , but it is important to ...

2013-07-15 07:25:00

阅读数:8

评论数:0

子PID namespace中获取父namespace中pid的方法

在那篇《使用独立PID namespace防止误杀进程》中的最后,我碰到了一个难题,那就是父PID namespace中的进程无法使用进入子PID namespace中通过echo $$ >$pidfile写入的pid值,进程发信号时,目标pid是和自己处于同样的PID na...

2013-07-14 23:47:00

阅读数:4

评论数:0

setjmp, longjmp用法简介

setjmp和longjmp其实就是goto的升级版,goto只能在同一个函数中跳转,但是setjmp和longjmp可以实现在不同的函数之间跳转。 下面是一个简单的示例演示,代码+运行结果,几行注释应该足以说明setjmp和longjmp的用法。 #include &l...

2013-07-14 16:51:00

阅读数:4

评论数:0

使用独立PID namespace防止误杀进程

一段错误的代码首先看一段错误的代码:#!/bin/bash SLICE=100; slppid=1; pidfile=/var/run/vpnrulematch.pid # 停止之前的sleep kill_prev() { pid=$1; /bin/kill -...

2013-07-14 16:46:00

阅读数:5

评论数:0

cURL安装和使用笔记

0.前言 cURL是一个利用URL语法在命令行下工作的文件传输工具。它支持文件上传和下载,所以是综合传输工具,但习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。cURL支援的通讯协定有FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Tel...

2013-07-14 12:41:00

阅读数:7

评论数:0

linux下踢出已登录用户

通过xshell登录到linux,看到如下所示,有3个用户,但是前面两个不知在哪登录的了,那就踢出吧。 先确认一下自己是哪个 顺便注意一下“whoami”和“who am i”的不同 然后踢出前面两个用户 本文旨在用于自己日后查阅方便,也希望能帮助到看到此篇文章的朋...

2013-07-13 21:34:00

阅读数:7

评论数:0

静态数组表示的有限状态机

前段时间搞无状态的TCP conntrack,发现其中一个静态数组表示的TCP状态机很是不错,希望这种思想以后可以用在实际的工作中,直说吧,就是这个状态机数组:static const u8 tcp_conntracks[2][6][TCP_CONNTRACK_MAX] = { { /* ...

2013-07-13 16:18:00

阅读数:5

评论数:0

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