自定义博客皮肤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)
  • 资源 (2)
  • 收藏
  • 关注

转载 ROS2探索总结-2.走近ROS2.0时代

http://www.ncnynl.com/archives/201708/1939.htmlROS2探索总结-2.走近ROS2.0时代ROS2探索总结-2.走近ROS2.0时代说明:介绍ROS2.0相关概念,以及与ROS1.0的异同介绍:ROS已经走过九个年头,伴随着机器人技术的大发展,ROS也得到了极大的推广和应用。尽管ROS

2017-10-06 20:59:13 4865

转载 运动规划最全简介

http://blog.csdn.net/jiakeyouwe/article/details/53462920-你的博士课题是关于什么的?-机械臂运动规划。-运动规划不是已经很成熟了吗,还有什么可研究的?-是运动规划(Motion Planning),并不是轨迹规划(Trajectory Planning)。Balabala

2017-10-06 19:30:14 3309 2

转载 ROS是OS么?

https://mp.weixin.qq.com/s/Jona0-Cg5TKmcgnzvCU3og

2017-10-05 21:58:27 927

转载 她用算法买到了房子!居然还有这种操作?!

我最近买了个房子。加州湾区的房市自然不能跟国内京沪相比,但抢房也是很凶狠的。每一套房子在市场上平均时间大概 4-5 天,可以收到 20 几个 offer 竞价,一般价高者得。经常看到一个房子,还在犹豫是不是合适:会不会有其他地板更好一点的?会不会有多一个卫生间的?会不会有离地铁站更近的?会不会有更便宜的?(毕竟是百万刀的决定啊)和马克还没商量完,房子就已经没了。《Algor

2017-10-05 21:45:42 516

转载 Lisp的本质

摘要:学习Lisp就像战争中争夺山头。尽管在电脑科学领域, Lisp已经算是一门古老的语言, 直到现在仍然很少有人真的明白该怎样给初学者讲授Lisp。尽管Lisp老手们尽了很大努力,今天新手学习Lisp仍然是困难重重。好在现在事情正在发生变化, Lisp的资源正在迅速增加,随着时间推移,Lisp将会越来越受关注。简介最初在Web的某些角落偶然看到有人赞美Lisp时,我那时已经是

2017-04-23 16:20:44 316

转载 ubuntu 交叉编译arm linux 内核小例子

下载arm-linux-gcc 4.2.3http://code.google.com/p/princess-alist/downloads/detail?name=arm-linux-gcc-4.3.2.tgz&can=2&q=安装arm-linux-gcc 4.2.3sudo tar  xvzf arm-linux-gcc-4.3.2.tar.gz  -C /此时将安装到/us

2017-04-16 14:21:44 835

原创 《深入理解linux内核》读书笔记 -- 第二章 内存寻址

地址概念:逻辑地址,由段标识符+偏移量组成;线性地址,又称虚拟地址;物理地址,用于内存芯片寻址。为什么需要虚拟内存?CPU 对内存的寻址最简单的方式就是直接使用物理内存地址,这种方式一般叫做物理寻址。早期的 PC 使用物理寻址,而且像数字信号处理器、嵌入式微控制器也使用物理寻址。物理寻址的好处是简单,坏处也有很多,比如:不安全:操作系统的地址直接

2017-04-04 22:50:14 487

转载 vi的常用命令

vi的基本操作 a) 进入vi   在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:    $ vi myfile   不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,

2017-04-04 20:50:00 224

原创 《深入理解linux内核》读书笔记 -- 第一章 绪论

0.1991年,Linus Torvalds开发出最初的linux。1.Linux最吸引人的一个优点就在于它不是商业操作系统,它的源代码在GNU公共许可证GPL(General Public License)下是开放的。2.linux有以下特点:单块结构的内核,相对于微内核而言。Linux对模块的支持是很好的,因为它能自动按需装载或卸载模块。Linux以一种十分有限的方式使用内

2017-04-04 01:15:35 810

转载 剖析 Linux hypervisor

