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

linuxÉ豸Çý¶¯ IO Port

1. I/O Port
¡¡¡¡ºÍÓ²¼þ
´ò½»µÀÀë²»¿ªI/O Port
£¬ÀϵÄ
ISA
É豸¾­³£ÊÇÕ¼ÓÃʵ¼ÊµÄ
I/O
¶Ë¿Ú£¬ÔÚ
linux
Ï£¬²Ù×÷
ϵͳûÓжÔ
I/O
¿ÚÆÁ±Î£¬Ò²¾ÍÊÇ˵£¬ÈκÎÇý¶¯³ÌÐò¶¼¿É¶ÔÈÎÒâµÄ
I/O
¿Ú²Ù×÷£¬ÕâÑù
¾ÍºÜÈÝÒ×ÒýÆð»ìÂÒ¡£Ã¿¸öÇý¶¯³ÌÐòÓ¦¸Ã×Ô¼º±ÜÃâÎóÓö˿ڡ£ 
¡¡¡¡ÓÐÁ½¸ö
ÖØÒªµÄkernel
º¯Êý¿ÉÒÔ±£Ö¤Çý¶¯³ÌÐò×öµ½ÕâÒ»µã¡£ 
¡¡¡¡1
£©
check_region(int io_port
£¬ 
int off_set) 
¡¡¡¡Õâ¸öº¯
Êý²ì¿´ÏµÍ³µÄI/O
±í£¬¿´ÊÇ·ñÓбðµÄÇý¶¯³ÌÐòÕ¼ÓÃijһ¶Î
I/O
¿Ú¡£ 
¡¡¡¡²ÎÊý1
£º
I/O
¶Ë¿ÚµÄ»ùµØ
Ö·£¬ 
¡¡¡¡²ÎÊý2
£º
I/O
¶Ë¿ÚÕ¼ÓõÄ
·¶Î§¡£ 
¡¡¡¡·µ»Ø
Öµ£º0 
û
ÓÐÕ¼Ó㬠·Ç
0
£¬ÒѾ­±»Õ¼Óᣠ
¡¡¡¡2
£©
request_region(int io_port
£¬ 
int off_set
£¬
char *devname) 
¡¡¡¡Èç¹ûÕâ
¶ÎI/O
¶Ë
¿ÚûÓб»Õ¼Óã¬ÔÚÎÒÃǵÄÇý¶¯³ÌÐòÖоͿÉÒÔʹÓÃËü¡£ÔÚʹÓÃ֮ǰ£¬±ØÐëÏòϵͳµÇ¼Ç£¬ÒÔ·ÀÖ¹±»ÆäËû³ÌÐòÕ¼ÓᣵǼǺó£¬ÔÚ
/proc/ioports
ÎļþÖпÉÒÔ¿´µ½ÄãµÇ¼ÇµÄ
I/O
¿Ú¡£ 
¡¡¡¡²ÎÊý1
£º
io
¶Ë¿ÚµÄ»ùµØ
Ö·¡£ 
¡¡¡¡²ÎÊý2
£º
io
¶Ë¿ÚÕ¼Óõķ¶
Χ¡£ 
¡¡¡¡²ÎÊý3
£ºÊ¹ÓÃÕâ¶Î
io
µØÖ·µÄÉ豸
Ãû¡£ 
¡¡¡¡ÔÚ¶ÔI/O
¿ÚµÇ¼Çºó£¬
¾Í¿ÉÒÔ·ÅÐĵØÓÃ
inb()
£¬ 
outb()
Ö®ÀàµÄº¯À´·ÃÎÊÁË¡£ 
ÔÚһЩpci
É豸ÖУ¬
I/O
¶Ë¿Ú±»Ó³Éäµ½Ò»¶ÎÄÚ´æÖÐÈ¥£¬Òª·ÃÎÊÕâЩ¶Ë¿Ú¾ÍÏ൱ÓÚ·ÃÎÊÒ»¶ÎÄÚ´æ¡£¾­³£ÐԵģ¬ÎÒÃÇÒª»ñµÃÒ»¿éÄÚ´æµÄ
ÎïÀíµØÖ·¡£
 
¡¡¡¡2
.ÄÚ´æ²Ù×÷
 
