自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

月黑风高云游诗人的博客

君子不器 Albert scn

  • 博客(15)
  • 收藏
  • 关注

原创 什么是大学精神

转载自光明日报   http://epaper.gmw.cn/gmrb/html/2014-10/20/nw.D110000gmrb_20141020_4-07.htm首都师范大学文学院 陶东风   大学文化是普遍的,因为大学秉持的价值和追求的利益具有普遍性,也因为大学文化的核心或曰大学精神,是不同专业和学科都要遵循一些基本原则和共同态度,还因为大学培养的是有教养的公民,是具有明达理性,言谈优

2017-05-31 16:01:25 859

转载 在多线程中使用静态方法是否有线程安全问题

在多线程中使用静态方法是否有线程安全问题 类的成员分为两类,静态成员(static member)和实例成员(instance member)。静态成员属于类,实例成员则属于对象,即类的实例。简单讨论一下在一个类中使用静态字段(static field)和静态方法(static method)是否会有线程安全问题。 我们在知道, 静态字段(static field)和静态方法(static met

2017-05-22 10:11:51 600

转载 Linux虚拟地址空间布局

Linux虚拟地址空间布局 在多任务操作系统中,每个进程都运行在属于自己的内存沙盘中。这个沙盘就是虚拟地址空间(Virtual Address Space),在32位模式下它是一个4GB的内存地址块。在Linux系统中, 内核进程和用户进程所占的虚拟内存比例是1:3,而Windows系统为2:2(通过设置Large-Address-Aware Executables标志也可为1:3)。这并不意味着内

2017-05-09 16:10:04 351

转载 socket函数send和recv函数

socket函数send和recv函数Socket的Send,Recv的长度问题:一个包没有固定长度,以太网限制在46-1500字节,1500就是以太网的MTU,超过这个量,TCP会为IP数据报设置偏移量进行分片传输,现在一般可允许应用层设置8k(NTFS系统)的缓冲区,8k的数据由底层分片,而应用层看来只是一次发送。 windows的缓冲区经验值是4k。 Socket本身分为两种,流(TCP)

2017-05-09 09:32:39 416

转载 linux共享内存原理剖析

linux共享内存原理剖析共享内存区域是被多个进程共享的一部分物理内存。如果多个进程都把该内存区域映射到自己的虚拟地址空间,则这些进程就都可以直接访问该共享内存区域,从而可以通过该区域进行通信。共享内存是进程间共享数据的一种最快的方法,一个进程向共享内存区域写入了数据,共享这个内存区域的所有进程就可以立刻看到其中的内容。这块共享虚拟内存的页面,出现在每一个共享该页面的进程的页表中。但是它不需要在所有

2017-05-08 16:41:14 3790 1

转载 操作系统为什么要分用户态和内核态

在CPU的所有指令中,有一些指令是非常危险的,如果错用,将导致整个系统崩溃。比如:清内存、设置时钟等。如果所有的程序都能使用这些指令,那么你的系统一天死机n回就不足为奇了。所以,CPU将指令分为特权指令和非特权指令,对于那些危险的指令,只允许操作系统及其相关模块使用,普通的应用程序只能使用那些不会造成灾难的指令。Intel的CPU将特权级别分为4个级别:RING0,RING1,RING2,RING3

2017-05-08 10:39:20 634

原创 激光SLAM导航系列(四)全局路径规划

全局路径规划简介 机器人移动到目的地需要在做出具体移动策略之前先进行全局路径规划,ROS的navigation中使用global_planner包提供的一系列全局规划的算法接口(包括A*,Dijkstra)。 在本文中我们主要使用A*算法来进行全局路径规划。 A算法* A*(A-Star)算法是一种静态路网中求解最短路径最有效的直接搜索方法,也是解决许多搜索问题的有效算法。算法中的距

2017-05-08 09:25:39 7493 1

转载 IP协议详解

协议森林 我尽力 (IP协议详解)作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!在粗略了解了IP接力和IP地址后,我们再反过来,看一看IP协议的具体细节和设计哲学。IPv4与IPv6头部的对比我们已经在IP接力中介绍过,一个IP包分为头部(header)和数据(payload/data)两部分。头部是为了实现IP通信必须的附加信息

2017-05-07 23:30:34 335

原创 开始写个纸牌游戏(服务端&客户端)

一直有这个想法好久,和同学打了几年LOL,实在打厌烦了。但有时无聊又没又什么好玩的联机游戏,而且最近实在太忙,需要一些快餐式游戏,就想到了平时常常在图书馆前玩的七王五二三,本想网上搜个这个游戏直接来玩起,无奈搜了大半天也没找到这个纸牌游戏,那好,就自己来写吧。 先想下怎么设计,想了半天什么多线程多进程,发现这游戏就是按玩家顺序轮流来的,感觉就最简单阻塞同步就好了。 下面记录下设计思路,全是草图。

2017-05-07 23:22:46 1967 1

原创 激光SLAM导航系列(三)Costmap(代价地图)(下)

costmap程序架构 接上一期,通过阅读indigo版本的costmap源码包,简单整理了下costmap的程序架构。 在move_base刚启动时就建立了两个costmap,而这两个costmap都加载了三个Layer插件,它们的初始化过程如上图所示。 StaticLayer主要为处理gmapping或者amcl等产生的静态地图。 ObstacLayer主要处理机器人移动过程

2017-05-06 16:17:06 6418 1

原创 激光SLAM导航系列(三)Costmap(代价地图)(上)

Costmap(代价地图)(上) Costmap是机器人收集传感器信息建立和更新的二维或三维地图,可以从下图简要了解。 上图中,红色部分代表costmap中的障碍物,蓝色部分表示通过机器人内切圆半径膨胀出的障碍,红色多边形是footprint(机器人轮廓的垂直投影)。为了避免碰撞,footprint不应该和红色部分有交叉,机器人中心不应该与蓝色部分有交叉。 ROS的代价地图(cos

2017-05-04 19:13:30 16272 3

原创 激光SLAM导航系列(二)SLAM与导航系统框架

激光SLAM系统框架在激光SLAM系统中,Gmapping获取扫描的激光雷达信息以及里程计数据可动态的生成2D栅格地图。导航包则利用这个栅格地图,里程计数据和激光雷达数据做出适合的路径规划和定位,最后转换为机器人的速度指令。

2017-05-04 10:12:55 16989

原创 激光SLAM导航系列(一)SLAM与导航基本原理

激光SLAM基本原理基本原理

2017-05-04 10:01:47 64282

原创 激光SLAM系列之启程

现在开始陆续更新最近在ROS下利用激光雷达进行SLAM建图,并用ROS提供的move_base和amcl等包进行导航的研究。主要是对SLAM和导航的源代码的剖析,以及一些平时调试的心得和案例。^  ^

2017-05-03 23:02:38 1963

翻译 条件变量pthread_cond_signal、pthread_cond_wait

pthread_cond_signal函数的作用是发送一个信号给另外一个正在处于阻塞等待状态的线程,使其脱离阻塞状态,继续执行.如果没有线程处在阻塞等待状态,pthread_cond_signal也会成功返回。但使用pthread_cond_signal不会有“惊群现象”产生,他最多只给一个线程发信号。假如有多个线程正在阻塞等待着这个条件变量的话,那么是根据各等待线程优先级的高低确定哪个线

2017-05-03 15:45:44 802

空空如也

空空如也

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

TA关注的人

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