Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö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 gcc µÄ±àÒë¹ý³Ì Ïê½â

gccµÄ±àÒë¹ý³Ì·ÖΪËIJ½£¬·Ö±ðΪ£º
(1)Ô¤±àÒë (Pre-Processing)
(2)±àÒë (Compiling)
(3)»ã±à (Assembling)
(4)Á´½Ó (Linking)
ÒÔhello.cΪÀý˵Ã÷£º
#include<stdio.h>
int main(void)
{
 printf("Hello World!");
 return 0;
}
(1)Ô¤±àÒë½×¶Î (Pre-Processing)
  Ôڸý׶Σ¬±àÒëÆ÷½«ÉÏÊö´úÂëÖеÄstdio.h±àÒë½øÀ´£¬²¢ÇÒʹÓÃgcc -E½øÐв鿴(-EÈÃgccÔÚÔ¤´¦Àí½áÊøºóÍ£Ö¹±àÒë)
  gcc -E hello.c -o hello.i
  ²é¿´hello.i¿É¼û£¬gccȷʵ½øÐÐÁËÔ¤´¦Àí£¬Ëü°Ñ"stdio.h"µÄÄÚÈݲåÈëµ½hello.iÎļþÖÐ
(2)±àÒë½×¶Î
  ÔÚÕâ¸ö½×¶Î£¬gccÊ×Ïȼì²é´úÂëµÄ¹æ·¶ÐÔ£¬ÊÇ·ñÓÐÓï·¨´íÎóµÈ£¬ÒÔÈ·¶¨´úÂëµÄʵ¼ÊÒª×öµÄ¹¤×÷£¬ÔÚ¼ì²éÎÞÎóºó
  gcc°Ñ´úÂë±àÒë³É»ã±àÓïÑÔ£¬¿ÉÒÔʹÓÃ-SÑ¡Ïî½øÐв鿴£¬¸ÃÑ¡ÏîÖ®½øÐбàÒë¶ø²»½øÐлã±à£¬Éú³É»ã±à´úÂë
  gcc -S hello.i -o hello.s
(3)»ã±à½×¶Î
 ¾ÍÊǰѱàÒë½×¶ÎÉú³ÉµÄ.sÎļþת³ÉÄ¿±êÎļþ,¿ÉÒÔʹÓÃÑ¡Ïî-c ,¾ÍÊǰѻã±à´úÂëת»¯³É.oµÄ¶þ½øÖÆÄ¿±ê´úÂëÁË
 gcc -c hello.s -o hello.o
(4)Á´½Ó½×¶Î
 Ôڳɹ¦±àÒëÖ®ºó¾Í½øÈëÁËÁ´½Ó½ ......

linuxϵÄÎļþÎļþ´«Ê乤¾ß sftpÃüÁî

sftp ÊÇÒ»¸ö½»»¥Ê½Îļþ´«Êä³Ìʽ¡£ËüÀàËÆÓÚ ftp, µ«Ëü½øÐмÓÃÜ´«Ê䣬±ÈFTPÓиü¸ßµÄ°²È«ÐÔ¡£Ï±߾ͼòµ¥½éÉÜÒ»ÏÂÈçºÎÔ¶³ÌÁ¬½ÓÖ÷»ú£¬½øÐÐÎļþµÄÉÏ´«ºÍÏÂÔØ£¬ÒÔ¼°Ò»Ð©Ïà¹Ø²Ù×÷¡£
ÔÚubuntuϵݲװapt-get install sftp ,µ±È»µÃÈ·±£ÄúÓÐ×ã¹»µÄȨÏÞ°²×°¸Ã³ÌÐò
linuxÏÂÈçºÎʹÓÃsftpÃüÁî¡£
¾ÙÀý£¬ÈçÔ¶³ÌÖ÷»úµÄ IP ÊÇ 202.206.64.33»òÕßÊÇÓòÃûwww.hebust.edu.cn,Óû§ÃûÊÇ fyt
,ÔÚÃüÁîÐÐģʽÏÂ:sftp fyt@202.206.64.33»òÕß fyt@www.hebust.edu.cn¡£»Ø³µÌáʾÊäÈëÃÜÂë¡£½øÈëÌáʾ·û