¡¡¡¡ÔÚÉ豸Çý¶¯³ÌÐòÖж¯Ì¬¿ª
±ÙÄڴ棬²»ÊÇÓÃmalloc
£¬¶øÊÇ
kmalloc
£¬»òÕßÓÃ
get_free_pages
Ö±½ÓÉêÇëÒ³¡£ÊÍ·ÅÄÚ´æÓõÄÊÇ
kfree
£¬»ò
free_pages
¡£ Çë
×¢Ò⣬
kmalloc
µÈº¯Êý·µ»ØµÄÊÇÎïÀíµØÖ·£¡ 
¡¡¡¡×¢
Ò⣬kmalloc×î´óÖ»ÄÜ¿ª±Ù
128k-16
£¬
16
¸ö×Ö½ÚÊDZ»Ò³
ÃèÊö·û½á¹¹Õ¼ÓÃÁË¡£ 
¡¡¡¡ÄÚ´æÓ³
ÉäµÄI/O
¿Ú£¬¼Ä´æÆ÷»òÕßÊÇÓ²¼þÉ豸µÄ
RAM(
ÈçÏÔ´æ
)
Ò»°ãÕ¼ÓÃ
F0000000
ÒÔÉϵĵØÖ·¿Õ¼ä¡£ÔÚÇý¶¯³ÌÐòÖв»ÄÜÖ±½Ó·ÃÎÊ£¬ÒªÍ¨¹ý
kernel
º¯Êý
vremap
»ñµÃ
ÖØÐÂÓ³ÉäÒÔºóµÄµØÖ·¡£ 
¡¡¡¡ÁíÍ⣬
ºÜ¶àÓ²¼þÐèÒªÒ»¿é±È½Ï´óµÄÁ¬ÐøÄÚ´æÓÃ×÷DMA
´«ËÍ¡£Õâ¿é
³ÌÐòÐèҪһֱפÁôÔÚÄڴ棬²»Äܱ»½»»»µ½ÎļþÖÐÈ¥¡£µ«ÊÇkmalloc
×î¶à
Ö»ÄÜ¿ª±Ù
128k
µÄÄÚ´æ¡£ 
¡¡¡¡Õâ¿


Ïà¹ØÎĵµ£º

linuxϰ²×°openGL£¨mesa£©

1     ÏÂÔØ½âѹ
ÔÚ¹Ù·½ÍøÕ¾ÏÂÔØ×îÐÂmesa£¬mesaÖ÷ÒªÓÐÒÔϼ¸²¿·Ö£º
MesaLib-x.y.z - Mesa¿âÔ´´úÂ룬Çý¶¯ºÍÎĵµ¡£
MesaDemos-x.y.z - OpenGLµÄÑÝʾºÍ²âÊÔ³ÌÐò¡£¾ø´ó¶àÊýÐèÒªGLUT£¨Mark KilgardµÄԭʼGLUT£¯freeglut£¯OpenGLUT£©
MesaGLUT-x.y.z - Mark KilgardµÄGLUT£¬ÅäºÏmesaʹÓã¬Ò²ÓÐDOS, OS/2, ......

linuxÃüÁîÊÖ²á


 
·½±ãµÄlinuxÃüÁîÊÖ²á
 
À´Ô´: ChinaUnix²©¿Í ¡¡ÈÕÆÚ£º 2006.07.24 00:31¡¡(¹²ÓÐ0ÌõÆÀÂÛ) ÎÒÒªÆÀÂÛ
 
NO
·ÖÀà
PS1
ÃüÁîÃû
Ó÷¨¼°²ÎÊý
¹¦ÄÜ×¢½â
¶ÔÓ¦Õ½Ú
1
Îļþ¹ÜÀí
#
ls
ls -a
Áгöµ±Ç°Ä¿Â¼ÏµÄËùÓÐÎļþ£¬°üÀ¨ÒÔ.Í·µÄÒþº¬Îļþ
Îļþ¹ÜÀí
#
ls
ls -l»òll
Áгöµ±Ç°Ä¿Â¼ÏÂÎļþµÄÏêϸР......

linux ½ø³ÌµÄ×ÊԴʹÓÃ

LinuxÄÚºË×·×Ùÿ¸ö½ø³ÌʹÓõÄ×Ê ±ÈÈç ¶ÑÕ»  ´úÂë¶Î  Êý¾Ý¶Î ÔËÐеÄλÖÃ
int getrusage(int who , struct rusage * usage) ¼ì²é½ø³Ì±¾Éí£¬×Ó½ø³Ì»òÕßÁ½ÕßÖ®ºÍµÄ×ÊԴʹÓÃ
       º¯Êý·µ»ØÒ»¸öusage½á¹¹£¬´æ·Å½ø³ÌʹÓõÄ×ÊÔ´
       usageÊǺܳ¤µÄL ......

linuxµÄ´¥ÃþÆÁÖ®ËÄ£ºandroidµÄtslib¶ÔϲãLinuxµÄ¿ØÖÆ

£¨1£©ÈýÐǵĴ¥ÃþÆÁÇý¶¯s3c-ts.c£º
s3c_ts_init-¡·platform_driver_register(&s3c_ts_driver)£»
static struct platform_driver s3c_ts_driver = {
       .probe          = s3c_ts_probe,
       .dri ......

linux ±àÒë qt4.6.2

×¼±¸¹¤×÷
    qt-everywhere-opensource-src-4.6.2.tar
 ½âѹ tar xvzf qt-everywhere-opensource-src-4.6.2.tar
 ÅäÖÃ:
   ./configure -prefix /home/hyk/Qt_self_compiled/Qt_4_6_2
£¨Ö»ÊǸıäÁ˰²×°Ä¿Â¼£©
   gmake
(ÖØÅäÖÃ gmake confclean , configure)
ÖÐÎç12 ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