
Linux/Unix/BSD
廖子鸿
专注于移动互联网及智能硬件
展开
-
单硬盘多操作系统的安装
通常有两种方式: 方式一:一个主分区+一个扩展分区,将一个系统安装在主分区中,其余安装在逻辑分区中,通过主分区系统提供的引导程序,启动其余逻辑分区的系统。优点是安装方便,系统启动切换也方便。比如windows的NTLDR可以方便选择系统。缺点是如果主分区的系统重装,那么引导至少需要重新修复,否则不可用。 方式二:多个主分区,将不同的系统安装到不同的主分区,安装方式是,依次设置不同主分区为活动分区,然后分别安装系统。当启动不同系统时,也需要设置不同的活动分区,设置方法一般是使用光盘启动并设置不同转载 2010-07-05 17:07:00 · 1908 阅读 · 0 评论 -
shell中的fork、source和exec总结(包括环境变量)
摘要:对fork,source和exec三种方式执行shell脚本的总结。 准备知识 1.我们所执行的任何程序,都是由父进程(parent process)所产生出来的一个子进程(child process),子进程在结束后,将返回到父进程去。此一现像在Linux系统中被称为 fork。当子进程被产生的时候,将会从父进程那里获得一定的资源分配、及(更重要的是)继承父进程的环境﹗ 2.Shell变量大致可以分为3种类型: 内部变量:系统提供,不用定义,不能修改,比如$#,$?,$*,原创 2010-11-24 15:31:00 · 6962 阅读 · 0 评论 -
[转]Linux静态/动态链接库的创建和使用
和Windows系统一样Linux也有静态/动态链接库,下面介绍创建和使用方法: 假设有下面几个文件: 头文件String.h,声明相关函数原形,内容如下: Strlen.c:函数Strlen的实现,获取给定字符串的长度,内容如下: Strlnen.c:函数StrNlen的实现,获取给定字符串的长度,如果输入字符串的长度大于指定的最大长度,则返回最大长度,否者返回字符串的实际长度,内容如下: 生成静态库: 利用GCC生成对应目标文件: gcc –c Strlen.c转载 2010-11-22 16:20:00 · 786 阅读 · 0 评论 -
GCC输出带C源代码的汇编文件
摘要: 使用GCC输出带C源代码的汇编文件,这样便于对应着源代码来查看汇编代码 关键字: GCC 源代码 汇编 使用GCC输出带C源代码的汇编文件有两种方式, 第一种方式 gcc –c –S source.c objdump –S source.o 首先生成带生成目标文件,然后使用objdump命令,显示源代码与汇编代码的混合文件 这种方式生成的信息较少,但是主要的信息是足够了 第二种方式 使用GNU C Assembler的列表功能来完成,例如: gcc –c –g –Wa原创 2010-09-22 17:24:00 · 13239 阅读 · 0 评论 -
[转]GNU/Linux Unix 下开发工具
编辑器: vi:老牌编辑器,在各个unix和unix-like平台都可以找到 emacs:GNU项目开发的编辑器,功能强大扩展性强,绝对不是一个编辑器那么简单 / 代码打补丁工具: diff & patch:一对好搭挡,diff用来生成代码补丁,而patch则用来给代码打补丁 / 项目构建工具: make(Makefile):常用的项目构建工具,用一个Makefile就可以从整个项目的代码中构建各个目标 autotool(包括Autoconf, A原创 2010-09-07 10:39:00 · 1783 阅读 · 0 评论 -
一个C/C++中的移位操作问题
摘要:关于c/c++中由于CPU位宽造成的一个移位操作问题,b = ~a>>1中b的值的问题。 先看一段代码: 1: #include 2: 3: int main() 4: { 5: unsigned char a = 0xAA ; 6: unsigned char b = 0x00 ; 7: b = ~a>>1 ; 8: printf("0x%X",b) ;原创 2010-08-04 14:17:00 · 6860 阅读 · 0 评论 -
vi查找替换命令详解
一、查找 查找命令 /pattern :向下查找pattern匹配字符串 ?pattern:向上查找pattern匹配字符串 使用了查找命令之后,使用如下两个键快速查找: n:按照同一方向继续查找 N:按照反方向查找 字符串匹配 pattern是需要匹配的字符串,例如: 1: /abc #查找abc 2: / abc #查找abc单词(注意前后的空格)原创 2010-07-13 15:05:00 · 172308 阅读 · 3 评论 -
Ubuntu安装与卸载软件
一、使用apt-get 在使用这种方式之前,最好是有一个比较好的软件源,并且可以考虑使用其他多线程软件下载到apt的缓存中,使用apt-get来安装,常用命令如下: 1: #安装软件 2: apt-get install softname1 softname2 softname3 3: 4: #卸载软件 5: apt-get remove softname1 softname2 softname3原创 2010-07-15 14:50:00 · 2175 阅读 · 0 评论 -
vi/vim复制粘贴命令
1. 选定文本块。使用v进入可视模式,移动光标键选定内容。 2.复制的命令是y,即yank(提起) ,常用的命令如下: y 在使用v模式选定了某一块的时候,复制选定块到缓冲区用; yy 复制整行(nyy或者yny ,复制n行,n为数字); y^ 复制当前到行头的内容; y$ 复制当前到行尾的内容; yw 复制一个word (nyw或者ynw,复制n个word,n为数字);原创 2010-07-11 17:35:00 · 314616 阅读 · 7 评论 -
DHCP服务器安装与配置
FreeBSD中的DHCP服务器的安装于配置详细的中文文档请参见: http://www.freebsd.org/doc/zh_CN.GB2312/books/handbook/network-dhcp.html 安装dhcp服务器(需要下载一些文件,所以最好有网络连接): 1: cd /usr/ports/net/isc-dhcp30-server/ 2: make install clean原创 2010-07-09 17:14:00 · 2637 阅读 · 0 评论 -
FreeBSD中wpa_supplicant的使用方法(802.1x拨号认证)
环境:FreeBSD 8.0; 基于802.1x认证系统的校园网。 FreeBSD自带了wpa_supplicant程序,所以不需要自己安装了,其中几个关键文件的路径如下: /usr/sbin/wpa_supplicant : 程序文件 /etc/wpa_supplicant.conf : 账号配置文件 /etc/rc.d/wpa_supplicant.sh : 一个shell wpa_supplicant.conf 编写帮助可以使用命令 man wpa_su原创 2010-07-09 16:00:00 · 6903 阅读 · 0 评论 -
BSD操作系统分区概念
本文主要以FreeBSD为例 在FreeBSD中,分区的概念与DOS/WIN系统略有不同。FreeBSD将一块硬盘分成最多四个slice(片段),每一个slice上又可以分成最多8个partition(分区,从“a”到“h”),有的BSD系统可以分成16个partition(从“a”到“p”),比如OpenBSD。 FreeBSD最多可以将一个slice分成8个partition,分别称之为a,b,c,d,e,f,g,h, 传统上a,b,c,d分区有特殊的意义,a表原创 2010-07-05 17:10:00 · 3657 阅读 · 0 评论 -
WinXP与FreeBSD双系统
在VMWare中分配了20G的空间,然后前9G设置为NTFS(7)文件系统,后11G设置USF(165)文件系统。 首先将USF设置为活动分区,然后安装FreeBSD,安装时选中BootMgr,安装完之后,启动系统就会提示选择启动系统。 然后再NTFS上安装XP,在磁盘选择时,选择9G(第一盘区,这里看不到格式类型),如果选择到USF格式,下一步会提示无法识别文件系统,所以,如果只有这两个文件系统的分区,是不会选择错误的,选择到NTFS格式之后,下一步会提示可能已存在系统,继续安装。原创 2010-07-05 17:06:00 · 4333 阅读 · 0 评论 -
Shell中的&&、||、()和{}
&&左边的命令(命令1)返回真(即返回0,成功被执行)后,&&右边的命令(命令2)才能够被执行; ||则与&&相反。如果||左边的命令(命令1)未执行成功,那么就执行||右边的命令(命令2);如果左边的命令执行成功了,那么就不会执行右边的命令。 如果希望把几个命令合在一起执行, s h e l l提供了两种方法。既可以在当前s h e l l也可以在子s h e l l中执行一组命令。 1、(): 为了在当前shell中执行一组命令,可以用命令分隔符隔开每一个命令,并把所有的命令用圆括号()原创 2010-11-24 15:54:00 · 13230 阅读 · 0 评论