linuxÄں˶ÁÊé±Ê¼Ç£¨½ø³ÌÖÕÖ¹º¯Êý·ÖÎö£©Èý
do_exit() Function
-----------------------------------------------------------------------
kernel/exit.c
707 NORET_TYPE void do_exit(long code)
708 {
709 struct task_struct *tsk = current;
710
711 if (unlikely(in_interrupt()))
712 panic("Aiee, killing interrupt handler!");
713 if (unlikely(!tsk->pid))
714 panic("Attempted to kill the idle task!");
715 if (unlikely(tsk->pid == 1))
716 panic("Attempted to kill init!");
717 if (tsk->io_context)
718 exit_io_context();
719 tsk->flags |= PF_EXITING;
720 del_timer_sync(&tsk->real_timer);
721
722 if (unlikely(in_atomic()))
723 printk(KERN_INFO "note: %s[%d] exited with preempt_count %d\n",
724 current->comm, current->pid,
725 preempt_count());
-----------------------------------------------------------------------
Line 707²ÎÊýcodeÊǽø³Ç·µ»Ø¸ø¸¸½ø³ÌµÄÍ˳öÂë Lines 711716 È·±£Ä¿Ç°½ø³Ì²»ÊÇÒ»¸öÖжϴ¦Àí½ø³Ì£¬È·±£²»ÊÇidle½ø³Ì£¨PID=0£©»òÕßÊÇinit½ø³Ì£¨PID=1£©£¬init½ø³ÌÖ»ÓÐϵͳ±»ÖÕֹʱ²ÅÄÜÍ˳ö£» Line 719 ½«¸Ã½ø³ÌµÄflagsÓòÉèÖÃΪPF_EXITING£¬Õâ±íÃ÷µ±Ç°½ø³Ì±»ÖÕÖ¹£» -----------------------------------------------------------------------
kernel/exit.c
...
727 profile_exit_task(tsk);
728
729 if (unlikely(current->ptrace & PT_TRACE_EXIT)) {
730 current->ptrace_message = code;
731 ptrace_notify((PTRACE_EVENT_EXIT << 8) | SIGTRAP);
732 }
733
734 acct_process(code);
735 __exit_mm(tsk);
736
737 exit_sem(tsk);
738 __exit_files(tsk);
739 __exit_fs(tsk);
740 exit_namespace(tsk);
741 exit_thread();
...
-----------------------------------------------------------------------
Lines 729732 Èç¹û½ø³Ì±»ptraced¶øÇÒPT_TRACE_EXIT ±»ÉèÖã¬ÎÒÃǽ«exit_code×÷ΪÏûϢ֪ͨ¸¸½ø³Ì Lines 735742 ½«½ø³ÌÖв»ÓõÄ×ÊÔ´clean upµô£¬__exit_mm()ÓÃÓÚÊÍ·Å·ÖÅä¸ø½ø³ÌµÄÄڴ棬ºÍÊͷźʹ˽ø³ÌÏà¹ØµÄmm_struct£¬exit_sem()½«´ËÈÎÎñ´ÓIPCÖзÖÀ룬__exit_files() ÊÍ·Å·ÖÅä¸øÈÎÎñµÄÎļþ£¬²¢ÇÒ½«Æä±êʶ·û¼õÈ¥£¬_
Ïà¹ØÎĵµ£º
2009 Äê 4 ÔÂ 23 ÈÕ
±¾ÎÄÖÐÎÒÃÇÕë¶Ô Linux É϶àÏ̱߳à³ÌµÄÖ÷ÒªÌØÐÔ×ܽá³ö 5 Ìõ¾Ñ飬ÓÃÒÔ¸ÄÉÆ Linux ¶àÏ̱߳à³ÌµÄÏ°¹ßºÍ±ÜÃâÆäÖеĿª·¢ÏÝÚå¡£ÔÚ±¾ÎÄÖУ¬ÎÒÃÇ´©²åһЩ Windows µÄ±à³ÌÓÃÀýÓÃÒÔ¶Ô±È Linux ÌØÐÔ£¬ÒÔ¼ÓÉî¶ÁÕßÓ¡Ïó¡£
±³¾°
Linux ƽ̨ÉϵĶàÏ̳߳ÌÐò¿ª·¢Ïà¶ÔÓ¦ÆäËûƽ̨£¨±ÈÈç Windows£©µÄ¶àÏß³Ì API ÓÐһЩϸ΢ ......
¼ÌÐø̸̸ÆäËüÓïÑԵĿª·¢¡£
3.2) ¶¯Ì¬ÓïÑÔ
ÕâÀïÖ¸µÄÊÇ°üÀ¨½Å±¾ÓïÑÔ£¬½âÊÍÐÍÓïÑÔÔÚÄڵıà³ÌÓïÑÔ£¬ÀýÈçJava£¬Perl£¬Python£¬PHP£¬JavaScript£¬Ruby£¬Shell Script£¬µÈµÈ¡£
´Ó¿ª·¢»·¾³½Ç¶È¿´£¬¶¯Ì¬ÓïÑÔ¶¼ÓÐ×Ô¼ºµÄÔËÐл·¾³£¬¶øÇÒͨ³£¶¼ÊÇ¿çƽ̨µÄ¡£Òò´Ë£¬±àд´úÂ룬µ÷ÊÔÔËÐÐÔòÍêÈ«¿ÉÒÔÔÚ×Ô¼ºµÄ»·¾³ÖÐÍê³É£¬Ö»ÊÇ´ó¶àÊÇÃüÁîÐÐ ......
±à¼
$netbeans_home/etc/netbeans.conf£¬ÔÚ"netbeans_default_options"ÏîÖÐÌí¼Ó"-J-
Dawt.useSystemAAFontSettings=on --fontsize=12"
p.s:ÈÃËùÓеÄJava³ÌÐò¶¼Ê¹Ó÷´¾â
³Ý£º export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=on'
------------------------------------------------- ......
1. ÄÚºËѧϰ·½·¨£¬±àÒë¡¢µ÷ÊԵȳ£¼ûÎÊÌâ
1.1 ¹ØÓÚ±àÒëÉý¼¶Äں˵½2.6.0µÄһЩÎÊÌâ ×÷Õߣºommm
http://linux.chinaunix.net/bbs/thread-281831-1-5.html
1.2 VMWare Workstation 6.0µ÷ÊÔLinux Kernel£¬¾¹Èç´Ë·½±ã ×÷Õߣºalbcamus
http://linux.chinaunix.net/bb ......
LinuxÏÂC++¿ª·¢¹¤¾ß½éÉÜ
¡¡¡¡¸ÅÊö
¡¡¡¡¾ÍC£«£«¿ª·¢¹¤¾ß¶øÑÔ£¬ÓëWindowsÏÂ΢Èí£¨VC£¬ VS2005µÈ£©Ò»Í³ÌìÏÂÏà±È£¬Linux/UnixÏÂC£«£«¿ª·¢£¬¿ÉνÎ廨°ËÃÅ£¬¸÷ʽ¸÷Ñù¡£Emacs, vi, eclipse, anjuta£¬kdevelopµÈ²ã³ö²»Çî¡£
¡¡¡¡WindowsÏ£¬¿ª·¢¹¤¾ß¶àÒÔ¼¯³É¿ª·¢»·¾³IDEµÄÐÎʽչÏÖ¸ø×îÖÕÓû§¡£ÀýÈ磬VS2005¼¯³ ......