LinuxÖжϴ¦ÀíÖ®Ò»(¹²ÏíÖжϴ¦Àí³õ̽)
ÔÚ¿´LKD(µÚ¶þ°æ)µÚÁùÕÂ(ÖжϺÍÖжϴ¦Àí³ÌÐò)µÄʱºò£¬¸Õ¿ªÊ¼½Ó´¥µ½ÖжÏÏߺź͹²ÏíÖжÏÏßµÄʱºò°ëÌìã¶ÊÇûÓÐÏëÃ÷°×£¬ÔÀ´Àí½âµÄÖжϺÍÖжϺÍÖжϴ¦Àí³ÌÐò¾ÍÊÇͨ¹ýÖжÏÏߺÅÀ´½øÐйØÁª£¬Ó²¼þ·¢ÉúÖжϣ¬È»ºóͨ¹ýÖжÏÏߺŲéÕÒ¶ÔÓ¦µÄÖжϴ¦Àí³ÌÐò£¬×îºóÖжϴ¦Àí³ÌÐò·µ»Ø£¬´Ë´ÎÖжÏÔò´¦ÀíÍê±Ï£¬Ã»Ï뵽ð³öÀ´¸ö¹²ÏíÖжÏÏߣ¬ºÇºÇ£¬±È½Ïһϣ¬¸Ð¾õ֪ʶÕæµÄÒª¼°Ê±¸üУ¬ºÇºÇ¡£
´Ó¸öÈ˵ÄÀí½â£¬Linux2.6Äں˶ÔÖжϴ¦Àí³ÌÐòµÄÏÖÔڵĴ¦Àí¿ÉÒÔ·ÖΪÁ½ÖÖģʽ£¬Ò»ÖÖ¾ÍÊÇÉÏÃæ˵µÄÀϵÄģʽ(·Ç¹²ÏíÖжÏÏß)£¬Ò»ÖÖÊôÓÚʹÓù²ÏíÖжÏÏßµÄÐÂģʽ£¬´ÓÆäʹÓõÄ×¢²áÖжϴ¦Àí³ÌÐòµÄº¯ÊýÖÐÀ´·ÖÎö£¬º¯ÊýÔÐÍÈçÏ£º
int request_irq(unsigned int irq,
irqreturn_t (*handler)(int, void *, struct pt_regs *),
unsigned long irqflags,
const char * devname,
void * dev_id);
²ÎÊý1£ºÖжÏÏߺÅ
²ÎÊý2£ºÖжϴ¦Àí³ÌÐòº¯ÊýÖ¸Õë
²ÎÊý3£º±êÖ¾ÑÚÂë(SA_INTERRUPT, SA_SAMPLE_RANDOM, SA_SHIRQ)
²ÎÊý4£ºÓÃÓÚ²ÎÊý3ΪSA_SHIRQ(¹²ÏíÖжÏÏß)µÄʱºò£¬ÆäËûΪNULL
ÔÀ´¶ÔÓÚ¼ÆËã»úÉ豸±È½ÏÉÙµÄʱºò£¬¿ÉÄÜÒ»¸öÖжÏÏߺÿÉÒÔ¶ÔÓ¦Ò»¸öÖжϴ¦Àí³ÌÐò(·Ç¹²ÏíÖжÏÏß)£¬Õâʱºò²ÎÊý4ΪNULL£¬Ã»ÓÐÈκÎÓ㬵«Ëæ׿ÆËã»úÉ豸µÄÔö¼Ó£¬Ò»¸öÖжÏÏߺŶÔÓ¦Ò»¸öÖжϴ¦Àí³ÌÐòÒѾ²»Ì«ÏÖʵ£¬Õâ
Ïà¹ØÎĵµ£º
#ifndef __KERNEL__
#define __KERNEL__
#endif
#ifndef MODULE
#define MODULE
#endif
#include<linux/config.h>
#include<linux/module.h>
#include<linux/version.h>
#include<linux/init.h>
#include<linux/kernel.h>
#include<linux/errno.h>
#include<linux/sche ......
-------------------------------------------------------------------------------------------------------
//By:yuyongbao
//QQ:673360056
//ƽ̨powerpc mpc8379e linux 2.6.22
£±¡¢ÏÈÓÃfdisk ¸øSD¿¨·ÖÇø£¬ÓÃ×÷Îļþϵͳ¡£
½«¶Á¿¨Æ÷²åÈëPC»úÐéÄâ»ú£¬ÔÚPC»úÉÏÖ´ÐÐfdisk /dev/sdb
Ñ¡Ôñn¡¡¡£¡£¡£¡£¡£¡£¡£¡£² ......
-------------------------------------------------------------------------------------------------------
//By:yuyongbao
//QQ:673360056
LinuxÏÂÓÃBusy BoxÖÆ×÷RamdiskÈ«¹ý³Ì
1 ½¨Á¢¸ùÎļþϵͳ½á¹¹
#mkdir rootfs
#cd rootfs
#mkdir bin dev etc lib proc sbin tmp usr var
#chmod 1777 tmp
#mk ......
LinuxÉ豸Çý¶¯Ñ§Ï°£Davinci¿ª·¢°åÉÏÔËÐеÄhelloÄ£¿é
¿´Á˺ܶà¸öhello worldÁË£¬×Ô¼ºÀ´Ð´Ò»¸öÔÚdavinci°å¿éÉÏÅܵİɡ£
Ö÷ÌåºÜ¼òµ¥£¬¾ÍÊÇÒ»¸öCÎļþhello_davinci.c¡£
/*================hello_davinci.c==============*/
#include <linux/module.h> /*ËùÓÐÄ£¿é¶¼ÐèÒªµÄÍ·Îļþ*/
#include <lin ......
ѧϰӦ¸ÃÊÇÒ»¸öÏÈ°ÑÎÊÌâ¼òµ¥»¯£¬ÔÚ°ÑÎÊÌ⸴ÔÓ»¯µÄ¹ý³Ì¡£Ò»¿ªÊ¼¾Í×ÅÊÖ´¦Àí¸´ÔÓµÄÎÊÌ⣬ÄÑÃâÈà ÈËÓÐÐľªµ¨²ü£¬×½½ó¼ûÖâµÄ¸Ð¾õ¡£¶ÁLinuxÍø¿¨Çý¶¯Ò²ÊÇÒ»Ñù¡£Ädz¤³¤µÄÔ´Âë¼ÐÔÓ×ÅÄÇЩÎÒÃÇÄ°ÉúµÄ±äÁ¿ºÍ·ûºÅ£¬Íû¶øÉúη±ãÊÇÀíËùµ±È»µÄÁË¡£²»Òªµ£ÐÄ£¬ÊÂÇé ×ÜÓнâ¾öµÄ°ì·¨£¬ÏÈ°ÑһЩÎÒÃǹܲ»×ŵĴúÂëÇиî³öÈ¥£¬ÁôϱØÐëµÄ²¿·Ö£¬°Ñ¿ò¼ÜÕ ......