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

3gÍø¿¨ linux¼ÓËÙ

ÏÖÔÚ´ó¶àÊý¸ßËÙÎÞÏßÉÏÍø¿¨¶¼ÄÚÖô洢¿Õ¼ä£¬ÓÃÓÚ´æ´¢Çý¶¯³ÌÐòºÍ²¦ºÅÈí¼þµÈ¡£µ±Ê״ν«ÕâÖÖÉ豸²åÈëUSB½Ó¿Úʱ£¬¸ÃÉ豸±»Ê¶±ðΪCD£­ROM£¬Çý¶¯³ÌÐòºÍ²¦
ºÅÈí¼þ¾ÍÔÚÆäÖС£µ±°²×°ÍêÍø¿¨µÄÇý¶¯³ÌÐòºó£¬Ôٴν«Æä²åÈëʱ£¬Ôò±»Ê¶±ðΪModemµÈÉ豸£¬ÎÒµÄÕâ¸öÍø¿¨»¹¿ÉÒÔ²åMicro-SD¿¨£¬Í¬Ê±×÷UÅÌÓá£ÒÔÉÏ
ÕâЩºÃÏñ³ÆÎªZeroCD¼¼Êõ¡£
ÔÚÉÏÍøµÄ¹ý³ÌÖУ¬»á³öÏÖËÙ¶ÈÎÞ·¨³¬¹ý62KBµÄÎÊÌ⣬ÓÖGoogleÒ»·¬ºó£¬Ô­À´Ê¹ÓõÄusbserialÊÇÕë¶ÔµÍËÙµÄÉ豸Éè¼ÆµÄ£¬Ê¹ÓõĻº³åÇøºÜС£¬²¢
û¿¼ÂÇÏÖÔÚÕâÖÖ¸ßËÙÉÏÍøÉ豸£¬Òò´ËÔì³ÉÍøËÙÓÐÏÞÖÆ¡£¿ÉÒÔͨ¹ýÐÞ¸ÄusbserialµÄÔ´´úÂ룬ʹÆä¾ßÓдóС¿É±äµÄ»º³åÇø£¨²Î¿¼
www.evdoforums.com/thread4381.html£©£¬Æä²½ÖèÈçÏ£º
1¡¢ÏÂÔØ°²×°ÄÚºËÔ´Âë¡£
2¡¢copyµ±Ç°ÄÚºËÅäÖÃÎļþÖÁÄÚºËÔ´´úÂëĿ¼Ï£¬
cp /boot/config-$(uname -r) /usr/src/linux-2.6.28/.config
3¡¢cdµ½ÄÚºËÔ´ÂëĿ¼£¬Îª±àÒëÄ£¿é´´½¨ÅäÖÃÎļþ¡£
cd /usr/src/linux-source-2.6.24/ && make menuconfig
4¡¢´´½¨Ò»¸öusbserial.cµÄ²¹¶¡Îļþ/root/usbserial.c.patch£¬ÄÚÈÝÈçÏ£º
--- linuxold/drivers/usb/serial/usb-serial.c 2006-12-31 17:40:28.000000000 -0600
+++ linux/drivers/usb/serial/usb-serial.c 2009-05-02 23:55:08.000000000 -0600
@@ -58,4 +58,5 @@
*/
+static ushort maxRSize, maxWSize, maxISize;
static int debug;
static struct usb_serial *serial_table[SERIAL_TTY_MINORS]; /* initially all NULL */
@@ -817,4 +818,6 @@
}
buffer_size = le16_to_cpu(endpoint->wMaxPacketSize);
+ if (buffer_size < maxRSize)
+ buffer_size = maxRSize;
port->bulk_in_size = buffer_size;
port->bulk_in_endpointAddress = endpoint->bEndpointAddress;
@@ -841,4 +844,6 @@
}
buffer_size = le16_to_cpu(endpoint->wMaxPacketSize);
+ if (buffer_size < maxWSize)
+ buffer_size = maxWSize;
port->bulk_out_size = buffer_size;
port->bulk_out_endpointAddress = endpoint->bEndpointAddress;
@@ -866,4 +871,6 @@
}
buffer_size = le16_to_cpu(endpoint->wMaxPacketSize);
+ if (buffer_size < maxISize)
+ buffer_size = maxISize;
port->interrupt_in_endpointAddress = endpoint->bEndpointAddress;
port->interrupt_in_buffer = kmalloc (buffer_size, GFP_KERNEL);


Ïà¹ØÎĵµ£º

LINUX Ï̺߳¯Êý´óÈ«


LINUX Ï̺߳¯Êý´óÈ«
Ïß³Ì
´´½¨Ò»¸öȱʡµÄÏß³Ì
ȱʡµÄÏ̵߳ÄÊôÐÔ£º
l         ·Ç°ó¶¨
l         δ·ÖÀë
l         Ò»¸öȱʡ´óСµÄ¶ÑÕ»
l       &nb ......

Linuxϵ÷ÓÃpthread¿âʵÏÖ¼òµ¥Ï̳߳Ø

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <pthread.h>
#include <assert.h>
void * routine(void * arg);
int pool_add_job(void *(*process)(void * arg),void *arg);
int pool_init(unsigned int thread_num);
int po ......

LinuxϱàÒëµ¥¸öCÎļþ

±àÒëµ¥¸öÔ´Îļþ
ΪÁ˽øÐвâÊÔ£¬Äã¿ÉÒÔ´´½¨“Hello World”³ÌÐò£º
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
printf(”Hello world!\n”);
exit(0);
}
ʹÓÃÈçÏÂÃüÁî±àÒë²¢²âÊÔÕâ¸ö´úÂ룺
# gcc -o hello hello.c
# ./hello
Hello wordl!
ÔÚÄ ......

×ÀÃæLinuxÊÇÔõÑùÁ¶³ÉµÄ£¿






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
       ×ÀÃæ
Linux
ÊÇʲô£¿Ëµµ½µ×£¬×ÀÃæ
Linux
Ó¦¸ÃÊÇÔõÑùµÄ£¿Õâ¸öÎÊÌâËäÈ»¼òµ¥£¬ÕýÈ·»Ø´ðÈ·Êô²»Òס£ÎªÊ²Ã´£¿
 
       ÈËʹÓüÆËã»ú±ÜÃâ²»ÁËʹÓÃ×Àà ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