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

¡¶LINUXÉ豸Çý¶¯³ÌÐò¡·Ñ§Ï°Ôý¼Ç£¨Ò»£©

×ܽáÕ½ڣºµÚÒ»Õ É豸Çý¶¯³ÌÐò¼ò½é
          µÚ¶þÕ ¹¹ÔìºÍÔËÐÐÄ£¿é
Ìáµ½Çý¶¯³ÌÐò¾Í²»µÃ²»ÏÈ˵ÏÂÁ½¸öÃû´Ê£ºÄں˿ռäºÍÓû§¿Õ¼ä¡£Óû§¿Õ¼ä¼´Óû§Ó¦ÓÃËùÔËÐеĿռ䣬Äں˿ռäÖµµÃÊDzÙ×÷ϵͳÄÚºËÔËÐеĿռ䡣Óû§¿Õ¼ä²»ÄÜÖ±½ÓÒýÓûòÕß²Ù×÷Äں˿ռäµÄÊý¾Ý£¬Äں˿ռäÒ²²»ÄÜÖ±½ÓÒýÓÃÓû§¿Õ¼äµÄÊý¾Ý¡£²Ù×÷ϵͳÄں˶ÔÕû¸öϵͳ×ÊÔ´½øÐйÜÀí£¬ÕâЩ×ÊÔ´ÖÐÒ²°üÀ¨Ó²¼þ×ÊÔ´¡£ËùÒÔÓû§¿Õ¼äÒ²²»ÄÜÖ±½Ó·ÃÎÊÓ²¼þ×ÊÔ´¡£Çý¶¯ÎªÓû§·ÃÎÊÌØ¶¨µÄÓ²¼þ×ÊÔ´Ìṩ½Ó¿Ú¡£Óû§¿Õ¼äÒª·ÃÎÊÓ²¼þ×ÊÔ´ÔòÖ»ÐèÒªµ÷ÓÃÇý¶¯ËùÌṩµÄ½Ó¿Ú¡£Çý¶¯ÍêÈ«ÆÁ±ÎÁËÄÚ²¿²Ù×÷¡£´Ó¶ø£¬Óû§¿Õ¼äͨ¹ýÇý¶¯Õâ²ãÌØÊâµÄÄں˼ä½ÓµÄ·ÃÎÊÓ²¼þ×ÊÔ´¡£
Çý¶¯µÄ×÷ÓÃÔÚÓÚÌṩ»úÖÆ£¬»úÖÆ¼´£ºÐèÒªÌṩʲô¹¦ÄÜ£¬¶ø²»ÊÇÌṩ²ßÂÔ£¬²ßÂÔ¼´£ºÈçºÎʹÓÃÕâЩ¹¦ÄÜ¡£Ìṩ»úÖÆÊÇÇý¶¯³ÌÐòµÄÈÎÎñ£¬¶ø²ßÂÔÔòÊÇÓ¦ÓóÌÐòËùÒªÍê³ÉµÄÈÎÎñ¡£ÓÉÓÚ²»Í¬µÄ»·¾³»áÓв»Í¬µÄ·½Ê½À´·ÃÎÊÓ²¼þ£¬×÷ΪÇý¶¯³ÌÐòµÄ±àдÕߣ¬Ó¦¸Ã¾¡Á¿×öµ½Ê¹Çý¶¯²»µ½²ßÂÔ£¬ÔÚ±àдÇý¶¯µÄʱºò£¬³ÌÐòÔ±»¹Ó¦¸ÃÌØ±ð×¢Ò⣬±àд·ÃÎÊÓ²¼þµÄÄں˴úÂ룬²»Òª¸øÓû§Ç¿¼ÓÈκÎÌØ¶¨²ßÂÔ¡£ÒòΪ²»Í¬µÄÓû§»áÓв»Í¬µÄÐèÇó¡£
Äں˵ŦÄÜ·ÖΪ£º½ø³Ì¹ÜÀí£¬ÄÚ´æ¹ÜÀí£¬Îļþϵͳ£¬É豸¿ØÖÆ£¬ÍøÂ繦ÄÜ¡£ËùÓÐÉ豸¿ØÖƲÙ×÷¶¼ÓÉÓë±»¿ØÖÆÉ豸Ïà¹Ø´úÂëÀ´Íê³É£¬Õâ¶Î´úÂë¾Í½ÐÇý¶¯³ÌÐò£¬³ä·Ö˵Ã÷Çý¶¯³ÌÐòÊÇÄں˵ÄÒ»²¿·Ö¡£
¼ÈÈ»Çý¶¯³ÌÐòÊÇÄں˵ÄÒ»²¿·Ö£¬ÄÇôÇý¶¯³ÌÐòµÄ±àд¾ÍÐèÒªÓõ½Äں˵ÄÍ·Îļþ£¬¶ÔÓÚLinux 2.6°æ±¾µÄÄÚºËÇý¶¯³ÌÐò»¹ÐèÒªÒÀÀµÄÚºËÔ´ÂëÊ÷¡£ËùÒÔÔÚ±àдÇý¶¯Ö®Ç°£¬ÒªÅªÇå³þ£¬×Ô¼º±àдµÄÇý¶¯Êµ¼Ê¾ÍÊÇÔÚ±àдÄںˣ¬ÄÇô³ÌÐòÖÐËùÓÐÓõ½µÄÍ·Îļþ¶¼ÊÇÄں˵ġ£
ÄÚºËÔ´ÂëÊ÷µÄ·¾¶¿ÉÒÔÓÃÒ»ÏÂÃüÁî²é¿´£º
# cd /lib/modules/$(uname -r)/build/
# pwd

