Linux miscÉ豸
²Î¿¼£º
http://longer.spaces.eepw.com.cn/articles/article/item/60415
http://imganquan.org/blog/?p=350
ÍøÉÏÕҵ쬹éÄÉһϣº
ÔÓÏîÉ豸£¨misc device£©
ÔÓÏîÉ豸ҲÊÇÔÚǶÈëʽϵͳÖÐÓõñȽ϶àµÄÒ»ÖÖÉ豸Çý¶¯¡£ÔÚ Linux Äں˵Äinclude\linuxĿ¼ÏÂÓÐMiscdevice.hÎļþ£¬Òª°Ñ×Ô¼º¶¨ÒåµÄmisc device´ÓÉ豸¶¨ÒåÔÚÕâÀï¡£ÆäʵÊÇÒòΪÕâЩ×Ö·ûÉ豸²»·ûºÏÔ¤ÏÈÈ·¶¨µÄ×Ö·ûÉ豸·¶³ë£¬ËùÓÐÕâЩÉ豸²ÉÓÃÖ÷±àºÅ10 £¬Ò»Æð¹éÓÚmisc device£¬Æäʵmisc_register¾ÍÊÇÓÃÖ÷±êºÅ10µ÷ÓÃregister_chrdev()µÄ¡£
Ò²¾ÍÊÇ˵£¬miscÉ豸ÆäʵҲ¾ÍÊÇÌØÊâµÄ×Ö·ûÉ豸¡£
×Ö·ûÉ豸(char device)
ʹÓÃregister_chrdev(LED_MAJOR,DEVICE_NAME,&dev_fops)×¢²á×Ö·ûÉ豸Çý¶¯³ÌÐòʱ£¬Èç¹ûÓжà¸öÉ豸ʹÓøú¯Êý×¢²áÇý¶¯³ÌÐò£¬LED_MAJOR²»ÄÜÏàͬ£¬·ñÔò¼¸¸öÉ豸¶¼ÎÞ·¨×¢²á(ÎÒÒÑÑéÖ¤)¡£Èç¹ûÄ£¿éʹÓø÷½Ê½×¢²á²¢ÇÒ LED_MAJORΪ0(×Ô¶¯·ÖÅäÖ÷É豸ºÅ )£¬Ê¹ÓÃinsmodÃüÁî¼ÓÔØÄ£¿éʱ»áÔÚÖÕ¶ËÏÔʾ·ÖÅäµÄÖ÷É豸ºÅºÍ´ÎÉ豸ºÅ£¬ÔÚ/devĿ¼Ï½¨Á¢¸Ã½Úµã£¬±ÈÈçÉ豸leds£¬Èç¹û¼ÓÔØ¸ÃÄ£¿éʱ·ÖÅäµÄÖ÷É豸ºÅºÍ´ÎÉ豸ºÅΪ253ºÍ0£¬Ôò½¨Á¢½Úµã:mknod leds c 253 0¡£Ê¹ÓÃregister_chrdev (LED_MAJOR,DEVICE_NAME,&dev_fops)×¢²á×Ö·ûÉ豸Çý¶¯³ÌÐòʱ¶¼ÒªÊÖ¶¯½¨Á¢½Úµã £¬·ñÔòÔÚÓ¦ÓóÌÐòÎÞ·¨´ò¿ª¸ÃÉ豸¡£
±¾ÎÄÀ´×ÔCSDN²©¿Í£¬×ªÔØÇë±êÃ÷³ö´¦£ºhttp://blog.csdn.net/lanmanck/archive/2009/10/22/4713978.aspx
Ïà¹ØÎĵµ£º
ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......
½øÈëviºó ÓÐÁ½ÖÖģʽ
1.±à¼Ä£Ê½
2.ÃüÁîģʽ
½øÈëviºóĬÈÏÊÇÃüÁîģʽ£¬ËùÒÔ²»ÒªÂÒ°´ ¾Í»áµÃµ½ddµÄ¾¯¸æÉù£¬ÒªÊäÈëÎÄ×ֵϰ Çë°´aºói ¾Í¿ÉÒÔ¿ªÊ¼ÊäÈëÎÄ×ÖÀ£¡
ÊäÈë½áÊøºó Çë°´esc¼ü»ØÃüÁîģʽ
ÊäÈëq¾ÍÊÇÍ˳ö
ÊäÈëwq¾ÍÊÇ´æÅ̺óÍ˳ö
ÊäÈëq!·ÅÆú´æÅÌÇ¿ÐÐÍ˳ö
.
Vi µÄʹÓÃ
Vi ÒѾÊÇ Unix ϵͳÖбê×¼µÄÎÄ×Ö±à¼Æ ......
1. ϵͳÆô¶¯ºó,ÔÚ³öÏÖgrub»ÃæÊ±£¬ÓÃÉÏϼüÑ¡ÖÐÄãÆ½Ê±Æô¶¯linuxµÄÄÇÒ»ÏȻºó°´e¼ü
2. ÔÙ´ÎÓÃÉÏϼüÑ¡ÖÐÄãÆ½Ê±Æô¶¯linuxµÄÄÇÒ»Ïî(ÀàËÆÓÚkernel/boot mlinuz-2.4.18-14 ro root=LABEL=/)£¬È»ºó°´e¼ü
3. ÐÞ¸ÄÄãÏÖÔÚ¼ûµ½µÄÃüÁîÐУ¬¼ÓÈësingle£¬½á¹ûÈçÏ£º
kernel /boot mlinuz-2.4.18-14 single ro ......
refer:http://www.cnblogs.com/diylab/archive/2008/04/24/1169771.html
Õâ¸ömakefile¿ÉÓÃÓÚ±àÒë´ó¶àÊýµÄc++¹¤³Ì¡£
Äã¿ÉÒÔ¸ù¾ÝÐèÒªÐÞ¸ÄÏÂÃæµÄ²ÎÊý£º
VPATH: Ô´ÎļþµÄÎļþ·¾¶¡£¶à¸öÎļþ¼Ð·¾¶Óÿոñ·Ö¸ô
OBJ£º ±àÒëÄ¿±êËùÐèÒªµÄ.oÎļþ
µ±È»£¬ÄãÒ²¿ÉÒÔ²»¸Ä¶¯´ËÎļþ£¬¶øÖ±½ÓÔÚ make ÃüÁîµÄ²ÎÊýÖÐÖ¸¶¨
È磺
make ......
1.¹ÜµÀ
1.1ÆÕͨ¹ÜµÀ
#include <unistd.h>
#include <sys/types.h>
#include <stdio.h>
#include <errno.h>
#include <stdlib.h>
int main()
{
int pipe_fd[2];
pid_t pid;
  ......