Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB
ÈÈÃűêÇ©£º c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 ×îÐÂÎÄÕ : linux

Linux kernel development Chapter2 ½ø³Ì¹ÜÀí

1 ½ø³Ì¹ÜÀíÏà¹Ø´úÂë
  1.1 thread_info½á¹¹£¬ÔÚÎļþ<asm/thread_info.h>Öж¨Òå
      struct thread_info {
           struct task_struct *task;
           struct exec_domain *exec_domain£»
           unsigned long flags;
           __u32 cpu;
           __s32 preempt_count;
           mm_segment_t addr_limit;
           u8 supervisor_stack[0];
        };
        ÿ¸öÈÎÎñµÄthread_info½á¹¹ÔÚÆäÄÚºËÕ»¶¥¶Ë·ÖÅ䣬ÆätaskÓòÖ¸Ïò¸ÃÈÎÎñµÄʼþtask_struct½á¹¹¡£
   1.2 ÈÎÎñ¶ÓÁУ¨task list£©
      Ë«ÏòÑ­»·Á´±í£¬Á ......

Linux NFS ʹÓÃ×ܽá

 1.       ·þÎñÆ÷nfsµÄÅäÖÃ
2.       ¿Í»§¶ËnfsµÄÅäÖÃ
3.       ʹÓÃnfs
3.1 ×÷Ϊ¹²ÏíÎļþϵͳmount
3.2 ×÷Ϊ¸ùÎļþϵͳmount
4.±¸ ×¢
nfsÊÇNetwork File System£¬»ùÓÚRPC(Remote Procedure Call ProtocolÔ¶³Ì¹ý³Ìµ÷ÓÃЭÒé)ʵÏÖ¡£
1.·þÎñÆ÷nfsµÄÅäÖÃ
1.1 startàsystem settingànfsÌí¼Ó¹²Ïí·¾¶¡¢ÔÊÐí·ÃÎʵĿͻ§¶ËIPÒÔ¼°·ÃÎÊ·½Ê½
Ìí¼ÓÖ®ºóÔò´æµ½/etc/exportsÎļþÖУ¬È磺/home/rrhudp0216 128.0.0.*(rw,sync):ÍøÂçÉϹ²Ïí/home/rrhudp0216,ÔÊÐí128.0.0.*Íø¶ÎµÄËùÓÐIP¿ÉÒÔ¶Áд·ÃÎʸÃÎļþ¼Ð¡£
1.2 services nfs restartÖØÆônfs
1.3 services portmap restart ÖØÆôportmap
1.4 services iptables stop ¹Ø±Õ·À»ðǽ
1.5 services iptables status ·À»ðǽ״̬²é¿´£¨È·ÈÏ·À»ðǽ±»¹Ø±Õ£©
2.¿Í»§¶ËnfsµÄÅäÖÃ
2.1 makemenuconfigàFile SystemsàNetwork File SystemsÖÐÑ¡ÉÏ
2.2 Network ApplicationÖÐÑ¡ÔñportmapÏî
   
3.ʹÓÃnfs
3.1 ×÷Ϊ¹²ÏíÎļþϵͳmount
ϵͳÆðÀ´Ö®ºó£º
#mkdir /var/nfs
#chmod 777 nfs
#mount & ......

Linux jffs2 ʹÓÃ×ܽá

1.ÔÚLinuxÆô¶¯½Å±¾ÖÐÖÆ×÷jffs2
2.ÔÚLinuxÖÕ¶ËÏÂÖÆ×÷jffs2
3.±¸×¢
1.ÔÚLinuxÆô¶¯½Å±¾ÖÐÖÆ×÷jffs2
 ¾ßÌå²Ù×÷²½Ö裺
 sysinitÖÐ:
 
echo “Make jffs2 filesystem:”
erase /dev/mtd5
cd /tmp
echo “test” > test.txt
mkfs.jffs2 –d /tmp > /dev/mtdblock5
 
echo “Mounting jffs2:”
mkdir /var/jffs2
chmod 777 /var/jffs2
mount –t jffs2 /dev/mtdblock5 /var/jffs2
 
2.ÔÚLinuxÖÕ¶ËÏÂÖÆ×÷jffs2
¾ßÌå²Ù×÷²½ÖèÈçÏ£º
#cd /tmp
#echo “test” > test.txt
# mkfs.jffs2 –d /tmp > /dev/mtdblock5
#mkdir /var/jffs2
#mount –t jffs2 /dev/mtdblock5 /var/jffs2
 
°Ñjffs2¹ÒÔØµ½LinuxÏÂÏà¹ØÎļþ¼Ð(/var/jffs2)Ö®ºó£¬¾ÍÏ൱ÓÚ°Ñmtd5(mtdblock5)Õâ¸öflash¿é·Åµ½LinuxÏà¹ØÎļþ¼Ð(/var/jffs2)ÏÂʹÓã¬Ö®ºóËùÓжԸÃÎļþ¼Ð(/var/jffs2)µÄ²Ù×÷Ï൱ÓÚ¶Ôflash mtd5(mtdblock5)Çø¿éµÄ²Ù×÷¡£
 
