LinuxµÄ´óÔıø
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
A:link { so-language: zxx }
-->
Ëùν“Ôıø”¾ÍÊǼìÔIJ¿¶ÓµÄÒâ˼¡£
Linux
´ó¾ü£¨·¢Ðа棩¿Éν“É¢±øÓÎÓ”£¬Ì¸ºÎ´óÔıø£¿´ËÑÔ²îÒÓ¡£
Linux
·¢Ðаæ·×·±Öڶ࣬ÕâÊǿ͹ÛÊÂʵ¡£ÄÜ·ñ½øÐÐ
Linux
´óÔıøÄØ£¿Á½Äêǰ£¬
Ubuntu
µì»ùÈË
Mark
Shuttleworth
¾ÍÌá³öÒ»¸ö´óµ¨µÄÉèÏ룺
Debian
ºÍ
Ubuntu
µÄ
LTS
£¨Ëùν“³¤ÆÚÖ§³Ö”£©°æ±¾ÄÜ·ñʹÓÃͬһ¸ö
Linux
Äں˰汾£¿Èç¹û
Debian
ÉçÇø¿ª·¢ÕßͬÒâÕâÑù×ö£¬
Ubuntuh
ÉçÇøÔ¸Ò⣨³öÇ®¡¢³öÁ¦£©À´°ï档ʵÏÖÁËÕâÒ»²½£¬ÏÂÃæµÄÎÊÌâ¾ÍºÃ°ìÁË¡£
3
ÔÂ
15
ÈÕ£¬
Mark
Shuttleworth
·¢±í²©ÎÄ˵£º½ñÄ꣬а汾
Debian
6
ºÍ
Ubuntu
10.04
£¨
LTS
£©¶¼Ê¹ÓÃͬһ¸ö
Linux
Äں˰汾£¨¼´
2.6.32
°æ±¾£©¡£Êµ¼ÊÉÏ£¬×îа汾µÄ
RHEL
ºÍ
SLES
·¢ÐаæÒ²Ê¹ÓÃÁËÕâͬһ¸öÄں˰汾£¬¶øÇÒ£¬×îа汾µÄ±àÒëÆ÷
GCC
4.4
¡¢
Python
2.6
¡¢
OOo.org
3.2
¡¢
perl
5.10.1
ºÍ
boost
1.40
¶¼Ê¹ÓÃÁË
Linux
2.6.32
Äں˵Ä×îа汾¡£
´ó¼ÒÖªµÀ£¬
6
ºÍ
8
µÄ×îС¹«±¶ÊýÊÇ
24
¡£
Ubuntu
µÄС·¢²¼ÖÜÆÚÊÇ
6
¸öÔ£¬¶ø
RHEL
ºÍ
SLES
µÄС·¢²¼ÖÜÆÚÈ´ÊÇ
8
¸öÔ£¬Óɴ˿ɼû£¬Á½Ä꣨
24
¸öÔ£©ºóµÄ·¢²¼£¬ËüÃÇÓÖ»áÊÇͬ²½µÄ¡£ÕâÒ²¾ÍÊÇ˵£¬
Linux
´ó¼Ò×å¿ÉÒÔÁ½ÄêÒ»´Î¾ÙÐдóÔıø¡£
Linux
´ó¼Ò×åʵÏÖÁË·¢Õ¹Í¬²½£¬¶ÔÓÚ¿ª·¢¡¢ÆÕ¼°ºÍÍÆ¹ã
Linux
ʵ¼ÊÓ¦ÓöøÑÔ£¬ÕâÊÇÖÁ¹ØÖØÒªµÄ¡£´Ó´Ë£¬
Linux
´ó¼Ò×åʵÏÖÁËÓÐÐò·¢Õ¹£¬ÕâÒ»µãÀ´Ö®²»Ò×Ò²¡£
½ñÌ죬
3
ÔÂ
18
ÈÕ£¬
Ubuntu
10.04
£¨
LTS
£©
Beta
1
°æ±¾¾ÍÒª·¢²¼£¬ÕâÊÇ
Linux
´óÔıøµÄÏÈÍ·²¿¶Ó¡£´Ë¿Ì£¬ÎÒËÆºõ¿´¼û
Linux
´ó¼Ò×åµÄÍþÎäÐÛ׳¡¢²½·¥ÕûÆëµÄºóÐø²¿¶Ó¼´½«×ß¹ýÀ´ÁË¡£ÎÒÒþÔ¼¿´¼û£¬¿¦ÄÉ˹¡¢ÎÚ°îÍС¢
......
ÕýÔÚÏòÎÒÃÇ×ßÀ´¡£ÕâÖ§´ó²¿¶ÓºÆºÆµ´µ´£¬ÓÂÍùֱǰ£¬²»¿É×èµ²¡£ÎÒÕ¾ÔÚ·ÅÔ£¬¾Ù×Å
Linux
СÆì£¬ÎªËûÃǼÓÓÍ¡¢¼ÓÓÍ£¬......
ÎÒϲ»¶×øÔÚ£¨±±´ó¡¢ÈË´ó£©Ñ§ÉúʳÌÃÀïÃæ³Ô·¹¡£ÌرðÊÇ£¬ÎÒϲ»¶¿´×ÅÄǰﺢ×Ó£¨Ñ§Éú£©ÃdzԷ¹Ê±µÄÄ
Ïà¹ØÎĵµ£º
ÎÒΪʲô·¢±í²»ÁËÎÄÕÂÄØ£¿
1. ÔÚLinuxϵͳÖУ¬ÒÔ Îļþ ·½Ê½·ÃÎÊÉ豸 ¡£
2. LinuxÄÚºËÒýµ¼Ê±£¬´ÓÎļþ /etc/fstab ÖжÁȡҪ¼ÓÔØµÄÎļþϵͳ¡£
3. LinuxÎļþϵͳÖÐÿ¸öÎļþÓà i½Úµã À´±êʶ¡£
4. È«²¿´ÅÅÌ¿éÓÉËĸö²¿·Ö×é³É£¬·Ö±ðΪÒýµ¼¿é ¡¢×¨ÓÃ¿é ¡¢ i½Úµã±í¿é ºÍÊý¾Ý´æ´¢¿é¡£
5. Á´½Ó·ÖΪ£º Ó²Á´½Ó ºÍ ·ûºÅÁ´½Ó ¡£
6. ³¬ ......
# If KERNELRELEASE is defined, we've been invoked from the
# kernel build system and can use its language.
ifneq ($(KERNELRELEASE),)
obj-m := hello.o
# Otherwise we were called directly from the command
# line; invoke the kernel build system.
else
......
°üº¬3¸öÎļþ¼Ð£¬ºÍÒ»¸öÎļþMakefile
Ŀ¼×éÖ¯½á¹¹ÈçÏ£º
Makefile
inc/hello.h
main/main.c
src/hello.c
MakefileÎļþÔÚÍâÃæ£¬ÕâÑùÉú³ÉµÄ.oºÍ¿ÉÖ´ÐÐÎļþ¶¼ÔÚÍâÃæ£¬cleanÖ®ºó»áºÜ¸É¾»£¬½á¹¹ÇåÎú
ÎļþÄÚÈÝÈçÏ£º
Makefile(Ö®ËùÒÔÓôóд£¬ÒòΪmake¿ÉÒÔʶ±ðMakefileºÍmakefile£¬Óôóд¿ÉÒÔÏÊÃ÷һЩ)::
# String declar ......
¸÷sectionµÄλÖ÷ֲ¼¿´Äں˵ÄÁ´½Ó½Å±¾
D:\KIDE\target\kernel-version\cgel3.0\linux\include\asm-generic\vmlinux.lds.h
D:\KIDE\target\kernel-version\cgel3.0\linux\arch\powerpc\kernel\vmlinux.lds.S
Kernel¾µÏñÆðʼµØÖ·KERNELBASE = 0xc000 0000£¬ÕâÒâζ×ÅÄں˴úÂëºÍÄÚºËÈ«¾Ö±äÁ¿µÈµÄµØÖ·¿Õ¼äÔÚ3g-4gµÄµØ·½£¬
¶ø ......
Ê×ÏÈ,·þÎñÆ÷GCCÒªÓÐ,²»È»Ê²Ã´¶¼²»ÄÜ×ö.Äܹ»ÓÃgcc -vÀ´²é¿´ÊÇ·ñ°²×°ÁËGCC,
#gcc -v
Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.2.3/specs
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info
--enable-shared --enable-threads=posix --disable-checki ......