sftp>

Èç¹ûµÇ½Զ³Ì»úÆ÷²»ÊÇΪÁËÉÏ´«ÏÂÔØÎļþ£¬¶øÊÇÒªÐÞ¸ÄÔ¶³ÌÖ÷»úÉϵÄijЩÎļþ¡£¿ÉÒÔ

ssh fyt@202.206.64.33 £¨Æäʵsftp¾ÍÊÇssh µÄÒ»¸ö³Ìʽ¡££©

sftp> get /var/www/fuyatao/index.php /home/fuyatao/
ÕâÌõÓï¾ä½«´ÓÔ¶³ÌÖ÷»úµÄ /var/www/fuyatao/Ŀ¼Ï½« index.php ÏÂÔØµ½±¾µØ /home/fuyatao/Ŀ¼Ï¡£

sftp> put /home/fuyatao/downloads/Linuxgl.pdf /var/www/fuyatao/
ÕâÌõÓï¾ä½«°Ñ±¾µØ /home/fuyatao/download ......

ÉîÈëÀí½âLinuxÄÚºËÖеÄÁ´±í

  ×î½ü£¬¿ªÊ¼ÑжÁÒ»ÏÂLinuxµÄÄں˴úÂ룬¸ÕÒ»¿ªÊ¼£¬¾ÍÓÐÁîÈ˾ªÌ¾µÄ·¢ÏÖ£¬²»µÃ²»¸Ð̾Äں˴úÂëÉè¼ÆµÃÖ®ÃÀ£¡µ¥ÊÇ×î³£ÓõÄÁ´±íÒ²Éè¼ÆµÃ²»µÃ²»ÁîÈËÅå·þ£¡
1.1.Á´±ílist_head
    include/linux/list.h
    ºÜ¾­µä£¬Á´±íÔÚÄÚºËÖкܳ£Óã¬ÀýÈç¹ÜÀí½ø³Ì£¬½ø³ÌµÄ¸÷¸ö״̬¶ÓÁж¼ÊÇʹÓÃÕâ¸öË«ÏòÁ´±íʵÏֵġ£ÄÚºËÖеÄÁ´±í¶¨Òå³ÉºÍÊý¾ÝÎ޹صÄÐÎʽ£¬¶ø²»ÊÇͨ³£ÎÒÃÇʹÓõÄÁ´±í¸ñʽ£¬ÀýÈç
typedef struct _list{
    Elemtype elem;
    struct _list *next;
}list;
ÄÚºËÖеÄÁ´±í¶¨ÒåΪ
struct list_head{
    struct list_head *next, *prev;
};
¿É¼û£¬Õâ¸öÁ´±í½ÚµãÖв»°üº¬ÈκÎÊý¾Ý£¬Ö»ÓÐÁ½¸öÖ¸Õë¡£µ±ÐèҪʹÓÃÁ´±íÀ´×éÖ¯Êý¾Ý½á¹¹Ê±£¬Õâ¸ö½á¹¹ÖоͰüº¬Ò»¸ölist_head³ÉÔ±£¬ÀýÈç
struct _list_struct{
    Elemtype elem;
    struct list_head list;
    ...
};
ÏÔ¶øÒ×¼û£¬Á´±íʵÏֳɺÍÊý¾Ý·ÖÀëµÄºÃ´¦ÊÇ£¬²»ÓÃΪÿÖÖÊý¾Ý¶¼¶¨ÒåÁ´±í²Ù×÷£¬¿ÉÒÔʹÓÃͳһµÄÁ´±í²Ù×÷¼´¿É¡£µ«ÊÇÎÊÌâÊÇ£ºÖ»ÖªµÀÊý¾Ý³ÉÔ±listµÄµØÖ·£¬ÔõÑùÈ¥·ÃÎÊ×ÔÉíÒÔ¼°ÆäËû³ÉÔ±ÄØ£¿ ......

LinuxÄں˳£ÓÃÊý¾Ý½á¹¹ºÍ²Ù×÷

1. ǰÑÔ
 
±¾ÎĽéÉÜlinuxÄÚºËÖÐһЩ³£ÓõÄÊý¾Ý½á¹¹ºÍ²Ù×÷¡£
 
