自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)
  • 资源 (1)
  • 收藏
  • 关注

转载 vim 常用配置-让vim更好用

 转载出处:http://www.php.cn/linux-376984.html将一下代码copy到 用户目录下 新建文件为 .vimrc 保存即可生效; 如果想所有用户生效 请修改 /etc/vimrc (建议先cp一份)set nocompatible " 关闭 vi 兼容模式syntax on " 自动语法高亮colorscheme molokai " 设定配色...

2018-09-28 11:13:58 1873

转载 Protocol Buffer技术详解(C++实例)

感谢原创作者, 转载出处:https://www.cnblogs.com/stephen-liu74/archive/2013/01/04/2842533.html这篇Blog仍然是以Google的官方文档为主线,代码实例则完全取自于我们正在开发的一个Demo项目,通过前一段时间的尝试,感觉这种结合的方式比较有利于培训和内部的技术交流。还是那句话,没有最好的,只有最适合的。我想写Blog也是这...

2018-08-14 16:45:33 265

转载 vim 分屏功能

vim的分屏功能总结起来,基本都是ctrl+w然后加上某一个按键字母,触发一个功能。(1)在shell里打开几个文件并且分屏:  vim -On file1 file2 ...  vim -on file1 file2 ...大O表示垂直分割(vertical),小o表示水平分割(默认horizontal),后面的n表示分几个屏,实际上我觉得不用写,默认按后面要分割的文件数来决定分几...

2018-07-30 11:00:05 236

转载 Ceph Crush解析

文章出处:https://www.2cto.com/net/201606/515330.html文章比较深入的写了CRUSH算法的原理和过程.通过调试深入的介绍了CRUSH计算的过程.写在前面读本文前,你需要对ceph的基本操作,pool和CRUSH map非常熟悉.并且较深入的读过源码.分析的方法首先,我们写了个c程序调用librados向pool中写入一个对象.然后使用 GDB(CGDB is...

2018-06-24 21:49:57 2123

转载 VirtualBox虚拟机网络设置(四种方式)详解

VirtualBox虚拟机网络设置(四种方式)转载出处:https://www.douban.com/group/topic/15558388/VirtualBox的提供了四种网络接入模式,它们分别是: 1、NAT 网络地址转换模式(NAT,Network Address Translation) 2、Bridged Adapter 桥接模式 3、Internal 内部网络模式 4、Host-on...

2018-06-04 15:31:50 606

转载 ssh免密码登录配置

ssh免密码登录配置假设两台主机为master和slave,两台主机中要做ssh链接的两个用户名最好相同,否则在之后ssh链接时会比较蛋疼。下面是修改主机名的操作步骤首先注销掉需要修改用户名的用户(!!必须注销掉),然后最好ctrl+alt+f1进入纯命令行操作,登录root用户,按照顺序做如下操作passwd 原名字设置新的密码chfn -f 新名字 原名字usermod -l 新名字 -d /...

2018-04-04 10:32:08 342

转载 Git的Patch功能

转载出处:https://www.cnblogs.com/y041039/articles/2411600.html应用背景:UNIX世界的软件开发大多都是协作式的,因此,Patch(补丁)是一个相当重要的东西,因为几乎所有的大型UNIX项目的普通贡献者,都是通过 Patch来提交代码的。作为最重要的开源项目之一,Linux,也是这样的。普通开发者从软件仓库clone下

2017-12-05 14:27:21 578

转载 git am 部分发生冲突的处理

转载出处:http://blog.csdn.net/bnblzq/article/details/704757281.背景一般而言,为了保留git log的记录,我们在做patch的时候会使用git format patch的命令来生成一个patch,在应用patch的时候会选择git am来打上patch.一般的patch会包含N个文件的补丁,假设 有其中一个文件发生了c

2017-12-05 14:14:56 515

转载 父类中访问子类成员

