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

LinuxÄ£¿é±à³Ì


ÕªÒª
LinuxÄÚºËÄ£¿é±à³ÌµÄ×ÊÁÏÓÐЩ·×·±¸´ÔÓ£¬ÓеĹýÓÚ¼òµ¥£¬ÓеĹýÓÚÅÓÔÓ£¬ÎÒÊÔͼÓñʼǵÄÐÎʽÏë¶ÁÕßչʾÔõÑùÀ´½ø³ÌLinuxÄ£¿é±à³Ì£¬Á¦Í¼×öµ½¼òÃ÷¶óÒª£¬ÕâÆªÎÄÕÂÒ²ÊÇ×÷Ϊ±¾È˱¸ÍüµÄ×ÊÁÏ£¬ËùÒÔÓÐЩµØ·½¹ýÓÚ¼òÂÔÊÇÄÑÃâµÄ¡£±¾À´ÕâÆªÎÄÕµÄÄ¿µÄ¾ÍÊÇÈÃÓû§ÖªÆäÈ»£¬ÖÁÓÚËùÒÔÈ»»¹ÊÇÇë²Î¿¼ÏàÓ¦µÄ×ÊÁÏ£¬Æäʵ×îºÃµÄ×ÊÁÏιýÓÚLinux Kernel Source¡£
ÊÊÓ÷¶Î§£º
Linux Kernel >= 2.6.0
LinuxÄ£¿é¼ò½é
Ê×ÏÈÕâ¸ömodule²»Í¬ÓÚmicrokernelµÄmodule£¬microkernelµÄmoduleÊÇÒ»¸ö¸öµÄdaemon½ø³Ì£¬¹¤×÷ÓÚÓû§¿Õ¼ä£¬LinuxµÄmoduleÖ»ÊÇÒ»¸öÄں˵ÄÄ¿±ê´úÂ룬ÄÚºËͨ¹ýÖ´ÐÐÔËÐÐʱµÄÁ¬½Ó£¬À´°ÑËüÕûºÏµ½kernelÖÐÈ¥£¬ËùÒÔ˵LinuxµÄmodule»úÖÆ²¢Ã»ÓиıäLinuxÄÚºËΪmonolithic OS±¾ÖÊ£¬ÆämoduleÒ²Êǹ¤×÷ÓÚÄÚºËģʽ£¬ÏíÓÐÄں˵ÄËùÓÐÌØÈ¨¡£
ÖÁÓÚΪʲôҪÒýÈëLinux Kernle Module£¨Ò»Ï¼ò³ÆLKM£©£¬ÎÒÏëÖÁÉÙÓÐһϼ¸µã£º
Ä£¿é»¯±à³ÌµÄÐèÒª£¬½µµÍ¿ª·¢ºÍά»¤³É±¾¡£
ÔöǿϵͳµÄÁé»îÐÔ£¬Ê¹µÃÐÞ¸ÄһЩÄں˹¦Äܶø²»±ØÖØÐ±àÒëÄں˺ÍÖØÆôϵͳ¡£
½µµÍÄں˱à³ÌµÄ¸´ÔÓÐÔ£¬Ê¹ÈëÃÅÃż÷½µµÍ¡£
Ïà¹Øºê¼°Í·Îļþ
LKMÐèÒª°üº¬ÒÔÏÂÍ·Îļþ:<linux/kernel.h> <linux/module.h>
ÐèÒª¶¨ÒåÒÔϺê:__KERNEL__, MODULE
Ò»¸ö¼òµ¥µÄÄÚºËÄ£¿éʾÀý
/*file: hello.c*/
#ifndef __KERNEL__
#define __KERNEL__
#endif
#ifndef MODULE
#define MODULE
#endif
#include <linux/module.h>
#include <linux/kernel.h>
static int __init hello_init(void)
{
printk(KERN_ALERT "Hello, my LKM.\n");
return 0;
}
static void __exit hello_exit(void)
{
printk(KERN_ALERT "Bye, my LKM.\n");
}
module_init(hello_init);
module_exit(hello_exit);
ºÜ¼ò´ð°É£¬²»ÊÇÂð£¿Õâ¸öLKMµÄ¹¦ÄÜÆäʵҲºÜ¼òµ¥£¬¾ÍÊǵ±Í¨¹ýinsmod¼ÓÔØËüµÄʱºò£¬Ëû´òÓ¡Hello, my LKM.ͨ¹ýrmmodÐ¶ÔØËüµÄʱºòËû´òÓ¡bye, my LKM.Ò»¸ö×î»ù±¾µÄÄÚºËÄ£¿éÒ»°ã¶¼°üº¬ÓÐÁ½¸öº¯Êý£¬Ò»¸öÊdzõʼ»¯º¯Êý(±ÈÈç˵ÕâÀïµÄhello_init),Ò»¸öÊÇÐ¶ÔØº¯Êý(hello_exit), µ±È»Ò²¿ÉÒÔûÓÐÈκκ¯Êý£¬Ö»ÊÇÌṩһЩ±äÁ¿¡£µ«Êdzõʼ»¯º¯ÊýºÍÐ¶ÔØº¯Êý±ØÐë³É¶Ô³öÏÖ¡£²¢ÇÒinitº¯Êýµ±²Ù×÷³É¹¦Ê±·µ»ØÖµ´óÓÚµÈÓÚÁã,µ±²Ù×÷ʧ°Üʱ£¬·µ»Ø·ÇÁã¡£ºêmodule_initºÍmodule_exitÓÃÓÚ×¢²á³õʼ»¯º¯ÊýºÍÐ¶ÔØº¯Êý¡£
LKMµÄ±àÒë
Ò»¸öʾÀýµÄMakefileÈçÏÂËùʾ
obj-m := hello.o
KERNELBUILD 


