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

LinuxÂãÉ豸×ܽá

Ô­Ìû¼ûhttp://www.inthirties.com/thread-685-1-1.html 
1¡¢Ê²Ã´ÂãÉ豸£¿×Ö·ûÉ豸£¿¿éÉ豸£¿ 
ÂãÉ豸£ºÒ²½ÐÂã·ÖÇø£¨Ô­Ê¼·ÖÇø£©£¬ÊÇÒ»ÖÖûÓо­¹ý¸ñʽ»¯£¬²»±»Unix/Linuxͨ¹ýÎļþϵͳÀ´¶ÁÈ¡µÄÌØÊâ×Ö·ûÉ豸¡£ÂãÉ豸¿ÉÒÔ°ó¶¨Ò»¸ö·ÖÇø£¬Ò²¿ÉÒÔ°ó¶¨Ò»¸ö´ÅÅÌ¡£ 
×Ö·ûÉ豸£º¶Ô×Ö·ûÉ豸µÄ¶Áд²»ÐèҪͨ¹ýOSµÄbuffer¡£Ëü²»¿É±»Îļþϵͳmount¡£ 
¿éÉ豸£º¶Ô¿éÉ豸µÄ¶ÁдÐèҪͨ¹ýOSµÄbuffer£¬Ëü¿ÉÒÔ±»mountµ½ÎļþϵͳÖС£ 
2¡¢Ò»¸öϵͳ¿ÉÒÔÓжàÉÙ¸öÂãÉ豸£¿ 
Õâ¸öÓëlinuxµÄ°æ±¾Ïà¹Ø£¬Ôھɰ汾ÖУ¬×î¶àÖ»¿ÉÒÔÓÐ256¸öÂãÉ豸£¬Linux 4ÏÂ×ö¶à¿ÉÒÔ°ó¶¨8192¸öÂãÉ豸¡£ 
µ«ÊÇÔÚlinuxÏ£¬×î¶àÖ»ÄÜÓÐ255¸ö·ÖÇø£¬ËùÒÔ£¬Èç¹ûÓÃÂãÉ豸°ó¶¨·ÖÇø£¬×î¶àÖ»ÄÜ°ó¶¨255¸öÂãÉ豸¡£ 
Èç¹ûÊÇÓÃlvm£¬ÔòûÓÐÕâ¸öÏÞÖÆ¡£ 
3¡¢Linuxϵ¥¸ö´ÅÅÌ×î¶à¿ÉÒÔÓжàÉÙ¸ö·ÖÇø£¿ 
15¸ö¡£3¸öÖ÷·ÖÇø + 1¸öÀ©Õ¹·ÖÇø + 11¸öÂß¼­·ÖÇø¡£ 
½¨ÒéµÄ·ÖÇø·½·¨ÊÇ£ºÏÈ·Ö3¸öÖ÷·ÖÇø£¬µÚËĸö·ÖÇøΪÀ©Õ¹·ÖÇø£¬È»ºóÔÚÀ©Õ¹·ÖÇøÖÐÔÙ·Ö³É11¸öÂß¼­·ÖÇø¡£ 
×¢Ò⣬ÂãÉ豸²»Òª°ó¶¨ÔÚÀ©Õ¹·ÖÇøÉÏ¡£ 
4¡¢linuxÏÂÊÇ·ñÐèÒª°ó¶¨ÂãÉ豸£¿unixÄØ£¿ 
linuxÏÂÈç¹ûÐèҪʹÓÃÂãÉ豸£¬ÔòÐèÒªÊÖ¹¤½øÐа󶨡£ 
unixÏÂÔò²»Óᣠ
ÒòΪUnixÖÐÿһ¸ö¿éÉ豸¶¼»áÓÐÒ»¸ö¶ÔÓ¦µÄ×Ö·ûÉ豸ÓÃÓÚ·Ç»º´æ(unbuffered)I/O,Õâ¾ÍÊÇËû¶ÔÓ¦µÄÂãÉ豸ÁË¡£ 
¶øLinuxÖÐrawioµÄÔòʵÏÖÁËÒ»Ì×·Ç°ó¶¨(unbound)µÄÂãÉ豸/dev/rawN»òÕß/dev/raw/rawNºÍÒ»¸ö¿ØÖÆÉ豸 /dev/rawctÓÃÀ´°ÑËûÃǰ󶨵½¿éÉ豸ÉÏ¡£ËùÒÔµ±ÐèҪʹÓÃÒ»¸öÂãÉ豸µÄʱºò£¬¾ÍÐèÒª°ÑËûºÍÒ»¸öÕæʵ´æÔڵĿéÉ豸¶ÔÓ¦ÆðÀ´£¬ÕâÒ»¸ö²½Öèʵ¼ÊÉϾÍÊÇÍê³É ÁËUnixÀïµÄ×Ô¶¯¶ÔÓ¦Ò»¸ö·Ç»º´æ×Ö·ûÉ豸¡£ 
5¡¢linuxÈçºÎ°ó¶¨ÂãÉ豸£¿ 
Á½ÖÖ·½Ê½£º 
1£©ÃüÁî°ó¶¨ 
raw /dev/raw/raw[n] /dev/xxx 
ÆäÖÐnµÄ·¶Î§ÊÇ0-8191¡£rawĿ¼²»´æÔÚ¿ÉÒÔ´´½¨¡£ 
Ö´ÐÐÕâ¸öÃüÁ¾Í»áÔÚ/dev/rawÏÂÉú³ÉÒ»¸ö¶ÔÓ¦µÄraw[n]Îļþ 
ÓÃÃüÁʽ°ó¶¨ÂãÉ豸ÔÚϵͳÖØÆôºó»áʧЧ¡£ 
2£©ÐÞ¸ÄÎļþ 
ÐÞ¸Ä/etc/sysconfig/rawdevicesÎļþÈçÏ£¬ÒÔ¿ª»úʱ×Ô¶¯¼ÓÔØÂãÉ豸£¬È磺 
/dev/raw/raw1 /dev/sdb1 
ÕâÖÖ·½Ê½ÊÇͨ¹ýÆô¶¯·þÎñµÄ·½Ê½À´°ó¶¨ÂãÉ豸¡£ 
Ò²¿ÉÒÔ°ÑÕâ¸öÃüÁîдÔÚ/etc/rc.localÉÏ£¬Ê¹Ã¿´ÎÆô¶¯¶¼Ö´ÐÐÕâЩÃüÁî¡£ 
6¡¢ÈçºÎ°ÑÂãÉ豸×÷ΪoracleÊý¾ÝÎļþ£¿ÓÐʲôÐèҪעÒâµÄ£¿ 