2. Ë«ÏòÁ´±í(list)
 
linuxÄÚºËÖеÄË«ÏòÁ´±íͨ¹ý½á¹¹ struct list_headÀ´½«¸÷¸ö½ÚµãÁ¬½ÓÆðÀ´£¬´Ë½á¹¹»á×÷ΪÁ´±íÔªËØ½á¹¹ÖеÄÒ»¸ö²ÎÊý£º
struct list_head {
 struct list_head *next, *prev;
};
 
Á´±íÍ·µÄ³õʼ»¯£¬×¢Ò⣬½á¹¹ÖеÄÖ¸ÕëΪNULL²¢²»Êdzõʼ»¯£¬¶øÊÇÖ¸Ïò×ÔÉí²ÅÊdzõʼ»¯£¬Èç¹ûÖ»Êǰ´ÆÕͨÇé¿öϵÄÖÃΪNULL£¬¶ø²»ÊÇÖ¸Ïò×ÔÉí£¬ÏµÍ³»á±ÀÀ££¬ÕâÊÇÒ»¸öÈÝÒ×·¸µÄ´íÎó£º
 
#define LIST_HEAD_INIT(name) { &(name), &(name) }
#define LIST_HEAD(name) \
 struct list_head name = LIST_HEAD_INIT(name)
#define INIT_LIST_HEAD(ptr) do { \
 (ptr)->next = (ptr); (ptr)->prev = (ptr); \
} while (0)
 
×î³£ÓõÄÁ´±í²Ù×÷£º
²åÈëµ½Á´±íÍ·:
void list_add(struct list_head *new, struct list_head *head);
 
²åÈëµ½Á´±íβ:
void list_add_tail(struct list_head *new, struct list_head *head);
 
ɾ³ýÁ´±í½Úµã:
void list_del(struct list_head *entry);
 
