自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 资源 (3)
  • 收藏
  • 关注

原创 docker 搭建redis

安装redis创建配置文件mkdir -p ~/docker/redis/confmkdir -p ~/docker/redis/datacd ~/docker/redis/conftouch redis.confvim redis.confredis.conf 内容#bind 127.0.0.1 protected-mode noappendonly yes requirepass 123456 将bind 127.0.0.1注释掉,保证可以从远程访问到该Redis,不单单是从

2021-06-23 14:11:21 205

原创 docker 搭建es

​1. docker安装 es拉取镜像docker pull docker.elastic.co/elasticsearch/elasticsearch:7.3.0创建网络docker network create esnet运行容器docker run -itd --name es -p 9200:9200 -p 9300:9300 --network esnet -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e “discovery.type=singl

2021-06-23 11:38:45 251

原创 stm32 T型加速控制步进电机

stm32 步进电机 T型加速

2015-02-06 15:10:29 2559

原创 stm32 pwm频率从2K到4K

u16 minarr = 249;u16 maxarr = 499;u16 i = 0;void TIM3_IRQHandler(void)   //TIM3中断{ u8 ReadValue; if (TIM_GetITStatus(TIM3, TIM_IT_Update) != RESET) //检查指定的TIM中断发生与否:TIM 中断源  {  TIM

2015-02-05 11:50:39 2520

原创 单片机控制步进电机T型加速实现原理

单片机控制步进电机是通过时钟计数器计算次数产生脉冲T型加速转换到数学计算计数器每秒钟计数c=1000000次脉冲频率从 v0 = 4K 到v = 40K次  v0时每个脉冲需要计数 m0 =1M/4K = 250 v时每个需要计数m1 = 1M/40K/ 25次加速度 a = 36K 每个计数单位增加 da = a/c 个加速时间 t = v/a = 0.1秒求脉冲

2015-02-05 09:34:42 4784

转载 开源的监控软件 .

一、Zenoss CoreZenoss Core是开源企业级IT管理软件-是智能监控软件,他允许IT管理员依靠单一的WEB控制台来监控网络架构的状态和健康度。Zenoss Core同时也是开源的网络与系统管理软件。Zenoss Core的强大能力来自于深入的列表与配置管理数据库,以发现和管理公司IT环境的各类资产(包括服务器、网络、和其他结构设备)。Zenoss可以创建关键资产清单

2013-02-20 16:32:22 973

原创 bho开发地址

http://www.microsoft.com/china/msdn/library/langtool/vs2005/expie_hello_bho.mspx?mfr=true

2013-01-31 09:45:05 784

原创 kettle4.1源码研究

Kettle源码分析一.获取并编译源码1.1.           获取源码Svn获取svn://source.pentaho.org/svnkettleroot/Kettle/tags网页获取官方网站:http://kettle.pentaho.com/1.2.           编译源码将项目加载到eclipse将kettle项目拷贝到eclipse的

2012-06-27 13:40:27 13719 4

原创 双机热备中解决IP漂移后arp表不更新

方案一  ip漂移后向用这个IP向该网段发送arp广播,促使arp表更新方案二 用一个备用mac,ip漂移的时候连同mac一起漂移  #include #include #include #include #include #include #include #include #include #include #include us

2012-03-15 17:35:21 3519

转载 发送arp包获取mac

#include #include #include #include #include #include #include #include #include #include #include using namespace std;enum{ ARP_MSG_SIZE = 0x2a};char * strncpy_IFN

2012-03-15 16:12:49 1972

原创 httpclient4登录网站

package test;import java.io.InputStream;import java.util.ArrayList;import java.util.List;import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.Name

2012-03-13 15:17:18 1282

原创 python 利用smtplib发送邮件

