博文
Linux下的FTP服务器配置[zt](2008-03-08 11:43:00)
摘要:http://www.pconline.com.cn/pcedu/soft/st/linux/10209/90930_1.html
......
linux top命令详解[zt](2008-03-03 11:21:00)
摘要:(1) http://hi.baidu.com/hill_ming/blog/item/2a3e2151460f358c8d5430fe.html
(2) http://www.pcicp.com/tech/os/LinuxStudy/2004-02-06/1076049804d2390.html
(3) http://www.linuxdiyf.com/viewarticle.php?id=68828......
什么是initrd[zt](2008-02-28 15:03:00)
摘要:http://hi.baidu.com/schuang333/blog/item/3b562c236203c6569922ed8f.html
http://blog.csdn.net/pilipili/archive/2007/03/18/1532659.aspx......
Linux系统启动过程分析[zt](2008-02-28 14:58:00)
摘要:http://blog.chinaunix.net/u1/48373/showart_418407.html......
initrd-x.x.x.img文件分析-制作安装程序不支持的根文件系统[zt](2008-02-28 14:57:00)
摘要:http://bbs.chinaunix.net/viewthread.php?tid=147511......
SMP Memory Access and Barrier学习笔记[zt](2008-01-14 15:07:00)
摘要:原文:http://topic.csdn.net/t/20060718/01/4886655.html
Memory Barrier这一块,比较绕脑子。Write barrier好理解,就是把write操作在时间上划一个栅栏。但是read barrier就复杂不少,不能简单理解为把read操作在时间上划一个栅栏。但是Intel的手册上对于read barrier的讲解与write barrier类似——全然不顾read barrier理解起来更复杂。还是Redhat写得文档帮了大忙。
好吧,牢骚发完,下面将我的理解:
关于Memory Barrier的时间序列有三条,这三条序列的第一条和最后一条在同一个CPU中是可以各自保证因果关系的,但是对于不同CPU来说,没有必然的因果关系而且三个序列都是独立的:
*** Sequence of CPU committing write to memory.
*** Sequence of CPU perceiving memory change, usually delayed and out of order as the actual memroy change.
*** Sequence of CPU issuing read.
Write barrier:
......
linux 驱动程序 tasklet 笔记 [ZT](2008-01-07 14:40:00)
摘要:原文:http://www.21cstar.com/dhome/2007/0403/content_1056_2.html
Tasklet机制是一种较为特殊的软中断。Tasklet一词的原意是“小片任务”的意思,这里是指一小段可执行的代码,且通常以函数的形式出现。软中断向量HI_SOFTIRQ和TASKLET_SOFTIRQ均是用tasklet机制来实现的。
从某种程度上讲,tasklet机制是Linux内核对BH机制的一种扩展。在2.4内核引入了softirq机制后,原有的BH机制正是通过tasklet机制这个桥梁来纳入softirq机制的整体框架中的。正是由于这种历史的延伸关系,使得tasklet机制与一般意义上的软中断有所不同,而呈现出以下两个显著的特点:
1. 与一般的软中断不同,某一段tasklet代码在某个时刻只能在一个CPU上运行,而不像一般的软中断服务函数(即softirq_action结构中的action函数指针)那样——在同一时刻可以被多个CPU并发地执行。
2. 与BH机制不同,不同的tasklet代码在同一时刻可以在多个CPU上并发地执行,而不像BH机制那样必须严格地串行化执行(也即在同一时刻系统中只能有一个CPU执行BH函数)。
Linux用数据结构tasklet_struct来描述一个tasklet。该数据结构定义在include/linux/interrupt.h头文件中。如下所示:struct tasklet_struct
{
struct tasklet_struct *next;
unsigned long state;
atomic_t count;
void (*func)(unsigned long);
unsigned long data;
};
各成员的含义如下:
(1)next指针:指向下一个tasklet的指针。
(2)state:定义了这个tasklet的当前状态。这一个32位的无符号长整数,当前只使用了bit[1]和bit[0]两个状态位。其中,bit[1]=1表示这个tasklet当前正在某个CPU上被执行,它仅对SMP系统才有意义,其作用就是为了防止多个CPU同时执行一个tasklet的情形出现;bit[0]=1表示这个tasklet已经被调度去等待执行了......
grub 从网络nfs引导方法(2007-12-29 16:40:00)
摘要:假设tftpserver被配置在192.168.39.2机器上,且在tftp boot 下有ljqy目录,其中存有系统文件:bzImage和initrd-2.6.23.1.img.
同时nfs也被配置在tftp同一台机器上,文件系统在目录为worknfs/home/ljqy下
在grub提示符下:
(1) dhcp
(2) tftpserver 192.168.39.2 /*依据实际情况选择*/
(3) root (nd)
(4) kernel (nd)/ljqy/bzImage ip=dhcp nfsroot=192.168.39.2:/worknfs/home/ljqy
(5) boot
系统启动后文件系统并不在本机,所以为了看到本机内容,需要mount根目录:
如 mount -t ext3 /dev/sda2 sda2......
grub 网络引导系统方法(2007-12-29 16:32:00)
摘要:假设tftpserver被配置在192.168.39.2机器上,且在tftp boot 下有ljqy目录,其中存有系统文件:bzImage和initrd-2.6.23.1.img.
在grub提示符下:
(1) dhcp
(2) tftpserver 192.168.39.2 /*依据实际情况选择*/
(3) root (nd)
(4) kernel (nd)/ljqy/bzImage ro root=/dev/sda2
(5)initrd (nd)/jlqy/initrd-2.6.23.1.img
(6) boot
......
linux 内核编译命令(简简……约)(2007-12-29 16:25:00)
摘要:(1) make mrproper
(2) make clean
(3) make ARCH=x86_64 注:体系结构根据实际选择
(4) make install
完毕重起系统,即可看到新编后被加载的内核
......