Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Linux Versions and Patches


Linux version
[1] 2.6.10
2.6 version number, 10 release number
[2] 2.6.10 and 2.6.11
They can differ significantly even in core components and in fundamental algorithms
[3] 2.6.11.12
when a new kernel release appears, it is potentially unstable and buggy. To address this problem, the kernel developers may release patched versions of any kernel, which are identified by a fourth number in the version numbering scheme
Which patch to apply which Release?
[1] Stable kernel patches apply to the base kernel version.
patch-2.6.17.10 --> linux-2.6.17 = linux-2.6.17.10
patch-2.6.17.10 -/-> linux-2.6.17.9
[2] base kernel release patches only apply to the previous base kernel version.
patch-2.6.18 --> linux-2.6.17 = linux-2.6.18
patch-2.6.18 -/-> linux-2.6.17.2
[3] incremental patches upgrade from a specific release to the next release
   patch-2.6.17.10-11 --> linux-2.6.17.10 = linux-2.6.17.11
An example
How to go from the 2.6.17.9 kernel release, to the 2.6.17.11 release?
Finding the incremental patches http://www.kernel.org/pub/linux/kernel/v2.6/incr/
patch-2.6.17.9-10 --> linux-2.6.17.9 = linux-2.6.17.10
patch-2.6.17.10-11 --> linux-2.6.17.10 = linux-2.6.17.11
 
 
 


Ïà¹ØÎĵµ£º

linux 0.11 ÄÚºËѧϰ char_dev.c


/*
 *  linux/fs/char_dev.c
 *
 *  (C) 1991  Linus Torvalds
 */
#include <errno.h>
#include <sys/types.h> // ¶¨ÒåÁË»ù±¾µÄϵͳÊý¾ÝÀàÐÍ
#include <linux/sched.h>
#include <linux/kernel.h> // º¬ÓÐһЩÄں˳£Óú¯ÊýµÄÔ­Ðζ¨Òå
#include < ......

linux 0.11 ÄÚºËѧϰ pipe.c


/*
 * ¸ÃÎļþÖеÄÁ½¸öº¯Êýread_pipeºÍwrite_pipeÊÇÉϲ㺯Êý
 * readºÍwriteµÄµ×²ãʵÏÖ
 */
/*
 *  linux/fs/pipe.c
 *
 *  (C) 1991  Linus Torvalds
 */
#include <signal.h>
#include <linux/sched.h>
// ÄÚ´æ¹ÜÀíÍ·Îļþ¡£º¬ÓÐÒ³Ãæ´óС¶¨Òåº ......

linux ³£ÓÃÍøÂ繤¾ß

1£¬ÍøÂçÕûÌåÁ÷Á¿²é¿´
  ifconfig -s
  cat /proc/net/dev
  sar -n DEV/EDEV interval(ʱ¼ä¸ô) count(´ÎÊý)
  nload -m [-d interface]
2£¬Ïêϸ²é¿´ÍøÂçÁ÷Á¿£¬±ÈÈç²é¿´Ä³Ò»¸öip/port£¬Ä³Ò»¸öЭÒé
  iptraf£¬Îı¾´°¿Ú½çÃæ
  ntop£¬webÍøÒ³½çÃæ ......

linux¸ùÎļþϵͳ¹ÒÔØ

ÓÉbootload½øÈëlinuxºóÓÉhead.s½øÈëÁËstart_kernelÁË.
asmlinkage void __init start_kernel(void)
{
       char * command_line;
       extern struct kernel_param __start___param[], __stop___param[];
       &hel ......

LinuxÉèÖÃDNSºÍÖ÷»úÃû

LinuxÏÂÅäÖþ²Ì¬IPµØÖ·£¬ÉèÖÃDNSºÍÖ÷»úÃû
ÅäÖÃÎļþλÓÚ£º
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.0.3
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
ʹIPµØÖ·ÉúЧ£º
/sbin/ifdown eth0
/sbin/ifup eth0
ÅäÖÃdns½âÎö
echo "nameserver 211.98.1.28" ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