import smtplibfrom email.mime.text import MIMETextmailserver = "smtp.qq.com"from_addr = "[email protected]"to_addrs = "[email protected]"user = "[email protected]"password = "xxxx"msg = MIMEText('hello w

2012-02-28 11:43:05 912

转载 程序员能力矩阵 你属于哪一层?

计算机科学 Computer Science软件工程 Software Engineering程序设计 Programming经验 Experience 学识 Knowledge【CSDN编者按】上述图书中,第一级对应的英文为Unleashed series, 21 days series, 24 ho

2012-02-14 11:41:12 514

原创 获取CPU,内存使用率,磁盘相关信息

CPU信息bool get_cpuoccupy(CPU_OCCUPY *cpust) //对无类型get函数含有一个形参结构体类弄的指针O{ FILE *fd; char buff[256]; CPU_OCCUPY *cpu_occupy; cpu_occupy = cpust; if ((fd = fopen("/proc/stat", "r")) <= 0)

2011-12-07 09:28:04 1900

原创 tinyxml入门

网上找的列子  从http://www.grinninglizard.com/tinyxml/index.html  下载tinyxml 学习资料http://www.cnblogs.com/clever101/archive/2010/04/05/1704876.html 复制tinyxml.h、tinystr.h、tinystr.cpp、tinyxml.cpp、ti

2011-12-01 23:30:04 792

转载 Linux 内核编译详解

新内核可以在http://www.kernel.org下载。先把linux-2.6.18.2.tar.bz2 复制到/usr/src/ 的下面tar –jxvf  linux-2.6.18.2.tar.bz2cd linux-2.6.18.2 make mrproper 把原来编译产生的垃圾删除 配置内核可以根据需要与爱好使用下面命令中的一个:#make confi

2011-11-11 13:24:25 541

转载 linux下线程池创建

本文源代码请到http://asp.6to23.com/vcprogram/source/sourcefile/linuxpool.rar 下载Linux下通用线程池的创建与使用本文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执

2011-10-11 10:25:16 814

转载 epoll

epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听

2011-10-11 09:33:31 742

转载 Libevent参考手册:evbuffer:缓冲IO实用功能

libevent的evbuffer实现了为向后面添加数据和从前面移除数据而优化的字节队列。evbuffer用于处理缓冲网络IO的“缓冲”部分。它不提供调度IO或者当IO就绪时触发IO的功能:这是bufferevent的工作。除非特别说明,本章描述的函数都在event2/b

2011-10-08 15:09:07 13296

原创 linux伪终端 telnet源码

pty_fun.cpp #include "pty_fun.h"int ptym_open(char *pts_name, int pts_namesz){ char *ptr; char fdm; /* *return the name of

2011-08-26 15:32:10 3400 3

转载 linux 内存共享mmap

地址 http://www.ibm.com/developerworks/cn/linux/l-ipc/part5/index1.html 父子进程匿名共享内存源码 #include #include #include #include #in

2011-08-26 15:26:05 618

转载 软件开发中,什么是模块化开发?

软件产品可以被看作是由一系列具有特定功能的组件组成,作为一个完整的系统也可以被分解成一系列功能模块,这些模块之间的相互作用就形成了系统的所有功能。所谓模块是指可组成系统的、具有某种确定独立功能的半自律性的子系统,可以通过标准的界面和其他同样的子系统按照一定的规则相互联

2011-08-01 09:39:40 3060

转载 虚拟机磁盘扩大与LVM

扩大硬盘的方法有二:    1 新增一个虚拟硬盘    2 扩大原有硬盘第一: 新增硬盘并将其格式化为lvm格式第二: 扩大硬盘并利用分区工具,将扩大的部分添加到原有的分区中,再将该分区转为lvm格式第三: 建立lvm卷组,并最终将文件系统挂载上去。***************

2011-07-22 11:19:03 2167

原创 搭建eclips+QT环境备忘录

软件: eclipse            qt-everywhere-opensource-src-4.7.3.tar.gz  (qt源码)         qt-eclipse-integration-linux.x86-1.6.1.tar.gz(插件)过程:略配置:win

2011-07-21 15:49:31 998

原创 信号量sem简介

信号量的数据类型为结构sem_t,它本质上是一个长整型的数。函数sem_init()用来初始化一个信号量。它的原型为:  extern int sem_init __P ((sem_t *__sem, int __pshared, unsigned int __value));  sem为指向信号量结构的一个指针;pshared不为0时此信号量在进程间共享,否则只能为当前进程的所有线程

2011-06-29 15:40:00 907

原创 python实现返回汉字首字母

<br />#coding=gbkdef multi_get_letter(str_input): if isinstance(str_input, unicode): unicode_str = str_input else: try: unicode_str = str_input.decode('utf8') except: try

2011-04-25 17:54:00 748

原创 利用boost在C++中嵌入python

示列代码#include #include #includeusing namespace std;using namespace boost::python;int main() { Py_Initialize(); PyRun_SimpleString("from time import time,ctime/n" "print 'Today is',ctime(time())/n"); Py_Finalize(); return 0;}编译时

2011-04-18 14:39:00 786 2

原创 zenoss入门

<br />Zenoss Core提供了基于SNMP的标准化的OSProcess和IPService的监控,前者包含进程的可用性和性能(CPU MEM 进程数量)监测,后者只有可用性监测。<br /> <br />官网地址<br />http://community.zenoss.org/community/documentation<br /> <br />连接一<br />http://gashero.yeax.com/?p=29<br /> <br />连接二<br />http://www.linu

2011-04-18 09:46:00 722

转载 static

::首页 >> 文档中心 >> 在线杂志 >> C++、MFC [ 在线杂志 第50期 ]   [ 原创文档 本文适合初级读者 已阅读37326次 ] 文档 代码 工具 C++的static关键字作者:韩耀旭  C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。一、面向过程设计中的static1

2011-04-14 18:06:00 593

原创 实现linux下上下键和命令补全

安装readline在eclipse中编译使用readline需要在连接时加上-Ireadline      -Itermcap#include #include #include #include static char *line_read = (char *) NULL;char *rl_gets() { if (line_read) {  free(line_read);  line_read = (char *) NULL; } line_read = readline("Please Enter

2011-04-13 10:35:00 6796

原创 Linux信号简介和信号处理相关函数

1) SIGHUP本信号在用户终端连接(正常或非正常)结束时发出, 通常是在终端的控制进程结束时, 通知同一session内的各个作业, 这时它们与控制终端不再关联.   <br />2) SIGINT程序终止(interrupt)信号, 在用户键入INTR字符(通常是Ctrl-C)时发出   <br />3) SIGQUIT和SIGINT类似, 但由QUIT字符(通常是Ctrl-/)来控制. 进程在因收到SIGQUIT退出时会产生core文件, 在这个意义上类似于一个程序错误信号.   <br />4)

