. .

Archive for the ‘Computer Technology’ Category

errno=4 : Interrupted System call

Tuesday, June 3rd, 2008

 connect, accept, send, and recv  often cause “Interrupted System call” error when you are writting socket programs
you can solve this problem using:
/* Start with fd just returned by socket(), blocking, SOCK_STREAM… */
while ( connect (fd, &name, namelen) == -1 && errno != EISCONN )
if ( errno != EINTR )
[…]

gSOAP Tutorial : Part I

Friday, May 30th, 2008

Introduction:
The gSOAP toolkit provides a SOAP/XML-to-C/C++ language binding to ease the development of SOAP/XML Web services and client application in C and C++.The gSOAP uses stub and skeleton compiler to map C or C++ types ( both build-in types and user-defined types) into XML data types. It’ s a open source toolkit and can be […]

Linux 下的Chm 文件阅读器

Thursday, May 29th, 2008

网络上流传的很多文档,包括一些电子书,采用的是微软的chm格式打包,无法直接在linux下阅读,虽然目前有一些工具如 chmsee , xchm 提供了不错的阅读chm文件的方法,不过它们的安装过程实在是麻烦(主要是各种库的依赖性,往往是装了这个库又依赖那个,真是头大)。还好最近发现了一个 firefox 下阅读 chm 文件的插件,好用的不得了。具体安装过程参考:http://www.info-life.cn/2008/05/chm-viewer-for-linux-chm-reader.html

给linux添加新硬盘的经过

Tuesday, May 20th, 2008

网络上搜索到的一篇linux 添加硬盘的记录。

 

 

最近又出了不少新网络游戏,游戏更新服务器空间不足了。于是就想要给服务器上再加一块新硬盘。
游戏服务器是mandrake2005的系统,原来装有一块160G的硬盘,准备再加一块80G的。
拿到新盘以后就关机、插线、重开机。一切正常。
进入系统以后,查看 /dev下多了个 hdb,然后开始分区
执行  fdisk /dev/hdb
进入 fdisk的界面,打命令 n新建一个分区。
然后提示选择e(扩展分区)或p(主分区),这时输入了e创建扩展分区。
然后提示让输入分区编号(1-4),输入了1
接下来按提示输入起始扇区号和结束扇区号,由于只打算分一个区,都选择了默认值
最后输入命令 w 保存退出。
程式出现以下提示
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
这样分区就完成了。
接下来格式化分区:
执行 mkfs.ext3 /dev/hdb1
预料中应该是出现格式化的过程,结果确是提示 /dev/hdb1: Invalid argument passed to ext2 library while setting up superblock
以为是分区还没有加载上,重启机子后重新执行格式化命令,问题依旧。
fdisk -l /dev/hdb 查看,分区hdb1已正常存在。
百度里搜索此提示,发现有不少人碰到同样的问题,确都没有给了解决方案。
无奈之下去google搜索英文网站,找了几个同样的问题,半读半猜之后看到了解决办法。
删掉刚刚划分出来的分区,然后重新分区,并在选择e(扩展分区)还是p(主分区)的时候选择了创建主分区,然后依次执行,顺利分完区。
接下来再次执行格式划命令 mkfs.ext3 /dev/hdb1
此时程式顺利进入格式化界面,开始格式化。
经过二十多分钟的漫长等待,格式化终于完成.问题解决!
接下来挂载新加的硬盘分区:
原来服务器存放游戏的目录结构为: update目下有个game目录,里面放着任何网络游戏,update做samba共享,管理员用户能够读写删,同时将game目录做samba共享,可匿名访问,只有读和执行权限。
此时在update目录下新建了game2目录: mkdir /update/game2
然后将新添加的硬盘分区挂载到此目录 mount /dev/hdb1 /update/game2
然后修改samba的配置文档,将game2目录也共享出来,设为和game同样权限,可匿名访问,可读、执行。
service smb restart 重启samba共享服务
至此服务器扩容成功。
为了以后每次重启服务器后不用再手工挂载新加的分区,还要再修改/etc/fstab文档,让系统启动时自动挂载。
vi /etc/fstab
在文档末尾添加一行 /dev/hdb1 /update/game2 ext3 default 1 2
保存退出。
至此任何工作全部完成。

Chm viewer for linux: Chm Reader

Tuesday, May 20th, 2008

Today I found a wonderful firefox add-on for reading *.chm files: Chm Reader.
with this add-on, You can get rid of library dependence problem faced when installing xchm or chmsee( that really make me crazy).
you can download the latest version of Chm Reader here:
https://addons.mozilla.org/zh-CN/firefox/addon/3235

click the installtion button on the above link, the firefox will guide you […]

C++ dlopen mini HOWTO

Thursday, May 15th, 2008

