GNU/Linux
文章平均质量分 81
delphiwcdj
用代码改变生活
展开
-
Grub erro 17的解决方法
前些天在Windows下修改了磁盘分区,重启之后,系统出现故障:grub erro 17...。结果Windows和Linux全都进不去了,最后就在网上g了一下解决办法。有一种是使用LiveCD修复grub,可是不知道什么原因,我的光驱读取LiveCD速度很慢,进不到光盘系统中。没办法只有用其他方法,还有一种是用dos启动,然后使用命令fdisk /mbr,修复一下Window原创 2009-09-14 19:08:00 · 2328 阅读 · 0 评论 -
修改Ubuntu的源
通常在Ubuntu下修改源很简单,只需用图形编辑工具修改/etc/apt/sources.list文件就可以了。如下所示:sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup #将原来的源备份sudo gedit /etc/apt/sources.list #打开图形编辑工具#添加源#保存退出sud原创 2009-09-14 19:14:00 · 3501 阅读 · 0 评论 -
硬盘安装ubuntu-9.04-alternate-i386.iso的体验
刚开始使用Ubuntu的时候,是用wubi安装的,虽然方便快捷,但是让人总觉得不算是正宗的GUN/Linux系统,因为毕竟这样安装后,它的文件系统本质依然是Windows的文件系统,只是虚拟出来的Linux文件系统,所以我们可想而知,在系统跑起来之后它的效率肯定没有在正真的Linux系统上跑的快。所以还是决定分出一块硬盘用来专门安装Ubuntu。 首先在官网上下载了ubunt原创 2009-09-14 19:04:00 · 2145 阅读 · 0 评论 -
Ubuntu设置静态IP的方法
系统装好后,源也设置好了(把以前默认的源注释掉了,改成了几个教育网的源,北交的源相对比较快),下来的任务就是更新系统和安装所需的软件,但是前提是必须可以上网,因为实验室用的都是固定IP,所以需要将Ubuntu设置为静态IP。方法如下: (1)修改网络配置文件网络配置信息存储在/etc/network/interfaces文件中sudo vi /etc/network原创 2009-09-14 22:45:00 · 6433 阅读 · 0 评论 -
ubuntu-9.04-alternate-i386下安装NS2的方法和遇到的问题
First of all,what is ns? The following explanations cited from the ns Manual maybe can help the "nood" to understand it.ns is a Network Simulator. The simulator is written in C++, it uses OTcl as a原创 2009-09-17 13:51:00 · 2305 阅读 · 0 评论 -
Ubuntu下安装Gnome以及一些设置
当时用alternate版本安装Ubuntu的时候没有装X Window。后来为了方便想装上,安装方法如下,打开终端,输入下面命令:sudo apt-get install ubuntu-desktop #安装Gnome X Window我的网速是一百多kbps,下载安装用了将近一个小时的时间。安装完毕后,就可以在终端输入如下命令来启动X了:startx 或者 init原创 2009-09-16 22:07:00 · 9033 阅读 · 0 评论 -
Windows XP SP3下基于Cygwin的NS2安装
最近Linux总是出现错误,所以决定尝试将NS2直接安装在Windows上,这样可以免去Linux系统带来的问题以及系统之间切换的麻烦。原本以为在Windows下安装不会很麻烦,但是却尝试安装了很多遍,失败都是发生在NS2编译的时候,各种各样的make failed!,没办法,本着坚持的精神在网上寻找答案。阅读了很多网上朋友的文章,发现大家的经历都很痛苦,NS2安装的问题确实很多。我是从别人的原创 2009-11-17 22:08:00 · 2092 阅读 · 2 评论 -
Start-up of Dual System Windows and Linux
Generally, we install Linux system after Windows and then find that the default start-up is Linux. But for many ppl we would like to start Windows firstly, so how to make it? In this article I do not原创 2009-12-05 22:00:00 · 795 阅读 · 0 评论 -
Ten Powerful Linux Commands
Today is the last day in 2009, I have no idea what should I do but just want to pray that my family, relatives and bosom friends would have a sweet life in the next year. Linux is a 2nd OS in my life原创 2009-12-31 14:59:00 · 812 阅读 · 0 评论 -
Boot My Linux Using Grub
Several days ago, there were something wrong with my laptop computer in the result of virus in Windows OS. Its so vexing to solve this problem so I had no choice but to reinstall the OS. However, ano原创 2010-04-03 16:00:00 · 485 阅读 · 0 评论 -
[PIC]My Linux Desktop
Ubuntu桌面原创 2010-07-04 21:07:00 · 780 阅读 · 0 评论 -
在Win2003下基于Cygwin环境的LEACH安装
Windows Server 2003, Cygwin, NS-2.27, LEACH, mit.tar.gz, Makefile, vim原创 2010-11-23 21:32:00 · 2501 阅读 · 2 评论 -
使用C语言访问MySQL数据 —— 执行SQL语句(2)
(三) 返回数据的语句(1) 一次提取所有数据的函数(2) 一次提取一行数据的函数原创 2011-05-15 12:05:00 · 5721 阅读 · 0 评论 -
使用C语言访问MySQL数据 —— 执行SQL语句(1)
(一) 不返回数据的SQL语句 —— UPDATE、DELETE 和 INSERT(二) 发现插入的内容原创 2011-05-14 15:56:00 · 3192 阅读 · 0 评论 -
使用C语言访问MySQL数据 —— 执行SQL语句(3)
(四) 处理返回的数据原创 2011-05-16 11:19:00 · 2001 阅读 · 0 评论 -
Windows和Linux下文件格式的问题
DOS文件留下来的^M换行符,去除^M的方法原创 2011-05-18 21:23:00 · 3436 阅读 · 0 评论 -
Linux shell程序设计知识点总结 (待续)
Shell脚本 bash原创 2011-04-23 17:53:00 · 2111 阅读 · 0 评论 -
make工具 —— make命令和makefile文件
2011-06-25 wcdj (1) makefile的语法(2) make命令的选项和参数1、依赖关系2、规则3、makefile文件中的注释4、makefile文件中的宏5、多个目标6、内置规则 make工具解决的问题:它会在必要时重新编译所有受改动影响的源文件。注意:make命令不仅仅用于编译程序,无论何时,当需要通过原创 2011-06-25 09:21:00 · 5119 阅读 · 1 评论 -
Linux下常用调试技巧
(一) 有漏洞的程序(二) 代码检查(三) 取样法 (四) 使用gdb进行调试原创 2011-07-13 20:22:22 · 4493 阅读 · 0 评论 -
shell删除文本技巧 —— grep, cut, head, sed, awk
2011-09-19 wcdj问题描述:如何使用shell脚本删除samba的配置文件中的一个用户子项?samba的配置文件信息如下所示:[global] workgroup = MYGROUP security = user[us原创 2011-09-19 01:16:14 · 2697 阅读 · 0 评论 -
awk中使用shell命令的方法
2011-10-15awk中使用shell命令的方法:方法1:system方法2:getline (获取shell命令结果的第一行输出)[1] system#!/bin/shecho "gerry" | awk '{ system("d原创 2011-10-15 13:35:40 · 1914 阅读 · 0 评论 -
进程和信号 (1)
2011-10-07 wcdjBLP 4th P.388知识点:(1) 进程的结构、类型和调度(2) 用不同的方法启动新进程(3) 父进程、子进程和僵尸进程(4) 什么是信号以及如何使用它们1 什么是进程UNIX标准(特别是原创 2011-10-07 21:48:39 · 979 阅读 · 0 评论 -
Linux中“no matching function transform”的错误
2011-10-20 wcdj问题:在Linux下编写程序,要求打开一个文本文件,读入一行内容,将其中的小写转换成为大写,其他不变,文件名作为命令行参数输入。来源:http://topic.csdn.net/u/20111020/12/9e5b23fc-15fe-4d78-b2a8-693337c8c34e.html一种省事的方法:#include #incl原创 2011-10-20 14:42:55 · 3330 阅读 · 2 评论 -
进程和信号 (2)
2011-10-09 wcdjBLP 4th P.388知识点:(1) 进程的结构、类型和调度(2) 用不同的方法启动新进程(3) 父进程、子进程和僵尸进程(4) 什么是信号以及如何使用它们signal, sigaction, 信号集信号 —— 是UNIX和Linux系统响应某些条件而产生的一个事件。接收到该信号的进程会相应地采取一些行动。生成(rais原创 2011-10-09 00:27:05 · 1033 阅读 · 2 评论 -
int向string赋值潜在的溢出bug
2011-11-1 wcdj在程序中,有时会这样写代码:#define XXX_ID 1string str_result;str_result = XXX_ID;// ...int iResultCode = atoi(str_result.c_str());问题:这样的代码是否正确?程序员本意的想法是iResultCode 应该为 1:// errorstr =原创 2011-11-01 11:12:04 · 2483 阅读 · 0 评论 -
POSIX线程 (2)
2011-11-27 wcdjBLP 4th P.4211 同时执行2 同步2.1 用信号量进行同步2.2 用互斥量进行同步1 同时执行编写一个程序来验证两个线程程序是同时进行的(当然,如果是一个单处理器系统上,线程的同时执行就需要靠CPU在线程之间的快速切换来实现)。在这个程序中我们是在两个线程之间使用“轮询技术”,所以它的效率很低。问题1:两个线原创 2011-11-27 23:26:33 · 970 阅读 · 0 评论 -
POSIX线程 (1)
2011-11-06 wcdjBLP 4th P.416类UNIX操作系统早就具备了多进程的功能了,但有时人们认为,用fork调用来创建新进程的代价太高。在这种情况下,如果能让一个进程同时做两件事情或至少看起来是这样将会非常有用。而且,你可能希望能有两件或更多的事情以一种非常紧密的方式同时发生。这就是需要线程发挥作用的时候了。知识点:(1) 在进程中创建新线程。pt原创 2011-11-06 23:39:27 · 882 阅读 · 0 评论 -
关于嵌套宏的使用
2011-12-04 wcdj问题:下面通过宏定义实现一个可以指定前缀的字符串。PREFIX+".%d"方法1:使用#运算符。出现在宏定义中的#运算符把跟在其后的参数转换成一个字符串。有时把这种用法的#称为字符串化运算符。#include#define PREX 1.3.6#define FORMAT(n) #n".%d\n"int main(){ in原创 2011-12-04 22:19:48 · 25119 阅读 · 1 评论 -
POSIX线程 (3)
2011-11-06 wcdjBLP 4th P.431线程的属性在多线程程序中,通常在程序退出之前用pthread_join对线程再次进行同步,目的是让线程向创建它的主线程返回数据。但是,在某些情况下,我们既不需要第二个线程向主线程返回信息,也不想让主线程等待它的结束。例如,假设我们在主线程继续为用户提供服务的同时创建了第二个线程,新线程的作用是将用户正在编辑的数据文件进行备原创 2011-12-24 18:34:31 · 815 阅读 · 0 评论 -
Linux下数组非法访问导致内存破坏 —— 引发segmentation fault的原因
2012-02-05 wcdj1, 调试时必需的栈知识2, 数组非法访问导致内存破坏调试时必需的栈知识栈(stack)是程序存放数据的内存区域之一,其特征是LIFO(Last In First Out, 后进先出)式数据结构,即后放进的数据最先备取出。向栈中存储数据的操作称为PUSH(压入),从栈中取出数据称为POP(弹出)。在保存动态分配的自动变量时要使用栈。此外在函原创 2012-02-05 16:04:22 · 10738 阅读 · 0 评论 -
awk中一个关于NR和FNR的应用
2011-11-13 wcdj问题:有两个目录,里面有很多的文件,目录a里的文件名都是20111111XXXXXX-00000000-XXXXXXX- XXXXXX.dat.Tdat,目录b里的文件名都是20111111XXXXXX-XXXXXXXX-XXXXXXX-00000000.Tdat,即目录a中文件的第二个字段和目录b中文件的第四个字段对应,如果两个字段相同,就把这两个文件名输出原创 2011-11-13 23:33:30 · 1441 阅读 · 0 评论 -
使用auto_ptr类型的注意事项
2012-03-03 wcdj先看一个例子:#include #include #include // auto_ptr classusing std::cout;using std::endl;using std::string;using std::auto_ptr;void f1(){ int *ip = new int(123);// dynamicall原创 2012-03-03 18:54:46 · 2442 阅读 · 0 评论 -
使用strace, ltrace寻找故障原因的线索
2012-03-23 wcdj在GNU/Linux环境下,当程序出现“疑难杂症”的时候,如何快速定位问题呢?本文介绍strace/ltrace的一些使用方法,内容主要来自个人的读书笔记(可见参考文献)。strace/ltrace 是一类不错的工具,在工作中经常会用到,其主要可以用于:(1) 了解一个程序的工作原理(可以了解Linux下很多常用的命令实现的原理);(2) 帮助定位程序原创 2012-03-23 15:03:48 · 20207 阅读 · 2 评论 -
模块中存在多重定义的问题
2012-03-15 wcdj当系统模块比较多,不同的开发人员对不同的模块进行开发,其中可能会使用相同定义。当各个模块被打包成静态库提供别人使用的时候,隐含的问题来了。如果不同的静态库中存在相同的定义,那么我们编译链接后使用的是哪一个呢,可能不是我们所希望的。下面通过一个简单的示例来说明上述的问题:// 1.c#include void func(原创 2012-03-15 20:12:41 · 1910 阅读 · 0 评论 -
GBK编码中防止串尾乱码的问题
2012-07-14 wcdj问题描述:在做字符串处理时,若缓冲区的长度固定,在向缓冲区copy字符串时会出现被截断的情况。此处考虑被copy的字符串使用GBK编码并含有汉字,若出现截断则缓冲区的内容结尾可能会出现乱码。此问题会引发向DB导入数据发生异常等其他一些问题。解决方法:首先要了解出现这个问题的原因,即字符集编码的问题。下面是关于GBK和UTF-8的介绍:GBK h原创 2012-07-14 12:20:11 · 2680 阅读 · 4 评论 -
使用C语言访问MySQL数据 —— 连接和错误处理
2011-05-09 wcdj 可以通过许多不同的编程语言来访问MySQL,例如,C,C++,Java,Perl,Python,Tcl,PHP等。本文主要总结使用C语言接口如何访问MySQL数据。(一) 连接例程(二) 错误处理(一) 连接例程用C语言连接MySQL数据库包含两个步骤:(1) 初始化一个连接句柄结构。使用 mysql_init 来初原创 2011-05-09 11:11:00 · 7349 阅读 · 0 评论 -
mktime和localtime_r时间转换问题
2012-08-26 wcdj由UNIX时间戳转换为系统时间date -d'1970-01-01 UTC 2147483647 seconds' +"%Y-%m-%d %T %z" 2038-01-19 11:14:07 +0800date -d'1970-01-01 UTC 2147483648 seconds' +"%Y-%m-%d %T %z"d原创 2012-08-26 10:50:08 · 9126 阅读 · 0 评论 -
Bash中使用多行注释的方法(Here Documents)
2012-10-19 wcdj在bash脚本中的使用方法:: There are more linesin this bash fileInputComesFromHEREExample. Multi-line message using cat#!/bin/bash# 'echo' is fine for printing single lin原创 2012-10-19 09:37:38 · 2530 阅读 · 0 评论 -
格式化列表工具column和sort使用一则
2012-10-20 wcdj在对表格形式的输出数据进行处理时,column和sort工具大多可以派上用场。看一个例子:#/bin/sh# 2012-10-20 wcdjfile=test.txtcat << gerry_here_doc=================================usage:# m: the number of fields fr原创 2012-10-20 14:10:05 · 1593 阅读 · 0 评论 -
(Manual) /proc/sys/net/* 参数说明
2012-11-18 wcdj/proc/sys/net/ipv4/* Variables 参数含义http://lxr.linux.no/#linux+v3.2.8/Documentation/networking/ip-sysctl.txt#L464http://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt转载 2012-11-18 13:44:36 · 775 阅读 · 0 评论