2011-04-11 09:56:00 664

转载 堆和栈的区别

堆和栈的区别 (转贴) <br />非本人作也!因非常经典,所以收归旗下,与众人阅之!原作者不祥!堆和栈的区别<br />一、预备知识—程序的内存分配<br />一个由c/C++编译的程序占用的内存分为以下几个部分<br />1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。<br />2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。<

2011-04-07 14:19:00 437

转载 onst在函数前与函数后的区别

const在函数前与函数后的区别 一   const基础   如果const关键字不涉及到指针,我们很好理解,下面是涉及到指针的情况:   int   b   =   500;   const   int*   a   =   &b;              [1]   int   const   *a   =   &b;            [2]   int*   const   a   =   &b;              [3]   const   int*   const   a   = 

2011-04-07 13:44:00 783

原创 利用boost库进行字符串与文本处理

利用BOOST库处理字符串与文本背景描述        字符串与文本的处理一直是C++的弱项,虽然C++98提供了一个标准字符串处理里std::string,但是任缺乏很多文本处理的高级特征,如正则表达式和分词,使得不少C++程序员不得不求租与其他语言(如perl,python)。    BOOST库填补了这个空白,boost中有5个主要的字符串与文本处理的程序库。loxical_cast(字符串与数值转换), format(格式化输出), sting_alog(提供了大量的字符串处理函数), tokeni

2011-04-06 17:37:00 1201

转载 GTK+图形化应用程序开发学习

<br />GTK+图形化应用程序开发学习笔记(七)—标签构件.事件盒构件<br /> <br /> <br />一、标签构件<br />  标签构件(GtkLabel)是GTK中最常见的构件,它是静态的不可编辑的字段。在屏幕上,常常用标号说明其他字段。在按钮上设置标签用来说明按钮,或者放在其他字段的旁边对该字段提供说明。它不能自身引发信号。<br /> <br />       用gtk_label_new创建标签构件:<br /> <br />1.<br /><br />名称::<br /> gtk_l

2011-03-17 18:58:00 1349

原创 GTK环境搭建

平台:centos5.5安装GTK安装GTK,用rpm包安装,安装GTK需要先安装几个依赖的rpm,可以根据依赖关系逐步完成,其中有几个循环依赖的,可以用rpm -Uvh  ...  ...  ...将这几个一次安装完成用pkg-config --modversion gtk+-2.0测试是否安装成功,pkg-config 表示1.0版本,如果是2.0版本的就是gtk+-2.0,  3.0版本的就用gtk+-3.0我用的是2.10.4版本,所以用上面命令测试 一个简单的窗体程序根据官网:找到一个实例#inc

2011-03-17 17:37:00 1040

原创 学习资料

http://library.gnome.org/devel/gtk/unstable/gtk.html

2011-03-17 11:49:00 507

原创 Linux批量替换文件内容

问题描述:现在需要将rack1目录下*.send文件中的"-ip="替换成“-localIp=10.0.0.1/n-ip=”刚才那个批量文本内容替换,只能替换内存中的内容,并不会替换文本中的内容,要替换文件中的内容需要一个一个文件去重定向,比较麻烦,本人比较懒,于是找到了一种更好的办法找到批量替换文件内容的好方法,命令结构如下:  find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g'  下面这个例子就是将当前目录及所有子目录下的所有po

2011-03-16 17:55:00 3842 4

转载 批量替换文本内容 linux sed命令

<br />1.1. Sed简介 2.sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。以下介绍的是Gnu版本的Sed 3.02。 3.2. 定址 4.可以通过定址来定位你所希望编辑的行

2011-03-16 17:30:00 3417

原创 UDP通信绑定指定IP

<br />由于测试需要,自己用vconfig在自己的虚拟机里添加了很多ip,实现不同Ip间的通信。UDP客户端向服务器发送报文时,绑定会有最近IP原则,比如,你机器上有如下几个IP:10.1.1.1   ,10.1.1.2 ,  10.1.1.50,  10.1.2.51 , 10.1.2.90  , 10.1.3.91 ,10.0.0.1, 192.168.42.137,现在要向192.168.42.1发送报文,系统会自动给你分配离192.168.42.1最近的ip 192.168.42.137绑定,如

2011-03-16 17:22:00 17162

jna调用C++dll

一个java通过jna调用C++ dll库的列子,包括C++dll中含回调函数,回调java方法

2013-09-25

树形可编辑listctrl

树形listctrl,双击可编辑,右键添加删除,重绘表头,设置表头字体

2012-08-09

kettle4.1源码分析

kettle4.1源码分析文档,包括源码数据处理流程,源码修改

2012-08-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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