- 博客(38)
- 收藏
- 关注
使用Terratec Cinergy T Stick+ DVB电视卡进行RTL-SDR实验时的几点注意事项
Terratec Cinergy T Stick+ 相关驱动仅在 kernel 3.7 及以上版本中并入了主干,使用之前版本内核的同学需要自行从 git://linuxtv.org/media_build.git 检出代码编译安装驱动模块,详情见 http://www.linuxtv.org/wiki/index.php/TerraTec_Cinergy_T_Stick%2B安装 rtl-...
2013-06-18 00:12:55 428
maven 中使用 eclipse compiler 代替 javac 做编译器
项目中用到 ANTLR 做语法解析,由于语法规则复杂,生成的 Parser 文件非常大(45k 行),用 javac 编译时直接出现 code too large (代码过长)错误无法正常处理。后来经过试验,发现 Eclipse Compiler 可以正常编译,因此考虑在 maven 中设置 Eclipse Compiler 为默认 java 编译器。在 pom.xml 中加入如下设置即可:...
2013-03-14 15:18:23 1761
对GNUCash进行的一点儿改进
当前版本的 GNUCash 在连接 MySQL 数据库时有个比较严重的字符编码问题:为了兼容 Unicode 字符,GNUCash 在 gnc_dbi_mysql_session_begin() 函数中主动执行 SET NAMES 'utf8' 语句设定 MySQL 连接字符编码为 UTF-8,但遗憾的是用来在连接故障时修复连接的 gnc_dbi_verify_conn() 函数并没有进行类似的操...
2012-11-27 00:40:20 604 1
修复GNUCash数据库中的乱码
GNUCash 是一款很好的记账软件,但在使用 MySQL 作为存储后端时,由于其对连接字符集的设置有漏洞,容易出现记账备注中的中文变乱码的情况。此时,可以在 MySQL 中执行如下 SQL 语句完成修复工作:update splits set memo=convert(binary(convert(memo using latin1)) using utf8) where char_l...
2012-11-18 01:56:12 385
在 Mele A2000 上运行 Archlinux ARM 版
本来以为 archlinuxarm.org 上有 Mele A100 的安装指南装起来会方便些,但实际操作过程中仍然踩了一些坑,这里记录一下备查。 我选择 Mele A2000 的原因就是因为有 SATA 口,使用最新的 U-boot 后有可能直接把根分区放在 SATA 盘上,这样比起根分区在 SD 卡或 USB2.0 硬盘启动要快很多。遗憾的是,archlinuxarm.org 上最新...
2012-10-28 02:39:32 420
google closure js压缩器编译为本地码可执行文件的尝试
最近 @定球呀球 抱怨说 google closure 作为 java 命令行应用启动速度暴慢,什么都不做运行一次也要 1s 多,有大量 js 文件要处理时为每个文件都运行一次是要死人的。想起 gcj 作为 gcc 的 java 前端是可以将 java 代码编译为本地码执行的,于是好奇地尝试了一把,过程如下,较为曲折…… 首先要 patch google closure 源码。由于 gc...
2012-07-22 21:26:31 134
Ubuntu 11.10 (Oneiric)上编译带utrace补丁的内核
首先准备linux内核编译环境:sudo apt-get install fakeroot build-essential crash kexec-tools makedumpfile kernel-wedge kernel-packagesudo apt-get build-dep linuxsudo apt-get install git-core libncurses5 lib...
2012-03-25 22:48:19 195
Alienware惊魂记
Alienware M17x R3已经到手很久了,本来配置的AMD Radeon HD 6990M是准备拿来玩GPGPU的。但由于Alienware坚持使用Muxed Graphics Switch(人工切换集/独显比较可靠),而Linux下的新版本AMD Catalyst驱动只支持Muxless Graphics Switch,使得这块卡在Linux下一直得不到很好的应用。如果能禁用集成...
2012-02-04 01:43:14 402
64位Ubuntu 11.10下安装PPStream
PPStream的Linux版本只出了i386架构的安装包,但由于64位Ubuntu 11.10的包划分有所变化,直接安装PPStream官方deb包会提示依赖问题。在我的机器上通过以下步骤可以成功安装PPStream:[*]安装32位支持库:[code="shell"]sudo apt-get install ia32-libs[/code][*]下载PPStream deb...
2012-01-29 11:15:22 147
原创 [zz] Optimizing TCP Socket Across Data Centers
原文链接:http://sna-projects.com/blog/2011/01/optimizing-tcp-socket-across-data-centers/ 一点评注:广域网中高延迟带宽积链路的基本优化方式就是增加 TCP 连接的确认窗口大小,确认窗口大小在 Linux 下直接对应于 socket send/recv buffer size 设置,大于 64 KB 的窗...
2011-01-20 11:20:36 115
原创 Intel Non-Commercial Software Download
http://software.intel.com/en-us/articles/non-commercial-software-download/ Product SuitesIntel® Parallel Studio XE 2011 for Linux* Includes Intel® C++ Composer XE, Intel® Fortran...
2010-12-25 22:06:14 201
ngx-lua更新 - ngx-lua Update
lua_package_path/cpath 现在支持默认路径展开了,和 LUA_PATH/CPATH 一样用“;;”代表默认路径,例如:lua_package_path '/tmp/?.lua;;/home/wxz/?.lua';新增了 ngx.log 日志接口,允许使用 NginX 日志级别,使日志输出更灵活;README 换成 markdown 格式了,在 github 上看起来更...
2010-09-04 00:58:38 353
baidu首页手写输入法交互数据格式
手写识别接口以 HTTP POST 方式访问 http://hw.baidu.com,Content-Type 为 application/x-www-form-urlencoded,POST body 中包含如下 2 个参数:type - 总是为 1;wd - 为手写笔划矢量数据,格式如下:每条矢量笔划数据都是形如 x1,y1,x2,y2,... 的坐标列表,其中 x 和 y 坐...
2010-08-18 22:38:30 167
ngx_lua模块进行web开发的常见问题解答
[list][*]如何获取HTTP请求头?直接在 ngx_lua 中访问 NginX 内置变量 ngx.var.http_HEADER 即可获得请求头 HEADER 的内容。对于常见的特殊头(Content-Type、Cookie 等),NginX 还使用了特殊的变量来独立保存,例如“Content-Type”头可以通过 ngx.var.content_type 变量取得。...
2010-08-05 23:54:39 247
通过lua-tcc内联c提升关键代码效率
tcc 是一个很有趣的小型 C 编译器,其最大的特点是可以实现即时编译 C 代码,无需产生中间文件即可生成 native code,且将内部功能全部作为库函数暴露出来,可以很方便地嵌入到自己的应用中。 目前有一些现成的 lua 模块可以将 tcc 引入到 lua 里,用其即时生成 C-function 供 lua 使用。其中 lua-tcc 是最简单的一个,但代码年代较久,需要进行...
2010-06-28 00:35:32 348
用ngx_lua实现简单的网页编码转换网关
借助 nginx proxy 模块我们可以给 ngx_lua 很方便地实现非阻塞 HTTP 客户端功能,即使用一个被 proxy 模块处理的内部 location 作为 HTTP client stub,然后通过 ngx_lua 中的 location.capture 接口调用它访问外部 URL。当然为了能解析外部域名,还需要指定 nginx 的 resolver 地址以开启 proxy 模块的域...
2010-06-27 23:41:29 297
ngx_lua 模块支持 subrequest 了!
ngx_lua 模块将 Lua 整合在 NginX 中,使用 Lua coroutine per request 机制实现无缝的 I/O 复用处理。受益于 Lua 解释器的极低开销和原生 coroutine 支持,用户代码仍然能以习惯的顺序方式编写,丝毫不会感受到 NginX I/O 复用结构的存在,同时又能享受到其天然的非阻塞大并发能力和非凡的速度。借助 agentzh 在 ngx_echo...
2010-06-24 23:58:24 257
原创 GAE上传时出现"EOF occurred in violation of protocol"错误的解决方法
用 appcfg.py update 上传 GAE 应用时现在可能会出现“EOF occurred in violation of protocol”错误,可以设置以下环境变量后解决:export HTTP_PROXY=http://google.cn:80export HTTPS_PROXY=http://google.cn:80 注意 HTTPS_PROXY 里设置的确实是 h...
2010-06-15 12:57:11 984
agentzh及maxim回答nginx模块开发一些问题的汇总
http://agentzh.org/misc/nginx/maxim-tut.txthttp://agentzh.org/misc/nginx/agentzh-tut.txt
2010-04-14 12:19:37 112
原创 rpmbuild时报告Package already exists: %package ...错误的可能原因
用 rpmbuild 编译一些老的 SRPM 或 tarball 时经常会报告 Package already exists: %package ... 错误而无法继续,通常其原因是这些包的 spec 文件中含有当前版本的 rpmbuild 无法识别或展开的宏定义,只要修改一下 spec 文件保证其中非标准的宏都有对应定义应该就能继续打包了。 ...
2010-02-05 10:56:49 1351
原创 Erlang DNS解析顺序问题
Erlang 的 DNS 解析方法有包括 file(读取 /etc/hosts 文件)、dns(Erlang 自己的 DNS 客户端)、native(调用外部程序 inet_gethost 用 libc 的 gethostbyname 函数解析域名) 在内的好几种方式,可以在 kernel inetrc 文件中以 {lookup, [...]} 形式指定多种 DNS 解析方法的应用顺序。在 ine...
2010-02-04 00:37:07 232
原创 SysV IPC 内核参数调整
SysV IPC 包括 Semaphore、Shared Memory 和 Message Queue 这 3 类进程间通信手段,虽然 POSIX.1-2001 实时接口标准规定了另一套提供相同手段但更一致化的接口(POSIX IPC),但 SysV IPC 仍然有相当数量的用户。通过调整一些内核参数,可以更改 SysV IPC 对数据的固有限制,相关参数对应的控制文件可在 /pr...
2010-01-13 10:34:37 473
原创 gcc中-pthread和-lpthread的区别
用gcc编译使用了POSIX thread的程序时通常需要加额外的选项,以便使用thread-safe的库及头文件,一些老的书里说直接增加链接选项 -lpthread 就可以了,像这样:gcc -c x.cgcc x.o -ox -lpthread 而gcc手册里则指出应该在编译和链接时都增加 -pthread 选项,像这样:gcc -pthread -c x.cgcc x.o...
2010-01-12 17:49:03 536
原创 复习Linux ELF共享库版本概念
soname for a shared library:lib<library name>.so.<major ver> fully-qualified soname for a shared library:<path>/lib<library name>.so.<major ver>...
2009-12-30 16:34:46 97
CentOS/RHEL上apache的诡异问题(都是浮云)
最近帮同事检查一个apache的问题,现象如下:原本配置了多个VirtualHost,DocumentRoot指向/var/www/下不同的子目录,都能正常工作。新加了一个VirtualHost,将DocumentRoot指向/home/aa/,重启apache后无法访问该VirtualHost下的内容,提示403 Forbidden,而此时访问原先的几个VirtualHost还是没有问...
2009-12-25 15:27:32 93
LD_PRELOAD对PHP extension失效的原因
最近写了一个主机健康检测和软负载均衡用的软件ZFOR(http://github.com/chaoslawful/zfor),可以通过LD_PRELOAD预载入的方式拦截系统的域名解析调用(gethostbyname、getaddrinfo等)。但发现对某些发行版的PHP CURL extension光加载zfor动态库没有用,还必须同时加载libcurl.so才能生效。 经过一番搜索...
2009-12-25 15:05:55 175
在 Xen 虚拟机下修改系统当前时间
Xen 虚拟机默认不允许不同的虚拟机使用不同的系统时间,因此所有虚拟机的系统时间都会同宿主机的系统时间严格同步,用 date 命令修改虚拟机系统时间时虽然提示成功但其实系统时间还是没变。若有独立修改 Xen 虚拟机的特殊需要,可以通过如下方法进行: 1. 在 Xen 虚拟机的 root 提示符下输入命令:echo 1 > /proc/sys/xen/independent_wal...
2009-12-09 17:24:20 382
Accessing EXT2/3 partition under Windows XP
After some googling I found several ways to do the job:1. Explore2fs [url]http://www.chrysocome.net/explore2fs[/url] Pros: Opensource; No installing needed Cons: Read only; Exporting file ...
2009-11-15 23:37:54 112
避免boost::shared_ptr管理的共享对象在其外被无意中删除
boost::shared_ptr(已进入C++ TR1标准)是管理共享对象的好帮手,但由于能用其get()方法获取原对象裸指针,因此存在其管理的对象被人为意外删除的危险。最近看boost相关资料时发现一些方法能避免该问题:方案1:使用包装类[code="c++"]class T {protected: ~T() {...}public: ....}...
2009-07-24 20:23:14 229
Erlang ETS/DETS性能评测
目的Erlang自带了名为ETS(Erlang Term Storage)的纯RAM存储系统,以及名为DETS(Disk-based Erlang Term Storage)的RAM/Disk混合存储系统。为了评价ETS/DETS的性能并和Memcached进行比较,需要进行本测试。 测试环境公司配发的笔记本,Intel Duo 1.8GHz(双核),1GB RAM,60G SATA HD...
2009-01-05 16:23:37 491
Erlang Port性能评测
目的评测调用外部程序的Erlang Port效率和内链的Erlang Port Driver效率。 方法使用相同的C函数库,接口方面使用Port和Port Driver两种形式,分别组织对应的Erlang端封装程序。循环调用C库中最简单的*2函数10w次,测量总花费时间。 评测结果Erlang Port程序总耗时5500ms,Erlang Port Driver程序总耗时356ms,...
2009-01-05 16:12:53 259
Erlang文件I/O性能评测
评测目的本测试主要目的是考察Erlang文件I/O同C标准I/O之间具体的性能差异。 预备知识Erlang中有普通文件I/O和裸文件I/O两类操作,其中普通文件I/O的文件句柄是一个进程ID,因此可以从Erlang节点网络的任意位置访问该句柄;而裸文件I/O的文件句柄是一个tuple结构,只在同一节点上打开该文件的进程内有效,无法跨进程跨节点访问。一般来说裸文件I/O速度要远高于普通文...
2009-01-05 15:58:41 256
带范围限制的 HTTP PUT 请求语法
HTTP PUT 请求可以给出数据要保存到目标文件的那个区域内,相当于在写入文件时指定了起始偏移量。写入的区域可以尚不存在,这时的行为同文件指针移动到超过尾部时一样,都是在中间形成一个空洞,对应的目标文件也就变成了一个稀疏文件。PUT 请求的区域范围是通过请求头中的 Content-Range 域来约束的,其简单的语法为:[quote]Content-Range: bytes [b][...
2009-01-05 15:32:02 1395
BlackBerry JDE的I/O Error: Invalid UTF-8错误原因
BlackBerry JDE编译程序时可能会出现I/O Error: Invalid UTF-8错误,一个原因是在Project的Properties设置中,Project Name/Version/Vendor等属性填写时使用了非UTF-8编码的字符串。由于Win32下默认的编码是GBK,因此若在JDE中编辑这些属性时用了中文,编译Project时就会出现这个错误。根本原因在于JDE用这...
2008-12-23 22:34:39 163
lighttpd 1.4.x简要分析
目前在进行lighttpd 1.4.x/1.5.x、nginx、cherokee和apache2的架构调研和比较,先上一个lighttpd 1.4.x分析的PPT,见附件。
2008-12-12 11:36:03 108
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人