Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Enable/Disable Linux mousekeys

 
gcc mousekey.c -lX11 -IX11
´ò¿ªmousekeysÔËÐÐ./a.out
¹Ø±ÕmousekeysÔËÐÐ./a.out 1,ÕâÀïÔÚa.outºóÃæËæ±ã¼ÓÒ»¸ö²ÎÊý¾Í¿ÉÒÔÁË£¬ÒòΪÅжÏÌõ¼þΪ if(argc < 2)
/*********source code***************/
#include <stdio.h>
#include <string.h>
#include <X11/Xlib.h>
#include <X11/XKBlib.h>
int main(int argc, char *argv[])
{
 Display *display;
 unsigned long which;
 XkbDescPtr xkb;
 unsigned int status_mask = 0;
 unsigned short mk_delay = 160;
 unsigned short mk_interval = 50;
 unsigned short mk_time_to_max = 30;
 unsigned short mk_max_speed = 50;
 short mk_curve = 0;
 Status S;
 status_mask = XkbMouseKeysMask;
 display = XOpenDisplay(NULL);
 xkb = XkbGetMap(display, 0, XkbUseCoreKbd);
 if((int)xkb == BadAlloc || xkb == NULL)
 {
  printf("ERROR: unable to allocate storege.\n");
  return 1;
 }
 
 if((S = XkbGetControls(display, XkbAllControlsMask, xkb)) != Success)
 {
  if(S == BadAlloc)
   printf("ERROR: Unable to allocate storage.\n");
  else if(S == BadMatch)
   printf("ERROR: Unable to query state of keyboard.\n");
  else printf("ERROR: Unable to get state of keyboard controls. \n");
   return 2;
 }
 unsigned int changeEnabled = 0;
 unsigned int enabled = 0;
 changeEnabled |=status_mask;
 if(argc < 2)
  enabled |= status_mask;
 if(xkb->ctrls)
 {
  xkb->ctrls->enabled_ctrls &=~changeEnabled;
  xkb->ctrls->enabled_ctrls |=(changeEnabled & enabled);
  xkb->ctrls->mk_delay = mk_delay;
  xkb->ctrls->mk_interval = mk_interval;
  xkb->ctrls->mk_time_to_max = mk_time_to_max;
  xkb->ctrls->mk_max_speed = mk_max_speed;
 &nb


Ïà¹ØÎĵµ£º

LinuxÉ豸ģÐÍÖ®input×ÓϵͳÏê½â

Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâÆª·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´Ë×ªÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨ÕâÆª²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......

[תÌû]LinuxÇý¶¯¿ª·¢Ñ§Ï°µÄһЩ±ØÒª²½Öè

 1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......

¹ØÓÚLinux³£ÓõĶþ½øÖÆÎļþ·ÖÎö·½·¨

 
¡¡¡¡1¡¢ ×îÊ×ÏÈÓ¦¸Ã³¢ÊÔstringsÃüÁî,±ÈÈçÄõ½Ò»¸ö½Ðcr1µÄ¶þ½øÖÆÎļþ,¿ÉÒÔ:
¡¡¡¡$ strings cr1 | more
¡¡¡¡ÀïÃæ¿ÉÄÜ»áÓÐһЩ¶ÔÓÚÕâ¸öcr1µÄÃèÊö,ÕâЩÐÅÏ¢
¶¼ÊDZàÒëÖ®ºóÔÚ³ÌÐòÖÐÁôϵÄһЩÎı¾ÐÔµÄ˵Ã÷,ËùÒÔ¿ÉÄÜ»á¸æËßÄãÕâ¸öÎļþÊÇʲô.
¡¡¡¡±ÈÈçÓÐÊä³ö:
¡¡¡¡$ strings cr1 | more
¡¡¡¡%s %s %s%s%s -> %s%s% ......

Linux FTP ·þÎñÆ÷ÅäÖ÷½·¨

ÓÃtar°üÅäÖø߿ÉÓÃÐÔvsftp
vsftpd°²×°°ü£ºftp://vsftpd.beasts.org/users/cevans/
¿ªÆô£º service iptables start
¹Ø±Õ£º service iptables stop
/etc/init.d/iptables start/stop
»òÕßÔÚÈκÎĿ¼Ï¶¼¿ÉÒÔÓÃÄãÉÏÃæµÃÃüÁî¡£Á½ÕßÊÇÏàµÈµÄ¡£
µÚ¶þ¸öÎÊÌâÊÇÒòΪÄãµÄÖ÷»úÃû¸ÄµôÁË¡£
ÐÞ¸ÄÏÂÃæÁ½¸öÎļþ
1./etc/hosts ......

Linux ´®¿ÚÉ豸

 
ÔÚLinuxÖÐÓÃttySxµÄÐÎʽÀ´±íʾ´®¿ÚÉ豸Ãû£¬Èç COM1±»±íʾΪttyS0£¬COM2±»±íʾΪttyS1£¬ÒÔ´ËÀàÍÆ¡£ÏÂÃæÕâ¸öÃüÁîÏÔʾϵͳÖб»¼ì²âµ½µÄ´®¿Ú£º
# dmesg | grep ttyS
[   25.942157] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[   25.942840] 00:08: ttyS0 at I/O 0x3f8 (irq = 4) ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