- 博客(101)
- 收藏
- 关注
转载 Naiad:一张图搞定SDF的概念
SDF:Signed Distance Field,译为有向距离场,“有向”、“距离”、“场”这三个词非常精确的描述了sdf究竟是个什么东西。GPU Gems 3中是这么描述sdf的:“SDF是由到(多边形模型)物体表面最近距离的采样网格。作为惯例,使用负值来表示物体内部,使用正值表示物体外部。SDF理念对于图形图像及相关领域具有很大的诱惑力。它经常被用于布料动画碰撞检测、多物体动力学
2016-05-27 15:16:45
1302
转载 Ioc模式(又称DI:Dependency Injection 依赖注射)
分离关注( Separation of Concerns : SOC)是Ioc模式和AOP产生最原始动力,通过功能分解可得到关注点,这些关注可以是 组件Components, 方面Aspects或服务Services。 从GoF设计模式中,我们已经习惯一种思维编程方式:Interface Driven Design 接口驱动,接口驱动有很多好处,可以提供不同灵活的子类实现,增加代码稳定和
2012-04-13 20:57:26
703
转载 Telnet协议详解
1. 概述Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议。Telnet协议的目的是提供一个相对通用的,双向的,面向八位字节的通信方法,允许界面终端设备和面向终端的过程能通过一个标准过程进行互相交互。应用Telnet协议能够把本地用户所使用的计算机变成远程主机系统的一个终端。Telnet协议具有如下的特点:1. 适应异构 为了使多个操作系统间
2012-04-09 14:21:55
1008
转载 Cross compiling wxDFB-2.8.11 for ARM-Linux
Without GUI, cross compilation of wxWidgets is pretty easy. However it does not provide wxImage. With DirectFB, a lot of errors produce, just like many cross compilations. What you need are zlib-1.2.5
2011-12-28 11:07:35
1689
转载 /etc/sysctl.conf 优化
/etc/sysctl.conf 优化The sysctl.conf of a server is something that is seldom optimized for performance. You can get a tremendous boost in throughput by adjusting these settings. This configuration
2011-12-16 14:58:16
582
原创 Linux 内存机制
一、内存使用说明Free 命令相对于top 提供了更简洁的查看系统内存使用情况:[root@rac1~]# free total used free shared buffers cachedMem: 1035108 1008984 26124 0 124212 413000-/+
2011-12-07 15:37:49
534
转载 LINUX释放CACHE内存
我们用free命令查看系统内存使用情况的时候会发现:#free -m total used free shared buffers cachedMem: 24359 11240 13119 0 0 10706
2011-12-07 15:30:14
937
转载 uboot 环境变量配置fb及双屏显示(vga、lcd)
上周公司终于拿到了freescale i.MX53的QSB板,经过一些折腾之后终于在上面把android跑起来了,按照所给的user guide测试了一下VGA、HDMI等,一切正常,但是都是单独显示的,和公司要开发的车载产品有很大距离,公司要开发的产品的大概要求是:1、支持前后台显示(前台lcd显示由司机操作、后台TV输出供乘客观看电影及地图导航显示)2、7.1声道,同时解码两路audi
2011-11-25 10:34:29
5458
转载 udev详解
原文出处 http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev-FAQ中文翻译 王旭 http://gnawux.blogchina.com本文档遵循 GPL 2 及以后版本发布,修改、发布请保持许可证不变问: udev是什么? 它的目的何在?答: 看看那篇 OLS 2003 上的有关 udev 的文章吧,可以在
2011-11-02 14:44:49
885
转载 防止内存泄露 Linux下用Valgrind做检查
用C/C++开发其中最令人头疼的一个问题就是内存管理,有时候为了查找一个内存泄漏或者一个内存访问越界,需要要花上好几天时间,如果有一款工具能够帮助我们做这件事情就好了,valgrind正好就是这样的一款工具。Valgrind是一款基于模拟linux下的程序调试器和剖析器的软件套件,可以运行于x86, amd64和ppc32架构上。valgrind包含一个核心,它提供一个虚拟的CPU运行程序
2011-10-26 10:06:09
477
转载 搭建ubuntu的deb仓库
最近在做一个项目要用搭建一个我们自己的ubuntu的源更新仓库。于是查找了一些debian和ubuntu的一些资料。并根据理解搭建了一个自己的DEB仓库。 ubuntu的更新源仓库主要是根据目录结构以及一些index contents 以及relase来进行分析的。
2011-10-12 16:59:30
1332
原创 构建交叉编译器的工具—Ptxdist
今天,参考着KARIM YAGHMOUR的书《构建嵌入式Linux系统》,安装了自动化工具链构建工具:Ptxdist.步骤如下:1. 安装Ptxdist (在这之前已经参考该书建议的目录方式,在我自己的用户目录下面,新建了一个名为“my-first-linux-s
2011-08-30 16:20:30
2158
原创 ICE在Linux下的完整编译安装
首先 安装第三方包: ThirdParty-Sources-3.3.0.tar.gz 解压 ThirdParty-Sources-3.3.0.tar.gz $ cd ThirdParty-Sources-3.3.01)mcpp is a C/C++ preproc
2011-08-24 09:18:28
1619
原创 Linux 下 MySQL 5.5.8 源码编译安装记录
mysql源码文件:mysql-5.5.8.tar.gz安装所需工具:cmake, GNU make, gcc, Perl, libncurses5-dev, bison(可选), chkconfig注:1.官方2010-11-18的源码有几处
2011-08-11 11:35:32
792
转载 mysql-5.5.14安装笔记
由于新的mysql-5.5和以前版本相比,有了很多更新和改进,今天抽时间安装了一下新版的mysql。一下是安装笔记。下载相关软件:新版mysql:http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.14.tar.gz
2011-08-11 11:21:41
708
转载 MySQL 5.5.11 CMake 安装
mysql 最新的版本都需要cmake编译安装,估计以后的版本也会采用这种方式,所以特地记录一下安装步骤及过程,以供参考。一. 用 wget 下载需要的软件,保存到目录 /usr/local/src/ 下wget http://dev.mysql.com/get/
2011-08-11 11:15:24
657
转载 左值和右值
Lvalues and Rvalues左值和右值 Well have more to say about expressions in Chapter 5, but for now it is useful to know that there are two kinds of expressions in C++:我们在第五章再详细探讨表达式,现在先介绍 C++ 的
2011-06-22 23:03:00
598
转载 getopt的用法
<br /><br />getopt被用来解析命令行选项参数。就不用自己写东东处理argv了。<br />#include <unistd.h><br /> extern char *optarg; //选项的参数指针<br /> extern int optind, //下一次调用getopt的时,从optind存储的位置处重新开始检查选项。 <br /> extern int opterr, //当opterr=0时,getopt不向stderr输出错误信息。
2011-04-02 14:45:00
401
转载 控制反转(Ioc)的设计原则
<br />控制反转(Ioc)的设计原则<br /> --减轻组件间的依赖性及藕合性的设计原则<br /> 作者:Make 创建日期:2005-07-24<br /><br />导读<br />1.缘由<b
2011-03-21 09:36:00
668
转载 分布式消息系统spread的安装和使用
<br /><br />如果你还不了解诶spread系统,请参考分布式开源消息系统spread toolkit<br />分布式开源系统的下载:http://www.spread.org/download.html<br />下载最新的Download Spread 4.0 source. 源代码就可以了。<br />spread安装过程相对非常简单:tar -xvzf spread-src-4.0.0.tar.gz<br />cd spread-src-4.0.0<br />./configure<br
2011-03-18 11:33:00
4985
2
转载 分布式数据库中数据同步
<br /><br />分布式数据库系统已不为大家陌生。该方案中描述了一个典型的分布式数据库系统,主要由几个部分组成: 数据中心、远程数据库、远程数据库与数据中心之间的数据交换。<br /><br />从运行状态来看,分布式数据库系统又可分为“常连接”和“偶连接”两大类。顾名思义,“常连接”状态下的分布式数据库系统是指数据中心与远程数据库长期保持连通状态的部署环境。一般来说,这种系统对数据的实时性要求高,需要在实时或者近乎实时(比如秒级)的条件下保持数据中心与远程数据库的数据一致性。例如,全国铁路客票系统采
2011-03-18 10:55:00
2174
原创 ARM体系下浮点数Middle-Endian问题的处理
<br /><br /> 随着嵌入式微处理器芯片性能的日益提高,嵌入式设备也得到了广泛的应用。随着应用的扩展,嵌入式软件开发也呈现出功能多样化、平台多样化、体系结构多样化的特点。<br /> 由于可移植性好,相当一部分嵌入式软件都是用C/C++语言开发的,而C/C++语言编写的程序中数据存储字节顺序是与编译平台所用的CPU相关的,所以嵌入式软件移植过程中,数据存储字节顺序是需要重点处理的地方。<br /> 在嵌入式GIS软件从x86体系结构下移植到ARM体系结构的过程中,遇到了浮点数
2011-03-08 16:55:00
924
转载 Protocol Buffers的应用与分析
1 Protocol Buffers的介绍Protocol Buffers是一种用于序列化结构化数据的机制,它具有灵活、高效、自动化的特点。类似于XML,但是比XML更小巧、快捷、简单。在Google 几乎所有它内部的RPC协议和文件格式都是采用PB。PB具有以下特点:平台无关、语言无关高性能 比XML块20-100倍体积小 比XML小3-10倍使用简单兼容性好在这里,我做了个小实验,将一个29230KB的自定义格式的文本数据转换成PB和XML: PBXML转换后的大小21011KB43202KB解析时
2011-03-07 20:51:00
826
原创 Navit学习笔记(五)
<br />上一篇《Navit学习笔记(四)》主要讲述了Navit的目录结构,并对根目录下的configure.in、Makefile.am、Makefile.inc三个主要的工程文件做了简要的分析和说明。这在一片中我们继续解析和说明Navit的工程文件。在Navit工程的源代码目录(navit/navit)中有Makefile.am文件.文件的首行包含了根目录下的Makefile.inc文件include $(top_srcdir)/Makefile.inc<br /> 接着声明包含的子目录fib-
2011-03-03 21:33:00
2044
1
转载 Navit学习笔记(四)
<br /><br />本文阐述Navit的Makefile工程文件的定义,主要目的是理顺整个Navit项目的框架。Navit 项目的层级结构如下(图中没有将Navit所有的目录列出):navit(根目录,一级目录)<br />....intl<br />....man<br />....navit(源代码,二级目录)<br />........android<br />........autoload<br />........binding<br />........fib-1.1<br />.....
2011-03-03 21:30:00
3340
转载 Navit学习笔记(三)
<br /><br />通过Navit学习笔记(一)、Navit学习笔记(二)的介绍,我们已经对Navit有了初步的认识。Navit是学习导航程序开发很好的例子,从本文开始,我们对Navit的源代码做简要的分析,以求学习和提高。<br /> navit的内核包括:<br /> 1、一个设置地图对象<br /> 2、一个或多个车辆<br /> 3、一套用于地图解析的图像对象<br /> 4、一个用于显示的GUI对象<br /> 5、一个路经对象<br /> 6、一个导航对象<br /> ...
2011-03-03 21:23:00
1744
转载 Navit学习笔记(二)
<br /><br />上一篇《Navit学习笔记(一)》主要简要阐述了Navit的一些特征,怎样下载源代码、怎样在Unbuntu 10.04下进行安装的准备并进行默认安装。因为Navit是模块化设计的,根据安装平台的不同需求对其进行配置。本文的主要目的是讲述Navit的配置问题。<br /> Navit的设置是通过编辑navit.xml文件实现的。当登入Navit是,程序会加载navit.xml文件设置程序。如果是SVN获取的源代码navit.xml文件在主目录下,如果是安装程序,配置文件在/usr/s
2011-03-03 21:21:00
2378
转载 Navit学习笔记(一)
<br /><br />Navit 是一个夸平台的(Linux、Windows和其他编写移动设别)平台下的开源的车辆导航软件。它支持触摸屏并能够根据GPS数据在地图上显示车辆当前的位置,能够为车辆提供路径规划,同时通过插件系统轻松的支持并扩展地图的POI服务。不同于其他的导航系统,Navit 地图能够根据向量数据实时的动态产生。Navit 的模块化设计使他能够使用不同的地图格式,甚至能够在同一时间使用不同格式的地图。GTK+或者SDL的GUI设计能够很好的支持触摸屏。车辆的当前位置信息可以从gpsd、gyp
2011-03-03 21:20:00
1696
1
转载 MPICH 学习笔记
<br /><br />1. OpenMP or MPI?<br />从wiki上看,在集群上MPI比OpenMP更成熟,高效。<br />MPI: http://en.wikipedia.org/wiki/Message_Passing_Interface<br />Pros and Cons of MPI & OpenMP: http://en.wikipedia.org/wiki/Comparison_of_MPI,_OpenMP,_and_Stream_Processing<br />2. MP
2011-03-01 11:53:00
1218
转载 面向对象编程(OOP)、面向组件编程(COP)、面向方面编程(AOP)和面向服务编程(SOP)
<br />1、什么是面向对象编程(Object-Oriented Programming)? <br />面向对象编程(Object-Oriented Programming)简称OOP技术,是开发计算机应用程序的一种新方法、新思想。过去的面向过程编程常常会导致所有的代码都包含在几个模块中,使程序难以阅读和维护。在做一些修改时常常牵一动百,使以后的开发和维护难以为继。而使用OOP技术,常常要使用许多代码模块,每个模块都只提供特定的功能,它们是彼此独立的,这样就增大了代码重用的几率,更加有利于软件的开发、维
2011-02-27 10:27:00
1851
转载 修改开源xlslib使得支持输出UTF8中文Excel文件不乱码
<br /><br />http://xlslib.sourceforge.net<br /><br />修改开源xlslib使得支持输出UTF8中文Excel文件内容不乱码。<br />在Ubuntu 64位环境下测试通过。<br />希望大家支持。/** 在xlslib/src/sheetrec.h中增加如下代码*/cell_t* label(int code, unsigned16_t row, unsigned16_t col, const std::ustring& strlabel, xf_t*
2011-02-26 21:47:00
6184
1
转载 xlslib和libxls
<br />这2个是gnu的项目,我把它们修改下并且结合在一起作数据处理。<br />注意:<br />编译程序前现设好库和头文件 做好相应的连接<br />libxls 0.20 版本<br />test.c 载入xls文件 输出txt文件 输入内容和输入内容都写在程序中<br />sudo gcc test.c -o test -I /usr/include/libxls/ -L /usr/lib/libxls -lxlsreader<br /><br />xlslib-1.0 使用的是 1.0版
2011-02-26 21:45:00
7958
转载 一个Linux/Unix下的excel库“xlslib”的使用及其简单封装
<br /> 下载地址:<br />http://xlslib.sourceforge.net/<br /><br />简单封装的类:Excel.h#ifndef Excel_h__#define Excel_h__#include <vector>using namespace std;#include <xlslib.h>#include <extformat.h>using namespace xlslib_core;///Excel文件操作类class CExcel{public: CExce
2011-02-26 21:05:00
3613
转载 Web QQ 原理,ajax方式模拟socket编程
<br />技术参考文档:<br />http://www.javaeye.com/topic/28020<br />http://www.pushlets.com/<br />http://www.meebo.com/[成功案例]<br />更新请在搜索引擎里查找”服务器推技术”关键字<br />之前有写过一篇文章,是描述如何用轮询的方式实现用ajax方式模拟socket编程的。轮询有很多缺点。服务器的负载性能是最关键的问题。之后我有想过很多办法来实现。自己实现过一个http长连接的方式做的系统。实现很复
2011-02-21 22:33:00
2174
转载 什么时候该采用结对编程?
<br /><br />编者按:原文作者Andriy Solovey从事软件开发已有15年,做过开发人员、软件经理和系统架构师。关注构建优质、可靠和可用的软件。<br /><br />结对编程是构建软件系统的一种有效方法。采用结对编程,带来的显著效益:更好的想法——持续不断的头脑风暴、更大的知识库、在理解上有更少的差异、有更多的脑力解决设计问题;更好的质量——更少的漏洞、想法的即时认证、始终如一的方法并更加遵守团队会议中的要求;更全面的认识——经验共享与知识共享、对于为什么做、怎么做和做什么有更深入的理解;
2011-02-21 21:33:00
529
转载 关于 linux 内核 2.6 的模块编 译问题
<br />关于 linux 内核 2.6 的模块编 译问题<br />(以 unbutu7.04 为例)<br /> 在参考 http://www.xiyoulinux.cn 关于 linux 内核时,由于在内核模块编译时需要编写 Makefile 文<br />件,其基本格式如下:<br />obj-m := hello.o<br />KERNELDIR := /usr/src/kernels/linux-2.6.24/<br />modules:<br /> $(MAKE) -C
2011-02-18 15:35:00
595
转载 Linux内核驱动模块编写(Hello,World)
我觉得自己的目标很混乱,总是看这个又看那个.虽说这个习惯不好,可是也增加了许多见识.今天尝试编写内核模块,写了一个hello,world,结果弄了1个小时。主要参考了网上的人的说明,结果发现尽信书不如无书,很多人说的都不是很仔细,我觉得这对于初学者来说,很不好。大家贴出来的东西,不仅仅给自己也是给别人,所以有时候一定要严谨,否则很可能误导别人。首先贴出代码 1// 这两个头文件包含相应宏定义 2#include 3#include 4// 告知内核,这是free模块 5MODULE_LICENSE("
2011-02-18 15:02:00
1452
转载 minigui移植
<br /><br />最近移植了 MiniGUI 1.3.3 到一个开发板上,中间遇到许多问题,在论坛上发问题,结果也没多少人回我,就算偶尔有回的,基本上回答也没有什么用,网上找不到一个完整的移植文章,所以 就决定把自己这次移植摸出来的一些方法写出来,给像我一样的小菜鸟做个参考吧。本文不教你怎么写驱动,只是教怎么样在最短的时候在你的PC机上搭建起开发 环境,同时在你的板子上跑起MiniGUI 来,这样你就可以在PC上开发好程序,调试完毕,然后交叉编译一下,直接Copy到板子上就可以了。<br /><br
2011-01-30 17:18:00
640
转载 使用apt-mirror构建本地Debian镜像
<br /><br />本教程将为你演示如何使用apt-mirror这个工具为本地网络建立一个Debian/Ubuntu镜像。因为假如你要为本地多台Ubuntu或者Debian机器安装或者升级,先在本地网络上建好一个镜像是非常有必要的,因为这样将大大的节省你的网络带宽。<br />This tutorial shows how to create a Debian/Ubuntu mirror for your local network with the tool apt-mirror. Having a
2011-01-27 11:26:00
1561
转载 使用apt-mirror建立本地ubuntu仓库源
<br />首先,我们要安装apt-mirror<br />$sudo apt-get install apt-mirror<br /><br />假设我们将镜像等文件放在 /service/ubuntu文件夹下:<br /><br />请事先新建以下文件夹(mirror.list里面提示要我们事先新建文件夹的):<br /><br />/service/ubuntu<br />/service/ubuntu/mirror<br />/service/ubuntu/skel<br />/service/ub
2011-01-27 11:23:00
1003
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人