ÏÖÔÚ±àдһ¸ö¼òµ¥µÄ
HelloWorld
³ÌÐòÀ´ËµÃ÷
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE(“Dual MPL/GPL”);
static int hello_init(void)
{
printk(KERN_ALERT “Hello, world\n”);
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT “Goodbye cruel world\n”);
}
module_init(hello_init);
module_exit(hello_exit);
ÏÂÃæÊÇ
Makefile
ÎļþÄÚÈÝ
obj-m = hello.o
KERNELDIR ?= /lib/modules/$(uname -r)/build
Makefile
´úÂë½âÊÍ£º
obj-m
ÊÇÄÚºËÒªÇóµÄ¡£Çý¶¯×îÖÕ
hello.ko
ÒÀÀ


Ïà¹ØÎĵµ£º

VmwareΪLinuxÐéÄâ»úÔö¼ÓÓ²Å̿ռä

1¡¢ÏȽ«ÐéÄâ»úPower Off£¬ÔÚVirtual Machine Setting¶Ô»°¿òÀïµã»÷×óϽǵēAdd”£¬Ñ¡Ôñ“Hard Disk”£¬Ö®ºóÑ¡Ôñ“Create a new virtual disk”£¬·ÖÅäÈÝÁ¿£¬ÆäËûĬÈÏÅäÖþͿÉÒÔÁË¡£
2¡¢Æô¶¯ÐéÄâ»úϵͳ£¬ÓÃrootµÇ½£¬ÔÚ ÃüÁîÐÐÓÃfdisk -l²é¿´ÊÇ·ñʶ±ðÁËÐÂÓ²ÅÌ£¬Èç¹ûÌí¼ÓµÄÊÇIDEÓ²ÅÌ£¬¾ÍÓ¦¸Ã¿ ......

linux ext2 Îļþϵͳ»Ö¸´±»É¾³ýµÄÎļþ

linux   ext2   Îļþϵͳ»Ö¸´±»É¾³ýµÄÎļþ   
    
  ·¢²¼ÈÕÆÚ£º2002-08-08   
  ÎÄÕÂÄÚÈÝ£º   
  ------------------------------------------------------------------------   
  --------   
  by   ......

LinuxÏÂCÓïÑÔ±à³Ì ÐźŴ¦Àíº¯Êý

ǰÑÔ:ÕâÒ»ÕÂÎÒÃÇÌÖÂÛÒ»ÏÂLinuxϵÄÐźŴ¦Àíº¯Êý. 
     LinuxϵÄÐźŴ¦Àíº¯Êý: 
1.ÐźŵIJúÉú 
2.ÐźŵĴ¦Àí 
3.ÆäËüÐźź¯Êý 
--------------------------------------------------------------------------------
Ò»¸öʵÀý 
1¡£ÐźŵIJúÉú  ......

LinuxÉϹ¹ÖþiPhone OS3.1.2¿ª·¢»·¾³Ö®½âѹfirmware


LinuxÉϹ¹ÖþiPhone OS3.1.2¿ª·¢»·¾³´î½¨
½Ì³ÌµØÖ·£º  http://www.yifeiyang.net/iphone-development-introduction-3-linux-development-environment-on-the-build-iphone-os3-1-2/
#µÚÒ»²½Ã»ÓÐʲôÎÊÌâ
$ ./toolchain.sh headers
#µÚ¶þ²½Ò²Ë³Àûͨ¹ý
$ ./toolchain.sh firmware
#µÚÈý²½Ò²Í¦Ë³Àû
$ ./toolchain ......

linuxÌõ¼þ±äÁ¿Àý³Ì

#include
#include
pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
pthread_cond_t cond = PTHREAD_COND_INITIALIZER;
void *thread1(void *);
void *thread2(void *);
int i=1;
main(void)
{
pthread_t t_a;
pthread_t t_b;
pthread_create(&t_a,NULL,thread1,(void *)NULL) ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