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);
Ïà¹ØÎĵµ£º
C±ê×¼º¯Êý£¬Ëƺõ²»Ó¦¸ÃÓÐÆ½Ì¨ÎÊÌ⣺ ÎÒÃÇ¿´Ò»ÏÂÕâ¸ö³ÌÐò£º #include
#include
int main()
{
rename(¡±/tmp/abc¡±,¡±/tmp/bcd¡±);
perror(¡±why:¡±);
} ´Ë³ÌÐòÔËÐÐÒ»ÇÐÕý³£¡£ ×Ô¼º½«Â·¾¶ÐÞ¸ÄΪ²»Í¬µÄ·ÖÇøÖ®¼äÒÆ¶¯£¬»òÕß½«Í¬Ò»·ÖÇø¹ÒÔØµ½²»Í¬µÄmou ......
LINUX Ï̺߳¯Êý´óÈ«
±¾ÎÄÀ´×ÔCSDN²©¿Í£¬³ö´¦£ºhttp://blog.csdn.net/ShowMan/archive/2009/09/22/4580295.aspx
Ïß³Ì
´´½¨Ò»¸öȱʡµÄÏß³Ì
ȱʡµÄÏ̵߳ÄÊôÐÔ£º
l ·Ç°ó¶¨
l δ·ÖÀë
l & ......
ÍøÉϹØÓÚÖÐÎÄÊäÈëµÄÎÄÕºܶ࣬´Ë´¦Ö»ÊÇÏëÊèÀíһϼ¸¸ö¸ÅÄî¡£
1¡£ÊäÈ뷨ƽ̨£º
windowsÏÂÊäÈë·¨ÓëÊäÈ뷨ƽ̨ºÃÏñÊÇ·Ö²»ÇåµÄ£¬¶øÔÚLinuxÏÂËûÃǵĸÅÄÊÇ·Ö¿ªµÄºÃ£¬ÊäÈ뷨ƽ̨ÊÇÊäÈë·¨µÄ»ù´¡£¬ÓÐʱºòÄã°²×°ÁËij¸öÊäÈë·¨£¬È´ÔõôҲµ÷²»³öÀ´£¬ÔòÓпÉÄܾÍÊÇËüËùÐèÒªµÄƽ̨»¹Ã»Óн¨Á¢¡£
¼¸¸öÊäÈ뷨ƽ̨£º
xcin£¨x-ChineseInpu ......
#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 ......
# 0 - Í£»ú£¨Ç§Íò²»Òª°ÑinitdefaultÉèÖÃΪ0 £©
# 1 - µ¥Óû§Ä£Ê½
# 2 - ¶àÓû§£¬µ«ÊÇûÓÐNFS
# 3 - ÍêÈ«¶àÓû§Ä£Ê½
# 4 - ûÓÐÓõ½
# 5 - X11
# 6 - ÖØÐÂÆô¶¯£¨Ç§Íò²»Òª°ÑinitdefaultÉèÖÃΪ6 £©
# ¶Ô¸÷¸öÔËÐм¶µÄÏêϸ½âÊÍ£º
0 Ϊͣ»ú£¬»úÆ÷¹Ø±Õ¡£
1 Ϊµ¥Óû§Ä£Ê½£¬¾ÍÏñWin9xϵݲȫģʽÀàËÆ¡£
2 Ϊ¶àÓû§Ä£Ê½£¬µ ......