C++ dlopen mini HOWTO
Aaron Isotton
<aaron@isotton.com>
$Id: C++-dlopen-mini-HOWTO.xml,v 1.15 2002/12/08 22:16:10 aisotton Exp $
2002-06-30Revision History
Revision 1.02 2002-12-08 Revised by: AI
Added FAQ. Minor changes
Revision 1.01 2002-06-30 Revised by: AI
Updated virtual destructor explanation. Minor changes.
Revision 1.00 2002-06-19 Revised by: AI
Moved copyright and license section to the beginning. Added terms section. Minor changes.
Revision 0.97 2002-06-19 Revised by: JYG
Entered minor grammar and sentence level changes.
Revision 0.96 2002-06-12 Revised by: AI
Added bibliography. […]

Unicode/UTF-8的区别(转载)

Tuesday, May 13th, 2008

Unicode/UTF-8的区别
什么是 Unicode?
历史上, 有两个独立的, 创立单一字符集的尝试. 一个是国际标准化组织(ISO)的 ISO 10646 项目, 另一个是由(一开始大多是美国的)多语言软件制造商组成的协会组织的 Unicode 项目. 幸运的是, 1991年前后, 两个项目的参与者都认识到, 世界不需要两个不同的单一字符集. 它们合并双方的工作成果, 并为创立一个单一编码表而协同工作. 两个项目仍都存在并独立地公布各自的标准, 但 Unicode 协会和 ISO/IEC JTC1/SC2 都同意保持 Unicode 和 ISO 10646 标准的码表兼容, 并紧密地共同调整任何未来的扩展.
Unicode vs ISO 10646
Unicode 协会公布的 Unicode 标准 严密地包含了 ISO 10646-1 实现级别3的基本多语言面. 在两个标准里所有的字符都在相同的位置并且有相同的名字.
Unicode 标准额外定义了许多与字符有关的语义符号学, 一般而言是对于实现高质量的印刷出版系统的更好的参考. Unicode 详细说明了绘制某些语言(比如阿拉伯语)表达形式的算法, 处理双向文字(比如拉丁与希伯来文混合文字)的算法和 排序与字符串比较 所需的算法, 以及其他许多东西.
另一方面, ISO 10646 标准, 就象广为人知的 ISO 8859 […]

OpenSSL Command-Line HOWTO

Tuesday, April 29th, 2008

by Paul Heinlein
Initial publication: June 13, 2004
Most recent revision: August 8, 2007
The openssl application that ships with the OpenSSL libraries can perform a wide range of crypto operations. This HOWTO provides some cookbook-style recipes for using it.
Table of Contents
Introduction
How do I find out what OpenSSL version I’m running?
[…]

Easily Convert Decimal Numbers To Their Binary And BCD Formats

Thursday, April 10th, 2008

by Edmond Vinarub
Here’s a C/C++ program that converts decimal numbers ranging from 0 to 99,999 to binary and BCD formats. Using a simple algorithm in conjunction with pointer arithmetic and bitwise shifting increases the conversion speed without introducing excessive memory overhead and programming complexity.
When decimal numbers are within the range of 0 to 9, their […]

手把手教你把Vim改装成一个IDE编程环境(图文)

Saturday, March 15th, 2008

手把手教你把Vim改装成一个IDE编程环境(图文)

By:
吴垠

Date:
2007-09-07

Version:
0.5

Email:
lazy.fox.wu#gmail.com

Homepage:
http://blog.csdn.net/wooin

Copyright:
该文章版权由吴垠和他可爱的老婆小包子所有。可在非商业目的下任意传播和复制。对于商业目的下对本文的任何行为需经作者同意。
联系方式:lazy.fox.wu#gmail.com

1
写在前面

 
Linux 下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重要啊, 估计很多人就是卡在这个门槛上了, “工欲善其事, 必先利其器”嘛, 我想如果有一个很好用的IDE, 那些Linux牛人也会欢迎的. 这都是劳动人民的美好愿望罢了, 我今天教大家把gvim改装成一个简易IDE, 说它”简易”是界面上看起来”简易”, 但功能绝对不比一个好的IDE差, 该有的功能都有, 不该有的功能也有, 你就自己没事偷着乐吧, 下面我开始介绍今天的工作了.
本文会教你:
1.  中文帮助手册的安装
2.  vim编程常用命令
3.  语法高亮
4.  在程序中跳来跳去: Ctags 的使用
5.  教你高效地浏览源码 — 插件: TagList
6.  文件浏览器和窗口管理器 — 插件: WinManager
7.  Cscope 的使用
8.  QuickFix 窗口
9.  快速浏览和操作Buffer — 插件: MiniBufExplorer
10.  c/h文件间相互切换 — 插件: A
11. 在工程中查找 — 插件: Grep
12. 高亮的书签 — 插件: VisualMark
13. 自动补全
14. […]