¡¶LinuxÄÚºËÔ´´úÂëÇé¾°·ÖÎö¡·¶ÁÊé±Ê¼Ç
ºêÄÚºËÓë΢ÄÚºË
£¨
P2
£©
ºêÄںˣ¨
Monolithic
Kernel
£©²Ù×÷ϵͳµÄ
kernel
ÖмȰüº¬¹ÜÀíÓû§½ø³ÌµÄ×é¼þ£¬ÓÖ°üº¬ÏòÓû§½ø³ÌÌṩ·þÎñµÄ×é¼þ£¨ÀýÈç½ø³Ì¼äͨÐÅ¡¢É豸Çý¶¯³ÌÐò¡¢ÎļþϵͳµÈ£©£¬´Ó¶øÊ¹µÃÓû§½ø³ÌÓë²Ù×÷ϵͳ
kernel
¼ä´æÔÚ×ŵäÐ͵Ä
client/server
Ä£ÐÍ£¬µ«ÊÇÕâЩ
server
×é¼þÖгýÁ˽ø³Ì¼äͨÐÅ
IPC
Ö®Í⣬²¢·ÇÒ»¶¨ÒªÈ«²¿ÁôÔÚ
kernel
ÖУ¬ÍêÈ«¿ÉÒÔ±»Éè¼Æ³ÉΪÓëÓû§½ø³ÌÏàͬµØÎ»µÄ“·þÎñ½ø³Ì”µÄÐÎʽ——ÕâÒ²¾ÍÊÇ΢Äں˵IJÙ×÷ϵͳ¡£
΢ÄÚºË
kernel
ÓŵãÔÚÓÚÄں˽ÏС£¬·þÎñÄ£¿é·½±ã½øÐе¥¶ÀµÄÉè¼Æ¡¢µ÷ÊÔ£¬ÒÔ¼°°´Ðè½øÐÐÅäÖÃºÍÆô¶¯£¬µ«ÊÇÓÉÓÚÕâЩ“·þÎñ½ø³Ì”±ØÐëͨ¹ý
IPC
Ä£¿é²ÅÄÜÓëÆäËûµÄÓû§½ø³Ì½»»¥£¬ËùÒÔÔËÐÐЧÂÊ»áÓÐËù½µµÍ¡£
Linux
×î³õÐÎ̬ÊÇͨÓòÙ×÷ϵͳ£¬Òò´ËÊǺêÄں˽ṹ
,
¼´Ê¹ÊǶ¯Ì¬°²×°µÄ
.ko
Ä£¿éÒ²ÊDZ£Ö¤ÔËÐÐÓÚ
kernel
¶ø·Ç“·þÎñ½ø³Ì”µÄģʽ
;
¶ø
VxWorks
µÈǶÈëʽʵʱ²Ù×÷ϵͳÄÚºËÔòÊÇ΢Äں˽ṹ¡£
Ïà¹ØÎĵµ£º
¼¸ÖÜÒÔǰ£¬ÎÞÒâÖп´ÁËÎÒ¿ª·¢Linux·þÎñ³ÌÐòµÄ¹¤×÷»·¾³´îÅäÕâÆªÎÄÕ£¬È̲»×¡ÅÄÁËש£¬½á¹û×÷ÕßÔڻظ´Öм¤ÎÒ£¬ÒªÎÒд¸ö¿´¿´¡£Æäʵ¿´²»¹ßºÜ¶àÈËÎ§ÈÆM$µÄϰ¹ß£¬ÔçÒÑÓÐдµãʲôµÄÏë·¨£¬¿ÉÊÇûʲôʱ¼ä£¬Ò²µ£ÐIJ»Í¬µÄÏë·¨ºÍ×Ô¼ºÍ˲½Á˺ܶàµÄÖÐÎÄ»áÃÔ»óÓÐLinuxѧϰÈÈÇéµÄͬÐУ¬¸ü²»ÓÃ˵û׼»¹»áÏÅÅܱðÈË¡£ÎªÁ˱íʾÎÒÊÇ´ÓÀ´²»³Ô¼¤½«·¨ ......
Í·Îļþ£ºsys/socket.h
Ïà¹Ø½á¹¹Ì壺
struct sockaddr
{
unsigned short sa_family; //µØÖ·×å
char sa_data[14]; //14×Ö½ÚÐÒ鵨ַ
};
struct sockaddr_in
{
short int sin_family; //µØÖ·×å
u ......
Linux ²é¿´ËùÓл·¾³±äÁ¿ÃüÁexpoert ºÍ env ¡£
Ö¸¶¨»·¾³±äÁ¿£ºecho $XXX,(XXX´ú±í»·¾³±äÁ¿Ãû)
¸ü¸Ä»·¾³±äÁ¿Öµ·½·¨£º
1.ÐÞ¸Ä/etc/profileÎļþ
Àý£ºÔÚprofileÎļþĩβ¼ÓÈ룺
JAVA_HOME=/usr/share/jdk1.5.0_05
P ......
ѧlinuxÒ²ÓÐÒ»¶Îʱ¼äÁË£¬´ÓÒ»¸ö²ËÄñ³É³¤ÎªõçõÇ×ß·µÄ³ûÄñ£¬Ò»Â·×ßÀ´£¬ÄÑÃâÓÐЩ¿Ä¿ÄÅöÅö¡£¶ÔlinuxµÄÈÏʶҲ´ÓÌý˵ºÜÇ¿´ó£¬µ½Ç××ÔÌåÑéËüµÄ¿ªÔ´¡¢°²
È«¡¢ÒÔ¼°ÓÅÔ½µÄÐÔÄÜ£¬²»¹ýÒ²³Ô¾¡ÁË¿àÍ·£¬ÕæµÄÊÇÎåζ¾ãÈ«¡£
¶¼Ëµlinux¹¦ÄÜÇ¿´ó£¬×Ô´ÓÎÒ½Ó´¥ÁËlinux¾Í¸Ð¾õµ½ÁËËüµÄÇ¿´ó¡£Ç¿´óµÄ°²È«ÐÔÄÜ£¬ ......
------linuxÉ豸Çý¶¯³ÌÐòµÄ¼ò½é
֮ǰֻÊÇ×öÏîÄ¿µÄʱºòÓùýÒ»¶Îʱ¼älinux£¬¶ÔlinuxÆäʵ²»ÔõôÊìϤ£¬µ«ÊÇ´óÖµIJÙ×÷£¬±à³ÌµÄ·½·¨£¬¹¤¾ß(eclipse, gcc)·½Ã滹ÊÇÉÔ΢¶®Ò»µãµÄ£¬¶ÔÓÚÎÒÀ´Ëµ£¬Ò»Ö±Ê¹ÓõÄÊÇCÓïÑÔ£¨¶àÊýǶÈëʽϵͳ¿ª·¢Ê¹Óã©£¬Ò»Ö±Ï뻨µãʱ¼äÀ´ºÃºÃµÄѧϰһÏÂlinuxϵÄÇý¶¯¿ª·¢£¬ÕýºÃÕâ¶Îʱ¼äÒ»Ö±ÔÚ´ýÒµ½×¶Î£¬¾ÍºÃº ......