Ïà¹ØÎĵµ£º

linux ÏÂracµÄ°²×°

   LinuxÏÂracµÄ°²×°
1£¬»·¾³×¼±¸
 192.168.5.10  rac1
 192.168.5.100 prac1
 10.20.0.10 vrac1
 192.168.5.20 rac2
 192.168.5.200 prac2
 10.20.0.20 vrac2
2.Íø¿¨ÉèÖÃǰÌáÊÇÁ½¿éÍø¿¨
 cd /etc/sysconfig/network-scripts
& ......

LinuxÄں˵Äioctlº¯Êýѧϰ

 ÎÒÕâÀï˵µÄioctlº¯ÊýÊÇÔÚÇý¶¯³ÌÐòÀïµÄ£¬ÒòΪÎÒ²»ÖªµÀ»¹ÓÐûÓбðµÄ³¡ºÏÓõ½ÁËioctl£¬ ËùÒԾ͹涨ÁËÎÒÃÇÌÖÂ۵ķ¶Î§¡£ÎªÊ²Ã´ÒªÐ´ÆªÎÄÕÂÄØ£¬ÊÇÒòΪÎÒǰһÕó×Ó±»ioctl¸ø¸ã»ìÁË£¬Õ⼸Ìì²ÅŪÃ÷°×Ëü£¬ÓÚÊÇÔÚÕâÀïÇåÀíÒ»ÏÂÍ·ÄÔ¡£
Ò»¡¢ ʲôÊÇioctl¡£
ioctlÊÇÉ豸Çý¶¯³ÌÐòÖжÔÉ豸µÄI/OͨµÀ½øÐйÜÀíµÄº¯Êý¡£Ëùν¶ÔI/OͨµÀ½øÐÐ ......

Linux SCSI ×ÓϵͳÆÊÎö

Small Computer Systems Interface (SCSI)
ÊÇÒ»×é±ê×¼¼¯£¬Ëü¶¨ÒåÁËÓë´óÁ¿É豸£¨Ö÷ÒªÊÇÓë´æ´¢Ïà¹ØµÄÉ豸£©Í¨ÐÅËùÐèµÄ½Ó¿ÚºÍЭÒé¡£ Linux&reg; ÌṩÁËÒ»ÖÖ SCSI ×Óϵͳ
£¬ÓÃÓÚÓëÕâЩÉ豸ͨÐÅ¡£Linux
ÊÇ·Ö²ã¼Ü¹¹µÄÒ»¸öºÜºÃµÄÀý×Ó£¬Ëü½«¸ß²ãµÄÇý¶¯
Æ÷£¨±ÈÈç´ÅÅÌÇý¶¯Æ÷»ò¹âÇý£©Á¬½Óµ½ÎïÀí½Ó¿Ú£¬±ÈÈç
Fibre Channel » ......

linux×Ô¶¯Æô¶¯ÊسÌÉèÖÃ

aep1000
Ö§³Ö¿ìËÙ¼ÓÃÜ´¦Àí¿¨ÒÔ¼ÓËÙ°²È«Ì×½Ó×ֲ㣨SSL£©¼ÓÃÜ£¬ÔÚ±¾ÊéÖв»ÓÃÓÚ½¨Á¢¼¯Èº¡£
anacron
ÓëcronºÍatÀàËÆ£¬¶¼ÊÇÔÚÌØ¶¨Ê±¼ä¡¢ÉõÖÁÔÚϵͳûÓÐÁ¬ÐøÔËÐÐʱÆô¶¯ÃüÁîµÄ£¬ÔÚRed HatÉÏ£¬/etc/anacrontabÎļþÁгöÁËÿÌìÖ´ÐеÄcron×÷ÒµµÄÑ­»·³£¹æÈÕÖ¾£¬Èç¹ûÄã½ûÓÃÁËËü£¬Ä㽫²»ÄÜÔÙÖ´ÐÐÈÕ־ѭ»·£¬ÄãµÄϵͳ´ÅÅÌ×îºó½«±»ÌîÂú£¬Ô ......

Linuxѧϰ֮——redhat5ÖÐÎÄÂÒÂëÎÊÌâ½â¾ö

ǰЩÌìÔÚ×Ô¼ºµÄ±¾±¾ÉÏ×°ÁËÐéÄâ»ú£¬²¢°²×°ÁËredhat5£¬Ò»Çи㶨֮ºó·¢ÏÖ´ò¿ªÖÐÎÄÍøÒ³²»ÄÜÕý³£ÏÔʾ¡£Æô³õÒÔΪÊÇϵͳ±àÂëÎÊÌ⣬¿É¸ü¸ÄÁËϵͳ±àÂëºóÎÊÌâÒÀÈ»´æÔÚ£¬¶øÇÒϵͳµÄÎÄ×ÖÒ²±ä³ÉÂÒÂë¡£¿´À´²»ÊǼòµ¥µÄȱʡ±àÂëÎÊÌ⣬һ¶¨ÊÇϵͳûÓÐÖÐÎİüµÄÔ­Òò¡£ÓÚÊǺõÅܵ½ÍøÉÏËÑѰÖÐÎİüµØÖ·£¬·¢ÏÖredhat5¹âÅÌÖдøÓÐÕâЩ°ü¡£ºÃÁË£¬·Ï»°²» ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