- 博客(33)
- 收藏
- 关注
原创 libnet 1.1核心功能及常用函数(备忘录)
本文用于记录libnet 1.1核心功能及常用函数,主要内容来源于Libnet 1.1 tutorial(https://repolinux.wordpress.com/2011/09/18/libnet-1-1-tutorial/)和libnet_functions.h。1、libnet如何工作:(1)通过libnet_init()函数进行初始化,建立libnet context
2016-10-31 10:45:48
1565
转载 libnet入门
在Unix系统平台上的网络安全工具开发中,目前最为流行的C API library有libnet、libpcap、libnids和libicmp等。它们分别从不同层次和角度提供了不同的功能函数。使网络开发人员能够忽略网络底层细节的实现,从而专注于程序本身具体功能的设计与开发。其中,* libnet提供的接口函数主要实现和封装了数据包的构造和发送过程。 * libpcap提供的接口函数主要实
2016-10-29 17:22:13
3415
转载 使用libnet与libpcap构造TCP/IP协议软件
转载自:http://www.ibm.com/developerworks/cn/linux/l-tcpip/摘要本文在RED HAT Linux8.0+以太网环境下,利用libnet和libpcap库实现了一个以太网上用户态的单进程的TCP/IP协议软件包:minitcpip,该软件实现了TCP协议的基本通讯功能,并提供了一个调试接口和一个与标准SOCKET接口类似的接口函数库m
2016-10-28 10:11:44
2933
转载 数据包接收系列 — NAPI的原理和实现
转载自:http://blog.csdn.net/zhangskd/article/details/21627963本文主要内容:简单分析NAPI的原理和实现。内核版本:2.6.37Author:zhangskd @ csdn 概述 NAPI是Linux新的网卡数据处理API,据说是由于找不到更好的名字,所以就叫NAPI(New API),在2.5之后引
2016-10-19 10:13:55
501
转载 NAPI机制分析
NAPI 的核心在于:在一个繁忙网络,每次有网络数据包到达时,不需要都引发中断,因为高频率的中断可能会影响系统的整体效率,假象一个场景,我们此时使用标准的 100M 网卡,可能实际达到的接收速率为 80MBits/s,而此时数据包平均长度为 1500Bytes,则每秒产生的中断数目为: 80M bits/s / (8 Bits/Byte * 1500 Byte) = 6667 个中断 /s
2016-10-19 10:11:33
339
转载 Understanding TCP/IP Network Stack & Writing Network Apps
转载自:http://www.cubrid.org/blog/dev-platform/understanding-tcp-ip-network-stack/We cannot imagine Internet service without TCP/IP. All Internet services we have developed and used atNHN are b
2016-10-18 17:21:22
688
原创 CCFinderX安装手记
用于检测克隆代码的工具,可以检测的代码包括:VB、COBOL、C、C++、C#、Java,以及plain text,可以安装在32位windows系统上。装在xp上时遇到了几个问题,记录一下,方便以后查看:1. 先装jdk和python,注意python要2.6版本的,2.7装完之后会发现不支持;2. 运行时需要将"use prescreening"勾选上,以检测clone比较多的文件
2013-12-05 22:56:15
2870
3
转载 VS2013中的C++11新特性
介绍 Visual C++ 2013 Preview 在6月发布了,C++开发者又找到一个编译器可以更好的支持ISO C++ 11 的特性了.本文介绍了这些新的特性并附有代码实例.你想动手尝试编译文中的这些代码话,需要去下载并安装Visual Studio 2013 Preview (话说:付费吗?),我尚未在其他编译器上测试这些代码,所以我并不知道与Gcc 或Clang的兼容性(可恶
2013-11-27 22:38:26
1810
原创 Crack程序设计语言
好久没来写东西了。。。最近工作需要,在读Crack语言的源码。比较生僻的语言吧,估计没什么人在看。主要是因为它是架在llvm上实现的,我也恰要在其上做一些工作,所以希望借鉴Crack的实现,但确有难度,慢慢读吧~~Crack的文档资料比较少,也就一个网页版的language guide:http://www.mindhog.net/~mmuller/projects/crack/Manua
2012-10-15 21:54:20
746
转载 SlickEdit 2011破解方法
转自http://zhiwei.li/text/2011/05/slickedit-2011/中午在ubuntu 11.10下安装slickedit 16.0.0.6,网上找到一篇破解方法。遂markWindows 32位版本 修改方法如下0x40E77A 处 mov al, bl 改为 mov al, 1也就是 文件slickedit/w
2012-03-26 23:09:10
2841
转载 open64简介
Open64课程-简介,概述和中间表示转载自:http://www.lingcc.com/2009/11/18/10000/这是Fred chow 在德拉华大学所讲的open64课程讲稿的翻译。若需要原文ppt,请发邮件向我索取。转载请注明出处: http://lingcc.comFred Chow 原版幻灯片见最后一页1,历史:1980-83 斯坦福大学RISC编译器
2012-03-15 22:11:46
6557
原创 改写Hadoop的wordcount程序
实验内容与要求1. 在Eclipse环境下编写WordCount程序,统计所有除Stop-Word(如a, an, of, in, on, the, this, that,…)外出现次数k次以上的单词计数,最后的结果按照词频从高到低排序输出;2. 在集群上运行程序,对莎士比亚文集文档数据进行处理;3. 可自行建立一个Stop-Word列表文件,其中包含部分停词即可,不需要列出全部停词;参数k作为输入参数动态指定(如k=10)代码: import java.io.*;import
2011-04-20 21:07:00
2666
原创 单机Hadoop系统测试命令
<br /> <br />安装好单机Hadoop系统后,我们使用其自带的wordcount程序进行简单的测试,以下是一些简单的命令:<br /> <br />格式化hdfs文件系统:<br />做以这一步之前最好先删除tmp文件夹中的内容,不然上次存留的datanode数据会与这次产生冲突,造成Incompatible DatanodeID。<br />hadoop namenode -format<br /> <br />开启dfs和mapreduce:<br />start-all.sh<br /> <
2011-04-10 20:28:00
1055
原创 使用Moses搭建一个机器翻译系统及实验记录
<br />一. 搭建实验环境:<br />ubuntu系统可以直接下载安装deb包即可,需要安装的deb包有Srilm, GIZA++, mkcls以及从 http://www.statmt.org/wmt08/scripts.tgz上获得的一些脚本文件。如果不是ubuntu系统的话,需要下载这些工具的源代码进行编译安装。<br /> <br />下面简述使用源代码编译的方法搭建环境中的步骤,直接使用deb安装的可以跳过:<br />1. 安装Srilm:<br />下载Srilm源码文件,解压。ht
2011-02-22 17:14:00
7345
2
原创 使用ICTCLA api进行中文分词实验的过程备忘
<br />机器翻译最后一个大作业需要使用moses搭建一个机器翻译系统。其中有一步中要调用ICTCLA api实现中文分词,晚上稍稍熟悉了一下ICTCLA,大概了解了它的原理和使用方法,在此将使用它的方法和实验过程加以简述,以备忘。<br /> <br />我是在ubuntu 9.10系统中进行实验的,故而需要下载linux版本的ICTCLA。我首先下的是java版本,但是在ubuntu中使用时出现了问题,后换成了C++版本。在解决了实验过程中在C++版本里出现的问题之后,回头看java版本,之前遇到的是
2011-02-21 21:23:00
2936
原创 《构建基于 CDT 的编辑器》系列链接
《构建基于 CDT 的编辑器》系列比较详细介绍了CDT的结构、机理和一些简单的应用,对于快速上手使用CDT api来编程有比较好的指导作用,这里mark一下这个系列的几个链接,方便以后用的时候可以快速找到:第一部分:http://www.ibm.com/developerworks/cn/opensource/os-ecl-cdt1/第二部分:http://www.ibm.com/developerworks/cn/opensource/os-ecl-cdt2/#main第三部分:http://www.ib
2010-10-15 08:30:00
944
转载 C++JAVA程序调用weka聚类算法的方法
<br />weka(http://www.cs.waikato.ac.nz/~ml/weka/)是一个功能强大的数据挖掘开源工具包,但目前网上很难找到如果在程序里面调用weka中算法的例子。特别是如果程序是用C++编写的话,就更麻烦。 <br />前几天找了Java熟悉的师弟,把weka的源代码相关部分看了一下,用java写了一个程序实现了在Java里面对weka的EM算法的调用。最后我把程序根据不同算法封装了一下~可以直接命令行执行。这样即使是C++程序也可以调用weka里面的算法。在C+
2010-09-25 21:13:00
1735
转载 Java Runtime exec 运行一段时间后挂起的解决方案
<br />今天写程序遇到一个问题,使用Process process = Runtime.getRuntime().exec(cmd); proc.waitFor(); 创建一个进程后,如果进程产生大量的输出而不去读取的话,当超出系统的缓存时,此进程会被挂起,而正在运行的程序又因proc.waitFor();在等待进程的消亡,所以产生了一个死锁。<br /> <br />从网上找到了一个解决方案:<br /><br /> <br />碰到一个项目需要从Java中运行Perl程序,这个Perl程序调用客户的
2010-09-21 21:26:00
2399
原创 Daikon在windows上的安装
由于项目需要,这两天在windows上安装程序不变式分析工具Daikon(很强大的工具哦~~)Daikon主要的适用平台是Linux,虽然网站上介绍说是可以装在windows下,但按照它介绍的方法去做总是不成功。因为它所默认使用的C/C++前端编译工具使用的是Kvasir,而Kvasir是与Linux平台相关的,在Cygwin中装不起来。上学期用各种办法试了几次,不行,昨天折腾一晚上装Kvasir,还是不行。于是今天决定放弃使用Kvasir作为前端编译工具。Daikon网站上介绍说还有一种叫Mangel-w
2010-09-03 17:15:00
1959
2
转载 ZOJ题目分类 POJ题目分类
<br /> ZOJ题目分类<br />初学者题:<br /><br />1001 1037 1048 1049 1051 1067 1115 1151 12011205 1216 1240 1241 1242 1251 1292 1331 1334 1337 1338 1350 1365 13821383 1394 1402 1405 1414 1494 1514 1622 1715 1730 1755 1760 1763 17961813 1879 1889 1904 1915 19
2010-07-18 00:43:00
897
转载 完整版本的 poj 题目分类
<br />DP:<br /> 1011 NTA 简单题<br /> 1013 Great Equipment 简单题<br /> 1024 Calendar Game 简单题<br /> 1027 Human Gene Functions 简单题<br /> 1037 Gridland 简单题<br /> 1052 Algernon s Noxious Emissions 简单题<
2010-07-09 21:22:00
1093
转载 POJ题目分类小结
<br />初期:<br />一.基本算法: <br /> (1)枚举. (poj1753,poj2965)<br /> (2)贪心(poj1328,poj2109,poj2586)<br /> (3)递归和分治法. <br /> (4)递推. <br /> (5)构造法.(poj3295)<br /> (6)模拟法.(poj1068,poj2632,poj1573,poj2993,poj2996)<br />二.图算法: <
2010-07-09 21:06:00
372
转载 Source Insight 经典教程
<br />Source Insight实质上是一个支持多种开发语言(java,c ,c 等等)的编辑器,只不过由于其查找、定位、彩色显示等功能的强大,常被我们当成源代码阅读工具使用。<br />作为一个开放源代码的操作系统,Linux附带的源代码库使得广大爱好者有了一个广泛学习、深入钻研的机会,特别是Linux内核的组织极为复杂,同时,又不能像windows平台的程序一样,可以使用集成开发环境通过察看变量和函数,甚至设置断点、单步运行、调试等手段来弄清楚整个程序的组织结构,使得Linux内核源
2010-07-08 19:02:00
592
转载 E: Sub-process /usr/bin/dpkg returned an error code (1)错误解决
apt-get remove 包名称报如下错误E: Sub-process /usr/bin/dpkg returned an error code (1)参考文档如下:http://www.linuxforums.org/forum/debian-linux-help/133537-subprocess-usr-bin-dpkg-returned-error-code-1-a.html解决方案:1. Open terminal, type(打开终端,进入如下目录)
2010-07-04 19:29:00
6179
转载 【转】Cygwin 安装 基本使用 交叉编译vivi kernel
原文地址:http://mazhijing.blog.51cto.com/215535/39539 引言:初学linux时,需要转换系统是最头疼得事,因为windows和linux各有优点,各有用途,所以只能麻烦的在两者之间切换,反复的重启。开机时也麻烦,因为初学者大多数使用windows,装了linux后,开机会自动启动linux(当然,可以通过在安装过程中设置或按装结束后修改相应文件来决定启动时先引导哪个系统),想进入windows还要坐在电脑旁死等。Cygwin 恰好解决了这个问题。 介绍: 1 .
2010-06-10 20:21:00
1107
转载 【转】为LLVM移植一个新的后端所需的几个基本步骤
To write a compiler backend for LLVM that converts the LLVM IR tocode for a specified target (machine or other language), followthese steps:• Create a subclass of the TargetMachine class t
2009-12-06 22:35:00
2531
1
转载 【转】Linux中gcc,g++常用编译选项
gcc/g++在执行编译工作的时候,总共需要4步1.预处理,生成.i的文件[预处理器cpp]2.将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs]3.有汇编变为目标代码(机器代码)生成.o的文件[汇编器as]4.连接目标代码,生成可执行程序[链接器ld][参数详解]-x language filename
2009-12-06 22:31:00
718
原创 ubuntu安装更新重启后桌面图标消失的解决方法
下午ubuntu9.10自动更新后重启,结果桌面图标全部消失,右键也没法使用,而且无法打开任何文件夹。从网上找到了解决方案,一般按照如下的方法解决就可以了:sudo apt-get install nautilus自动安装nautilus更新的时候可能会出现一些问题,报错是某编译文件的版本不对,只要进入错误所在的文件夹,将两个文件换名即可:sudo mv libstdc
2009-12-05 22:52:00
4790
转载 【转】装完Ubuntu 9.10后要干的事
此文于2009-11-30被推荐到CSDN首页此文于2009-11-26被推荐到CSDN首页如何被推荐? 转自:http://coolshell.cn/?p=1644 (酷壳) Ubuntu 9.10刚刚release,就有人在网上发表了贴子告诉大家在装完这个操作系统
2009-12-05 16:27:00
660
原创 llvm安装小结
对于像我这样的菜鸟来说,在linux中安装安装一个编译器总要有人手把手才行。本来准备今天装好llvm在linux中的实验环境,然后晚上看资料开始写一个简单的编译器练练手的,但是折腾到现在才搞定。我把能google到的东西全google了,但是发现还是没有手把手交如何搭环境的,博客里有一篇转载的llvm2.3版本的安装指南,但是感觉不是很细,我用的是2.6版本的,跟着
2009-12-04 22:49:00
7391
3
转载 【转】搭建LLVM实验环境
周末在家里,把前一段时间略为作了一些研究的LLVM的文档翻出来又读了一下,一时兴起,到llvm的官方站点里下了llvm 2.3和 llvm-gcc 4.2,在本地搭了个llvm的实验环境。基本的搭建步骤如下:1。从llvm.org里下载下来llvm 2.3的source code2。从llvm.org里下载下来llvm-gcc 4.2的source code
2009-12-04 20:00:00
1951
1
转载 【转】使用Flex Bison 和LLVM编写自己的编译器
本文由赵锟翻译,酷壳发布,转载请注明译者和出处,请勿用于商业用途原文出处:http://gnuu.org/2009/09/18/writing-your-own-toy-compiler 1、介绍我总是对编译器和语言非常感兴趣,但是兴趣并不会让你走的更远。大量的编译器的设计概念可以搞的任何一个程序员迷失在这些概念之中。不用说,我也曾今尝试过,但
2009-11-23 16:58:00
1328
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人