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
Ïà¹ØÎĵµ£º
linuxÈíÖжϻúÖÆ
ÖжϷþÎñ³ÌÐòÍùÍù¶¼ÊÇÔÚCPU¹ØÖжϵÄÌõ¼þÏÂÖ´Ðеģ¬ÒÔ±ÜÃâÖжÏǶÌ×¶øÊ¹¿ØÖƸ´ÔÓ»¯¡£µ«ÊÇCPU¹ØÖжϵÄʱ¼ä²»ÄÜÌ«³¤£¬·ñÔòÈÝÒ×¶ªÊ§ÖжÏÐźš£Îª´Ë£¬ Linux½«ÖжϷþÎñ³ÌÐòÒ»·ÖΪ¶þ£¬¸÷³Æ×÷“Top Half”ºÍ“Bottom Half”¡£Ç°Õßͨ³£¶Ôʱ¼äÒªÇó½ÏΪÑϸñ£¬ ......
ÈçºÎÓÃÓï¾äɱËÀËùÓÐoracle´ø(LOCAL=NO)µÄ½ø³Ì£¿
·½·¨Ò»£º(½øÈëoracleÓû§ÏÂ)
$ a=`ps -ef |grep oracle$ORACLE_SID|grep LOCAL=NO |awk '{print $2}'`
»òÕß (È¥³ýµ±Ç°grep½ø³Ì)
$ a=`ps -ef |grep oracle$ORACLE_SID|grep LOCAL=NO |grep -v grep|awk '{print $2}'`
$ echo $a
$ kill -9 $a
·½·¨¶þ£º£¨Ö±½Óɱ£©
$ p ......
topÃüÁîºÍpsÃüÁîµÄ»ù±¾×÷ÓÃÊÇÏàͬµÄ£¬ÏÔʾϵͳµ±Ç°µÄ½ø³ÌºÍÆäËü×´¿ö£»µ«ÊÇtopÊÇÒ»¸ö¶¯Ì¬ÏÔʾ¹ý³Ì£¬¼´¿ÉÒÔͨ¹ýÓû§°´¼üÀ´²»¶Ïˢе±Ç°×´Ì¬¡£Èç¹ûÔÚǰִ̨ÐиÃÃüÁËü½«¶Àռǰ̨£¬Ö±µ½Óû§ÖÕÖ¹¸Ã³ÌÐòΪֹ¡£±È½Ï׼ȷµÄ˵£¬topÃüÁîÌṩÁËʵʱµÄ¶Ôϵͳ´¦ÀíÆ÷µÄ״̬¼àÊÓ¡£Ëü½«ÏÔʾϵͳÖÐCPU×î“Ãô¸Ð”µÄÈÎÎñÁÐ±í¡£¸ÃÃü ......
ÐòÑÔ
¡¡¡¡LinuxÊÇUnix²Ù×÷ϵͳµÄÒ»ÖÖ±äÖÖ£¬ÔÚLinuxϱàдÇý¶¯³ÌÐòµÄÔÀíºÍ˼ÏëÍêÈ«ÀàËÆÓÚÆäËûµÄUnixϵͳ£¬µ«Ëüdos»òwindow»·¾³ÏµÄÇý¶¯³ÌÐòÓкܴóµÄÇø±ð¡£ÔÚLinux»·¾³ÏÂÉè¼ÆÇý¶¯³ÌÐò£¬Ë¼Ïë¼ò½à£¬²Ù×÷·½±ã£¬¹¦ÄÜÒ²ºÜÇ¿´ó£¬µ«ÊÇÖ§³Öº¯ÊýÉÙ£¬Ö»ÄÜÒÀÀµkernelÖеĺ¯Êý£¬ÓÐЩ³£ÓõIJÙ×÷Òª×Ô¼ºÀ´±àд£¬¶øÇÒµ÷ÊÔÒ²²»·½±ã¡£±¾ÈËÕâ¼ ......
1) SIGHUP
±¾ÐźÅÔÚÓû§ÖÕ¶ËÁ¬½Ó(Õý³£»ò·ÇÕý³£)½áÊøÊ±·¢³ö, ͨ³£ÊÇÔÚÖն˵ĿØÖƽø³Ì½áÊøÊ±, ֪ͨͬһsessionÄڵĸ÷¸ö×÷Òµ, ÕâʱËüÃÇÓë¿ØÖÆÖն˲»ÔÙ¹ØÁª¡£
µÇ¼Linuxʱ£¬ÏµÍ³»á·ÖÅ䏸µÇ¼Óû§Ò»¸öÖÕ¶Ë(Session)¡£ÔÚÕâ¸öÖÕ¶ËÔËÐеÄËùÓгÌÐò£¬°üÀ¨Ç°Ì¨½ø³Ì×éºÍºǫ́½ø³Ì×飬һ°ã¶¼ÊôÓÚÕâ
¸ö Sessio ......