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

LinuxÉ豸Çý¶¯³ÌÐòѧϰ֮»ù´¡Æª


LinuxÉ豸Çý¶¯³ÌÐòѧϰ±Ê¼ÇϵÁÐÎÄÕÂÔ­×÷ÕßÊÇ£ºTekkaman Ninja£¬Ëû²©¿ÍµØÖ·£º
http://blog.chinaunix.net/u1/34474/showart_404278.html
ÔÚ´ËÏòTekkaman Ninja±íʾ¸Ðл£¬Ð´³öÕâôºÃµÄÎÄÕ£¬Ê¹ÎÒÉÙ×ßÁ˺ܶàÍä·¡£
LinuxÉ豸Çý¶¯³ÌÐòѧϰ£¨0£©£­Hello, world£¡Ä£¿é
ÎÄÕÂÀ´Ô´£ºhttp://blog.chinaunix.net/u2/62910/showart_492083.html
Ò»¸öѧϰLinuxÉ豸Çý¶¯³ÌÐò¶¼»áÅöµ½µÄµÚÒ»¸öÀý³Ì£º
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void)
{
    printk(KERN_ALERT "Hello, Tekkaman Ninja £¡\n");
    return 0;
}
static void hello_exit(void)
{
    printk(KERN_ALERT "Goodbye, Tekkaman Ninja £¡\n Love Linux !Love ARM ! Love KeKe !\n");
}
module_init(hello_init);
module_exit(hello_exit);
ÎÒ½«Æä¸´ÖƵ½ÎҵŤ×÷Ŀ¼£¬²¢±àдÁËÒ»¸ö¼òµ¥µÄMakefileÎļþ£º
KERNELDIR = /home/tekkaman/working/SBC2440/linux-2.6.22.2
    # The current directory is passed to sub-makes as argument
PWD := $(shell pwd)
INSTALLDIR = /home/tekkaman/working/rootfs/lib/modules
CROSS_COMPILE    =/home/tekkaman/working/crosstool-gcc410-k26222/gcc-4.1.0-glibc-2.3.2/arm-9tdmi-linux-gnu/bin/arm-9tdmi-linux-gnu-
CC    = $(CROSS_COMPILE)gcc
obj-m := hello.o
modules:
    $(MAKE) -C $(KERNELDIR) M=$(PWD) modules
modules_install:
    cp hello.ko $(INSTALLDIR)
clean:
    rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions
