linux 0.11 ÄÚºËѧϰ sched.c£¬µ÷¶È½ø³Ì¡£
/*
* 2010-1-21
* ¸ÃÎļþʱÄÚºËÖÐÓйØÈÎÎñµ÷¶ÈµÄº¯Êý³ÌÐò£¬ÆäÖаüº¬»ù±¾º¯Êýsleep_on£¬
* wakeup£¬scheduleµÈ£¬ÒÔ¼°Ò»Ð©¼òµ¥µÄϵͳµ÷Óá£Í¬Ê±½«ÈíÅ̵ö²Ù×÷
* º¯ÊýÒ²·ÅÖÃÔÚÕâÀï¡£
*
* scheduleº¯ÊýÊ×ÏȶÔËùÓеÄÈÎÎñ¼ì²é£¬»½ÐÑÈκÎÒ»¸öÒѾµÃµ½ÐźŵÄÈÎÎñ£¬
* ¾ßÌåµÄ·½·¨ÊÇÕë¶ÔÈÎÎñÊý×éÖеÄÿ¸öÈÎÎñ£¬¼ì²éÆä¾¯±¨¶¨Ê±Öµalarm¡£Èç¹ûÈÎÎñ
* µÄalarmÒѾ³¬ÆÚ£¨alarm < jiffies£©£¬ÔòÔÚËüµÄÐźÅλͼÖÐÉèÖÃSIGALARM£¬È»ºó
* ÇéÊéalarmÖµ¡£jiffiesÊÇϵͳ×Ô´Ó¿ª»úÖ®ºóËãÆðµÄµÎ´ðÊý¡£ÔÚscheed.hÖж¨Ò壬
* Èç¹û½ø³ÌÐźŵÄλͼÖгýÈ¥±»×èÈûµÄÐźÅÖ®Í⻹ÓÐÆäËûÐźţ¬²¢ÇÒÈÎÎñ´¦ÓÚ¿É
* ÖжÏ˯Ãß״̬£¬ÔòÖÃÈÎÎñΪ¾ÍÐ÷״̬¡£
* ËæºóÊǵ÷¶Èº¯ÊýµÄºËÐÄ´¦Àí£¬Õⲿ·Ö´úÂë¸ù¾Ý½ø³Ìʱ¼äƬºÍÓÅÏÈȨµÄµ÷¶È»úÖÆ£¬
* À´Ñ¡Ôñ½«ÒªÖ´ÐеijÌÐò¡£ËûÊ×ÏÈÊÇÑ»·¼ì²éÈÎÎñÊý×éÖеÄËùÓÐÈÎÎñ¡£¸ù¾Ýÿ¸ö¾ÍÐ÷
* ÈÎÎñÊ£ÓàÖ´ÐÐʱ¼äÖµcounterÖÐѡȡһ¸ö×î´óµÄ£¬ÀûÓÃswitch_toº¯ÊýÍê³ÉÈÎÎñ
* ת»»¡£Èç¹ûËùÓеľÍÐ÷ÈÎÎñµÄ¸ÃÖµ¶¼ÊÇ0£¬Ôò±íʾ´Ë¿ÌËùÓÐÈÎÎñµÄʱ¼äƬ¶¼ÒÑÔËÐÐÍê¡£
* ÓÚÊǾ͸ù¾ÝÈÎÎñµÄÓÅÏÈȨֵpriority£¬ÖØÖÃÿ¸öÈÎÎñµÄÔËÐÐʱ¼äcounter¡£ÔÚÖØÐÂ
* Ñ»·¼ì²éËùÓеÄÈÎÎñÖØµÄÖ´ÐеÄʱ¼äƬֵ¡£
* ÁíÒ»¸öÖµµÃһ˵µÄÊÇsleep_onº¯Êý£¬¸Ãº¯ÊýËä¶Ì£¬È´Òª±Èscheduleº¯ÊýÄÑÀí½â£¬
* ¼òµ¥µÄ½²£¬sleep_onº¯ÊýÖ÷ÒªµÄ¹¦ÄÜÊǵ±Ò»¸ö½ø³ÌËùÇëÇóµÄ×ÊÔ´ÕýÔÚæ£¬»òÕßÊÇ
* ²»ÔÚÄÚ´æÖб»Çл»³öÈ¥£¬·ÅÔڵȴý¶ÓÁÐÖеȴýÒ»¶Îʱ¼ä¡£Çл»»ØÀ´ºóÔÚ¼ÌÐøÖ´ÐС£
* ·ÅÈëµÈ´ý¶ÓÁеķ½Ê½ÊÇ£¬ÀûÓÃÁ˺¯ÊýÖеÄtmpÖ¸ÕëΪ¸÷¸öÕýÔڵȴýÈÎÎñµÄÁªÏµ¡£
* »¹ÓÐÒ»¸öº¯Êýinterrupt_sleep_on£¬¸Ãº¯ÊýµÄÖ÷Òª¹¦ÄÜÊÇÔÚ½ø³Ìµ÷¶È֮ǰ£¬°Ñµ±Ç°
* ÈÎÎñÉèÖÃΪ¿ÉÖжϵȴý״̬£¬²¢ÔÚ±¾ÈÎÎñ±»»½ÐÑÖ®ºó»¹ÐèÒª²é¿´¶ÓÁÐÉÏÊÇ·ñ»¹ÓÐ
* ºóÀ´µÄµÈ´ýÈÎÎñ£¬Èç¹ûÓУ¬Ïȵ÷¶ÈËûÃÇ¡£
*
*/
/*
* linux/kernel/sched.c
*
* (C) 1991 Linus Torvalds
*/
/*
* 'sched.c' is the main kernel file. It contains scheduling primitives
* (sleep_on, wakeup, schedule etc) as well as a number of simple system
* call functions (type getpid(), which just extracts a field fr
Ïà¹ØÎĵµ£º
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâÆª·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´Ë×ªÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨ÕâÆª²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
LinuxµÄÍøÂçÐÒéÕ»
LinuxµÄÐÒéÕ»ÆäʵÊÇÔ´ÓÚBSDµÄÐÒéÕ»£¬ËüÏòÉÏÒÔ¼°ÏòϵĽӿÚÒÔ¼°ÐÒéÕ»±¾ÉíµÄÈí¼þ·Ö²ã×éÖ¯µÄ·Ç³£ºÃ¡£
LinuxµÄÐÒéÕ»»ùÓÚ·Ö²ãµÄÉè¼ÆË¼Ï룬×ܹ²·ÖΪËIJ㣬´ÓÏÂÍùÉÏÒÀ´ÎÊÇ £ºÎïÀí²ã£¬Á´Â·²ã£¬ÍøÂç²ã£¬Ó¦Óò㡣
& ......
ÍØ²¨±ü³Ð²»¶Ï¿ªÍؽøÈ¡µÄ¾«Éñ£¬ÔÚ¼¼ÊõÑз¢ºÍÖ§³ÖÉϲ»¶ÏµÄͶÈëÈËÁ¦ÎïÁ¦£¬Á¦ÇóÔÚ²»¶Ï±ä»¯µÄÊг¡ÐèÇóÖУ¬´ïµ½100%µÄ¿Í»§ÂúÒâ¶È¡£ÔÚ¸Õ¸Õ̤Èë2010Ä꣬¸ù¾Ý¹ýÍùµÄÊг¡µ÷²é£¬½áºÏ¿Í»§µÄÐèÇóºÍ½¨Òé£¬ÍØ²¨ÓʼþÏµÍ³ÍÆ³öÁËLinux_°²ÌÚ°æ±¾£¬×÷ΪдºË͸ø¹ã´ó¿Í»§µÄµÚÒ»·ÝÀñÎï¡£
°²ÌÚ´¦ÀíÆ÷ÊÇ×î½üÊ®Äê²ÅÖð½¥·¢Õ¹ÆðÀ´µ ......
ÐźÅÊÇLinux±à³ÌÖзdz£ÖØÒªµÄ²¿·Ö£¬±¾ÎĽ«Ïêϸ½éÉÜÐźŻúÖÆµÄ»ù±¾¸ÅÄî¡¢Linux¶ÔÐźŻúÖÆµÄ´óÖÂʵÏÖ·½·¨¡¢ÈçºÎʹÓÃÐźţ¬ÒÔ¼°ÓйØÐźŵöϵͳµ÷Óá£
ÐźŻúÖÆÊǽø³ÌÖ®¼äÏ໥´«µÝÏûÏ¢µÄÒ»ÖÖ·½·¨£¬ÐźÅÈ«³ÆÎªÈíÖжÏÐźţ¬Ò²ÓÐÈ˳Æ×÷ÈíÖжϡ£´ÓËüµÄÃüÃû¿ÉÒÔ¿´³ö£¬ËüµÄʵÖʺÍʹÓúÜÏóÖжϡ£ËùÒÔ£¬ÐźſÉÒÔ˵Êǽø³Ì¿ØÖƵÄÒ ......
1 ÒýÑÔ
ÔÚǶÈëʽӦÓÃϵͳÖУ¬ÌرðÊÇÖÇÄÜÒÇÆ÷¡¢ÒÇ±í¡¢»úµçÉ豸¼°×°ÖÿØÖÆÖУ¬ÐèҪʹÓÃA/Dת»»½«Ä£ÄâµÄµçÁ¿ÐźÅת»»ÎªÊý×ÖÐźŽøÐд¦Àí£¬¶øºóÔÙ½«´¦ÀíµÄ½á¹ûͨ¹ýD/Aת»»ÎªÄ£ÄâÁ¿ÊµÏÖ¶Ô±»¿Ø¹ý³ÌºÍ¶ÔÏóµÄ¿ØÖÆ[1]¡£
»ùÓÚARM920TÄں˵Äs3c2410ÊÇÒ»¿îµÍ¹¦ºÄ£¬¸ßÐԼ۱ȵĴ¦ÀíÆ÷[2]¡£Õâ¿î´¦ÀíÆ÷ÄÚ²¿¼¯³ÉÁ˶àÖÖ¿ØÖƽӿڣ¬×Ô´ø8·1 ......