Èç¹ûÏëÔÚLinuxÃüÁîÐз½Ê½Ï£¬¶Ô2¸öÎı¾ÎļþµÄÄÚÈÝ×ö±È½Ï£¬ÕÒ³öͬʱ°üº¬ÔÚÕâ2¸öÎı¾ÎļþÖеÄÄÚÈÝ£¬¿ÉÒÔʹÓÃLinuxϵͳ´øµÄ¹¤¾ßcommÀ´´¦Àí£¬Ç°ÌáÊDZ»±È½ÏµÄ2¸öÎı¾ÎļþÒªÊÇÓÐÐòµÄ£¬¿ÉÒÔÏÈÓÃsort´¦Àíһϣ¬¾ßÌå²Ù×÷·½·¨ÈçÏ£º
ÔʼÎļþÈçÏ£º
a.txt
d
c
b
a
b.txt
g
f
b
a
ÅÅÐò´¦Àí
sort a.txt > a1.txt
sort b.txt > b1.txt
´¦Àí½á¹ûÎļþÈçÏ£º
a1.txt
a
b
c
d
b1.txt
a
b
f
g
±È½Ï´¦Àí
comm a1.txt b1.txt
a
b
f
g
c
d
Êä³ö½á¹û°üÀ¨3ÁÐ ÆäÖеÚ3ÁÐÏÔʾµÄÊÇ2¸öÎļþÖж¼°üº¬µÄÄÚÈÝ¡£
µÚ1ÁÐÏÔʾֻ°üº¬ÔÚµÚÒ»¸öÎļþa.txtÖеÄ
µÚ2ÁÐÏÔʾֻ°üº¬ÔÚµÚ¶þ¸öÎļþb.txtÖеÄ
¿ÉÒÔͨ¹ý²ÎÊýÖ¸¶¨ÒªÏÔʾµÄÁÐ È磺
comm a1.txt b1.txt -12
a
b
-12 ±íʾ²»ÏÔʾµÚ1Áк͵Ú2ÁУ¬Ö»ÏÔʾµÚ3ÁÐ
-1 ²»ÏÔʾµÚ1ÁУ¬ÏÔʾµÚ2£¬3 ÁÐ
-13 ²»ÏÔʾµÚ1£¬3ÁУ¬ÏÔʾµÚ2ÁÐ ......
ÓÃGCC¿ª·¢linuxÓ¦ÓóÌÐò£¨¾µä£©
2009Äê11ÔÂ01ÈÕ ÐÇÆÚÈÕ 23:58
×÷Ϊ×ÔÓÉÈí¼þµÄÆì½¢ÏîÄ¿£¬Richard Stallman ÔÚÊ®¶àÄêǰ¸Õ¿ªÊ¼Ð´×÷ GCC µÄʱºò£¬»¹Ö»ÊǰÑËüµ±×÷½ö½öÒ»¸ö C³ÌÐòÓïÑԵıàÒëÆ÷£»GCC µÄÒâ˼ҲֻÊÇ GNU C Compiler ¶øÒÑ¡£¾¹ýÁËÕâô¶àÄêµÄ·¢Õ¹£¬GCC ÒѾ²»½ö½öÄÜÖ§³Ö CÓïÑÔ£»ËüÏÖÔÚ»¹Ö§³Ö Ada ÓïÑÔ¡¢C++ ÓïÑÔ¡¢Java ÓïÑÔ¡¢Objective C ÓïÑÔ¡¢PascalÓïÑÔ¡¢COBOLÓïÑÔ£¬ÒÔ¼°Ö§³Öº¯Êýʽ±à³ÌºÍÂß¼±à³ÌµÄ Mercury ÓïÑÔ£¬µÈµÈ¡£¶ø GCC Ò²²»ÔÙµ¥Ö»ÊÇ GNU CÓïÑÔ±àÒëÆ÷µÄÒâ˼ÁË£¬¶øÊDZä³ÉÁË GNU Compiler Collection Ò²¼´ÊÇ GNU ±àÒëÆ÷¼Ò×åµÄÒâ˼ÁË¡£ÁíÒ»·½Ã棬˵µ½ GCC
¶ÔÓÚ²Ù×÷ϵͳƽ̨¼°Ó²¼þƽ̨֧³Ö£¬¸ÅÀ¨ÆðÀ´¾ÍÊÇÒ»¾ä»°£ºÎÞËù²»ÔÚ¡£
1¡¡³ÌÐò±àÒë¹ý³Ì
GCCÊÇCUI(ÃüÁîÐн»»¥½çÃæ)³ÌÐò£¬ÕâÈÃÐí¶à´ÓWindows×ß³öÀ´
GuierÃǸе½¿Ö¾å¡£Êµ¼ÊÉÏËüÒ²ÓÐÐí¶àǰ¶Ë´°¿Ú½çÃæ£¬WindowsÏÂÓÐDev
C++£¬LinuxÏÂÆ©ÈçKDevelopment£¬µ«¼ÈȻѡÔñÁËGCC»¹Êǽ«CUL½øÐе½µ×°É£¬Ã»ÓÐÄÑÓë²»ÄѵÄÎÊÌ⣬ֻÓÐ×öÓë²»×öµÄÎÊÌ⣡
ÏÂÃæ»ùÓÚÒ»¸ö¾ßÌå¶øÎ¢µÄ³ÌÐò£¬ÌÖÂÛGCCµÄʹÓá£Ê¾Àý³ÌÐòÈçÏ£º
//test.c#include int main(void){ printf("Hello World!\n"); return 0;}
Õâ¸ö³ÌÐ ......
1 ÄÚ´æµØÖ·
linuxÖУ¬ÎÒÃDZØÐëÇø·ÖÈýÖÖ²»Í¬µÄµØÖ·
Âß¼µØÖ·£º»úÆ÷ÓïÑÔÖ¸ÁîÖÐÓÃÀ´Ö¸¶¨Ò»¸ö²Ù×÷ÊýºÍÒ»¸öÖ¸ÁîµÄµØÖ·£®ÔÚX86ÖУ¬Ã¿Ò»¸öÂß¼µØÖ·¶¼ÓÉÒ»¸ö¶Î(segment)ºÍÆ«ÒÆÁ¿(offset)×é³É£®
ÏßÐÔµØÖ·(Ò²³ÆÐéÄâµØÖ·)£ºÊÇÒ»¸ö32λÎÞ·ûºÅº¯Êý£¬¿ÉÒÔ±íʾ¸ß´ï4GBµÄµØÖ·£¬·¶Î§´Ó0x00000000µ½0xffffffff£®
ÎïÀíµØÖ·£ºÓÃÓÚÄÚ´æÐ¾Æ¬¼¶Ñ°Ö·£¬ËüÃÇÓë´Ó΢´¦ÀíÆ÷µÄµØÖ·Òý½Å·¢Ë͵½ÄÚ´æ×ÜÏßÉϵĵçÐźÅÏà¶ÔÓ¦£®
Âß¼µØÖ·×ª»»Í¼
2 ·Ö¶Î
¢Ù Ó²¼þ·Ö¶Î
¶ÎÑ¡Ôñ·ûºÍ¶Î¼Ä´æÆ÷
Ò»¸öÂß¼µØÖ·ÓÉÒ»¸ö¶Î±êʶ·ûºÍÒ»¸ö¶ÎÄÚÏà¶ÔµØÖ·µÄÆ«ÒÆÁ¿×é³É£®¶Î±êʶ·ûÊÇÒ»¸ö16볤µÄ×ֶΣ¬³ÆÎª¶ÎÑ¡Ôñ·û
Index£ºÖ¸¶¨ÔÚGDT»òLDTÖÐÏàÓ¦¶ÎÃèÊö·ûµÄÈë¿Ú
TI£ºÖ¸Ã÷¶ÎÃèÊö·ûÔÚGDT(TI=0)»òLDT(TI=1)ÖÐ
RPL:ÇëÇóÕßÌØÈ¨¼¶£¬µ±ÏàÓ¦¶ÎÑ¡Ôñ ......
Çý¶¯³ÌÐòµÄʹÓÿÉÒÔ°´ÕÕÁ½ÖÖ·½Ê½±àÒ룬һÖÖÊǾ²Ì¬±àÒë½øÄںˣ¬ÁíÒ»ÖÖÊDZàÒë³ÉÄ£¿éÒÔ¹©¶¯Ì¬¼ÓÔØ¡£ÓÉÓÚuClinux²»Ö§³ÖÄ£¿é¶¯Ì¬¼ÓÔØ£¬¶øÇÒǶÈëʽLINUX²»Äܹ»Ïó×ÀÃæLINUXÄÇÑùÁé»îµÄʹÓÃinsmod/rmmod¼ÓÔØÐ¶ÔØÉ豸Çý¶¯³ÌÐò£¬Òò¶øÕâÀïÖ»½éÉܽ«É豸Çý¶¯³ÌÐò¾²Ì¬±àÒë½øuClinuxÄں˵ķ½·¨¡£
¡¡¡¡ÏÂÃæÒÔUCLINUXΪÀý£¬½éÉÜÔÚÒ»¸öÒÔÄ£¿é·½Ê½³öÏÖµÄÇý¶¯³ÌÐòtest.c»ù´¡Ö®ÉÏ£¬½«Æä±àÒë½øÄں˵ÄһϵÁв½Ö裺
¡¡¡¡£¨1£© ¸Ä¶¯test.cÔ´´ø´úÂë
¡¡¡¡µÚÒ»²½£¬½«ÔÀ´µÄ£º
¡¡¡¡#include
¡¡¡¡#include
¡¡¡¡char kernel_version[]=UTS_RELEASE;
¡¡¡¡¸Ä¶¯Îª£º
¡¡¡¡#ifdef MODULE
¡¡¡¡#include
¡¡¡¡#include
¡¡¡¡char kernel_version[]=UTS_RELEASE;
¡¡¡¡#else
¡¡¡¡#define MOD_INC_USE_COUNT
¡¡¡¡#define MOD_DEC_USE_COUNT
¡¡¡¡#endif
¡¡¡¡µÚ¶þ²½£¬Ð½¨º¯Êýint init_test(void)
¡¡¡¡½«É豸ע²áдÔÚ´Ë´¦£º
¡¡¡¡result=register_chrdev(254,"test",&test_fops);
¡¡¡¡£¨2£© ½«test.c¸´ÖƵ½/uclinux/linux/drivers/charĿ¼Ï£¬²¢ÇÒÔÚ/uclinux/linux/drivers/charĿ¼ÏÂmem.cÖУ¬int chr_dev_init( )º¯ÊýÖÐÔö¼ÓÈçÏ´úÂ룺
¡¡¡¡#ifdef CONFIG_TESTDRIVE
¡¡ ......
ËùÓÐÀý×ÓÔÚ
linux-2.6.29.3
£¨
gcc-4.3.3
£©Ï±àÒëͨ¹ý£¬ÐèÒª×öµÄÐÞ¸ÄÈçÏ£º
l
´ò¿ªapue.2e
Îļþ¼ÐϵÄMake.defines.linux
Îļþ£¨¸ù¾ÝÄãµÄϵͳѡÔñ¶ÔÓ¦Îļþ£©£¬ÐÞ¸ÄWKDIR=/home/var/apue.2e
ΪÄãµÄapue.2e
Ŀ¼£¬ÈçWKDIR=/home/pydeng/apue.2e
¡£
l
È»ºó½øÈëapue.2e/std
Ŀ¼£¬±à¼linux.mk
£¬ÐÞ¸ÄÀïÃæËùÓеÄnawk
Ϊawk
¡£
l
Ð޸Ľű¾Îļþsystype.sh
µÄȨÏÞ£¬¸øµ±Ç°Óû§¼°ÆäËùÔÚ×éºÍÆäËû×éÌí¼Ó¿ÉÖ´ÐÐȨÏÞ¡££¨ÓÐЩ¿ÉÎÞ£©
l
·µ»Øapue.2e
Ŀ¼£¬Ö´ÐÐmake
ÃüÁî¡£
l
ÔÚ±àÒëapue.2e/threadctl/getenv1.c
ʱ£¬±¨¸æARG_MAX
ûÓж¨Òå¡£ÔÚlinux-2.6.X
Ï£¬ARG_MAX
±»¶¨ÒåÔÚ/usr/include/linux/limit.h
ÎļþÀïÃæ¡£ÓÚÊÇ£¬½«getenv1.c
ºÍgetenv3.c
ÎļþµÄinclude
¸Ä³É#include <linux/limit.h>
¡£
l ......
ýÌåµÄÍÆ¶¯Ï£¬Á½´ó±çÊÖµ®Éú£¬ÏÊÃ÷µÄ¹Ûµã¶ÔÀÝ£ºÕý·½¹Ûµã£º“LinuxµÄδÀ´ÔÚGoogle”;·´·½¹Ûµã£º“LinuxµÄδÀ´²»ÔÚGoogle”¡£
¡¡¡¡ÇÆÇÆÀíÓɰɡ£
¡¡¡¡Õý·½¹Ûµã: “Chrome OSʹGoogle³ÉΪLinuxµÄδÀ´”
¡¡¡¡1¡¢UbuntuÔ±¾ÈÏΪÊÇÌôս΢ÈíµÄÆïÊ¿£¬²»¹ý¿´¿´ËûÃÇÁ½¼ÒµÄºÏ×÷£¬ÒÔ¼°GoogleµÄÊÆÍ·£¬¾Í»á¸ÐÊܵ½Google²ÅÊÇLinuxµÄÁìÐä¡£
¡¡¡¡2¡¢ÊÀ½çÉÏÓг¬¹ýÈý°Ù ÍòÓû§ÊÖÖеĴóÔ¼20ÖÖ²»Í¬ÖÖÀàµÄAndroidÊÖ»ú¨D¨D»¹Óм´½«ÔÚ2010Äê·¢²¼µÄÁíÍâ´óÔ¼30ÖÖÉ豸¨D¨DºÜÏÔÈ»GoogleµÄÊÖ»ú²Ù×÷ϵͳÏÖÔÚ¿´ÆðÀ´ ²»¿ÉºöÊÓ¡£Ñо¿Òƶ¯É豸µÄ¼ÓÌØÄÉÑо¿ÊÒÖ÷ÈÎCarolina Milanesi±¨¸æËµÔÚ2009ÄêµÚÈý¼¾¶ÈWindows MobileÊг¡Õ¼ÓÐÂÊÒѾ»¬Âäµ½7.9%¡£ÊÀ½çµÚÒ»µÄÈû°àÒ²´Ó49.7%Ͻµµ½ÁË44.6%¡£Í¬Ê±£¬ºÚÝ®ºÍiPhone£¨iPhoneÍæ¼ÒÂÛ̳£©ÒѾ·Ö±ðÉÏÉýµ½ÁË20.8%ºÍ 17.1%¡£Ãæ¶ÔÊг¡µÄÖØÐÂÏ´ÅÆ£¬Google AndroidÒѾÔÚÒÆ¶¯Êг¡ÇÀµÃ3.5%µÄ·Ý¶î£¬Õâ¶ÔÓÚÒ»¸öÐÂÊÖÀ´Ëµ»¹²»»µ¡£
¡¡¡¡Öص㻹ÔÚChrome OS£¬±Ï¾¹ÕâÕë¶ÔµÄ²ÅÊÇ΢ÈíµÄºËÐĵشø¡£
¡¡¡¡3¡¢Chrome OSÊÇÒ»ÖÖÊÊÓÃÓÚX86ºÍ»ùÓÚARMµÄÉÏÍø±¾µÄ¿ªÔ´²Ù×÷ϵͳ£¬¼ÇסÁË£¬ÊÇÃâ·Ñ¡£Î¢ÈíÔÚÉÏÍø±¾¡¢Ï¥ÉÏÐͼÆËã»ú»òÕß×ÀÃæ¼ÆËã»ú·½ÃæµÄÖ÷ÒªÎüÒýÁ¦ÊÇËü ......