.PHONY: modules modules_install clean
˵ʵ»°£¬ÒÔÉÏÊÇÎҲο¼ÁË¡¶LinuxÉ豸Çý¶¯³ÌÐò£¨µÚ3°æ£©¡·µÄMakefileÔ´ÂëÐ޸ĵÃÀ´µÄ¡£ÎÒ¶ÔMakefile²»ÊǺÜÁ˽⣬ÊǸúúÃѧϰѧϰÁË£¡
È»ºó¾ÍÊÇmake  modules ¡¢ make  modules_install ¡£
[root@Tekkaman-Ninja Helloworld]# make modules
make -C /home/tekkaman/working/SBC2440/linux-2.6.22.2 M=/home/tekkaman/working/Linuxdriver/Helloworld modules
make[1]: Entering directory `/home/tekkaman/working/SBC2440/linux-2.6.22.2


Ïà¹ØÎĵµ£º

linuxȨÏÞ˵Ã÷

²é¿´ÎļþȨÏÞµÄÓï¾ä£º
¡¡
¡¡¡¡ÔÚÖÕ¶ËÊäÈ룺
¡¡
¡¡¡¡ls -l xxx.xxx £¨xxx.xxxÊÇÎļþÃû£©
¡¡
¡¡¡¡ÄÇô¾Í»á³öÏÖÏàÀàËÆµÄÐÅÏ¢£¬Ö÷Òª¶¼ÊÇÕâЩ£º
¡¡
¡¡¡¡-rw-rw-r——
¡¡
¡¡¡¡Ò»¹²ÓÐ10λÊý
¡¡
¡¡¡¡ÆäÖУº ×îÇ°ÃæÄǸö - ´ú±íµÄÊÇÀàÐÍ
¡¡
¡¡¡¡ÖмäÄÇÈý¸ö rw- ´ú±íµÄÊÇËùÓÐÕߣ¨user£©
¡¡
¡¡¡¡È»ºóÄÇÈý¸ö r ......

LINUX³£ÓÃÃüÁ»ù´¡£©

1. man ¶ÔÄãÊìϤ»ò²»ÊìϤµÄÃüÁîÌṩ°ïÖú½âÊÍ
eg:man ls ¾Í¿ÉÒԲ鿴lsÏà¹ØµÄÓ÷¨
×¢£º°´q¼ü»òÕßctrl+cÍ˳ö£¬ÔÚlinuxÏ¿ÉÒÔʹÓÃctrl+cÖÕÖ¹µ±Ç°³ÌÐòÔËÐС£
2. ls ²é¿´Ä¿Â¼»òÕßÎļþµÄÊô*£¬ÁоٳöÈÎһĿ¼ÏÂÃæµÄÎļþ
eg: ls /usr/man
ls -l
a.d±íʾĿ¼(directory)£¬Èç¹ûÊÇÒ»¸ö"-"±íʾÊÇÎļþ£¬Èç¹ûÊÇlÔò±íʾÊÇÒ»¸öÁ¬½ÓÎļþ ......

ǶÈëʽlinux¿ª·¢»·¾³¹¹½¨

Ò»¡¢°²×°ÐéÄâ»úVMware
 
¶þ¡¢ÔÚÐéÄâ»úÉϰ²×°linux
 
Èý¡¢°²×°VMware  tools
      1¡¢ÐéÄâ»ú²Ëµ¥À¸—>VM—>Install  VMware  Tools
      2¡¢½øÈë²Ù×÷ϵͳ°²×°VMware Tools
ËÄ¡¢¸üÐÂÔ´²¢¸üпÉÓõijÌÐòÁбí ......

linux±à³Ì»ù´¡—ÎļþI/O±à³Ì

    LinuxÎļþI/OÖ÷ÒªÓÉread¡¢write¡¢open¡¢close¡¢lseekÎå¸öº¯Êý×é³É£»
Ò»¡¢ÎļþÃèÊö·û
    ÔÚǶÈëʽLinuxÖÐÿ´ò¿ªÒ»¸öÎļþ¶¼ÓÐÒ»¸öÃèÊö·ûÓëÖ®¶ÔÓ¦£¬¸ÃÃèÊö·ûÊÇÒ»¸ö·Ç¸ºÕûÊý£»
    µ±ÓÃopen´ò¿ª»òн¨Ò»¸öÎļþʱ£¬¸Ãº¯ÊýµÄ·µ»ØÖµ¾ÍÊǸÃÎļþµÄÃèÊö·û£»
   ......

[×ªÔØ]Java°²×°ÅäÖã¨linux£©


°²×°java£º
´ò¿ªÖÕ¶Ë£¬Ö´ÐÐÒÔÏÂÃüÁ»òʹÓÃAdept/ÐÂÁ¢µÃÈí¼þ¹ÜÀíÆ÷£¬ÔÚÆäÖзֱðËÑË÷"sun-java6-jre"ºÍ"sun-java6-jdk"²¢±ê¼Ç°²×°¡£
sudo apt-get install sun-java6-jre
Èç¹û¿Õ¼ä¸»Ô££¬½¨Òé°²×°Ò»¸öJDK¡£
sudo apt-get install sun-java6-jdk
Ìáʾ£º°²×°¹ý³ÌÖÐÐèÒªÄã»Ø´ðÊÇ·ñͬÒâʹÓÃЭÒ飨ÖÕ¶ËÖкìÀ¶É«µÄÌáʾ½çÃæ£ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