LinuxÖÐtty¡¢ pty¡¢ptsµÄ¸ÅÄîÇø±ð
LinuxÖÐtty¡¢
pty¡¢ptsµÄ¸ÅÄîÇø±ð
»ù±¾¸ÅÄ
1> tty(ÖÕ¶ËÉ豸µÄͳ³Æ):
ttyÒ»´ÊÔ´ÓÚ
Teletypes£¬»òÕßteletypewriters£¬ÔÀ´Ö¸µÄÊǵ紫´ò×Ö»ú£¬ÊÇͨ¹ý´®ÐÐÏßÓôòÓ¡»ú¼üÅÌͨ¹ýÔĶÁºÍ·¢ËÍÐÅÏ¢µÄ¶«Î÷£¬ºóÀ´Õâ¶«Î÷±»¼üÅÌ
ÓëÏÔʾÆ÷È¡´ú£¬ËùÒÔÏÖÔÚ½ÐÖն˱ȽϺÏÊÊ¡£
ÖÕ¶ËÊÇÒ»ÖÖ×Ö·ûÐÍÉ豸£¬ËüÓжàÖÖÀàÐÍ£¬Í¨³£Ê¹ÓÃttyÀ´¼ò³Æ¸÷ÖÖÀàÐ͵ÄÖÕ¶ËÉ豸¡£
2> pty£¨ÐéÄâÖÕ¶Ë):
µ«ÊÇÈç¹ûÎÒÃÇÔ¶³Ìtelnetµ½Ö÷»ú»òʹÓÃxtermʱ²»Ò²ÐèÒªÒ»¸öÖն˽»»¥Ã´£¿Êǵģ¬Õâ¾ÍÊÇÐéÄâÖÕ¶Ë
pty(pseudo-tty)
3> pts/ptmx(pts/ptmx½áºÏʹÓ㬽ø¶øÊµÏÖpty):
pts(pseudo-terminal slave)ÊÇptyµÄʵÏÖ·½·¨£¬Óëptmx(pseudo-terminal
master)ÅäºÏʹÓÃʵÏÖpty¡£
Linux ÖÕ¶Ë£º
ÔÚLinuxϵͳµÄÉè±¸ÌØÊâÎļþĿ¼/dev/Ï£¬ÖÕ¶ËÌØÊâÉ豸ÎļþÒ»°ãÓÐÒÔϼ¸ÖÖ£º
1¡¢´®Ðж˿ÚÖÕ¶Ë (/dev/ttySn)
´®Ðж˿ÚÖÕ¶Ë(Serial Port
Terminal)ÊÇʹÓüÆËã»ú´®Ðж˿ÚÁ¬½ÓµÄÖÕ¶ËÉ豸¡£¼ÆËã»ú°Ñÿ¸ö´®Ðж˿ڶ¼¿´×÷ÊÇÒ»¸ö×Ö·ûÉ豸¡£ÓжÎʱ¼äÕâЩ´®Ðж˿ÚÉ豸ͨ³£±»³ÆÎªÖÕ¶ËÉ豸£¬ÒòΪ
ÄÇʱËüµÄ×î´óÓÃ;¾ÍÊÇÓÃÀ´Á¬½ÓÖÕ¶Ë¡£ÕâЩ´®Ðж˿ÚËù¶ÔÓ¦µÄÉ豸Ãû³ÆÊÇ/dev/tts/0(»ò/dev/ttyS0),
/dev/tts/1(»ò/dev/ttyS1)µÈ£¬É豸ºÅ·Ö±ðÊÇ(4,0),
(4,1)µÈ£¬·Ö±ð¶ÔÓ¦ÓÚDOSϵͳϵÄCOM1¡¢COM2µÈ¡£ÈôÒªÏòÒ»¸ö¶Ë¿Ú·¢ËÍÊý¾Ý£¬¿ÉÒÔÔÚÃüÁîÐÐÉϰѱê×¼Êä³öÖØ¶¨Ïòµ½ÕâÐ©ÌØÊâÎļþÃûÉϼ´¿É¡£ÀýÈ磬
ÔÚÃüÁîÐÐÌáʾ·ûϼüÈ룺echo test >
/dev/ttyS1»á°Ñµ¥´Ê”test”·¢Ë͵½Á¬½ÓÔÚttyS1(COM2)¶Ë¿ÚµÄÉ豸ÉÏ¡£¿É½Ó´®¿ÚÀ´ÊµÑé¡£
2¡¢Î±ÖÕ¶Ë(/dev /pty/)
αÖÕ¶Ë(Pseudo Terminal)ÊdzɶԵÄÂß¼ÖÕ¶ËÉ豸(¼´masterºÍslaveÉ豸,
¶ÔmasterµÄ²Ù×÷»á·´Ó³µ½slaveÉÏ)¡£
ÀýÈç/dev/ptyp3ºÍ/dev/ttyp3(»òÕßÔÚÉ豸ÎļþϵͳÖзֱðÊÇ/dev/pty /m3ºÍ
/dev/pty/s3)¡£ËüÃÇÓëʵ¼ÊÎïÀíÉ豸²¢²»Ö±½ÓÏà¹Ø¡£Èç¹ûÒ»¸ö³ÌÐò°Ñptyp3(masterÉ豸)¿´×÷ÊÇÒ»¸ö´®Ðж˿ÚÉ豸£¬ÔòËü¶Ô¸Ã¶Ë¿ÚµÄ¶Á/
д²Ù×÷»á·´Ó³ÔÚ¸ÃÂß¼ÖÕ¶ËÉ豸¶ÔÓ¦µÄÁíÒ»¸öttyp3(slaveÉ豸)ÉÏÃæ¡£¶øttyp3ÔòÊÇÁíÒ»¸ö³ÌÐòÓÃÓÚ¶Áд²Ù×÷µÄÂß¼É豸¡£
Õâ
Ñù£¬Á½¸ö³ÌÐò¾Í¿ÉÒÔͨ¹ýÕâÖÖÂß¼É豸½øÐл¥ÏཻÁ÷£¬¶øÆäÖÐÒ»¸öʹÓÃttyp3µÄ³ÌÐòÔòÈÏΪ×Ô¼ºÕýÔÚÓëÒ»¸ö´®Ðж˿ڽøÐÐͨÐÅ¡£ÕâºÜÏóÊÇÂß¼É豸¶ÔÖ®¼äµÄ¹ÜµÀ
²Ù×÷¡£¶ÔÓÚttyp3(s3)£¬ÈκÎÉè¼Æ³ÉʹÓÃÒ»¸ö´®Ðж˿ÚÉ豸µÄ³ÌÐò¶¼¿ÉÒÔʹÓøÃÂß¼É豸¡£µ«¶ÔÓÚʹÓÃptyp3µÄ³ÌÐò£¬ÔòÐèҪרÃÅÉè¼ÆÀ´Ê¹ÓÃ
ptyp3(m3)Âß¼É豸¡£
ÀýÈ磬Èç¹ûijÈËÔÚÍø
Ïà¹ØÎĵµ£º
1. Makefile
ʹÓÃMakefileÀ´±àÒëÄ£¿é£¬²»ÄÜÖ±½ÓʹÓÃgcc¡£
ʵ¼ÊʹÓõÄÊǵ±Ç°»î¶¯ÄÚºËÄ£¿éµÄMakefileÀ´Íê³ÉÏà¹Ø¹¤×÷µÄ¡£
ifneq ($(KERNELRELEASE),)
obj-m := hello.o calculate.o
else
KDIR := /lib/modules/2.6.18-53.el5xen/build
all:
&nbs ......
Qt
for Embedded Linux Architecture
http://doc.qt.nokia.com/4.6/qt-embedded-architecture.html
Õë¶ÔǶÈëʽLINUX²Ù×÷ϵͳµÄQTµÄ¼Ü¹¹
¹«Ë¾½«ÔËÐÐÔÚǶÈëʽLINUXÉ豸£¨Ç¶ÈëʽÉ豸£»¸ÃÉ豸ÉÏÔËÐеIJÙ×÷ϵͳÊÇLINUX£©ÉϵÄQT×öÁËһЩ¶¨ÖƺÍÐ޸ģ¬Ê¹Æä¸üÊʺÏǶÈëʽÉ豸ÉϵÄLINUXϵͳÉÏÔËÐС£ÒÔϽ«ÕâÑùÕë¶ÔLINUXǶÈëʽÉè± ......
shell½Å±¾Ô´Âë: widget.sh #!/bin/bash
####################±äÁ¿¶¨Òå####################
shellroot=/var/shell
shdir=${shellroot}/sh
source_dir=${shellroot}/source
tmp_dir=${shellroot}/temp
target_dir=${shellroot}/target
js_dir=${shellroot}/js
##################³ ......
ʹÓÃLinuxÏÂmanÒѾºÜ¾ÃÁË¡£µ«Ö»ÊÇ´ó¸ÅÖªµÀÆäÄÚÈݵĴæ·ÅĿ¼£¬ÒÔ¼°man number xxxÖÐmumberµÄº¬Òå¡£½ñÌìÐèÒªÌí¼ÓC++ man page¡£Ë³±ã½«manµÄÄÚÈÝ×÷Ò»¸ö½ÏÏêϸµÄÁ˽⡣ 0. manºóÃæÊý×ֵĺ¬Ò壺 ֮ǰSamÔÚ²éÕÒC¿âº¯Êýʱ£¬»áʹÓÃ#man 3 func ÔÚ²éÕÒϵͳµ÷ÓÃʱ£¬ÔòʹÓÃ#man 2 fork. ·ñÔòÓÐʱ»á³öÏֲ鵽ͬÃûµÄshellÖÐÃüÁîµÄÇé¿ ......