½«½ÚµãÒÆ¶¯µ½ÁíÒ»Á´±í:
void list_move(s ......

²»¿É²»ÖªµÄ Linux Ê®ÏîÖØ´ó·¢Õ¹

Linux®¼¼Êõ¡¢¿ª·¢Ä£ÐͺÍÉçÇø¶¼¶Ô IT Òµ²úÉúÁËÖØÒªµÄÓ°Ï죬ÎÒÃÇÄÜ×öµÄ¾ÍÊÇÕ¾µ½Ò»±ß¿´¿´ÕâЩ£¬ºÜ¸ßÐËÓë developerWorks Ò»Æð¶È¹ýÁ˵ÚÒ»¸ö 10 Äê¡£Linux ÍŶÓÒѾ­½«ÕâЩ¶Ô Linux ²úÉúÖØ´óÓ°ÏìµÄÄÚÈÝÕûÀíµ½Ò»Æð¡£
¹ýÈ¥ 10 ÄêÀLinux ·¢ÉúÁËÌ«¶àµÄÊÂÇ飬ºÜÄÑÍêÕûµØÁгö¸Ã²Ù×÷ϵͳµÄÖØÒªÊ¼þºÍ¼¼Êõ¸Ä½ø¡£¾¡¹ÜÈç´Ë£¬ÎªÁËÇì×£ÎÒÃǵÄÊ®ËêÉúÈÕ£¬Linux ÍŶӻعËÍùÊ£¬²¢ÏòÄú¹«¿ªÖ÷ÒªµÄÀï³Ì±®Ê¼þ£¬ÎªÊ²Ã´ËüÃÇÈç´ËÖØÒª£¬ÒÔ¼°Ïà¹ØÎÄÕ¡£¾´ÇëÆÚ´ý¡£
1. Linux רҵЭ»áÈÏÖ¤
2000 Ä꣬LPI ·¢²¼²âÊÔ 1a£¬ÕâÊǵÚÒ»¸ö Linux ¹ÜÀíÔ±ÈÏÖ¤¿¼ÊÔ£¬¸Ã¼Æ»®ÏÖÔÚ°üÀ¨ 3 ¸öÈÏ֤ˮƽ£¬¹© 7 ÃÅ¿¼ÊÔ¡£2002 Ä꣬developerWorks ·¢²¼Á˵ÚÒ»¸ö LPI ±¸¿¼½Ì³Ì£¬ÓÉ Daniel Robbins ±àд£¬´Ó 2002 ÄêÆðÎÒÃÇÒ»Ö±±£³Ö¸Ã½Ì³ÌµÄÓëʱ¾ã½ø¡£
ÎªÊ²Ã´ÖØÒª£ºÄú¿ÉÒÔÖÊÒÉÈÏÖ¤µÄ¼ÛÖµ£¬µ«ÊÂʵÊÇ£¬¹ÍÖ÷ÐèÒªÒ»ÖÖͳһµÄ·½·¨À´¶ÈÁ¿ Linux ר¼ÒµÄ¼¼ÄÜ£¬Õâ±íÃ÷ Linux ÒѾ­µ½À´¡£
Ïà¹ØÎÄÕ£º
LPI ±¸¿¼½Ì³Ì
ѧϰ Linux£¬101£ºLPIC-1 ·Ïßͼ
2. Samba
Andrew Tridgell µÄ Samba ÔçÓÚ developerWorks 5 Äê»ò 6 Ä꣬µ«ÊÇËû¶Ô Microsoft Server Message Block (SMB) ЭÒéµÄʵÏÖÊÇËùÓлìºÏÍøÂçµÄÒ»¸öÖØÒª×é¼þ£¬ÒÔÖÁÓÚÎÒÃDz»µÃ² ......

linux°²×°apacheÖ§³Öhttps£¨ssl£©

Èí¼þ»·¾³
debian 5.0
Apache Httpd 2.0.63 (http://httpd.apache.org
)
OpenSSL 0.9.81 (http://www.openssl.org/source
)
SSL-Tools (http://www.openssl.org/contrib/ssl.ca-0.1.tar.gz
)
°²×°²½Öè(ËùÓвÙ×÷ʹÓÃrootÓû§½øÐÐ)£º
1. OpenSSL
#tar zxvf openssl-0.9.81.tar.gz
#cd openssl-0.9.81
#./config
#make
#make install
´Ë¾Ù½«°²×°×îеÄOpenSSLµ½/usr/local/sslĿ¼ÖУ¬ÎÞÐèÀí»áϵͳÖÐÒÑÓа汾µÄOpenSSL£¬Ò²²»ÒªÈ¥Ð¶ÔØËü£¬·ñÔò»áµ¼ÖºܶàµÄÓ¦ÓóÌÐòÎÞ·¨Õý³£Ö´ÐУ¬ÀýÈçX´°¿ÚÎÞ·¨½øÈëµÈ´íÎó¡£
2. Apache Httpd
#tar zxvf httpd-2.0.63.tar.gz
#cd httpd-2.0.63
#./configure --prefix=/usr/local/apache/httpd --enable-ssl=static --with-ssl=/usr/local/ssl
#make
#make install
´Ë²½ÖèÔÚ/apache/httpdĿ¼Öа²×°httpd·þÎñ(ͨ¹ý²ÎÊý--prefixÖ¸¶¨)£¬Í¬Ê±Ê¹ÓÃ--with-sslÖ¸¶¨¸Õ²ÅËù°²×°OpenSSLµÄ·¾¶£¬ÓÃÓÚ½«mod_ssl¾²Ì¬µÄ±àÒëµ½httpd·þÎñÖС£
3.ÖÆ×÷Ö¤Êé
ÎÒÃDZØÐëÊÖ¹¤À´Éú³ÉSSLÓõ½µÄÖ¤Ê飬¶ÔÖ¤Êé²»ÊìϤµÄÈË£¬ÓÐÒ»¸ö¹¤¾ß¿ÉÒÔʹÓãºhttp://www.openssl.org/contrib/ssl.ca-0.1.tar.gz
 ¡£ÏÂÃæÊÇÈçºÎͨ¹ýÕâ¸ö¹¤¾ßÀ´Éú³ÉÖ¤ÊéµÄ¹ý³Ì ......
×ܼǼÊý:5772; ×ÜÒ³Êý:962; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [528] [529] [530] [531] 532 [533] [534] [535] [536] [537]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