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

LINUX C³ÌÐò¿ª·¢Ã¿ÈÕÒ»Ìâ——Ö¸Õë

 
ʵÏÖÒ»¸öÁ´±í£¬Íê³ÉÁ´±íµÄ²åÈ룬²éÕÒ£¬É¾³ý
 
typedef struct _FIFO_M{
  void *pdata;
struct _FIFO_M *pNext;
}FIFO_M,* pFIFO_M;
 
typedef struct _FIFO{
pFIFO_M head;
pFIFO_M tail;
pFIFO_M pos;
int mcount;//½Úµã¸öÊý
int max_count;//½Úµã×î´ó¸öÊý¡£
}FIFO,* pFIFO;
 
FIFO g_fifo;
 
int Fifo_Add(pFIFO mfifo,void * pdata);/*Ïò¶ÓÁÐÖÐѹÈëÒ»Êý¾Ý£¬Ìí¼Óµ½¶ÓÁÐÍ·²¿*/
int Fifo_Push(pFIFO mfifo,void * pdata);/*Ïò¶ÓÁÐÖÐѹÈëÒ»Êý¾Ý£¬Ìí¼Óµ½¶ÓÁÐβ²¿*/
void * Fifo_Pull(pFIFO mfifo); /*½«¶ÓÁÐÍ·²¿³ÉÔ±³öÁÐ*/
 


Ïà¹ØÎĵµ£º

linuxÇý¶¯Ö® linux2.6.14.1 ÒÆÖ²½øÈ¥8900Íø¿¨Çý¶¯

ΪÁ˴nfsϵͳ,...ËùÒÔ ±ØÐëÔÚÄÚºËÒÆÖ²ºÃÍø¿¨Çý¶¯. ÎÒ¿¿.ÕÕÏÂÃæ×ö,Ò»´ÎÄܳɹ¦.
ÎÒµÄÖ÷°åÊÇÓÑÉÆÖ®±Û 2410. »·¾³ÊÇ vmware+ubuntu
LINUX2.6.14ÏÂCS8900µÄÒÆÖ²£¨Fs2410£©
 
1.
(ÎļþÔÚÎÒµÄÏÂÔØ°æÓÐ)
¿½±´Îļþcs8900.c cs8900.hµ½ linux2.6.14.1/drivers/net
½øÈëĿ¼cs8900
cp cs8900.c ../linux-2.6.14.1/dri ......

LinuxÔËÐÐÁ˶à¾Ã£¿

£¨1£©²é¿´Ê±ÖÓÖжϣº
$ cat /proc/interrupts
           CPU0
  0:    1380471    IO-APIC-edge  timer
  1:       3626       IO-APIC-edge  i8 ......

linuxµÄHZ, Tick, Jiffies

     LinuxºËÐļ¸¸öÖØÒª¸úʱ¼äÓйصÄÃû´Ê»ò±äÊý£¬µ×Ͻ«½éÉÜHZ¡¢tickÓëjiffies¡£
£¨1£©HZ
      LinuxºËÐÄÿ¸ô¹Ì¶¨ÖÜÆڻᷢ³ötimer interrupt (IRQ 0)£¬HZÊÇÓÃÀ´¶¨ÒåÿһÃëÓм¸´Îtimer interrupts¡£¾ÙÀýÀ´Ëµ£¬HZΪ1000£¬´ú±íÿÃëÓÐ1000´Îtimer interrupts¡£ HZ¿ÉÔÚ±àÒëºËÐ ......

cÁ¬½Ó·û

cÓïÑԺ궨ÒåµÄÁ¬½Ó·ûÓÐÄÄЩ
[´ËÎÊÌâµÄÍƼö´ð°¸]
(Ò»)ºê¶¨ÒåÖеÄ## Á¬½Ó·ûÓë# ·û
## Á¬½Ó·ûºÅÓÉÁ½¸ö¾®ºÅ×é³É£¬Æ书ÄÜÊÇÔÚ´ø²ÎÊýµÄºê¶¨ÒåÖн«Á½¸ö×Ó´®(token)Áª½ÓÆðÀ´£¬´Ó¶øÐγÉÒ»¸öеÄ×Ó´®¡£µ«Ëü²»¿ÉÒÔÊǵÚÒ»¸ö»òÕß×îºóÒ»¸ö×Ó´®¡£ËùνµÄ×Ó´®(token)¾ÍÊÇÖ¸±àÒëÆ÷Äܹ»Ê¶±ðµÄ×îСÓï·¨µ¥Ôª¡£¾ßÌåµÄ¶¨ÒåÔÚ±àÒëÔ­ÀíÀïÓÐÏ꾡µÄ ......

linux CÕýÔò±í´ïʽ

ÔÚÍøÉÏÕÒµ½µÄÒ»¸ö³ÌÐò
[c]
#include <stdio.h>
#include <sys/types.h>
#include <regex.h>
/* È¡×Ó´®µÄº¯Êý */
static char* substr(const char*str,unsigned start, unsigned end)
{
      unsigned n = end - start;
      static char stbuf[256]; ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