转在出处:http://blog.csdn.net/Hello_World_LVLcoder/article/details/77346173?locationNum=7&fps=1委屈的父类一般情况下来说,父类的中的成员往往是最委屈的,子类要是有个同名(仅仅需要名字一样)成员,自己的成员就会被隐藏,子类还可以访问自己的非私有成员,但是自己想访问子类中的成员就不行,当子类与自己有同

2017-11-06 16:57:52 3565

转载 C++ STL中Map的按Key排序和按Value排序

转载出处:http://blog.csdn.net/iicy266/article/details/11906189map是用来存放键值对的数据结构,可以很方便快速的根据key查到相应的value。假如存储学生和其成绩(假定不存在重名,当然可以对重名加以区分),我们用map来进行存储就是个不错的选择。 我们这样定义,map,其中学生姓名用string类型,作为Key;该学生的成

2017-10-26 18:58:18 246

转载 bind的工作原理

1、bind的工作原理bind 并不是一个单独的类或函数,而是非常庞大的家族,依据绑定的参数的个数和要绑定的调用对象的类型,总共有数十种不同的形式,编译器会根据具体的绑定代码制动确定要使用的正确的形式,bind的基本形式如下:template bind(F f);template bind(F f,A1 a1);namespace{boost::arg _1;b

2017-10-19 11:33:35 1031

转载 C++11多线程std::thread的简单使用

转自:http://blog.csdn.net/star530/article/details/24186783在cocos2dx 2.0时代,我们使用的是pthread库,是一套用户级线程库,被广泛地使用在跨平台应用上。但在cocos2dx 3.0中并未发现有pthread的支持文件,原来c++11中已经拥有了一个更好用的用于线程操作的类std::thread。cocos2dx 3.

2017-10-17 15:48:14 208

转载 bind()的用法

这篇文章介绍boost::bind()的用法, 文章的主要内容是参考boost的文档。转载出处:http://www.cnblogs.com/sld666666/archive/2010/12/14/1905980.html1. 目的   boost::bind 是std::bindlist 和 std::bind2nd的结合体。它提供一个任意的函数对象(仿函数)、函数、函数指

2017-10-16 14:56:08 1522

转载 boost::intrusive_ptr原理介绍

转载出处:http://www.baidu.com/link?url=NmAV5tcI5zIbzUygDpkL_sUVUDMWIKB6kZIium03BuB0SKNn3GsJx6KS6_LxmWWZE_06sfzwvo74AbWni9yjbHfqlFsSNZlLH0IXFWcCODu&wd=&eqid=b3ba99fb0001b7ef0000000459df3716boost:

2017-10-12 17:36:37 1058

转载 boost::shared_ptr的使用方法

转载出处:   http://blog.csdn.net/yusiguyuan/article/details/200760611. boost::shared_ptr的用法 下面用一个简单的例子说明shared_ptr的用法: #include #include class A {public: void print() {

2017-10-11 17:32:46 1825 1

原创 boost optional<T>

请参照 http://www.360doc.com/content/12/0705/14/7802291_222416351.shtml

2017-10-10 16:18:33 366

转载 如何识别C++编译以后的函数名(demangle)

如何识别C++编译以后的函数名(demangle)From :  http://www.bagualu.net/wordpress/archives/2312                 C/C++语言在编译以后,函数的名字会被编译器修改,改成编译器内部的名字,这个名字会在链接的时候用到。如果用backtrace之类的函数打印堆栈时,显示的就是被编译器修改过的名字,比如

2017-10-09 11:08:52 3909 1

转载 STL map详细用法和make_pair函数

the source URL: http://www.cnblogs.com/ranjiewen/p/5901296.html首先make_pairPairs C++标准程序库中凡是“必须返回两个值”的函数, 也都会利用pair对象 classpair可以将两个值视为一个单元。容器类别map和multimap就是使用pairs来管理其健值/实值(key/va

2017-09-28 17:35:03 967

转载 MOF原理和实现

转载出处:http://blog.sina.com.cn/s/blog_465d52dc0100l9o0.htmlMOF原理和实现    关键词:MDA MOF AOP  众所周知MOF是MDA的核心,下面我们来快速浏览一下什么是MOF。  序曲  一个应用系统可以被分为典型的3层结构。在《UML模式与应用》[1]一书中分别称为UI层、领域层、数据层。UI层和领域层

2017-09-26 16:51:09 8699

转载 Perl脚本同时只运行一个实例

转载出处:http://blogread.cn/it/article/743?f=wb用Perl写了一些监控脚本,放在crontab中调度执行。有时候会发现一个脚本运行时间过长,会同时跑起多个实例,因此有必要为脚本加上控制,只运行一个实例运行。最简单自然的想法,在脚本中检查并创建一个空的lock文件,脚本结束时再删除。通过判断文件是否存在的方式来判断脚本是否已经运行。不过这样做有个

2017-07-25 10:48:44 568

转载 linnux socket 缓冲区详解

转载出处:http://blog.chinaunix.net/uid-23146151-id-3125031.html之前在前面的Linux socket缓冲区引起的死锁博客中讲述了这个具体的死锁过程。当时也没有很仔细的看Linux内部的实现代码,也没有具体看内部是如何实现的。这两天没事的时候看了两眼代码,找到了对应的实现方式。为了说明后续的实现过程,首先需要介绍L

2017-07-21 09:47:08 814 1

原创 Linux 文件系统注册register_filesystem与注销unregister_filesystem源码详解

参考:  http://blog.csdn.net/gxfan/article/details/3079766             http://bbs.chinaunix.net/thread-4103398-1-1.html  在linux内核中,每一种注册了的文件系统都由一个类型为file_system_type的结构体来代表,该结构体中含有一个类型为file_system_ty

2017-06-08 16:21:04 2808

原创 perl select 函数

perl 的select 函数1 作用:改变系统默认输出的文件句柄2 语法:     select FILREHADL       select       select RBITS,WBITS, EBITS,TIMEOUT 3 定义和用法       设置输出的文件句柄(FILEHANDLER)为默认文件句柄(default FILEH

2017-05-27 16:52:37 1510

转载 perl 基本语法

转载出处:http://blog.sina.com.cn/s/blog_635ff3050102v2dp.html一.数据类型(Data type):              Perl 的数据类型大致分为四种:Scalar(变量)、Scalar Array(数组)、Hash Array(散列)、               References(指针).

2017-05-25 10:36:42 755

转载 Perl中use和require用法对比

出处:http://developer.51cto.com/art/201007/213710.htmPerl中use和require用法对比2010-07-23 15:17 EagleYIN417 csdn.net 字号:T | T在学习Perl语言的过程中你可能会遇到Perl use和require用法的问题,这里向大家介绍一下Perl use和requ

2017-05-25 10:21:22 1557

转载 Perl文件I/O

转载出处:http://www.yiibai.com/perl/perl_files.html处理文件的基本原理很简单:你关联与外部实体(通常是文件)的文件句柄,然后使用各种在Perl的运算符和函数内与句柄相关联的数据流中存储的数据读取和更新。一个句柄是一个名为Perl的内部结构,关联物理文件名称。所有的文件句柄是读/写访问,所以你可以读取和更新与句柄相关联的任何文件或设备的能力。

2017-05-23 15:36:39 594

原创 linux shell if语句

if 语句格式if  条件then Commandelse Commandfi        别忘了这个结尾If语句忘了结尾fitest.sh: line 14: syntax error: unexpected end of fi     if 的三种条件表达式ifcommandthen if 函数then 命令执行成功,等于返回0 (比如

2017-05-10 15:35:52 331

转载 writev用法

UNIX和WINSOCK提供了不同的实现方法UNIX系统下,使用writev,可以指定一系列的缓冲区,收集要写的数据,使可以安排数据保存在多个缓冲区中,然后同时写出去,从而避免出现Nagle和延迟ACK算法的相互影响。参数编辑#include ssize_t writev( int fd, const struct iovec *iov, int cnt )

2017-05-08 10:40:40 1465

转载 Linux 安装openmpi

安装1) 下载openmpi2) tar -xzvf openmpi-1.4.3.tar.gz3) cd openmpi-1.4.3 4) ./configure --prefix=/usr/local/openmpi | tee ../install.log5) make all | tee ../make.log6) make install | tee ../inst

