LinuxÏÂc¿ª·¢ Ö® Ïß³ÌͨÐÅ
1.Linux“Ï߳̔
½ø³ÌÓëÏß³ÌÖ®¼äÊÇÓÐÇø±ðµÄ£¬²»¹ýLinuxÄÚºËÖ»ÌṩÁËÇáÁ¿½ø³ÌµÄÖ§³Ö£¬Î´ÊµÏÖÏß³ÌÄ£ÐÍ¡£LinuxÊÇÒ»ÖÖ“¶à½ø³Ìµ¥Ï߳̔µÄ²Ù×÷ϵͳ¡£Linux±¾ÉíÖ»Óнø³ÌµÄ¸ÅÄ¶øÆäËùνµÄ“Ï߳̔±¾ÖÊÉÏÔÚÄÚºËÀïÈÔÈ»Êǽø³Ì¡£
´ó¼ÒÖªµÀ£¬½ø³ÌÊÇ×ÊÔ´·ÖÅäµÄµ¥Î»£¬Í¬Ò»½ø³ÌÖеĶà¸öÏ̹߳²Ïí¸Ã½ø³ÌµÄ×ÊÔ´£¨Èç×÷Ϊ¹²ÏíÄÚ´æµÄÈ«¾Ö±äÁ¿£©¡£LinuxÖÐËùνµÄ“Ïֻ߳̔ÊÇÔÚ±»´´½¨Ê±cloneÁ˸¸½ø³ÌµÄ×ÊÔ´£¬Òò´Ëclone³öÀ´µÄ½ø³Ì±íÏÖΪ“Ï߳̔£¬ÕâÒ»µãÒ»¶¨ÒªÅªÇå³þ¡£Òò´Ë£¬Linux“Ï߳̔Õâ¸ö¸ÅÄîÖ»ÓÐÔÚ´òðºÅµÄÇé¿öϲÅÊÇ×î׼ȷµÄ¡£
ĿǰLinuxÖÐ×îÁ÷ÐеÄÏ̻߳úÖÆÎªLinuxThreads£¬Ëù²ÉÓõľÍÊÇỊ̈߳½ø³Ì“Ò»¶ÔÒ»”Ä£ÐÍ£¬µ÷¶È½»¸øºËÐÄ£¬¶øÔÚÓû§¼¶ÊµÏÖÒ»¸ö°üÀ¨ÐźŴ¦ÀíÔÚÄÚµÄÏ̹߳ÜÀí»úÖÆ¡£LinuxThreadsÓÉXavier Leroy (Xavier.Leroy@inria.fr)¸ºÔ𿪷¢Íê³É£¬²¢ÒѰó¶¨ÔÚGLIBCÖз¢ÐУ¬ËüʵÏÖÁËÒ»ÖÖBiCapitalizedÃæÏòLinuxµÄPosix 1003.1c “pthread”±ê×¼½Ó¿Ú¡£Linuxthread¿ÉÒÔÖ§³ÖIntel¡¢Alpha¡¢MIPSµÈƽ̨ÉϵĶദÀíÆ÷ϵͳ¡£
¡¡¡¡°´ÕÕPOSIX 1003.1c ±ê×¼±àдµÄ³ÌÐòÓëLinuxthread ¿âÏàÁ´½Ó¼´¿ÉÖ§³ÖLinuxƽ̨ÉϵĶàỊ̈߳¬ÔÚ³ÌÐòÖÐÐè°üº¬Í·Îļþpthread. h£¬ÔÚ±àÒëÁ´½ÓʱʹÓÃÃüÁ
gcc -D -REENTRANT -lpthread xxx. c
¡¡¡¡ÆäÖÐ-REENTRANTºêʹµÃÏà¹Ø¿âº¯Êý(Èçstdio.h¡¢errno.hÖк¯Êý) ÊÇ¿ÉÖØÈëµÄ¡¢Ḭ̈߳²È«µÄ(thread-safe)£¬-lpthreadÔòÒâζ×ÅÁ´½Ó¿âĿ¼ÏµÄlibpthread.a»òlibpthread.soÎļþ¡£Ê¹ÓÃLinuxthread¿âÐèÒª2.0ÒÔÉϰ汾µÄLinuxÄں˼°ÏàÓ¦°æ±¾µÄC¿â(libc 5.2.18¡¢libc 5.4.12¡¢libc 6)¡£
2.“Ï߳̔¿ØÖÆ
¡¡¡¡Ï̴߳´½¨
¡¡¡¡½ø³Ì±»´´½¨Ê±£¬ÏµÍ³»áΪÆä´´½¨Ò»¸öÖ÷Ị̈߳¬¶øÒªÔÚ½ø³ÌÖд´½¨ÐµÄỊ̈߳¬Ôò¿ÉÒÔµ÷ÓÃpthread_create£º
pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *
(start_routine)(void*), void *arg);
¡¡¡¡start_routineΪÐÂÏ̵߳ÄÈë¿Úº¯Êý£¬argΪ´«µÝ¸østart_routineµÄ²ÎÊý¡£
¡¡¡¡Ã¿¸öÏ̶߳¼ÓÐ×Ô¼ºµÄÏß³ÌID£¬ÒÔ±ãÔÚ½ø³ÌÄÚÇø·Ö¡£Ïß³ÌIDÔÚpthread_createµ÷ÓÃʱ»Ø·µ¸ø´´½¨Ï̵߳ĵ÷ÓÃÕߣ»Ò»¸öÏß³ÌÒ²¿ÉÒÔÔÚ´´½¨ºóʹÓÃpthread_self()µ÷ÓûñÈ¡×Ô¼ºµÄÏß³ÌID£º
pthread_self (void) ;
¡¡¡¡Ïß³ÌÍ˳ö
¡¡
Ïà¹ØÎĵµ£º
½ñÌìÈ¥ÃæÊÔÒ»¼Ò¹«Ë¾£¬ÌîÁËÒ»·Ý“»§¿Úµ÷²é”£¬È»ºó¾ÍÊÇ×öÒ»·ÝÃæÊÔÌ⣬ÌâÄ¿ºÜ¼òµ¥
1¡¢¸Ä´íÌ⣬¸øÒ»¶Î³ÌÐò£¬Ö¸³ö´íÎó
2¡¢Socket×èÈûºÍ·Ç×èÈû±à³Ì£¬·Ç×èÈûµÄʵÏÖÔÀí
3¡¢TCP/IPÓëOSIÆß²ãÄ£ÐÍ
TCP/IP²Î¿¼Ä£Ð͹²ÓÐÎå²ã£ºÓ¦Óò㡢´«Êä²ã¡¢»¥ÁªÍø²ãºÍÖ÷»úÖÁÍøÂç²ã¡£
ÓëOSI²Î¿¼Ä£ÐÍÏà±È£¬TCP/IP²Î¿¼Ä£ÐÍûÓбíʾ²ãºÍ» ......
ÔÚservletÀïÉèÖÃÁËÊôÐÔÖµ request.setAttribute("MENU", menu);
doPost()»òÕßdoGet()Àï×öÌø×ª£º
´úÂë
getServletConfig().getServletContext().getRequestDispatcher(
mainpage).forward(request, response);
ÔÚmainpageÒ³ÃæÖ±½Ó»ñÈ¡¿ÉÒÔÓà request.getAttribute("MENU");
ÈôÓÃJSTL´úÂëΪ ......
Ŀǰ£¬Linux×÷ΪǶÈëʽϵͳµÄÖ÷Á¦¾ü£¬¹ã·ºÓ¦ÓÃÓÚÏû·ÑÀàµç×Ó¡¢¹¤Òµ¿ØÖÆ¡¢¾ü¹¤µç×Ó¡¢µçÐÅ/ÍøÂç/ͨѶ¡¢º½¿Õº½Ìì¡¢Æû³µµç×Ó¡¢Ò½ÁÆÉ豸¡¢ÒÇÆ÷ÒDZíµÈÏà¹ØÐÐÒµ¡£Ëæ×ÅǶÈëʽÐÐÒµµÄѸÃÍ·¢Õ¹£¬Ç¶ÈëʽLinuxƾ½èÆäϵͳ·¢Õ¹µÄ³ÉÊì¶È¡¢Êг¡Ó¦Óõĸ߷ݶîÒ²Êܵ½¸ü¶à¹¤³ÌʦÅóÓѵÄÇàíù£¬Ô½À´Ô½¶àµÄÆóÒµºÍÑз¢»ú¹¹¶¼×ªÏòǶÈëʽLinuxµÄ¿ª·¢ºÍÑо ......
ÎÒÃÇÔÚʹÓÃlinux¹ý³ÌÖУ¬Ã¿¸öÃüÁîºó¶¼Òª¸úһЩ²ÎÊý£¬¿ÉÊǶÔÓÚ³£ÓõIJÎÊýÈç¹ûÿ´Î¶¼ÊÇÊÖ¶¯µÄÌí¼Ó¾ÍÊÇÏÔµÃÂ鷳ЩÁË¡£linux ¿ÉÄÜͨ¹ýÃüÁî±ðÃûµÄ¹¦ÄÜÀ´¼õÉÙÄãµÄÊäÈ룬ÇëÏÂÃæ²Ù×÷¾ÍÃ÷°×ÁË¡£
OS£ºredhat AS4.2
ls -l ÁгöÎļþĿ¼ÖÜÏêÐÅÏ¢
ls -hl ÁгöÎļþ´óС£¬ÒÔKΪµ¥Î»ÏÔʾ
ls -hlt ÁгöÎļþ°´Ê±¼äÅÅÐò
¶ÔÓÚÉÏÃæÈý¸öÏÔʾР......