-
2009-04-11
Ubuntu 9.04 -- how many days to go - [软件与系统]
-
2008-12-31
编写bash脚本提高工作效率 - [软件与系统]
情况是这样的,通过电子学系统将探测器数据送到计算机,最终保存在一个文件中data.dat. 这个文件包含若干个通道的数据,每一个通道对应一个能谱。要做的工作就是从data.dat中分离出各个通道数据(demo.exe程序完成),分别进行描点绘出能谱,并保存在一个图像文件中供物理参考。如果用传统的origin导入文件、选择数据、设置参数、画图、导出图形,会做很多重复工作。我选择使用gnuplot程序进行绘图,尝试写了下面的脚本(work.... -
2008-11-29
Linux与windows远端桌面连接 - [软件与系统]
http://feizf.blogbus.com/files/12279499490.pdf
2008.11.29 by kissGNU@gmail.com
本文档主要包括四个部分:
(1) 在Windows XP下登陆远端Ubuntu桌面
(2) 在Ubuntu下登陆远端Ubuntu桌面
(3) 在Windows XP下登陆远端 Windo... -
2008-11-19
human-theme_0.14_all.deb on ubuntu 8.04 - [软件与系统]
在ubuntu 8.04 系统下载安装新软件时候出现下面错误信息:
dpkg:处理 /var/cache/apt/archives/human-theme_0.14_all.deb (--unpack)时出错:
正试图覆盖“/usr/share/applications/screensavers/ubuntu_theme.desktop”,它属于软件包 gnome-screensaver
在处理时有错误发生: ... -
2008-11-16
shellcode /bin/sh - [软件与系统]
Shellcode是一段注入到程序栈中二进制指令码,用于完成某些非法功能。下面是一个C程序,使用execve产生一个新的sh.
#include <stdio.h>
void myhacker()
{
char *pathname;
char *argv[2];
&nb... -
2008-10-27
ubuntu 8.04建立mysql C开发环境 - [编程]
安装mysql
kissgnu@kissgnu-desktop:~$ sudo apt-get install mysql-servel mysql-client
下载安装过程中,会提示输入root密码
重新启动mysql服务器:
kissgnu@kissgnu-desktop:~$ sudo /init.d/mysql restart
给普通用户授权操作数据库:
kissgnu@kissgnu-desk... -
2008-10-24
vmware6.0安装ubuntu 8.04的问题 - [软件与系统]
1. 在安装vmware工具包时遇到问题:
/tmp/vmware-config18/vmmemctl-only/compat_wait.h:37:5: warning: "VMW_HAVE_EPOLL" is not defined
/tmp/vmware-config18/vmmemctl-only/compat_wait.h:43:5: warning: "VMW_HAVE_EPOLL" is not defined
In ... -
2008-09-12
安装usb无线网卡DWL-G122 - [软件与系统]
DWL-G122 USB无线网卡厂商只提供了windows驱动程序,要想在Linux下使用,需要自己安装驱动。这就需要ndiswrapper. 那么ndiswrapper是什么呢?可以看这个项目的叙述:
Some vendors do not release specifications of the hardware or provide a linux driver for their wireless network cards. This pr... -
2008-07-06
ubuntu中配置nfs - [软件与系统]
http://hi.baidu.com/nfubuntu/blog/item/f2e23329981801ff98250a88.html
1.安装nfs服务器端和客户端
服务器端:sudo apt-get install portmap nfs-kernel-server
客户机端:sudo apt-get install portmap nfs-common
2.配置共享文件
编辑/etc/exports,在其中增加要共享的... -
2008-06-21
安装telnet/ssh和ftp服务 - [软件与系统]
一. 安装telnet服务器
1. sudo apt-get install xinetd telnetd
2. sudo vi /etc/xinetd.conf并加入以下内容:
# Simple configuration file for xinetd
#
# Some defaults, and include /etc/xinetd.d/
defaults
{
# Please note ... -
2008-04-22
一个简单的字符驱动例子学习 - [软件与系统]
1. Makefile的编写(参考Linux Device Driver的设备hello world 的makefile)obj-m := skull.o
KERNELDIR ?= /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
all:
$(MAKE) -C $(KERNELDIR) M=$(PWD)... -
2008-03-16
xmodem与kermit协议 - [其它]
今天用超级终端给at91rm9200板子下载boot-loader需要用到两种协议,一是xmodem,另一是kermit. 从网上找到一些介绍。
XMODEM协议
XMODEM协议是一种使用拨号调制解调器的个人计算机通信中广泛使用的异步文件运输协议。这种协议以128字节块的形式传输数据,并且每个块都使用一个校验和过程来进行错误检测。如果接收方关于一个块的校验和与它在发送方的校验和相同时,接收方就向发送方发送一个认可字节。然而,这种对每个块都进行认可的策... -
去年春天我用Qt3写了一个小软件,感觉Linux下用Qt作界面程序很方便,和Windows下的VC差不多. 所以上次ubuntu 7.10系统一安装好就将Qt3开发包安装上去。 这儿顺便把以前安装Qt3软件包貼出来.
#sudo apt-get install qt3-dev-tools qt3-examples python-qt3 qt3-designer qt3-assistant
现在Qt 的版本已经到... -
2007-10-14
Linux Weekend - [生活]
昨天去清华参加了AKA Linux内核大会,大会整体很好,从下午1点半一直开到6点半。人很多,我去的迟了坐在后面。一共有6个人做主题演讲,没听清楚两个老外说的什么,一个是ACPI,一个是video driver,很想找他们的ppt看一下。
终于见到ustc传说中的牛人吴师兄了,最新发布的Linux内核2.6.23中采用了他的预读readahead改进算法。他主要讲了新旧两种预读算法,可惜太专业了我没听明白新算法是怎么实现的,觉得看了他的代码之后再听才有效果。
陈莉君老师的 走入Linux内核 很适合内核初学者和打算进入Linux内核的人,讲的很辞恳,并且一再强调学习内核要有有毅力和培养信心,一些细节搞不明白就跳过,不要走进死胡同。
伍鹏讲了Linux内核社区的规则,举了他们公司blackfin怎样提交patch的例子,对那些想进... -
2007-10-09
Linux下读写速度测试 - [编程]
一. 文件一次读入速度
linux下读文件这东西最后都是要通过系统调用sys_read(fd,buf,count)来实现的,所以如果要提高速度,就是最简单地调用sys_read的封装,比如直接用read()或fread()。下面是我在linux下的几个测试。
首先创建一个130M数据文件 dd if=/dev/zero of=data bs=1024k count=130
分别用fread,read和fgets一次读入全部大小文件所消耗时间对比,... -
2007-09-08
ubuntu拨号上网 - [软件与系统]
ubuntu有内置的pppoe拨号软件, 手动添加PPPOE的方法如下:首先打开终端,输入命令:sudo pppoeconf
然后看到类似这样的配置窗口,一路进行下去就行了,中途有个地方提示您需要输入adsl用户名和密码。
以后,要手工拨号上网,打开终端,输入命令:sudo pon dsl-provider
一般情况下,一次拨通后以后登陆ubuntu都会自动拨通上网的了,不用每次都输入命令拨号。
如果没有自动连接,可能是您刚才的配置文件没有正确保存,那我们可以这样做:
打开/etc/ppp/peers/dsl-provider后,手工加了一行password ****的记录后,下次就自动连接了。
手工断线的命... -
2007-09-07
dell d630安装ubuntu 7.04 - [软件与系统]
新笔记本dell 630 装 ubuntu比较郁闷,主要问题出现在显卡驱动(NVidia quadro nvs 135m)上,让我折腾了很久。昨天看到了loudmouth网友用Live CD 7.04的安装方法,试了一下果然安装好了,现在用起来很爽.
摘录如下:
-------------------
文章来源: http://www.51nb.com/?uid-3604-action-viewspace-itemid-9595
第一步准备CD。
因为在老台式机上面装过,所以有一张可以安装的Ubuntu Desktop的live CD,7.04版自己burn的。另外还有一张6.10版的dvd,也是自己burn的。分区这边就不怎么说了。我分了一个200M左右的primary... -
这两天看了 linux 的awk编程,教程来源于下面网址
http://www.ibm.com/developerworks/cn/linux/shell/awk/awk-1/
总结一下:
1. FS 字段分隔符变量, FS=":"表示字段以:分割,FS=":+"表示以一个或多个:分割
RS 记录分隔符变量,设RS=""表示记录以空行分隔
OFS 字段分隔符,如设置OFS=":",那么print多个变量时候用:连接。默认空格
&nb... -
Linux下汇编采用AT&T语法,与INTEL汇编有所不同。相关语法和两者之间的区别见附后链接的两篇文章.下面是我尝试使用汇编程序的helloworld例子和汇编与C内联例子.
1.编译汇编(AT&T)代码
hello.s
============================================
#hello.s
.data # 数据段声明
msg : .string "Hello, world!\\n" # 要输出的字符串
len = . - msg # 字串长度
.text # 代码段声明
.global _start # 指定入口函数
_start: # 在屏幕上显示一个字符串
movl $len, %edx # 参数三:字符串长度
movl $msg, %ecx # 参... -
2007-05-20
Linux系统相关信息 - [编程]
终端shell命令 uname -a 输出系统的相关信息
#uname -a
Linux chaos 2.6.9-42.0.2.EL.1.cernsmp #1 SMP Fri Sep 8 15:19:18 CEST 2006 x86_64
程序实现:
#include <sys/utsname.h>
#include <stdio.h>
int main()
{
struct utsname buf;
if(uname(&buf) < 0)
return -1;
... -
2007-05-13
ununtu 安装scim中文输入法 - [软件与系统]
新光盘安装了ubuntu 7.04, 选择了中文环境后发现还是不能输入中文。
先安装
#sudo apt-get install scim scim-chinese scim-gtk2-immodule scim-tables-zh
没什么效果。后来从网上找到一个成功的方法.
解决方案如下:
在 系统->系统管理->语言支持 里选择 Chinese 并且把默认的选项也选为Chinese 。
如果还是不能通过Ctrl+Space 唤出Scim,那么就在命令行下输入 scim -d 就可以唤出它了。
说明:scim -d 的意思是把scim作为daemon启动。
或者直接在 /home/<yourname>/.co... -
2007-05-02
程序的存储空间布局/堆与栈 - [编程]
栈
由编译器自动分配释放管理。局部变量及每次函数调用时返回地址、以及调用者的环境信息(例如某些机器寄存器)都存放在栈中。新被调用的函数在栈上为其自动和临时变量分配存储空间。通过以这种方式使用栈, -
终于在今天晚上,赶在"五一"节间夕把我的程序基本完成,目前主要功能全部实现,还剩下一点
小事就是在程序几个关键部位添加log.file纪录,以及测试。
这并不是一个很大的程序,所有手写代码加起来大约才1000+行,用到C/C++、sqlite3数据库C接口sql查询、Qt3作界面、系统相关的线程管理和同步等等。从拿到文档到现在一共半个多月里,我在写程序的过程中,确实是学到了很多东西。
对于C/C++我比较熟悉,用于实现基本数据处理算法和Qt程序类继承实现。这期间阅读了primer c++的标准库,并且在我的程序里面尝试使用了vector,相比于数组和链表实在是太方便了,vector的最大好处是可以动态生成数组,自由插入元素。对于缓冲区溢出也有所接触。以前并没有太在意缓冲区溢出问题,觉得溢出就溢出了,这次确让我... -
2007-04-24
使用sqlite3与C接口开发数据库程序 - [编程]
最近我正在Linux平台写一个软件,需要用到一个简单的数据库。mysql做数据库固然很好,但其数据是存放在服务器的。我想要的基本功能也就是使用C程序创建一个数据库本地文件,然后可以对这个数据库文件执行基本的sql操作. 就像在Windows平台基于VC6.0的DAO数据库编程一样(创建一个本地文件.mdb).
从网上找到了一个开源免费的数据库开发工具--sqlite, 网上的关于sqlite的介绍有很多,详细见官方网站: -
2007-04-11
ubuntu 6.10安装OpenGL库 - [软件与系统]
原来电脑中使用的是台湾大学csie的源,但是里面没有openGL库。在瀚海上找到了科大的edgy源,更新了 /etc/apt/sources.list
deb http://debian.ustc.edu.cn/ubuntu/ edgy main restricted universe multiverse
deb-src http://debian.ustc.edu.cn/ubuntu/ edgy main restricted universe multiverse
deb http://debian.ustc.edu.cn/ubuntu/ edgy-updates main restricte... -
2007-04-02
几种常见的图像文件的格式(.gif、.jpeg、.png、.xpm) - [软件与系统]
GIF格式
GIF是英文Graphics Interchange Format(图形交换格式)的缩写。顾名思义,这种格式是用来交换图片的。事实上也是如此,上世纪80年代,美国一家著名的在线信息服务机构 CompuServe针对当时网络传输带宽的限制,开发出了这种GIF图像格式。
GIF格式的特点是压缩比高,磁盘空间占用较少,所以这种图像格式迅速得到了广泛的应用。最初的GIF只是简单地用来存储单幅静止图像(称为GIF87a),后来随着技术发展,可以同时存储若干幅静止图象进而形成连续的动画,使之成为当时支持2D动画为数不多的格式之一(称为GIF89a),而在GIF89a图像中可指定透明区域,使图像具有非同一般的显示效果,这更使GIF风光十足。
此外,考虑到网络传输... -
2007-03-21
结构体的字节对齐问题 - [编程]
结构体(struct)的sizeof值,并不是简单的将其中各元素所占字节相加,而是要考虑到存储空间的字节对齐问题。先看下面定义的两个结构体.
struct
{
char a;
short b;
char c;
}S1;
struct
{
char a;
char b;
short c;
}S2;
分别用程序测试得出sizeof(S1)=6 , sizeof(S2)=4
可见,虽然两个结构体所含的元素相同,但因为其中存放的元素类型顺序不一样,所占字节也出现差异。这就是字节对齐原因。通过字节对齐,有助于加快计算机的取数速度,... -
2007-01-27
ubuntu 6.10建立Qt/KDE开发环境 - [编程]
Qt 文档网址: http://doc.trolltech.com/
Qt3 文档中文翻译版网址: http://www.qiliang.net/qt/index.html
安装Qt3
#sudo apt-get install qt3-dev-tools qt3-examples python-qt3 qt3-designer qt3-assistant
包括相关Qt类库、qma... -
越来越感觉vim的功能强大,到现在只记住几个简单的命令。网上找到一个比较全的版本。
常用命令
1) 光标命令k,j,h,l---上下左右光标移动命令,虽然可以在Linux中使用键盘右边的四个光标键, 但是记住这四个命令还有非常有用的,也就是右手在键盘上放置的位置部分nG ----n为行数,该命令立即使光标跳到指定行。Ctrl+G-----光标所在位置的行数和列数报告w,b------使光标向前或向后跳过一个单词... -
2006-12-17
使用tcpdump监视网络 - [软件与系统]
tcpdump采用命令行方式,命令格式为:
tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ]
[ -i 网络接口 ] [ -r 文件名] [ -s snaplen ]
[ -T 类型 ] [ -w 文件名 ] [表达式 ]
1. tcpdump的选项介绍...