2017-04-06 17:48:35 6093

转载 rpm 命令使用

rpm(安装、查询、卸载、升级、校验)安装  通常情况下使用指令 rpm -ivh 进行安装  -i  安装  -v  显示详细信息  -h  显示进度条   --nodeps (取消依赖关系,装上之后极有可能不能用)  --replacefiles (产生的文件冲突时,替换覆盖)  --replacepkgs (当批量(组)

2017-04-06 17:47:12 640

转载 sync

sync命令文件系统管理 sync命令用于强制被改变的内容立刻写入磁盘,更新超块信息。 在Linux/Unix系统中,在文件或数据处理过程中一般先放到内存缓冲区中,等到适当的时候再写入磁盘,以提高系统的运行效率。sync命令则可用来强制将内存缓冲区中的数据立即写入磁盘中。用户通常不需执行sync命令,系统会自动执行update或bdflush操作,将缓冲区的数据写 入磁盘。只有在updat

2017-02-18 14:55:51 1008

转载 NVDIMM介绍与应用

NVDIMMNVDIMM 是在一种集成了DRAM + 非易失性内存芯片的内存条规格,能够在完全断电的时候依然保存完整内存数据,这次发布AGIGA860 采用了NAND 闪存作为内存条的非易失性存储芯片,而DRAM 部分则是DDR3-1600,内存条上没有采用电池,而是 SSD 上常见的超级电容来维持掉电后瞬时的数据转移电力,厂商提供了在线闪存固件更新服务。相比其他介质的非易失性

2016-12-25 14:12:27 4463

转载 网络通信错误码转换

TCP/IP 某些最常见的错误原因码 (errno)列表(转)对于在基于 UNIX 的环境中的 TCP/IP 用户,下表列出了某些最常见的错误原因码 (errno)。它不是完整的错误列表。可以在文件 /usr/include/sys/errno.h 中找到 Errno。针对每一种操作系统给出了errno 号码。基于 UNIX 的 TCP/IP errno

2016-12-20 10:08:58 1320

转载 mmap引发的SIGBUS

转载出处:http://blog.csdn.net/ctthuangcheng/article/details/8916015一直以来都觉得使用mmap读文件是非常高效、非常优雅的做法(参见《从"read"看系统调用的耗时》)。mmap之后,就可以通过内存访问的方式访问到文件里的内容,省去了read这样的系统调用。却不曾想过,mmap以后,如果读文件出错会发生什么……今晚看到一篇介

2016-12-09 21:00:23 2359

转载 mount命令用法

转载出处:http://blog.sina.com.cn/s/blog_545f2b4701010lyn.html语法: mount -t 类型 -o 挂接方式 源路径 目标路径     -t 详细选项:           光盘或光盘镜像:iso9660          DOS fat16文件系统:msdos          Win

2016-12-09 20:11:29 12009

转载 setsockopt的作用

转载出处:http://blog.csdn.net/l_yangliu/article/details/7086256功能描述:        获取或者设置与某个套接字关联的选 项。选项可能存在于多层协议中,它们总会出现在最上面的套接字层。当操作套接字选项时,选项位于的层和选项的名称必须给出。为了操作套接字层的选项,应该 将层的值指定为SOL_SOCKET。为了操作其它层的选项

2016-11-28 11:45:19 243

转载 C语言getopt()函数的使用

getopt(分析命令行参数)   相关函数表头文件        #include定义函数        int getopt(int argc,char * const argv[ ],const char * optstring);函数说明        getopt()用来分析命令行参数。参数argc和argv是由main()传递的参数个数和

2016-11-28 11:19:43 270

转载 数据重删技术介绍

转载出处:http://blog.csdn.net/hs794502825/article/details/8119516一:数据重删技术概述1.源端去重 && 宿端去重源端去重(Source Deduplication)首先在客户端计算待传输数据的指纹并通过与服务端进行指纹比对发现和消除重复内容,然后仅向服务端发送非重复数据内容 , 从而达到同时节约网络带宽和存储资源的目

2016-11-28 09:37:37 6891

转载 vdbench 参数详解

HD:主机定义如果您希望展示当前主机,则设置 hd= localhost。如果希望指定一个远程主机,hd= label。system= IP 地址或网络名称。clients= 用于模拟服务器的正在运行的客户端数量。SD:存储定义sd= 标识存储的名称。host= 存储所在的主机的 ID。lun= 原始磁盘、

2016-11-22 20:47:54 20045

转载 iozone与mdtest使用简介

1.Iozoneiozone是一个文件系统的benchmark工具,可以测试不同的操作系统中文件系统的读写性能。可以测试 Read, write, re-read, re-write, readbackwards, read strided, fread, fwrite, random read, pread, mmap, aio_read,aio_write 等等不同的模式下的硬

2016-11-22 20:40:36 2370

PWM调光来实现两个开环交错PWM的输出

PWM波调光,脉宽与光的亮度成正比 /*----------------------------------------------- 名称:PWM 调光 日期:2009.5 修改:无 内容:1、学习目的:利用定时器产生PWM,了解原理和使用方法 2、硬件要求:LED灯 定时器 3、试验现象:LED灯由亮到灭,由灭到亮逐步变化,也就是调光现象 ------------------------------------------------*/ #include //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 sbit LED = P1^2; sbit LED2 = P1^1; //定义LED灯,通过LED显示调光效果 unsigned char CYCLE; //定义周期 该数字X基准定时时间 如果是10 则周期是10 x 0.1ms unsigned char PWM_ON, PWM_ON2;//定义高电平时间 /******************************************************************/ /* 延时函数 */ /******************************************************************/ void delay(unsigned int cnt) { while(--cnt); } void Init0() {TMOD |=0x01; //定时器设置 0.1ms in 12M crystal 16位工作模式 TH0=(65536-100)/256; TL0=(65536-100)%256; IE= 0x82; //打开中断 TR0=1;} void Init1() {TMOD |=0x10; //定时器设置 0.1ms in 12M crystal 16位工作模式 TH1=(65536-100)/256; TL1=(65536-100)%256; IE= 0x82; ET1=1; } /******************************************************************/ /* 主函数 */ /******************************************************************/ main() { bit Flag; Init0(); Init1(); if((TH0=(65536-6)/256 )&&(TL0=(65536-6)%256))//与定时器1初值相差100,则相位改变1/10T,相差500,相位改变1/2T TR1=1;//打开中断 CYCLE =10; // 时间可以调整 这个是10调整 8位PWM就是256步 pwm周期=CYCLE*定时时间 while(!Flag) { delay(20000); //延时时间,从一个亮度到下一个亮度的间隔时间,速度快就能看到连续效果 PWM_ON=6; PWM_ON2=6; //这个使用较长延时,以便能看清楚变化过程 控制占空比q=(CYCLE-PWM_ON-1)/CYCLE if(PWM_ON ==PWM_ON2== CYCLE) { //这个里可以添加其他程序 如到最亮时候控制设备 Flag=1; } } while(Flag) //亮度递减 同上,是个相反的过程 { delay(20000); PWM_ON--; PWM_ON2--; if(PWM_ON == 0||PWM_ON2==0) { Flag=0; } } } /******************************************************************/ /* 定时器中断函数

2014-01-20

空空如也

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

TA关注的人

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