- 博客(98)
- 资源 (65)
- 收藏
- 关注
原创 Linux系统的LOG日志文件及入侵后日志的清除
<br />下面的文章是了解系统日志是看到别人写的,现在贴出来为了使自己记住没有掌握的Linux功能。<br />-------------<br />文档目录<br />-------------<br />1 什么是syslogd<br />2 配置syslogd的说明<br />3 syslogd和系统中服务配置中日志的关系<br />4 什么是logrotate<br />5 配置logrotate的说明<br />-------------<br />文档正文<br />-------------
2010-10-25 23:32:00 1822
原创 C 消息连接的一种系统方法
<br /> 用过C 进行过面向对象程序设计的用户都知道,程序中的对象很少单独存在。不考虑对象间的相互作用几乎是不可能的。所以,标识对象间的关系或建立对象间的消息连接是面向对象程序设计的一项重要任务。本文着重从C 程序设计的角度,提出一种建立对象间消息连接的实用方法。如果你想详细了解面向对象程序设计技术,请参阅有关专著。大家都知道对象是数据和方法的封装体。在C 中,它们分别表现为数据成员和成员函数。程序设计者通过执行对象的各种方法,来改变对象的状态(即改变对象的属性数据)。从而使该对象发生某些“事件”。当一
2010-10-25 23:24:00 1116
原创 Linux shell脚本全面学习
<br />1. Linux 脚本编写基础<br />1.1 语法基本介绍<br />1.1.1 开头<br />程序必须以下面的行开始(必须方在文件的第一行): <br />#!/bin/sh <br /> 符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。 <br /> 当编辑好脚本时,如果要执行该脚本,还必须使其可执行。 <br /> 要使脚本可执行:<br />编译 chmod +x filename 这样才能用./filename 来运行<
2010-10-25 23:19:00 1276
原创 关于函数调用的总结
首先强调的是:C语言中所有函数调用都是传值调用(数组是例外情况。C里数组名就表示了数组的首地址当把数组名当参数传递时,其实也就是传了个地址而已)1、传值调用时是copy一份传给函数,在函数体内对传给函数的变量做修改不会影响原变量。这种方法如果传的对象比较大会增加很多的内存开销。 <br />#include<stdio.h><br />void*fun(char*a)<br />{<br /> a="zerk";<br /> return;<br />}<br />int<br
2010-10-25 23:17:00 965
原创 GDB使用手册
[code]START-INFO-DIR-ENTRY <br />* Gdb: (gdb). The GNU debugger. <br />END-INFO-DIR-ENTRY <br />This file documents the GNU debugger GDB. <br /><br />This is Edition 4.12, January 1994, of `Debugging with GDB: the GNU <br />Source-Level Debugger' for GDB V
2010-10-25 23:15:00 844
原创 使用gdb调试程序
<br /> GDB是一个强大的命令行调试工具。大家知道命令行的强大就是在于,其可以形成执行序列,形成脚本。UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行软件的优势在于,它们可以非常容易的集成在一起,使用几个简单的已有工具的命令,就可以做出一个非常强大的功能。<br /><br />于是UNIX下的软件比Windows下的软件更能有机地结合,各自发挥各自的长处,组合成更为强劲的功能。而Windows下的图形软件基本上是各自为营,互相不能调用,很不利于各种软件的相互集成。在这里并不是要和
2010-10-25 23:14:00 860
原创 gdb使用精粹
<br />一:列文件清单 <br />1. List <br />(gdb) list line1,line2 <br /><br />二:执行程序 <br />要想运行准备调试的程序,可使用run命令,在它后面可以跟随发给该程序的任何参数,包括标准输入和标准输出说明符(<和>)和外壳通配符(*、?、[、])在内。 <br />如果你使用不带参数的run命令,gdb就再次使用你给予前一条run命令的参数,这是很有用的。 <br />利用set args 命令就可以修改发送给程序的参数,而使用show ar
2010-10-25 23:12:00 862
原创 GNU C 扩展之__attribute__ 机制简介
<br />GNU C的一大特色(却不被初学者所知)就是__attribute__机制。__attribute__可以设置函数属性(Function Attribute)、变量属性(Variable Attribute)和类型属性(Type Attribute)。<br />__attribute__书写特征是:__attribute__前后都有两个下划线,并切后面会紧跟一对原括弧,括弧里面是相应的__attribute__参数。<br />__attribute__语法格式为:<br />__attrib
2010-10-25 23:10:00 882
原创 内存调试技巧
<br />C 和 C++ 程序中的内存错误非常有害:它们很常见,并且可能导致严重的后果。来自计算机应急响应小组(请参见参考资料)和供应商的许多最严重的安全公告都是由简单的内存错误造成的。自从 70 年代末期以来,C 程序员就一直讨论此类错误,但其影响在 2007 年仍然很大。更糟的是,如果按我的思路考虑,当今的许多 C 和 C++ 程序员可能都会认为内存错误是不可控制而又神秘的顽症,它们只能纠正,无法预防。<br />但事实并非如此。本文将让您在短时间内理解与良好内存相关的编码的所有本质: 正确的内存管理
2010-10-25 23:09:00 1118
原创 c的内存分配问题
<br />(1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。<br />(2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。<br />(3)从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生存期
2010-10-25 23:08:00 1004
原创 常用时间函数说明
<br />asctime(将时间和日期以字符串格式表示)<br />相关函数<br /> time,ctime,gmtime,localtime<br />表头文件<br /> #include<time.h><br />定义函数<br /> char * asctime(const struct tm * timeptr);<br />函数说明<br /> asctime()将参数timeptr所指的tm结构中的信息转换成真实世界所使用的时间日期表
2010-10-25 23:07:00 1210
原创 字节对齐详解
一.什么是字节对齐,为什么要对齐?<br /> 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特 定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。<br /> 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开始存取。比如有些架构的CPU在访问 一个没有进行对齐的变量的时候会发生错误
2010-10-25 23:05:00 831
原创 linux多线程设计
<br />#include <pthread.h>1、创建int pthread_create( pthread_t *tid, const pthread_attr_t *attr, void *(* func) (void *), void *arg );attr: 线程属性包括:优先级、初始栈大小,是否应该成为一个守护线程。缺省设置,NULL后面是线程要执行的函数和参数成功返回 02、等待一个给定线程终止int pthread_join( pthread_t tid, void **status);
2010-10-25 23:04:00 1195
原创 Linux下syslog日志函数使用
<br />许多应用程序需要记录它们的活动。系统程序经常需要向控制台或日志文件写消息。这些消息可能指示错误、警告或是与系统状态有关的一般信息。例如,su程序会把某个用户尝试得到超级用户权限但失败的事实记录下来。<br />通常这些日志信息被记录在系统文件中,而这些系统文件又被保存在专用于此目的的目录中。它可能是/usr/adm或/var/log目录。对一个典型的Linux安装来说,文件 /var/log/messages包含所有系统信息,/var/log/mail包含来自邮件系统的其他日志信息,/var/l
2010-10-25 23:02:00 1810
原创 EPOLL及消息队列实现
<br />#include "smtpd_mock.h"<br />char* strsub (char *instr, unsigned start, unsigned end)<br />{<br /> unsigned n = end - start;<br /> char * outstr = (char *)malloc(n+1);<br /> //bzero(outstr,n+1);<br /> strncpy (outstr, instr + start, n);<br /> outstr[
2010-10-24 00:18:00 2934
原创 超轻量 pthread 集结点实现
<br />我需要的 pthread 线程集结点功能,使用同一集结点的线程将通过 rend_wait 函数等待,当集结点到达指定数量的线程后同时激发继续执行。使用 pthread 的 mutex 和 cond 超轻量实现。下面 rend.h 是集结点实现,rendezvous.c 是测试应用。<br /> C代码 /* * rend.h * * Created on: 2009-11-14 * Author: liuzy ([email protected]) */ #
2010-10-24 00:16:00 918
原创 epoll
<br />/*<br />几个用到的类型定义以及全局变量bq<br />*/<br />char smtp_cmd_format;<br />struct epoll_event ev, events[MAX_EPOLL_SIZE];<br />int kdpfd,nfds;<br />struct block_queue<br />{<br /> int queue[THREADS_COUNT];<br /> long size;<br /> pthread_cond_t cond;<br /> pth
2010-10-24 00:09:00 858
原创 epoll
<br />#include<iostream><br />#include<sys/socket.h><br />#include<sys/epoll.h><br />#include<netinet/in.h><br />#include<arpa/inet.h><br />#include<fcntl.h><br />#include<unistd.h><br />#include<stdio.h><br />#include<pthread.h><br /> <br />#define MAXLIN
2010-10-23 23:57:00 1006
原创 一个基于Event Poll(epoll)的TCP Server Framework,浅析epoll
<br /> LT/ET:ET也会多次发送event,当然频率远低于LT,但是epoll one shot才是真正的对"one connection VS one thread in worker thread pool,不依赖于任何connection-data-queue"的基础支持 .<br />我看到大部分对epoll_wait的处理模式如下,很教科化,因为man-pages就是这样举例子的。<br />man-pages epoll_wait handle:<br />#define MAX_
2010-10-23 23:52:00 2036
原创 封装的EPOLL 模型
#pragma once #include <errno.h> #include <sys/epoll.h> #include <sys/types.h> #include <sys/socket.h> #include <fcntl.h> #include <unistd.h> #include <string.h> #include "log.h" #ifndef EPOLL_SIZE #define EPOLL_SIZE 4096 #define EPO
2010-10-23 23:45:00 1378 1
原创 Asynchronous HTTP and Comet architectures
<br />An introduction to asynchronous, non-blocking HTTP programming<br />http://www.javaworld.com/javaworld/jw-03-2008/jw-03-asynchhttp.html?page=1
2010-10-23 14:18:00 1109
原创 comet 资料链接
<br />http://en.wikipedia.org/wiki/Reverse_Ajax<br /> <br />http://en.wikipedia.org/wiki/Push_technology#HTTP_server_push<br /> <br />http://en.wikipedia.org/wiki/Comet_(programming)<br /> <br />http://jetty.codehaus.org/jetty/<br /> <br />http://www.ape-p
2010-10-23 11:07:00 1415
原创 PROC系列
<br />该文件中的所有值都是从系统启动开始累计到当前时刻。该文件只给出了所有CPU的集合信息,不能该出每个CPU的信息。<br /><br />[root@localhost ~]# cat /proc/loadavg <br />4.61 4.36 4.15 9/84 5662<br /><br />每个值的含义为:<br />参数 解释<br />lavg_1 (4.61) 1-分钟平均负载<br />lavg_5 (4.36) 5-分钟平均负载<br />lavg_15(4.15) 15-分钟平均
2010-10-22 14:57:00 882
原创 掌握Ajax系列 第 2 部分: 使用 JavaScript 和 Ajax 发出异步请求
<br />本系列的上一期文章(请参阅 参考资料 中的链接),我们介绍了 Ajax 应用程序,考察了推动 Ajax 应用程序的基本概念。其中的核心是很多您可能已经了解的技术:JavaScript、HTML 和 XHTML、一点动态 HTML 以及 DOM(文档对象模型)。本文将放大其中的一点,把目光放到具体的 Ajax 细节上。<br />本文中,您将开始接触最基本和基础性的有关 Ajax 的全部对象和编程方法:XMLHttpRequest 对象。该对象实际上仅仅是一个跨越所有 Ajax 应用程序的公共线程
2010-10-21 13:15:00 1111
原创 Asterisk-IM - Jive Software Integration
Asterisk-IM <br />Integration component to Asterisk for Jive's Jabber/XMPP server <br />The homepage for the plug-in componentPlug-in ReadmeAsterisk-IM compatible clientsAsterisk-IM is a server-side module so it will work with any XMPP client application t
2010-10-20 16:48:00 1278
原创 jabber
<br />Jabber is a standard for Instant messaging. The Jabber protocol is being standardized in the IETF. <br /><br /><br />Jabber is an open XML protocol for the real-time exchange of messages and presence between any two points on the Internet. The first
2010-10-20 16:41:00 1001
原创 Making Google Talk Work With Asterisk
<br />Products based on proprietary technologies sometimes suck! That’s because you don’t have any choice but to subscribe to the service as the provider defines it. Most of the time, you cannot interface these with your own services or produts. In telepho
2010-10-20 16:39:00 869
原创 Asterisk Jabber
<br />Jabber is a common name for XMPP-based instant-messaged and communication. <br />Native jabber support in Asterisk <br />The Jabber module in Asterisk (res_jabber) is available starting from the 1.4 series. Therefore, you can connect Asterisk as a cl
2010-10-20 16:38:00 1962
原创 Asterisk Google Talk
Asterisk Google TalkPage Contents Iksemel installation Installation from source Debian Debian 3.1 Sarge Debian 4.0 Etch Troubleshooting Example setup jabber.conf gtalk.conf extensions.conf Tips Ports for signalling and RTP Receiving text messages No audi
2010-10-20 16:25:00 1476
原创 GDB Command Line Arguments
<br />Starting GDB: gdb name-of-executablegdb -e name-of-executable -c name-of-core-filegdb name-of-executable -pid process-id<br />(Use ps -auxw to list process id's.) <br />Command line options: (version 6. Older versions use a single "-") OptionDescript
2010-10-20 09:43:00 1775
原创 Ajax 服务器推送
1.HTTP拉取方式:在这种传统的方法中,客户端以用户可定义的时间间隔去检查服务器上的最新数据。这种拉取方式的频率要足够高才能保证很高的数据精确度,但高频率可能会导致多余的检查,从而导致较高的网络流量。而另一方面,低频率则会导致错过更新的数据。理想地,拉取的时间间隔应该等于服务器状态改变的速度。 2.HTTP流:这种方法由存在于不间断的HTTP连接响应中或某个XMLHttpRequest连接中的服务器数据流所组成。 3.反转AJAX:服务流应用到AJAX,就是所谓的反转AJAX 或者COMET 。它使
2010-10-19 18:03:00 1098
原创 linux shell
Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。它虽然不是Linux系统核心的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Linux系统的
2010-10-19 14:06:00 676
原创 linux 信号
<br />linux信号机制远远比想象的复杂,本文力争用最短的篇幅,对该机制做了深入细致的分析。信号应用实例将在信号(下)中给出。 <br />一、信号及信号来源 <br />信号本质 <br />信号是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么时候到达。 <br />信号是进程间通信机制中唯一的异步通信机制,可以看作是异步通知,通知接收信号的进程有哪些事情
2010-10-19 13:59:00 904
原创 C语言中产生随机数
<br />问:<br /> C语言中产生随机数的函数是什么?<br /> C语言中产生随机数的函数是什么?(好象有两个)以及这两个函数的头文件是什么?问题补充:rand和srand有什么区别没?<br /> <br />答:<br />#include <stdio.h> <br />#include <stdlib.h> <br />#include <time.h> <br />void main() <br />{ <br /> int i; <br /> sran
2010-10-19 13:47:00 1105
原创 C++知识点辨析
1, c语言中,结构体struct中不能包括函数的,而在C++中struct中可以包括函数。 <br />2,C++中结构体和类可以通用,区别主要表现在访问控制方面:struct中默认是public,而 class中默认的是private。 <br />3,构造函数最重要的作用是创建对象的本身,C++中每个类可以拥有多个构造函数,但必须至少有一个构造函数,当一个类中没有显式提供任何构造函数,C++编辑器自动提供一个默认的不带参数的构造函数,这个默认的构造函数只负责构造对象,不做任何初始化工作。但在一个类中只
2010-10-19 13:45:00 806
原创 Linux C函数之时间函数
<br />函数分类:<br />1. 设置时间: settimeofday, tzset<br />2. 获取时间: time, ftime, gettimeofday<br />3. 时间格式转换: mktime, strftime; gmtime, localtime; asctime, ctime<br />4. 其他: clock, difftime<br />asctime: 将时间和日期以字符串格式表示<br />头文件: time.h<br />函数定义: char *asctime(con
2010-10-19 12:20:00 1194
原创 RFC3550 RTP 中文版
RFC3550 RTP:实时应用程序传输协议 摘要本文描述RTP(real-time transport protocol),实时传输协议。RTP在多点传送(多播)或单点传送(单播)的网络服务上,提供端对端的网络传输功能,适合应用程序传输实时数据,如:音频,视频或者仿真数据。RTP没有为实时服务提供资源预留的功能,也不能保证QoS(服务质量)。数据传输功能由一个控制协议(RTCP)来扩展,通过扩展,可以用一种方式对数据传输进行监测控制,该协议(RTCP)可以升级到大型的多点传送(多播)网络,并提供最小限度的
2010-10-19 12:16:00 1896
原创 Linux下的实时流媒体编程
<br />流媒体指的是在网络中使用流技术传输的连续时基媒体,其特点是在播放前不需要下载整个文件,而是采用边下载边播放的方式,它是视频会议、IP电话等应用场合的技术基础。RTP是进行实时流媒体传输的标准协议和关键技术,本文介绍如何在Linux下利用JRTPLIB进行实时流媒体编程。<br />一、流媒体简介<br /> 随着Internet的日益普及,在网络上传输的数据已经不再局限于文字和图形,而是逐渐向声音和视频等多媒体格式过渡。目前在网络上传输音频/视频(Audio/Video,简称A/V)等多
2010-10-19 12:14:00 1653
原创 RTP/RTCP协议简介
有性,不同实时客户可以共用一个RTP实时服务线程和一个RTCP实时服务线程,这样可以大大减小服务器的负担,而每个文件客户由于请求的文件不同,相应地对速度和开始时间的要求都可能不同,所以需要有自己独有的RTP文件服务线程和RTCP文件服务线程。 RTP服务线程负责把实时数据流发送给客户,RTCP服务线程根据RTP线程的统计数据,产生发送方报告给客户。RTP线程和RTCP线程之间通过一段共享内存交互统计数据,对共享内存必须设置互斥体进行保护,防止出现错误读写。在这种方式下,服务器可以根据每个用户的不同
2010-10-19 11:47:00 1543
原创 SIP
SIP<br />SIP, the session initiation protocol, is the IETF protocol for VOIP and other text and multimedia sessions, like instant messaging, video, online games and other services. <br /><br />Abstract from the RFC 3261 (formatted_and_explained version) -
2010-10-18 23:50:00 1481
名企笔试相关(IT类)
2009-12-04
46家公司笔试题.pdf 包括 C C++
2009-12-04
C++名家精华.chm
2009-04-01
c C++算法大全详解(付代码)
2009-04-01
Linux_C函数详细解析.pdf
2009-04-01
C案例分析-开发综合程序
2009-03-22
java设计模式迷你手册(普通下载).chm
2008-11-22
2009年C#面试题库.rar
2008-11-20
700多个API函数的详细介绍.rar
2008-11-20
精华游戏算法整理(经典)
2008-11-19
组件技术综合资料库.chm
2008-10-31
.Net 多线程详解
2008-10-31
C/C++面试题目及解答.doc
2008-05-12
经典C/C++面试题目大汇总(全附答案).doc
2008-05-12
Android AudioTrack 分析 pdf
2011-07-30
若干 经典算法 的探讨及C语言实现.chm格式
2009-12-04
全面介绍Windows内存管理机制及C++内存分配实例
2009-12-04
CSDN 论坛 算法 精华 chm 格式
2009-12-04
各种算法的C语言实现
2009-12-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人