Ïà¹ØÎĵµ£º

[תÌû]LinuxÇý¶¯¿ª·¢Ñ§Ï°µÄһЩ±ØÒª²½Öè

 1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......

´ÓLinuxµÄ½ø³Ìµ÷¶È»úÖÆÖÐÏëµ½µÄ

Linux³ÖÐøά»¤Ïà¹ØµÄÊý¾Ý½á¹¹£¨ÖîÈçrunqueue¡¢prio_array£©£¬²»¶Ï¸üнø³ÌµÄ¶¯Ì¬ÓÅÏȼ¶£¬²¢ÏàÓ¦µÄµ÷Õûʱ¼äƬ£¬´Ó¶øʵÏÖÁËO(1)¸´ÔӶȵĽø³Ìµ÷¶ÈËã·¨£¬¿ÉÒÔÔÚ³£Á¿Ê±¼äÄÚµ÷¶Èнø³ÌÉĮ̈ÔËÐУ¬¶ø²»ÊÜϵͳÖнø³Ì×ÜÊýµÄÓ°Ïì¡£
ÎÒ¾õµÃÕâÖÁÉÙÄÜ×ôÖ¤Èý¸öµÀÀí£º
£¨1£©Ð§Òæ¿ÉÒÔÀ´×ÔÓÚƽʱµãµãµÎµÎµØ»ýÀÛ£¨¹¦·ò¶¼ÔÚƽʱ£¬¶ø²¢·ÇÖ»Õë¶Ô ......

LinuxϵͳµÄShell I/OÖض¨ÏòÏê½â

I/OÖض¨ÏòÏê½â¼°Ó¦ÓÃʵÀý
1¡¢ »ù±¾¸ÅÄÕâÊÇÀí½âºóÃæµÄ֪ʶµÄÇ°ÌᣬÇëÎñ±ØÀí½â£©
a¡¢ I/OÖض¨Ïòͨ³£Óë FDÓйأ¬shellµÄFDͨ³£Îª10¸ö£¬¼´ 0¡«9£»
b¡¢ ³£ÓÃFDÓÐ3¸ö£¬Îª0£¨stdin£¬±ê×¼ÊäÈ룩¡¢1£¨stdout£¬±ê×¼Êä³ö£©¡¢2£¨stderr£¬±ê×¼´íÎóÊä³ö£©£¬Ä¬ÈÏÓëkeyboard¡¢monitor¡¢monitorÓйأ»
c¡¢ Óà < À´¸Ä±ä¶Á½øµÄÊý ......

ºÜÊÜ»¶Ó­µÄLinux±Ê¼Ç

 
linuxĿ¼¼Ü¹¹
/   ¸ùĿ¼
/bin    ³£ÓõÄÃüÁî
binary file µÄÄ¿錄
/boot   ´æ·ÅϵͳÆô¶¯Ê±±ØÐë¶ÁÈ¡µÄµµ°¸£¬°üÀ¨ºËÐÄ
(kernel) ÔÚÄÚ
     /boot/grub/menu.lst   GRUBÉèÖÃ
     /boot/vmlinuz   ÄÚºË
......

LinuxÏÂÐÂÔöMakefileÖеÄÈ«¾Ö±äÁ¿µÄ»úÖÆ

1. ²½ÖèÒ»
·¨Ò»£ºÐÞ¸Äϵͳ±àÒëʱҪÓõ½µÄConfig.in£¬Ôö¼ÓÄãÒªÓõÄÈ«¾Ö±äÁ¿
·¨¶þ£ºÐ´Ò»¸ö×Ô¼ºµÄConfig.in,È»ºóÔÚÆäËû»á±àÒëµ½µÄConfig.inÖаüº¬
2.²½Öè¶þ
make menuconfig
Ö®ºóÔÚÉú³ÉµÄ.configÖУ¬¾Í¿ÉÒÔgrepµ½ÐÂÌí¼ÓµÄ±äÁ¿ÁË
3.²½ÖèÈý
ÔÚMakefileÖоͿÉÒÔÓÃÕâ¸ö±äÁ¿ÁË¡£ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