3.±¸×¢
3.1.ÖÆ×÷ºÍʹÓÃjffs2ÐèÒªbusyboxÖÐÌí¼ÓeraseÒÔ¼°mkfs.jffs2µÈÃüÁî¡£
3.2.jffs2µÄÖÆ×÷ÐèÒªÒ»´Î¼´¿É£¬ÔÚÖ®ºóµÄµÚ¶þ´ÎÒÔ¼°¸ü¶à´ÎϵͳÆô¶¯ ......

¹ØÓÚlinuxϵÄÈíÁ´½ÓºÍÓ²Á´½Ó

 Á¬½ÓÉÏÁË·þÎñÆ÷£¬¼ì²éһϡ£´ÅÅ̿ռ䲻¹»ÁË
[java@localhost ~]$ df -lh
Filesystem Size Used Avail Use% Mounted on
/dev/hda2 5.8G 5.8G 0M 100% /
/dev/hda1 99M 8.5M 86M 10% /boot
none 506M 0 506M 0% /dev/shm
/dev/hda6 20G 77M 19G 1% /tmp
/dev/hda5 20G 14G 5.2G 72% /usr/local
/dev/hda3 29G 3.3G 25G 13% /var
Õâ¸öÊÇÎÒÃǵÄÓ¦Ó÷þÎñÆ÷£¬ÉÏÃæÓÐphpºÍtomcatÒÔ¼°apacheµÄ·þÎñÆ÷»¹ÓÐOracleµÄÒ»¸öÊý¾Ý¿â¡£
ÒÔǰµÄSA¹æ»®µÄ²»ºÃ£¬·ÖÇø×öµÄ»°ºÃ£¬ÕâÀïµÄhda3,had5, hda6»¹ÓкܶàµÄ¿Õ¼ä£¬×î¼òµ¥µÄ·½·¨¾ÍÊÇ×ªÒÆÎļþºÍĿ¼£¬È»ºóÔÚÔ­À´µÄµØ·½½¨Á¢linkÖ¸µ½ÐµĵØÖ·¾Í¿ÉÒÔÁË
¹Ø±ÕÏà¹ØµÄ¼¸¸ö·þÎñ
ʹÓÃ
mv Ô­µØÖ· ¿ÕÓà¿Õ¼äµÄµØÖ·
ln -s ¿ÕÓà¿Õ¼äµÄĿ¼µØÖ· Ô­µØÖ·Ä¿Â¼
¼¸ÐÐÃüÁî¾Í¸ã¶¨ÁË¡£
ÖØÆô¸÷¸ö·þÎñ£¬Ò»ÇÐÓÖ»Ö¸´Õý³£×´¿öÁË¡£
ÏÂÃæÊÇÍøÓÑÅóÓѺóÐøÌṩµÄÓйØlnÃüÁîµÄÏêϸÓ÷¨
ÌØ´Ë¼Ó¹Ì¼ÇÒäÒ»ÏÂ
1 : ʹÓÃcdÃüÁΪÖ÷Ŀ¼
¡¡¡¡cd
2 : ÓÃtouch´´½¨Ãû×ÖΪaaµÄÎļþ
 touch aa
3 : ÔËÐÐ ls -lÃüÁî²éѯ¸Õ²Å¿´µ½µÄÎļþ
¡¡¡¡ls -l
¡¡¡¡ÏÔʾÈçÏ£º
¡¡¡¡-rw-r--rr-- 1 user usergroup 0 otc 22 10 : 20 aa
4£º ʹÓÃlnÃüÁ ......

linuxϱØÐëÕÆÎÕµÄÃüÁî

1 cron
 
