dzÎölinux¼üÅÌÉ豸¹¤×÷ºÍ×¢²áÁ÷³Ì
£¨1£©ÔÚ\drivers\input\Input.cÖС£
A£¬subsys_initcall(input_init);
B£¬static int __init input_init(void)ÖÐÍê³É¼¸¸öÖØÒªµÄ²Ù×÷£º
err = class_register(&input_class);ÒÔÊäÈëÀ෽ʽע²áÀà
input_proc_init(); //´´½¨procϵÄĿ¼ºÍÎļþ
register_chrdev(INPUT_MAJOR, "input", &input_fops); //×¢²á×Ö·ûÉ豸Çý¶¯³ÌÐòµ½ÄÚºË
£¨2£©ÔÚdrivers\input\keyboard\S3c-keypad.cÖУ¬ÊÇ×Ô¼ºµÄ°´¼ü´¦ÀíÎļþ¡£
A£¬¶¨Òå¸øandroidÉϲãµÄÂëÖµ
#define KEYCODE_HOME 58
#define KEYCODE_POWER 50
struct s3c_keypad_gpio_key gpio_key_smdk6410[] = {
{IRQ_EINT(6), S3C64XX_GPN(6), 2, KEYCODE_POWER, 1},
{IRQ_EINT(7), S3C64XX_GPN(7), 2, KEYCODE_HOME, 1},
};
·Ö±ðÊÇÍⲿÖжϺţ¬GPIO¿ÚºÅ£¬ÂëÖµ¡£
B£¬probe¹ý³Ì£º
module_init(s3c_keypad_init); //°´¼üinit
platform_driver_register(&s3c_keypad_driver); //×¢²áƽ̨Çý¶¯
s3c_keypad_driverµÄprobeº¯ÊýÊÇÖ÷Òª´¦Àí¹ý³Ì£º
static int __init s3c_keypad_probe(struct platform_device *pdev)
{
struct input_dev *input_dev; //×¢²áÒ»¸öÊäÈëÉ豸
platform_get_resource(pdev, IORESOURCE_MEM, 0);
request_mem_region(res->start, size, pdev->name);
ioremap(res->start, size); //·ÖÅä×ÊÔ´
keypad_clock = clk_get(&pdev->dev, "keypad");
clk_enable(keypad_clock); //»ñµÃkeypadµÄclock
set_bit(EV_KEY, input_dev->evbit); //±êÖ¾input_devÊÇKEYÉ豸
s3c_gpio_cfgpin(gpio_key->gpio, S3C_GPIO_SFN(gpio_key->gpio_af));
Ïà¹ØÎĵµ£º
´´½¨×ÀÃæͼ±ê
Ä¿Ç°½«ÍøÂçÓ¦ÓÃÀ©Õ¹µ½×ÀÃæÊÇÒ»¸öÇ÷ÊÆ£¬´æÔÚןܶà½â¾ö·½°¸£¬±¾ÎÄÒÔ Mozilla Prism ΪÀý£¬ÀàËƵķ½·¨Í¬ÑùÊÊÓÃÓÚ Google Chrome ¡£
1. µ½ Mozilla Prism µÄÍøÕ¾ÉÏÏÂÔØ Prism£¬µã»÷ Download Now Ö®ºó»áÌáʾÓÐÁ½ÖÖ£¬Ò»ÖÖÊÇÒÔ Mozilla Firefox À©Õ¹µÄ·½Ê½£¬ÊʺÏÒѾ°²×°ÓÐ Firefox µÄÅóÓÑ£»Ò»Ö ......
UNIXÊÇÀúÊ·×îÓƾõÄͨÓòÙ×÷ϵͳ¡£1969Ä꣬ÃÀ¹ú±´¶ûʵÑéÊÒµÄK.ThompsonºÍD.M.RitchieÔÚ¹æÄ£½ÏС¼°½Ï¼òµ¥µÄ·Öʱ²Ù×÷ϵͳMULTICSµÄ»ù´¡ÉÏ¿ª·¢³öUNIX, µ±Ê±ÊÇÔÚDECµÄPDP—7СÐͼÆËã»úÉÏʵÏֵģ¬1970ÄêÕýʽͶÈëÔËÐС£´ËºóÊýÄ꣬UNIXÒ»Ö±ÊÇÒ»¸öÏÞÓÚÔÚAT&TÄÚ²¿Ê¹ÓõIJÙ×÷ϵͳ¡£1971Ä꣬·¢Õ¹³öÒÔ PDP- ......
±êÌ⣺Linux½ø³ÌͨÐÅ-ʹÓÃÐźÅÁ¿
Ò»¡¢Ïà¹Ø֪ʶ
ÐźÅÁ¿£ºÒ»¸öÕûÊý£»
´óÓÚ»òµÈÓÚ0ʱ´ú±í¿É¹©²¢·¢½ø³ÌʹÓõÄ×ÊԴʵÌåÊý£»
СÓÚ0ʱ´ú±íÕýÔڵȴýʹÓÃÁÙ½çÇøµÄ½ø³ÌÊý£»
ÓÃÓÚ»¥³âµÄÐźÅÁ¿³õʼֵӦ´óÓÚ0£»
Ö»ÄÜͨ¹ýP¡¢VÔÓï²Ù×÷¶ø¸Ä±ä£»
ÐźÅÁ¿ÔªËØ×é³É£º
1¡¢±íʾÐźÅÁ¿ÔªË ......
ÔÚx86ƽ̨ÉÏ£¬linuxÄÚºËÓÃÁËÒ»¸ö±È½Ï¸´ÔÓµÄÆô¶¯ÐÒé¹æ·¶£¬Ö÷ÒªÓÉÓÚÀúÊ·ÔÒò£¬ÔçÆÚÏë°ÑÄÚºË×ö³É¿ÉÆô¶¯Ó³Ïñ£¬¸´ÔӵļÆËã»úÄÚ´æÄ£ÐͺÍÓÉÓÚʵģʽDOS³ÉΪÖ÷Á÷²Ù×÷ϵͳ¶øÓ°ÏìµÄ.
ÏÖÔÚÓÐÏÂÁÐÆô¶¯ÐÒé´æÔÚ£º
¾É°æÄںˣºÖ»Ö§³ÖzImageºÍImage.
2.00£ºÔö¼ÓbzImageºÍinitrdÖ§³Ö£¬Ò²ÓµÓÐÁËÒ»ÖÖÕý¹æ»¯µÄ·½·¨À´ÊµÏÖÆô¶ ......
¹¦ÄÜÃèÊö£º
´¦ÀíÐźš£¼È¿ÉÓÃÓÚÉ趨¶ÔÈÎÒâÐźŵĴ¦Àí·½Ê½£¬Ò²¿ÉÓÃÓÚ¼ìÑé¸ÃÐźŵÄÄ¿Ç°Ô¤Éè´¦Ö÷½Ê½¡£
Ó÷¨£º
#include <signal.h>
int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact);
&n ......