Linux tty/pty/pts ¸ÅÄîÇø±ð
tty0£6ÊÇlinux±¾µØÖÕ¶Ë£¬pts/xÊÇÔ¶³ÌµÇ½ÐèÒªµÄÖÕ¶Ë£¬±ÈÈçijÈËÒªtelnetµ½ÄãµÄ»ú×Ó£¬¾ÍÐèÒªÄãµÄϵͳÓÐpts/x¡£
»ù±¾¸ÅÄ
¡¡
¡¡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)£¬ÈκÎÉè¼Æ³ÉʹÓÃÒ»¸ö´®Ðж˿ÚÉ豸µÄ³ÌÐò
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈÐÒé ......
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
ÔÚlinuxϲ鿴½ø³Ì´ó¼Ò¶¼»áÏëµ½Óà ps -ef|grep XXX
¿ÉÊÇ¿´µ½µÄ²»ÊÇȫ·¾¶£¬Ôõô¿´È«Â·¾¶ÄØ£¿
ÿ¸ö½ø³ÌÆô¶¯Ö®ºóÔÚ /procÏÂÃæÓÐÒ»¸öÓÚpid¶ÔÓ¦µÄ·¾¶
ÀýÈ磺ps -ef|grep python
ÏÔʾ£ºoracle 4431 4366 0 18:56 pts/2 00:00:00 python Server.py
4431¾ÍÊǽø³ÌºÅ
µ½/pro ......
½ñÌìÖÕÓÚÄõ½moto¹Ù·½SDK£¬ÊÇfor A1200µÄ£¬°üÀ¨toolchianºÍEZX¿â¼°Í·Îļþ£¬¸ÃSDKÒ²ÊÊÓÃÓÚmoto E6. °´ÕÕ°²×°Ö¸µ¼Îĵµ°²×°ºÃSDK²¢Ö´Ðнű¾ÉèÖúû·¾³±äÁ¿ºó£¬Ê×ÏÈÊÇbuildÒ»¸ö×î¼òµ¥µÄsample³ÌÐòhello£¬ÒÔÑéÖ¤SDKÊÇ·ñ°²×°ÕýÈ·¡£ÔËÐÐqmakeÈ´³öÏÖÈçÏ´íÎó£º
~/workspace/devtools/moto-sdk/sample/gui/hello$ qmake hello.pro&n ......
Å£½ò×ÖµäÖжÔ"kernel"Ò»´ÊµÄ¶¨ÒåÊÇ£º"½ÏÈíµÄ¡¢Í¨³£ÊÇÒ»¸ö¼á¹û¿ÉʳÓõIJ¿·Ö¡£"µ±È»»¹ÓеڶþÖÖ¶¨Ò壺"ij¸ö¶«Î÷ºËÐÄ»òÕß×îÖØÒªµÄ²¿·Ö¡£"¶ÔLinuxÀ´Ëµ£¬ËüµÄKernelÎÞÒÉÊôÓÚµÚ¶þÖÖ½âÊÍ¡£ÈÃÎÒÃÇÀ´¿´¿´Õâ¸öÖØÒªµÄ¶«Î÷ÊÇÈçºÎ¹¤×÷µÄ£¬ÏÈ´ÓÒ»µãÀíÂÛ˵Æð¡£
¹ãÒ嵨À´Ëµkernel¾ÍÊÇÒ»¸öÈí¼þ£¬ËüÔÚÓ²¼þºÍÔËÐÐÔÚ¼ÆËã»úÉϵÄÓ¦ÓóÌÐòÖ®¼äÌá¹ ......