LinuxϵĽø³Ì¿ØÖƿ飨PCB£©
½ø³ÌÔÚ²Ù×÷ϵͳÖж¼ÓÐÒ»¸ö»§¿Ú£¬ÓÃÓÚ±íʾÕâ¸ö½ø³Ì¡£Õâ¸ö»§¿Ú²Ù×÷ϵͳ±»³ÆÎªPCB£¨½ø³Ì¿ØÖƿ飩£¬ÔÚlinuxÖоßÌåʵÏÖÊÇ
task_structÊý¾Ý½á¹¹£¬Ëü¼Ç¼ÁËһϼ¸¸öÀàÐ͵ÄÐÅÏ¢£º
1.״̬ÐÅÏ¢£¬ÀýÈçÕâ¸ö½ø³Ì´¦ÓÚ¿ÉÖ´ÐÐ״̬£¬ÐÝÃߣ¬¹ÒÆðµÈ¡£
2.ÐÔÖÊ£¬ÓÉÓÚunixÓкܶà±äÖÖ£¬½ø³ÌÓÐ×Ô¼º¶ÀÌØµÄÐÔÖÊ¡£
3.×ÊÔ´£¬×ÊÔ´µÄÁ´½Ó±ÈÈçÄڴ棬»¹ÓÐ×ÊÔ´µÄÏÞÖÆºÍȨÏ޵ȡ£
4.×éÖ¯£¬ÀýÈç°´ÕÕ¼Ò×å¹ØÏµ½¨Á¢ÆðÀ´µÄÊ÷£¨¸¸½ø³Ì£¬×Ó½ø³ÌµÈ£©¡£
ÏÂÃæÊÇÕâÒ»¸öÊý¾Ý½á¹¹
struct task_struct {
/*
* offsets of these are hardcoded elsewhere - touch with care
*/
volatile long state; /* -1 unrunnable, 0 runnable, >0 stopped
*/ //½ø³Ìµ±Ç°µÄ״̬
unsigned long flags; /* per process flags, defined below */
//·´Ó¦½ø³Ì״̬µÄÐÅÏ¢£¬µ«²»ÊÇÔËÐÐ״̬£¬¶¨Òå¼ûÏÂ
int sigpending; //½ø³ÌÊÕµ½ÁËÐźţ¬µ«ÉÐδ´¦Àí
mm_segment_t addr_limit; /* thread address space: //Ðé´æµØÖ·ÉÏÏÞ
0-0xBFFFFFFF for user-thead
0-0xFFFFFFFF for kernel-thread
*/
struct exec_domain *exec_domain;
volatile long need_resched; //Óë½ø³Ìµ÷¶ÈÓйرíʾÓû§´Óϵͳ¿Õ¼ä°´·µ»ØÓû§¿Õ¼äÒªÖ´ÐеÄÒ»´Îµ÷¶È
unsigned long ptrace;
int lock_depth; /* Lock depth */
/*
* offset 32 begins here on 32-bit platforms. We keep
* all fields in a single cacheline that are needed for
* the goodness() loop in schedule().
*/
long counter; //Óë½ø³Ìµ÷¶ÈÏà¹Ø
long ni
Ïà¹ØÎĵµ£º
linux limits.conf ÅäÖÃ
¡¡¡¡limits.conf Îļþʵ¼ÊÊÇ Linux PAM£¨²åÈëʽÈÏ֤ģ¿é£¬Pluggable Authentication Modules£©ÖÐ pam_limits.so µÄÅäÖÃÎļþ£¬¶øÇÒÖ»Õë¶ÔÓÚµ¥¸ö»á»°¡£
¡¡¡¡limits.confµÄ¸ñʽÈçÏ£º
¡¡¡¡username|@groupname type resource limit
¡¡¡¡username|@groupname£ºÉèÖÃÐèÒª±»ÏÞÖÆµÄÓû§Ãû£¬×éÃûÇ°Ãæ¼Ó@º ......
ÕâÁ½ÌìÔÚ¸ø×Ô¼ºµÄlinuxϵͳÌí¼Ó´¥ÃþÆÁ£¬ÊìÁ·ÒÔºóÔÙÏë°ì·¨ÒÆÖ²¡£ÒòΪÒÔǰ´ÓÀ´Ã»ÓнӴ¥¹ýÕâ·½ÃæÖ»ÊÇ£¬Ö»ÊÇÔÚÒøÐУ¬³¬ÊУ¬Òƶ¯Óùý¶øÒÑ£¬¼¸ºõ¶Ô¿ª·¢Ã»ÓÐÈκΰïÖú¡£ÓÚÊÇÎÒÔÚwindowsÖа²×°Ê¹Óã¬È·¶¨Ã»ÓÐÎÊÌâ¡£
1.´Ó¹Ù·½ÍøÕ¾ÏÂÕ¾windowsXPÇý¶¯£¬WWW.touchkit.com¡£
2.ÏÂÔØºóÍêÎļþ¼ÐÀïÓиösetup£¬°²×°Èí¼þ¡£
3.ÔÚ²»¶Ï°´&ldquo ......
Book Note: Linux Device Driver Dos and Don'ts
http://janitor.kernelnewbies.org/docs/driver-howto.html
what a hardened (robust) device
driver should mean and how it should be implemented and measured.
1.3 Robust device drivers
-Follows the Linux CodingStyle.
-Efficient in managing faults and ha ......
££¿×½¨¾ü(Kongove.CN)
2008.11.12
Ê×ÏÈ£¬ÈÃÎÒÃÇÀ´¿´¼¸×éÁîÈËÕñ·ÜµÄÊý¾Ý¡£ÏÖÔÚ¶©ÔÄLinuxÄÚºËÓʼþÁбí[1]£¬Ã¿ÌìµÄÓʼþÁ÷Á¿´ó¸ÅÔÚ500·Ý×óÓÒ£»Ö´ÐÐ"grep "^P:"
MAINTAINERS |sort -u|wc
-l"£¬¶ÔÄÚºË×Óϵͳά»¤Õß½øÐÐͳ¼Æ£¬µÃµ½µÄ½á¹ûÊÇ534ÈË£»´Ó2007µ½2008Ä꣬ƽ¾ùÿÌìÓÐ4300ÐдúÂëÌí¼Óµ½Äںˣ¬ÓÐ180 ......
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
Linux
·¢ÐаæÓë
Linux
²úÆ·Á½ÕßÏà²îºÜ´ó£¬ÓÐʱÈÝÒ×»ìÏý£¬·¢ÉúÎó½â£¬ÉõÖÁÒªÄÖ³ö´óЦ»°À´¡£ÎªÊ²Ã´£¿
´Ó×ÖÃæÉÏÀ´½²£¬·¢Ðа棨
Distribution
£©ºÍ²úÆ ......