剖析 Linux hypervisorKVM 和 Lguest 简介Linux® 的最重要创新之一就是转变为hypervisor(或运行其他操作系统的操作系统)。现在涌现许多使用 Linux 作为内核的 hypervisor 解决方案。本文探索 hypervisor 背后的原理,以及两个使用 Linux 作为平台的 hypervisor(KVM 和 Lguest

2017-04-02 22:22:09 631

转载 虚拟机的实现原理

虚拟机的实现原理虚拟机简介    首先看一下整个虚拟机在物理机上的结构图(本图来源网络)    每台虚拟机的组成要素:虚拟机的os,应用程序需要的各种包,应用程序。而每一台虚拟机都是在Hypervisor的基础上建立起来的。Hypervisor  Hypervisor(虚拟机管理器)是一种运行在物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应

2017-04-02 21:47:38 2750

转载 linux内核 RCU机制详解

简介        RCU(Read-Copy Update)是数据同步的一种方式,在当前的Linux内核中发挥着重要的作用。RCU主要针对的数据对象是链表,目的是提高遍历读取数据的效率,为了达到目的使用RCU机制读取数据的时候不对链表进行耗时的加锁操作。这样在同一时间可以有多个线程同时读取该链表,并且允许一个线程对链表进行修改(修改的时候,需要加锁)。RCU适用于需要频繁的读取数据,

2017-03-29 23:44:52 331

转载 linux system函数是否执行成功判断方法

首先我们看一个例子:    status = system("./test.sh");  1、先统一两个说法:(1)system返回值:指调用system函数后的返回值,比如上例中status为system返回值(2)shell返回值:指system所调用的shell命令的返回值,比如上例中,test.sh中返回的值为shell返回值。2、如何正确判断test.

2016-09-05 16:51:25 2964

原创 linux下通过脚本与终端交互的方法

在linux下,当我们在终端敲下命令时,有时需要与之进行交互,例如终端可能会显示信息要求我们输入密码等。    如果我们想将这个过程自动化,可以使用expect工具。    首先安装expect工具,sudo apt-get insall expect-dev    下面通过2个例子看看使用方法。       下面的脚本实现了ssh到远程主机,并执行远程主机上的一个脚本"/

2016-09-05 09:05:50 2919

转载 配置服务器出错 /usr/libexec/gconf-sanity-check-2的退出状态为256

调整了tmp挂载分区,后来启动出现 配置服务器出错 /usr/libexec/gconf-sanity-check-2的退出状态为256。检查 /tmp权限,成了0755其它人没有写权限,调整为0777,问题解决。

2016-09-01 09:07:23 2538

转载 开发者都应该使用的10个C++11特性

摘要在C++11新标准中,语言本身和标准库都增加了很多新内容,本文只涉及了一些皮毛。不过我相信这些新特性当中有一些,应该成为所有C++开发者的常规装备。你也许看到过许多类似介绍各种C++11特性的文章。下面是我总结的,C++开发者都需要学习和使用的C++11新特性。auto    在C++11之前,auto关键字用来指定存储期。在新标准中,它的功能变为类型推断。auto现在成了一个

2016-08-29 16:25:48 437

转载 ubuntu 12.04 gcc版本为4.6降到4.4方法

ubuntu 12.04中的gcc版本为4.6版本过高,降级为4.4步骤:1. 查看gcc版本和g++版本xumingtao@huaserver1:/usr/bin$ ls -l gcc*lrwxrwxrwx 1 root root      7 Aug 30 19:26 gcc -> gcc-4.6-rwxr-xr-x 1 root root 353216 A

2016-08-26 12:29:20 930

转载 462 字节 C 代码实现雅虎 logo ACSII 动画

【伯乐在线导读】:说到代码混淆艺术,大家可能会想到 IOCCC 大赛中的阿卡林作品(如下图)。“阿卡林”,动漫作品《摇曳百合》中的主人公之一不过本文介绍 Andy Sloane 的一个作品:C 代码实现雅虎 logo ACSII 动图。自从他把这段代码放到我们的内网以来,一直有做优化改进,下面是最终版。来吧,试一下:[2016-08-23 编辑更新]:因站内第三方插件之间兼容性

2016-08-23 12:59:00 408

转载 C++ 引用计数技术及智能指针的简单实现

一直以来都对智能指针一知半解,看C++Primer中也讲的不够清晰明白(大概是我功力不够吧)。最近花了点时间认真看了智能指针,特地来写这篇文章。智能指针是什么简单来说,智能指针是一个类,它对普通指针进行封装,使智能指针类对象具有普通指针类型一样的操作。具体而言,复制对象时,副本和原对象都指向同一存储区域,如果通过一个副本改变其所指的值,则通过另一对象访问的值也会改变.所不同的是,智能指针能

2016-06-05 20:56:52 391

转载 boost.asio系列——io_service

boost.asio系列——io_serviceIO模型io_service对象是asio框架中的调度器,所有异步io事件都是通过它来分发处理的(io对象的构造函数中都需要传入一个io_service对象)。    asio::io_service io_service;    asio::ip::tcp::socket socket(io_service);在asio

2016-05-20 13:40:54 403

转载 GCC的符号可见性——解决多个库同名符号冲突问题

问题最近项目遇到一些问题,场景如下主程序依赖了两个库libA的funcA函数和libB的funcB函数。示意的代码(main.cpp)如下:#include int funcA(int, int);int funcB(int, int);int main() { printf("%d,", funcA(2, 1)); printf("%d\n",

2016-05-05 09:32:40 2184 1

转载 虚函数表是在编译的时候还是运行的时候产生的

引入:这段时间一直在思考虚函数表的问题,同时也想知道虚函数表是在什么时候产生的本人是在VS2010的环境下,如有错误欢迎指出,谢谢。观察代码#include#includeclass A{public:A(); virtual~A(); void fun1(){ printf("123"); }}

2016-04-17 12:54:41 983

转载 虚函数表是在编译的时候还是运行的时候产生的

引入:这段时间一直在思考虚函数表的问题,同时也想知道虚函数表是在什么时候产生的本人是在VS2010的环境下,如有错误欢迎指出,谢谢。观察代码#include#includeclass A{public:A(); virtual~A(); void fun1(){ printf("123"); }}

2016-04-17 12:53:33 1941

转载 C++的可移植性和跨平台开发

概述  今天聊聊C++的可移植性问题。如果你平时使用C++进行开发,并且你对C++的可移植性问题不是非常清楚,那么我建议你看看这个系列。即使你目前没有跨平台开发的需要,了解可移植性方面的知识对你还是很有帮助的。  C++的可移植性这个话题很大,包括了编译器、操作系统、硬件体系等很多方面,每一个方面都有很多内容。鉴于本人能力、精力都有限,只能介绍每一个方面最容易碰到的问题,供大伙儿参

2016-04-16 23:01:35 360

转载 CMake 手册详解(二)

====================================================--build : 构建由CMake生成的工程的二进制树。(这个选项的含义我不是很清楚—译注)该选项用以下的选项概括了内置构建工具的命令行界面           = 待创建的工程二进制路径。 --target = 构建,而不是默认目标。 --config =

2016-04-08 08:37:06 365

转载 win32下安装mingw32和cmake来编译opencv2.4.9

要注意的就是mingw32和cmake的版本了吧,我第一次编译就是以失败告终,然后痛定思痛,把自己的mingw32和cmake去卸载又安装的别人告知的,结果成功。先是mingw32,点击打开链接,可下载tdm-gcc-4.9.2.exe,4.9.2是我使用的版本,不知现在这个页面上版本更新没。安装的话,安装时选择默认的支持C++/C的那种方式即可,默认会自动添加到系统环境变量。如果

2016-04-07 13:20:00 981

转载 Window和Linux动态库搜索路径的次序

最近在做的项目中使用到动态库的动态加载技术,Windows和Linux都提供了相应的函数来打开动态库、获取函数指针和关闭动态库,在打开动态库函数(dlopen或LoadLibrary)中指定动态库的文件名后,在程序运行时是以什么次序来搜索动态库呢? Linux下搜索路径的次序:1)  ELF可执行文件中动态段中DT_RPATH所指定的路径,不常用但是比较使用的方法;