ÒÔÏ£¬ÊÇctontabµÄ¸ñʽ£º
·Ö<>ʱ<>ÈÕ<>ÔÂ<>ÐÇÆÚ<>ÒªÔËÐеÄÃüÁî
ÆäÖÐ<>±íʾ¿Õ¸ñ¡£
ÕâÀïÓÐc r o n t a bÎļþÌõÄ¿µÄһЩÀý×Ó£º
30 21* * * /apps/bin/cleanup.sh
ÉÏÃæµÄÀý×Ó±íʾÿÍíµÄ2 1 : 3 0ÔËÐÐ/ a p p s / b i nĿ¼ÏµÄc l e a n u p . s h¡£
45 4 1,10,22 * * /apps/bin/backup.sh
ÉÏÃæµÄÀý×Ó±íʾÿÔÂ1¡¢1 0¡¢2 2ÈÕµÄ4 : 4 5ÔËÐÐ/ a p p s / b i nĿ¼ÏµÄb a c k u p . s h¡£
10 1 * * 6,0 /bin/find -name "core" -exec rm {} \;
ÉÏÃæµÄÀý×Ó±íʾÿÖÜÁù¡¢ÖÜÈÕµÄ1 : 1 0ÔËÐÐÒ»¸öf i n dÃüÁî¡£
0,30 18-23 * * * /apps/bin/dbcheck.sh
ÉÏÃæµÄÀý×Ó±íʾÔÚÿÌì1 8 : 0 0ÖÁ2 3 : 0 0Ö®¼äÿ¸ô3 0·ÖÖÓÔËÐÐ/ a p p s / b i nĿ¼ÏµÄd b c h e c k . s h¡£
0 23 * * 6 /apps/bin/qtrend.sh
ÉÏÃæµÄÀý×Ó±íʾÿÐÇÆÚÁùµÄ11 : 0 0 p mÔËÐÐ/ a p p s / b i nĿ¼ÏµÄq t r e n d . s h¡£
3 3 * * * cat /dev/null > /opt/apache2/logs/access_log
ÉÏÃæµÄÀý×Ó£¬±íʾÿÌìÍíÉÏ3:3·Ö£¬Çå³ýÒ»´ÎapacheµÄaccess_log
*/10 * * * * /bin/sh /root/query.sh  &> /tmp/querylog.log &
ÉÏÃæµÄÀ ......

LinuxÏÂCÓïÑÔ±à³Ì»ù´¡(Makefile)

 
LinuxÏÂCÓïÑÔ±à³Ì»ù´¡(Makefile)
2005-01-18 10:28:23 À´×Ô£ºÈüµÏÍø
 
¼ÙÉèÎÒÃÇÓÐÏÂÃæÕâÑùµÄÒ»¸ö³ÌÐò£¬Ô´´úÂëÈçÏ£º
/* main.c */
#include "mytool1.h"
#include "mytool2.h"
int main(int argc£¬char **argv)
{
mytool1_print("hello")£»
mytool2_print("hello")£»
}
/* mytool1.h */
#ifndef _MYTOOL_1_H
#define _MYTOOL_1_H
void mytool1_print(char *print_str)£»
#endif
/* mytool1.c */
#include "mytool1.h"
void mytool1_print(char *print_str)
{
printf("This is mytool1 print %s "£¬print_str)£»
}
/* mytool2.h */
#ifndef _MYTOOL_2_H
#define _MYTOOL_2_H
void mytool2_print(char *print_str)£»
#endif
/* mytool2.c */
#include "mytool2.h"
void mytool2_print(char *print_str)
{
printf("This is mytool2 print %s "£¬print_str)£»
}
µ±È»ÓÉÓÚÕâ¸ö³ÌÐòºÜ¶Ì£¬ÎÒÃÇ¿ÉÒÔÕâÑùÀ´±àÒë:
gcc -c main.c
gcc -c mytool1.c
gcc -c mytool2.c
gcc -o main main.o mytool1.o mytool2.o
......

LinuxÏÂCÓïÑÔ±à³Ì»ù´¡(Makefile)

 
LinuxÏÂCÓïÑÔ±à³Ì»ù´¡(Makefile)
2005-01-18 10:28:23 À´×Ô£ºÈüµÏÍø
 
¼ÙÉèÎÒÃÇÓÐÏÂÃæÕâÑùµÄÒ»¸ö³ÌÐò£¬Ô´´úÂëÈçÏ£º
/* main.c */
#include "mytool1.h"
#include "mytool2.h"
int main(int argc£¬char **argv)
{
mytool1_print("hello")£»
mytool2_print("hello")£»
}
/* mytool1.h */
#ifndef _MYTOOL_1_H
#define _MYTOOL_1_H
void mytool1_print(char *print_str)£»
#endif
/* mytool1.c */
#include "mytool1.h"
void mytool1_print(char *print_str)
{
printf("This is mytool1 print %s "£¬print_str)£»
}
/* mytool2.h */
#ifndef _MYTOOL_2_H
#define _MYTOOL_2_H
void mytool2_print(char *print_str)£»
#endif
/* mytool2.c */
#include "mytool2.h"
void mytool2_print(char *print_str)
{
printf("This is mytool2 print %s "£¬print_str)£»
}
µ±È»ÓÉÓÚÕâ¸ö³ÌÐòºÜ¶Ì£¬ÎÒÃÇ¿ÉÒÔÕâÑùÀ´±àÒë:
gcc -c main.c
gcc -c mytool1.c
gcc -c mytool2.c
gcc -o main main.o mytool1.o mytool2.o
......
×ܼǼÊý:5772; ×ÜÒ³Êý:962; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [818] [819] [820] [821] 822 [823] [824] [825] [826] [827]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