LINUX´®¿Ú¼òÃ÷½âÎö[ÐÞÕý°æ][0919]
LINUX´®¿Ú¼òÃ÷½âÎö[ÐÞÕý°æ][0919]
09-14
ÉÏÖܵÄʱºò£¬·¢ÁËÆªÎÄÕ£¬¹ØÓÚlinux´®¿ÚµÄ¡¾µ±È»³ÌÐòʦת±ðÈ˵썻¹ÊÇ·¢²¼ÔÚIBM¿ª·¢ÕßÉçÇøµÄàÏ£©¡¿£¬
ËäÈ»µ±Ê±ÄÜÅܵÄͨ£¬µ«ÕâÖÜÔÚÓõÄʱºòÈ´·¢ÏÖ²»ÐÐÁË£¬ÓÚÊǾö¶¨×ÐϸÑо¿ÏÂlinuxÏ´®¿ÚÕâ¶«Î÷£¡
µ±È»ÄǸö³ÌÐòÓÐÎÊÌ⣬¾ÍÒª×Ô¼ºÖØÐÂдÀ²¡£¡£¡£¡£¡£¡£OTZ ¡£¡£¡£¡£¶ö¡£¡£¡£ÎÒÏòÀ´±È½ÏÀÁ¡£¡£¡£¡£
µ±È»Ñо¿¹ý³ÌÖл¹ÊÇÃ÷°×Á˲»ÉÙ¶«Î÷µÄ
1£¬½â¾öminicomÆô¶¯ºó²ÅÄÜÕý³£¶ÁÈ¡Êý¾ÝµÄÎÊÌâ
2. ½â¾ö¶ÁÈ¡Êý¾ÝȱʧµÄÎÊÌâ
3. ѧϰʹÓÃselectº¯Ê½¼ì²â´®¿Ú״̬ÐÅÏ¢
¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£¡£
µ±È»Õâ´Î˳´ø¼Óµã×Ô¼ºµÄ·ÖÎö
´®¿ÚµÄÅäÖÃÒ»°ãÒ²¾ÍÊDz¨ÌØÂÊ£¬Êý¾Ý¸ñʽÕâЩ¶«Î÷£¬¶ølinux»·¾³ÏÂÔòͨ¹ýÒ»ÃûΪtermiosµÄ½á¹¹Ìå¶ÔÆä½øÐÐÅäÖÃ
Æä³ÉÔ±ÈçÏÂ
Termios Structure Members
MemberDescription
c_cflag
Control options
c_lflag
Line options
c_iflag
Input options
c_oflag
Output options
c_cc
Control characters
c_ispeed
Input baud (new interface)
c_ospeed
Output baud (new interface)
¿´Ó¢ÎľͺÜÈÝÒ×Ã÷°×ÁË£¬ËùÒÔÎÒÒ²²»¶à˵ɶÁË¡£
Õâ¸ö½á¹¹ÌåÆäʵºÜ¼òµ¥£¬µ«ÆäÖÐÿһÏîµÄÅäÖÃÈ´Òª¸´ÔӵĶ࣬ʵ¼ÊÉÏÎÒҲûÓÐÖðÏîµÄѧϰ
Ö»ÊǼñÓÐÓõĿ´ÁËÏ£¬¶øÏÂÃæ¾ÍÊǹØÓÚÕâЩ֪ʶµÄ¼Ç¼¡£
1.´ò¿ª´®¿Ú
const char * serial_port[]={
"/dev/ttyS0",
"/dev/ttyS1",
"/dev/ttyS2",
"/dev/ttyS3",
"/dev/ttyS4"
};
int serial_open(int port)
{
int fd = open(serial_port[port], O_RDWR|O_NONBLOCK);
if (-1 == fd)
{
perror("Can't Open Serial Port");
exit (-1);
}
else
{
fcntl(fd, F_SETFL, 0);
}
return fd;
}
´ò¿ªÊ±Ò»°ã¿ÉÒÔÓÃO_RDWR £¬O_NOCTTY £¬ O_NDELAYÕâÈý¸ö²ÎÊýµÄ×éºÏ
·Ö±ð´ú±í¶Áд[µ±È»ÓжÔÓ¦Ö»¶Á£¬Ö»Ð´µÄ£¬²Â¶¼²Âµ½ÁË]£¬µÚ¶þ¸ö¸æËßϵͳ¸Ã´®¿Ú²»±»ÓÃÀ´×÷¿ØÖÆÖÕ¶Ë¡¾Ã»ÅªÃ÷°×£¬·´ÕýÒ»°ãÎÒÊDz»Ó㬼û¹ý¸úmodemͨÐŵijÌÐò»áÓõ½¡¿
×îºóÄǸö¾ÍÊDz»ÒªµÈµÄÒâ˼À²¡£¡£¡£¡£¡£¡£
2.ÅäÖô®¿Ú
typedef
enum { SERIAL_8N1=0, SERIAL_7E1=1, SERIAL_7O1=2, SERIAL_7S1=3 }serial_format;
voi
Ïà¹ØÎĵµ£º
root@linux ~]# tar [-cxtzjvfpPN] ÎļþÓëĿ¼ ....
²ÎÊý£º
-c £º½¨Á¢Ò»¸öѹËõÎļþµÄ²ÎÊýÖ¸Áî(create µÄÒâ˼)£»
-x £º½â¿ªÒ»¸öѹËõÎļþµÄ²ÎÊýÖ¸Á
-t £º²é¿´ tarfile ÀïÃæµÄÎļþ£¡
ÌØ±ð×¢Ò⣬ÔÚ²ÎÊýµÄÏ´ïÖУ¬ c/x/t ½öÄÜ´æÔÚÒ»¸ö£¡²»¿Éͬʱ´æÔÚ£¡
ÒòΪ²»¿ÉÄÜͬʱѹËõÓë½âѹËõ¡£
-z £ºÊÇ·ñͬʱ¾ßÓÐ gzip µÄÊôÐÔ£¿Ò ......
½ø³Ìµ÷¶ÈÕþ²ß¾ÍÊǵ÷¶ÈϵͳÖÖÄÄÒ»¸ö½ø³ÌÀ´CPUÔËÐС£ÕâÖÖµ÷¶È·Ö2²ã¿¼ÂÇ¡£
µÚÒ»²ã£¬½ø³Ì״̬Õâ¸öÊÇ×îÓÅÏÈ¿¼Âǵģ¬Ò²¾ÍÊÇ˵ÓÅÏȼ¶×î¸ßµÄ¡£ÔÚlinuxÖÐÖ»ÓоÍÐ÷̬µÄ½ø³Ì²ÅÓпÉÄܻᱻµ÷¶ÈÑ¡ÖÐÈ»ºóÕ¼ÓÐCPU£¬ÆäËü״̬µÄ½ø³Ì²»¿ÉÄÜÕ¼Óеĵ½CPU¡£ÏÂÃæÊÇlinuxÖнø³ÌµÄ״̬
TASK_RUNNING:¾ÍÐ÷״̬£¬µÃµ½CPU¾Í¿ÉÒÔÔËÐС£
TASK_INTERRU ......
topÃüÁîºÍpsÃüÁîµÄ»ù±¾×÷ÓÃÊÇÏàͬµÄ£¬ÏÔʾϵͳµ±Ç°µÄ½ø³ÌºÍÆäËü×´¿ö£»µ«ÊÇtopÊÇÒ»¸ö¶¯Ì¬ÏÔʾ¹ý³Ì£¬¼´¿ÉÒÔͨ¹ýÓû§°´¼üÀ´²»¶Ïˢе±Ç°×´Ì¬¡£Èç¹ûÔÚǰִ̨ÐиÃÃüÁËü½«¶Àռǰ̨£¬Ö±µ½Óû§ÖÕÖ¹¸Ã³ÌÐòΪֹ¡£±È½Ï׼ȷµÄ˵£¬topÃüÁîÌṩÁËʵʱµÄ¶Ôϵͳ´¦ÀíÆ÷µÄ״̬¼àÊÓ¡£Ëü½«ÏÔʾϵͳÖÐCPU×î“Ãô¸Ð”µÄÈÎÎñÁÐ±í¡£¸ÃÃü ......
A simple unix/linux daemon in Python
http://www.jejik.com/articles/2007/02/a_simple_unix_linux_daemon_in_python/
by Sander Marechal
I've
written a simple Python class for creating daemons on unix/linux
systems. It was pieced together for various other examples, mostly
corrections to various Py ......
ÎÒÏë¸üÓкܶàÈËûÓÐÌý˵¹ýZModemÐÒ飬¸ü²»ÖªµÀÓÐrz/szÕâÑù·½±ãµÄ¹¤¾ß¡£
¡¡¡¡ºÃ¶«Î÷²»¸Ò¶ÀÏí¡£ÒÔϸø³öÎÒÖªµÀµÄÒ»µãƤë¡£
¡¡¡¡ÏÂÃæÒ»¶ÎÊÇ´ÓSecureCRTµÄ°ïÖúÖÐcopyµÄ£º
¡¡¡¡ZModem is a full-duplex file transfer protocol that supports fast data transfer rates and effective error detection. ZModem is very user ......