Linux¿éÉ豸Çý¶¯(2) ¿éÇý¶¯ÖÐÏà¹ØÏà¹ØÄ£¿éÄ£°å
1.¿éÉ豸Çý¶¯µÄÄ£¿é¼ÓÔØÓëÐ¶ÔØ
1)¿éÉ豸Çý¶¯µÄÄ£¿é¼ÓÔØÍê³ÉµÄ¹¤×÷ÈçÏÂ:
Ø ·ÖÅä,³õʼ»¯ÇëÇó¶ÓÁÐ,°ó¶¨ÇëÇó¶ÓÁкÍÇëÇóº¯Êý
Ø ·ÖÅä,³õʼ»¯gendisk,¸øgendiskµÄmajor,fops,queueµÈ³ÉÔ±¸³Öµ,×îºóÌí¼Ógendisk.
Ø ×¢²á¿éÉ豸Çý¶¯.
´úÂë1:ʹÓÃblk_alloc_queueº¯ÊýÍê³É¿éÉ豸Çý¶¯µÄÄ£¿é¼ÓÔØÄ£°å
static int __init xxx_init(void){
//·ÖÅägendisk
xxx_disks = alloc_disk(1);
if(!xxx_disks){
goto out;
}
//¿éÉ豸Çý¶¯×¢²á
if(register_blkdev(xxx_MAJOR, "xxx"){
err = -EIO;
goto out;
}
//"ÇëÇó¶ÓÁÐ"·ÖÅä
xxx_queue = blk_alloc_queue(GFP_KERNEL);
if(!xxx_queue){
goto out_queue;
}
blk_queue_make_request(xxx_queue, &xxx_make_request);//°ó¶¨"ÖÆÔìÇëÇó"º¯Êý
blk_queue_hardsect_size(xxx_queue,xxx_blocksize);//¸æÖªÄÚºËÓ²¼þÉÈÇø³ß´ç
//gendisk³õʼ»¯
xxx_disks->major = xxx_MAJOR;
xxx_disks->first_minor = 0
Ïà¹ØÎĵµ£º
ÎÊÌâÃèÊö£º
µ±linuxÆô¶¯µ½sendmail·þÎñʱ£¬ÎÞ·¨Õý³£½øÈëϵͳ
½â¾öÎÊÌ⣺
1¡¢²¢²»ÊÇÎÞ·¨½øÈ¥£¬¶øÊÇÕâÒ»¸ö·þÎñÆô¶¯µÄÌØ±ðÂý£¬ËùÒÔ¾´ÇëµÈ´ý
2¡¢ÈçÆô¶¯Ê±²»ÏëµÈ´ý£¬OK£¬Äǵ±ÎÒÃǽøÈëÒԺ󣬹صôsendmail·þÎñ£º ......
Ò»¡¢Ç°ÑÔ
Linux ÉÏÓкò»ÉÙÈí¼þÄܹ»´î½¨ FTP£¬ÀýÈç vsftpd¡¢glftpd¡¢proftpd µÈ¡£
vsftpd ÊÇºÍ Linux ϵͳÉÏÓû§¹ÜÀíÒ»ÑùµÄ¡£ËùÓеÄÓû§¹ÜÀí¶¼ÊÇÔÚÏÖÓÐËÞÖ÷ϵͳÉϵÄÓû§ÒÔ¼°×é¹ÜÀíÏàͬ¡£ÎļþȨÏÞÉϵĹÜÀíÒ²ÊÇºÍ Linux һģһÑù¡£ÔڴÉϱȽϿ죬¼òµ¥·½±ã¡£
......
¸ù¾Ý¹¤×÷»·¾³µÄÐèÇó£¬ÐèÒªÕÆÎÕLinux/Unix»·¾³Ï½øÐÐÈí¼þ°²×°Î¬»¤ÒÔ¼°Ïà¹ØÅäÖõȼ¼ÄÜ¡£ÕâÀォÎÒµÄʹÓÃÐĵüǼÏÂÀ´¸ú´ó¼Ò·ÖÏíһϡ£ÉÏһƪÖ÷Òª½²½âÁËÊý¾Ý¿âµÄ°²×°(postgresql)¡£ÏÖÔÚ¾ÍWebÓ¦Ó÷þÎñÆ÷[Apache]µÄ°²×°½øÐн²½â(×¢£ºÒÔÉϰ²×°¾ùÒÔÔ´´úÂ뷽ʽ½øÐа²×°)¡£ÒÔÏÂʹÓõÄLinuxϵͳÊǰ²×°Ô ......
²Î¿¼Îĵµ£ºhttp://lamp.linux.gov.cn/Apache/ApacheMenu/
Ø ÏÂÔØApache2.2.4 µÄѹËõ°ü£¬ÎļþÃûΪ£ºApache21.tar.gz £»
Ø ÔÚ /usr/local Ŀ¼Ï½âѹ´ËѹËõÎļþ£º
[root@wxr local]# tar xzvf Apache21.tar.gz
Ö®ºóÉú³ÉÒ»¸öÃûΪ“httpd-2.2.4 ”µÄÎļþ¼Ð£»
Ø&n ......
´Ó°´ÏÂPCµçÔ´£¬µ½³öÏÖÊìϤµÄbashÌáʾ·û"$"»ò½øÈëÆ¯ÁÁµÄKDE/GNOME×ÀÃæ£¬ÕâÊÇÎÒÃÇÿÌ쿪»ú±Ø¾µÄ¹ý³Ì¡£ÄÇô£¬ÔÚÕâ¶Ì¶Ì¼¸Ê®ÃëÄÚ£¬LinuxÊÇÔõÑùÆô¶¯µÄÄØ£¿±¾ÎĽéÉÜLinuxµÄÆô¶¯¹ý³Ì¡£
ƽ̨£ºPC»ú, Ubuntu 5.10
»ù´¡ÖªÊ¶
BIOS (Basic I/O System£¬»ù±¾ÊäÈë/Êä³öϵͳ)
& ......