posts - 864, comments - 185, trackbacks - 1, articles - 1
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

公告

03 2010 档案

摘要: linux系统下给命令指定别名alias命令用法: 在linux系统中如果命令太长又不符合用户的习惯,那么我们可以为它指定一个别名。虽然可以为命令建立“链接”解决长文件名的问题,但对于带命令行参数的命令,链接就无能为力了。而指定别名则可以解决此类所有问题。只要举一些例子就可以了: alias l='ls -l' ;用 l 代替 ls -l 命令(Xenix 下就有类似的 l 命令) alias c...阅读全文

posted @ 2010-03-31 17:06 feisky 阅读(7088) | 评论 (0) 编辑 |

摘要: pkg-config的使用  一、编译和连接         一般来说,如果库的头文件不在 /usr/include 目录中,那么在编译的时候需要用 -I 参数指定其路径。由于同一个库在不同系统上可能位于不同的目录下,用户安装库的时候也可以将库安装在不同的目录下,所以即使使用同一个库,由于库的路径的 不同,造成了用 -I 参数指定的头文件的路径也可能不同,其结果就是造成了编译命令界面的不...阅读全文

posted @ 2010-03-29 18:11 feisky 阅读(1664) | 评论 (0) 编辑 |

摘要: OpenCV在Linux下的编译安装(Ubuntu )  1、先安装相关的库:sudo apt-get install build-essential  sudo apt-get install libv4l-dev libv4l-0 libboost1.40-all-dev  libusb-1.0-0-dev libgtk2.0-dev libgsl0-dev  2、解压OpenCV2.0源码并...阅读全文

posted @ 2010-03-29 17:31 feisky 阅读(1657) | 评论 (0) 编辑 |

vim

摘要: 配置文件:.vimrc 下面是一个适合编程使用的VIM配置文件:  " User definitions ==========================================================set nocompatiblesource $VIMRUNTIME/vimrc_example.vimset nobackupset tags+=~/.tagsset nuse...阅读全文

posted @ 2010-03-28 17:27 feisky 阅读(145) | 评论 (0) 编辑 |

摘要: vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux, BSD, Solaris, HP-UX 以及 IRIX 上面。它支持很多其他的 FTP 服务器不支持的特征。比如: 非常高的安全性需求 带宽限制 良好的可伸缩性 创建虚拟用户的可能性 IPv6支持 中等偏上的性能 分配虚拟 IP 的可能性 高速vsftpd 的名字代表"very secu...阅读全文

posted @ 2010-03-25 19:51 feisky 阅读(1919) | 评论 (0) 编辑 |