2016-04-07 13:08:48 514

转载 Linux下动态共享库加载时的搜索路径详解

对动态库的实际应用还不太熟悉的读者可能曾经遇到过类似“error while loading shared libraries”这样的错误,这是典型的因为需要的动态库不在动态链接器ld.so的搜索路径设置当中导致的。 具体说来,动态链接器ld.so按照下面的顺序来搜索需要的动态共享库: 1.ELF可执行文件中动态段中DT_RPATH所指定的路径。这实际上是通过一种不算很常用,却比较实用的方

2016-04-05 15:24:15 262

原创 使用checkinstall1.6.1时遇到的问题

在使用checkinstall1.6.1对软件制作deb包时,发现我如果将包name那一项修改为自己想要的名字而不使用默认的build,就会出现各种奇怪的问题,比如安装的库没有对应的链接文件,可执行文件没有安装成功等等诡异的问题,现在还不知道是checkinstall软件的bug,还是自己用的不对。这里记录一下吧。暂时使用时就不修改包名字了,就使用默认的build好了

2016-04-02 23:08:18 12922

原创 dpkg错误解决

在使用dpkg命令安装deb包时,如果出现如下错误提示:trying to overwrite XXX which is also in package XXXX可以通过sudo dpkg -i --force-overwrite XXXX.deb命令,也就是添加--force-overwrite参数强制覆盖之前安装的版本即可。

2016-04-02 15:51:22 3945

原创 使用CPACK制作安装包

使用CPACK制作安装包需要在CMakeLists.txt文件中加入如下内容。##############################################################                                                         ### Setup PACKAGING            

2016-04-02 12:14:18 3813

转载 CMake 手册详解(一)

