Linux c Êý¾ÝÀàÐÍ
µ±LinuxÄÚºËÔÚÌåϵ½á¹¹²îÒì½Ï´óµÄƽ̨֮¼äÒÆÖ²Ê±£¬»á²úÉúÓëÊý¾ÝÀàÐÍÏà¹ØµÄÎÊÌâ¡£
.ÔÚ±àÒëÄÚºËʱʹÓà -Wall -W strict-prototypes Ñ¡Ïî, ¿ÉÒÔ±ÜÃâºÜ¶à´íÎóµÄ·¢Éú
.ÄÚºËʹÓõĻù±¾Êý¾ÝÀàÐÍÖ÷ÒªÓÐ:
int ±ê×¼CÓïÑÔÕûÊýÀàÐÍ
u32 32λÕûÊýÀàÐÍ
pid_t ÌØ¶¨Äں˶ÔÏópidµÄÀàÐÍ
.ÔÚ²»Í¬µÄCPUÌåϵ½á¹¹ÉÏ£¬CÓïÑÔµÄÊý¾ÝÀàÐÍËùÕ¼¿Õ¼ä²»Ò»Ñù¡£
arch
char
short
int
long
ptr
long-long
u8
u16
u32
u64
i686
1
2
4
4
4
8
1
2
4
8
i386
1
2
4
4
4
8
1
2
4
8
alpha
1
2
4
8
8
8
1
2
4
8
armv41
1
2
4
4
4
8
1
2
4
8
ia64
1
2
4
8
8
8
1
2
4
8
m68k
1
2
4
4
4
8
1
2
4
8
mips
1
2
4
4
4
8
1
2
4
8
ppc
1
2
4
4
4
8
1
2
4
8
sparc
1
2
4
4
4
8
1
2
4
8
sparc64
1
2
4
4
4
8
1
2
4
8
.ÄÚºËÖеĵØÖ·ÊÇunsigned longÀàÐÍ£¬ Ö¸Õë´óСºÍlongÀàÐÍÏàͬ
.ÄÚºËÌṩÏÂÁÐÊý¾ÝÀàÐÍ£¬ ËùÓÐÀàÐÍÔÚÍ·Îļþ<asm/types.h>ÖÐÉùÃ÷£¬ Õâ¸öÎļþÓÖ±»Í·Îļþ<Linux/types.h>Ëù°üº¬£¬ ÏÂÃæÊÇ include/asm/typs.hÎļþ
[File] /usr/src/kernels/2.6.9-22.EL-i686/include/asm-i386/types.h
#ifndef _I386_TYPES_H
#define _I386_TYPES_H
#ifndef __ASSEMBLY__
typedef unsigned short umode_t;
/*
* __xx is ok: it doesn't pollute the POSIX namespace. Use these in the
* header files exported to user space
*/
typedef __signed__ char __s8;
typedef unsigned char __u8;
typedef __signed__ short __s16;
typedef unsigned short __u16;
typedef __signed__ int __s32;
typedef unsigned int __u32;
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
typedef __sig
Ïà¹ØÎĵµ£º
×ÜÀÀ
ÓÃiptables -ADC À´Ö¸¶¨Á´µÄ¹æ
Ôò
£¬-AÌí¼Ó -Dɾ³ý -C ÐÞ¸Ä
iptables - [RI] chain rule num rule-specification[option]
ÓÃiptables - RI ͨ¹ý¹æÔòµÄ˳ÐòÖ¸¶¨
iptables -D chain rule num[option]
ɾ³ýÖ¸¶¨¹æÔò
iptables -[LFZ] [chain][option]
ÓÃiptables -LFZ Á´Ãû [Ñ¡Ïî]
iptables -[NX] chain
ÓÃ -NX ......
ÔÚfork()/execve()¹ý³ÌÖУ¬¼ÙÉè×Ó½ø³Ì½áÊøÊ±¸¸½ø³ÌÈÔ´æÔÚ£¬¶ø¸¸½ø³Ìfork()֮ǰ¼Èû°²×°SIGCHLDÐźŴ¦Àíº¯Êýµ÷ÓÃwaitpid()µÈ´ý×Ó½ø³Ì½áÊø£¬ÓÖûÓÐÏÔʽºöÂÔ¸ÃÐźţ¬Ôò×Ó½ø³Ì³ÉΪ½©Ê¬½ø³Ì£¬ÎÞ·¨Õý³£½áÊø£¬´Ëʱ¼´Ê¹ÊÇrootÉí·Ýkill-9Ò²²»ÄÜɱËÀ½©Ê¬½ø³Ì¡£²¹¾È°ì·¨ÊÇɱËÀ½©Ê¬½ø³ÌµÄ¸¸½ø³Ì(½©Ê¬½ø³ÌµÄ¸¸½ø³Ì±ØÈ»´æÔÚ)£¬½©Ê¬½ø³Ì³ÉÎ ......
¡¡ÒÔroot Éí·ÝµÇ½Linux ·þÎñÆ÷£¬±à¼/etc Ŀ¼ÏµĹ²ÏíĿ¼ÅäÖÃÎļþexports£¬Ö¸¶¨¹²ÏíĿ¼¼°È¨Ï޵ȡ£
¡¡
¡¡Ö´ÐÐÈçÏÂÃüÁî±à¼Îļþ/etc/exports£º
¡¡¡¡# vi /etc/exports
¡¡¡¡ÔÚ¸ÃÎļþÀïÌí¼ÓÈçÏÂ
ÄÚÈÝ£º
¡¡¡¡/home/work 192.168.0.*£¨rw,sync,no_root_squash£©
¡¡¡¡È»
ºó±£´æÍ˳ö¡£
¡¡¡¡Ìí¼ÓµÄÄÚÈݱíʾ£ºÔÊÐí ......
# cd /home/tmp (½øÈëѹËõ°üËùÔÚĿ¼)
# groupadd mysql (½¨Á¢mysql×é)
# useradd -g mysql mysql (ÔÚmysql×éÖн¨Á¢mysqlÓû§)
# tar -zxvf mysql-5.0.37.tar.gz (½âѹmysqlÔ´Âë,bz2ѹËõ°üÇëÓÓtar -jvxf ÎļþÃû”Ö¸Áî)
# cd mysql-5.0.37 (½øÈë½âѹĿ¼)
# ./configure --prefix=/usr/local/mysql (p ......
-Ëᦻª(Barry Song)
Linux¾ßÓÐÓÕÈ˵Ä÷ÈÁ¦£¬ËüÊÇÒ»¸öÓÉÈ«ÊÀ½ç²»Í¬Ãñ×å¡¢²»Í¬ÐÅÑö¡¢²»Í¬ÐÔ±ðµÄÈ˹²Í¬²ÎÓëºÍÐ×÷µÄ¹ú¼ÊÐÔÏîÄ¿¡£LinuxÃâ·ÑÌṩԴ´úÂ룬²¢ÇÒ¾ßÓÐÓëUnixÀàËÆµÄΪÈËÃÇËùÊìϤµÄÓ¦ÓóÌÐò±à³Ì»·¾³£¬ÕâÒ»ÇÐÔì¾ÍÁËËü½ñÌìµÄ¾Þ´ó³É¹¦¡£Í¨¹ý»¥ÁªÍø´Óר¼Ò´¦¼´Ê±»ñµÃµÄ¸ßÖÊÁ¿µÄÃâ·ÑÖ§³ÖÒ²·¢»ÓÁËÖØÒª× ......