摘要: sudo:如何设定/改变/启用 root 使用者的密码:sudo passwd root当你使用完毕后屏蔽 root 帐号 使用: sudo passwd -l root这个将锁住 root 帐号. 如何在终端机模式下切换到 root 身份: sudo -s -H 在线安装程序:sudo apt-get install g++pt-get最常用参数:update —-与你的软件源(在/etc/a...阅读全文

posted @ 2010-03-25 11:02 feisky 阅读(1244) | 评论 (0) 编辑 |

摘要: 信号量又称为信号灯,它是用来协调不同进程间的数据对象的,而最主要的应用是前一节的共享内存方式的进程间通信。本质上,信号量是一个计数器,它用来记录对某个资源(如共享内存)的存取状况。一般说来,为了获得共享资源,进程需要执行下列操作: (1) 测试控制该资源的信号量。 (2) 若此信号量的值为正,则允许进行使用该资源。进程将进号量减1。 (3) 若此信号量为0,则该资源目前不可用,进程进入睡眠状态,直...阅读全文

posted @ 2010-03-24 10:10 feisky 阅读(1387) | 评论 (0) 编辑 |

摘要: 共享内存是运行在同一台机器上的进程间通信最快的方式,因为数据不需要在不同的进程间复制。通常由一个进程创建一块共享内存区,其余进程对这块内存区进行读写。共享内存往往与其它通信机制,如信号量结合使用,来达到进程间的同步及互斥。 首先要用的函数是shmget,它获得一个共享存储标识符。 #i nclude <sys/types.h> #i nclude <sys/ipc.h> ...阅读全文

posted @ 2010-03-24 10:10 feisky 阅读(2136) | 评论 (1) 编辑 |

摘要: 消息队列是消息的链接表,包括Posix消息队列system V消息队列。消息队列用于运行于同一台机器上的进程间通信,它 和管道很相似,有足够权限的进程可以向队列中添加消息,被赋予读权限的进程则可以读走队列中的消息。消息队列克服了 信号承载信息量少,管道只能承载无格式字节流以及缓冲区大小受限等缺点。 我们可以用流管道或者套接口的方式来取代它。 查询系统消息队列:ipcs -q #include &...阅读全文

posted @ 2010-03-24 10:09 feisky 阅读(603) | 评论 (0) 编辑 |

摘要: Linux进程间通信机制: 1.同一主机进程间通信机制: Unix方式:有名管道FIFO、无名管道PIPE、信号Signal SystemV方式:信号量、消息队列、共享内存 2.网络通信:RPC(Remote Procedure Call)、Socket 管道 管道是进程间通信中最古老的方式,它包括无名管道和有名管道两种,前者可用于具有亲缘关系进程间的通信,即可用于父进程和子进程间的通信,后者...阅读全文

posted @ 2010-03-24 10:08 feisky 阅读(1342) | 评论 (0) 编辑 |

摘要: linux下进程间通信的几种主要手段简介: 管道(Pipe)及有名管道(named pipe):无名管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信; 信号(Signal):信号是比较复杂的通信方式,用于通知接受进程有某种事件发生,除了用于进程间通信外,进程还可以发送信号给进程本身;linux除了支持Unix早期...阅读全文

posted @ 2010-03-23 22:13 feisky 阅读(620) | 评论 (0) 编辑 |

摘要: MSYS:Minimal GNU(POSIX)system on Windows,是一个小型的GNU环境,包括基本的bash,make等等。是Windows下最优秀的GNU环境。(是否厌倦了Cygwin蜗牛般的shell环境,试试MSYS中的rxvt吧)   另: MinGW:即Minimalist GNU for Windows。它是一些头文件和函数库的集合,该集合允许人们在没有第三方动态链接库...阅读全文

posted @ 2010-03-23 15:26 feisky 阅读(4026) | 评论 (0) 编辑 |

摘要: 1. 到sun.com上下载JRE并安装: ./jre-6u3-linux-i586.bin 2. 到eclipse.com下载Eclipse并安装(只需要解压即可): tar zxvf eclipse-cpp-galileo-SR2-linux-gtk.tar.gz 3. 添加相关路径到系统环境变量 修改/etc/profile或者.bashrc都可: pathmunge /usr/ec...阅读全文

posted @ 2010-03-22 22:22 feisky 阅读(315) | 评论 (0) 编辑 |

摘要: 1. 根文件系统 文件系统是包括在一个磁盘(包括光盘、软盘、闪盘及其它存储设备)或分区的目录结构;一个可应用的磁盘设备可以包含一个或多个文件系统;如果您想进入一个文件系统,首先您要做的是挂载(mount)文件系统;为了挂载(mount)文件系统,您必须指定一个挂载点。 注:对于我们应用开发来说,购买开发板的时候,厂家会提供好现成的根文件系统和BootLoader等,如果需要,我们可以改变其中的命令...阅读全文

posted @ 2010-03-22 21:30 feisky 阅读(4988) | 评论 (0) 编辑 |

摘要: 1 Eclipse的安装 到http://java.sun.com/j2se/1.5.0/download.jsp 下载JRE安装; 到http://eclipse.org下载Eclipse安装。(这儿可以下载Java版本的,也可以下载C/C++ 版本的) 2 对于下载的Java版本或着只下载Eclipse IDE的,需要安装CDT。 在Eclipse菜单help里面,安装CDT,网址为http:...阅读全文

posted @ 2010-03-21 21:08 feisky 阅读(2866) | 评论 (0) 编辑 |

摘要: 在平凡枯燥简单的工作中,做无可取代的人 再烦:也别忘记微笑 再急:也要注意语气 再苦:也别忘坚持 再累:也要爱自己 低调做人;你会一次比一次稳健 高调做事;你会一次比一次优秀 成功的时候不要忘记过去 失败的时候不要忘记还有未来 有望得到的要努力;无望得到的不介意 无论输赢都要高姿态 生活不是单行线,一条路走不通,你可以转弯 泪水和汗水的成分相似;但前者只能为你换来同情。后者却可以为你赢得成功 变...阅读全文

posted @ 2010-03-20 23:03 feisky 阅读(436) | 评论 (0) 编辑 |

摘要: 使用定时器的目的无非是为了周期性的执行某一任务,或者是到了一个指定时间去执行某一个任务。要达到这一目的,一般有两个常见的比较有效的方法。一个是用linux内部的三个定时器,另一个是用sleep, usleep函数让进程睡眠一段时间,使用alarm定时发出一个信号,还有那就是用gettimeofday, difftime等自己来计算时间间隔,然后时间到了就执行某一任务,但是这种方法效率低,所以不常用...阅读全文

posted @ 2010-03-20 17:40 feisky 阅读(7416) | 评论 (0) 编辑 |

摘要: 由于本帖内容较多,部分转自他人的心得,因此,凡转贴的地方仅用“----转----”标注,原作者略去,在此对所有原作者表示感谢!特别说明:由于大家在 I/O 存取上以 txt 文件为主,且读取比存储更麻烦(存储的话 fwrite, fprintf 基本够用),因此下面的讨论主要集中在“txt 文件的读取”上。除了标注了“转”之外...阅读全文

posted @ 2010-03-20 09:34 feisky 阅读(1188) | 评论 (0) 编辑 |

摘要: WinCE6.0中开发MFC程序出现fatal error C1083: Cannot open include file: 'winnetwk.h'的解决方案:安装VS2005 SP1;在安装目录搜索winnetwk.h,得到其安装目录,一般在..\PUBLIC\COMMON\SDK\INC,将其添加到VC++的Include目录中,并将..\PUBLIC\COMMON\SDK\INC\LIB\...阅读全文

posted @ 2010-03-18 19:09 feisky 阅读(1493) | 评论 (0) 编辑 |

摘要: 首先在 Windows 7 上装 WinCE 6.0会出现如下问题: 1、ToolsMsmCA(Error): Setup package issue or CoreCon DataStore corrupted: CDeviceSDKInstallShim Add/Remove failed. HR=0x8007005。 2、ToolsMsmCA(Error): Setup package ...阅读全文

posted @ 2010-03-17 21:42 feisky 阅读(1602) | 评论 (0) 编辑 |

摘要: EDITBIN : fatal error LNK1104: cannot open file 'D:\WinCE\Code\WinCE6T\WinCE6T\Wince600\DeviceEmulator_ARMV4I\cesysgen\oak\target\ARMV4I\retail\msasn1.dll'的解决方法: 1 尝试在命令行下运行blddemo clean -q ,然后再重新编译生...阅读全文

posted @ 2010-03-17 21:38 feisky 阅读(841) | 评论 (0) 编辑 |

摘要: 1 Platform Builder 介绍 Platform Builder 是微软公司提供给Windows CE 开发人员进行基于Windows CE 平台下嵌入式操作系统定制的集成开发环境。它提供了所有进行设计、创建、编译、测试和调试Windows CE 操作系统平台的工具。它运行在桌面Windows 下,开发人员可以通过交互式的环境来设计和定制内核、选择系统特性,然后进行编译和调试。同时,开...阅读全文

posted @ 2010-03-16 13:21 feisky 阅读(2585) | 评论 (2) 编辑 |

摘要: DB 是 linux 系统上常用的调试工具,本文介绍了使用 GDB 调试多进程程序的几种方法,并对各种方法进行比较。 GDB 是 linux 系统上常用的 c/c++ 调试工具,功能十分强大。对于较为复杂的系统,比如多进程系统,如何使用 GDB 调试呢?考虑下面这个三进程系统: 进程 Proc2 是 Proc1 的子进程,Proc3 又是 Proc2 的子进程。如何使用 GDB 调试 proc...阅读全文

posted @ 2010-03-11 20:33 feisky 阅读(416) | 评论 (0) 编辑 |

摘要: GDB概述 1使用GDB GDB中运行UNIX的shell程序 在GDB中运行程序 2调试已运行的程序 两种方法: 3暂停 / 恢复程序运行 一、设置断点(BreakPoint) 二、设置观察点(WatchPoint) 三、设置捕捉点(CatchPoint) 四、维护停止点 五、停止条件维护 六、为停止点设定运行命令 七、断点菜单 八、恢复程序运行和单步调试 九、信号(Signals) 十、线程(...阅读全文

posted @ 2010-03-11 20:31 feisky 阅读(520) | 评论 (0) 编辑 |

摘要: An implementation of EKF-based SLAM with range-bearing sensors, odometry, a full 6D robot pose, and 3D landmarks. The main method is "processActionObservation" which processes pairs of action/observat...阅读全文

posted @ 2010-03-11 11:40 feisky 阅读(1631) | 评论 (0) 编辑 |

摘要: 'GNU cflow' analyzes a collection of C source files and prints a graph charting control flow within the program. It can produce both direct and inverted flowgraphs for C sources, or optionally generat...阅读全文

posted @ 2010-03-09 21:27 feisky 阅读(1240) | 评论 (0) 编辑 |

摘要: gprof介绍 gprof是GNU profiler工具。可以显示程序运行的“flat profile”,包括每个函数的调用次数,每个函数消耗的处理器时间。也可以显示“调用图”,包括函数的调用关系,每个函数调用花费了多少时间。还可以显示“注释的源代码”,是程序源代码的一个复本,标记有程序中每行代码的执行次数。 为gprof编译程序 在编译或链接源程序的时候在编译器的命令行参数中加入“-pg”选项,...阅读全文

posted @ 2010-03-09 21:26 feisky 阅读(1390) | 评论 (0) 编辑 |

摘要: 注:一直不知道原来还有工具来静态检查程序的正确与否,转载过来以备参考。 LINT工具是一种软件质量保证工具,许多国外的大型专业软件公司,如微软公司,都把它作为程序检查工具,在程序合入正试版本或交付测试之前一定要保证通过了LINT检查,他们要求软件工程师在使用LINT时要打开所有的编译开关,如果一定要关闭某些开关,那么要给出关闭这些开关的正当理由。  可想而知,如果从我们编码后第一次编译程序时就使...阅读全文

posted @ 2010-03-09 21:26 feisky 阅读(256) | 评论 (0) 编辑 |

摘要: 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行。库分静态库和动态库两种。 静态库和动态库的区别 1. 静态函数库 这类库的名字一般是libxxx.a;利用静态函数库编译成的文件比较大,因为整个 函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进去了。当然这也会成为他的缺点,因为如果静态函数库改变...阅读全文

posted @ 2010-03-09 21:25 feisky 阅读(10491) | 评论 (8) 编辑 |

摘要: 作者:王先荣 原文;http://www.cnblogs.com/xrwang/archive/2010/01/26/TheComparisonOfImageProcessingLibraries.html 前言 近期需要做一些图像处理方面的学习和研究,首要任务就是选择一套合适的图像处理类库。目前较知名且功能完善的图像处理类库有OpenCv、EmguCv、AForge.net等等。本文将从许可协议...阅读全文

posted @ 2010-03-08 22:12 feisky 阅读(1962) | 评论 (2) 编辑 |

摘要: 1. 特性: 一次只有一个线程可以占有写模式的读写锁, 但是可以有多个线程同时占有读模式的读写锁. 正是因为这个特性, 当读写锁是写加锁状态时, 在这个锁被解锁之前, 所有试图对这个锁加锁的线程都会被阻塞. 当读写锁在读加锁状态时, 所有试图以读模式对它进行加锁的线程都可以得到访问权, 但是如果线程希望以写模式对此锁进行加锁, 它必须阻塞知道所有的线程释放锁. 通常, 当读写锁处于读模式锁住状...阅读全文

posted @ 2010-03-08 17:18 feisky 阅读(1455) | 评论 (0) 编辑 |

摘要: 与互斥锁不同,条件变量是用来等待而不是用来上锁的。条件变量用来自动阻塞一个线程,直到某特殊情况发生为止。通常条件变量和互斥锁同时使用。 条件变量使我们可以睡眠等待某种条件出现。条件变量是利用线程间共享的全局变量进行同步的一种机制,主要包括两个动作:一个线程等待"条件变量的条件成立"而挂起;另一个线程使"条件成立"(给出条件成立信号)。 条件的检测是在互斥锁的保护下进行的。如果一个条件为假,一个线程...阅读全文

posted @ 2010-03-08 17:08 feisky 阅读(3719) | 评论 (0) 编辑 |

摘要: MFC支持两种类型的拆分窗口:静态的和动态的。 静态拆分窗口的行列数在拆分窗口被创建时就设置好了,用户不能更改。但是用户可以缩放各行各列。一个静态拆分窗口最多可以包含16行16列。 要找一个使用了静态拆分窗口的应用程序,只要看一下windows管理器即可。 动态拆分窗口最多可以有两行两列,但它们可以相互拆分和合并。Vc就使用了动态拆分窗口使得可以同时编辑源程序文件的两个以上不同的部分。 选择静...阅读全文

posted @ 2010-03-07 15:57 feisky 阅读(4732) | 评论 (2) 编辑 |

摘要: C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码 。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建 议,以进一步加强这方面的清单。添加:http://www.boost.org/1、http://snippets.dzone.com/tag/c/--数以千计...阅读全文

posted @ 2010-03-05 14:59 feisky 阅读(12873) | 评论 (5) 编辑 |

摘要: Version 0.8.0: Released 30-Dec-2009 (SVN 1398). Important changes: New minor version number due to a few incompatible changes in the API. The affected classes are: mrpt::bayes::CKalmanFilterCapable ...阅读全文

posted @ 2010-03-04 15:43 feisky 阅读(520) | 评论 (0) 编辑 |

无觅相关文章插件,快速提升流量