公司的一个项目使用CMake作为跨平台构建工具;业务有需求,当然要好好研读一下官方的技术手册。目前的计划是先把官方手册翻译一下,了解清楚CMake中的各种命令、属性和变量的用法。同时在工作中也会阅读CMake的真实源码,后续会基于此陆续写一些工程中使用CMake的心得。CMake的版本也在不停更新,有些新的命令和变量会随着版本更新添加进来,这是后事了,暂且不管;现在锁定CMake 2.8.3作为手

2016-04-02 11:24:20 327

转载 Ubuntu下U盘文件只读的解决办法

Ubuntu下U盘出现文件系统只读的问题了。症状为无法删除U盘中现有文件,无法向U盘拷贝新的文件。但不知道是什么原因。今天下决心解决这个问题。解决方法:1. 在Ubuntu终端运行如下命令tail -f /var/log/syslog      2. 插入有只读文件系统故障的U盘3. 观察命令行输出输出局部如下:Jul  8 16:44:50 csl

2016-04-01 13:25:33 437

原创 eclipse与cmake配合使用

c++项目中使用cmake作为构建工具非常方便,但同时又希望使用eclipse作为源码编辑工具。网上大部分都在说使用如下方法:mkdir /home/eric/certi_build cd /home/eric/certi_build cmake -G"Eclipse CDT4 - Unix Makefiles" -D CMAKE_BUILD_TYPE=Debug ../cert

2016-03-31 23:29:01 11015

转载 linux下so动态库一些不为人知的秘密(下)

继续上一篇《 linux下so动态库一些不为人知的秘密(中) 》介绍so搜索路径,还有一个类似于-path,叫LD_RUN_PATH环境变量, 它也是把路径编译进可执行文件内,不同的是它只设置RPATH。 [stevenrao] $ g++ -o demo -L /tmp/  -ltmp main.cpp [stevenrao] $ readelf -d demo

2016-03-28 21:15:09 821

转载 linux下so动态库一些不为人知的秘密(中)

我们知道linux链接so有两种途径:显示和隐式。所谓显示就是程序主动调用dlopen打开相关so;这里需要补充的是,如果使用显示链接,上篇文章讨论的那些问题都不存在。首先,dlopen的so使用ldd是查看不到的。其次,使用dlopen打开的so并不是在进程启动时候加载映射的,而是当进程运行到调用dlopen代码地方才加载该so,也就是说,如果每个进程显示链接a.so;但是如果发布该程序时候忘记

2016-03-28 20:58:49 452

转载 linux下so动态库一些不为人知的秘密(上)

linux 下有动态库和静态库,动态库以.so为扩展名,静态库以.a为扩展名。二者都使用广泛。本文主要讲动态库方面知识。      基本上每一个linux 程序都至少会有一个动态库,查看某个程序使用了那些动态库,使用ldd命令查看 # ldd /bin/lslinux-vdso.so.1 => (0x00007fff597ff000)libsel

2016-03-28 20:45:25 309

转载 cmake 常用变量和常用环境变量查表手册---整理 .

一,cmake 变量引用的方式:前面我们已经提到了,使用${}进行变量的引用。在 IF 等语句中,是直接使用变量名而不通过${}取值二,cmake 自定义变量的方式:主要有隐式定义和显式定义两种,前面举了一个隐式定义的例子,就是 PROJECT 指令,他会隐式的定义_BINARY_DIR 和_SOURCE_DIR 两个变量。显式定义的例子我们前面也提到了,使用 SET 指令,就

2016-03-02 15:33:45 591

转载 GCC wiki Visibility

Note: the text on this page was almost integrally written by Niall Douglas, the original author of the patch, and placed on nedprod.com. This is basically a local mirror (especially useful because t

2016-03-01 14:50:11 515

转载 cmake使用示例与整理总结

cmake中一些预定义变量PROJECT_SOURCE_DIR 工程的根目录PROJECT_BINARY_DIR 运行cmake命令的目录,通常是${PROJECT_SOURCE_DIR}/buildCMAKE_INCLUDE_PATH 环境变量,非cmake变量CMAKE_LIBRARY_PATH 环境变量CMAKE_CURRENT_SOURCE_DIR 当前处理的CMakeLists.

2016-03-01 12:56:16 382

跳一跳刷分机源代码.rar

本代码是用python写的,借助这个代码玩跳一跳可以一直跳下去,得到任意你想要的分数。代码简单易懂,可以学到一些简单基础的python语言

2020-02-15

ABB机器人中文培训.pdf

ABB机器人中文培训,介绍ABB机器人系统使用方法

2012-01-06

空空如也

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

TA关注的人

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