Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

linux½ø³ÌͨÐÅ£º¹²ÏíÄڴ棨ת£©

²ÉÓù²ÏíÄÚ´æͨÐŵÄÒ»¸öÏÔ¶øÒ×¼ûµÄºÃ´¦ÊÇЧÂʸߣ¬ÒòΪ½ø³Ì¿ÉÒÔÖ±½Ó¶ÁдÄڴ棬¶ø²»ÐèÒªÈκÎÊý¾ÝµÄ¿½±´¡£¶ÔÓÚÏñ¹ÜµÀºÍÏûÏ¢¶ÓÁеÈͨÐÅ·½Ê½£¬ÔòÐèÒªÔÚÄÚ
ºËºÍÓû§¿Õ¼ä½øÐÐËĴεÄÊý¾Ý¿½±´£¬¶ø¹²ÏíÄÚ´æÔòÖ»¿½±´Á½´ÎÊý¾Ý[1]£ºÒ»´Î´ÓÊäÈëÎļþµ½¹²ÏíÄÚ´æÇø£¬ÁíÒ»´Î´Ó¹²ÏíÄÚ´æÇøµ½Êä³öÎļþ¡£Êµ¼ÊÉÏ£¬½ø³ÌÖ®¼äÔÚ¹²
ÏíÄÚ´æʱ£¬²¢²»×ÜÊǶÁдÉÙÁ¿Êý¾Ýºó¾Í½â³ýÓ³É䣬ÓÐеÄͨÐÅʱ£¬ÔÙÖØн¨Á¢¹²ÏíÄÚ´æÇøÓò¡£¶øÊDZ£³Ö¹²ÏíÇøÓò£¬Ö±µ½Í¨ÐÅÍê±ÏΪֹ£¬ÕâÑù£¬Êý¾ÝÄÚÈÝÒ»Ö±±£´æÔÚ¹²
ÏíÄÚ´æÖУ¬²¢Ã»ÓÐд»ØÎļþ¡£¹²ÏíÄÚ´æÖеÄÄÚÈÝÍùÍùÊÇÔÚ½â³ýÓ³Éäʱ²Åд»ØÎļþµÄ¡£Òò´Ë£¬²ÉÓù²ÏíÄÚ´æµÄͨÐÅ·½Ê½Ð§ÂÊÊǷdz£¸ßµÄ¡£
LinuxµÄ2.2.xÄÚºËÖ§³Ö¶àÖÖ¹²ÏíÄڴ淽ʽ£¬Èçmmap()ϵͳµ÷Óã¬Posix¹²ÏíÄڴ棬ÒÔ¼°ÏµÍ³V¹²ÏíÄÚ´æ¡£linux·¢Ðа汾Èç
Redhat
8.0Ö§³Ömmap()ϵͳµ÷Óü°ÏµÍ³V¹²ÏíÄڴ棬µ«»¹Ã»ÊµÏÖPosix¹²ÏíÄڴ棬±¾ÎĽ«Ö÷Òª½éÉÜmmap()ϵͳµ÷Óü°ÏµÍ³V¹²ÏíÄÚ´æAPIµÄÔ­Àí¼°Ó¦

Ò»¡¢ÄÚºËÔõÑù±£Ö¤¸÷¸ö½ø³ÌÑ°Ö·µ½Í¬Ò»¸ö¹²ÏíÄÚ´æÇøÓòµÄÄÚ´æÒ³Ãæ
1¡¢
page cache¼°swap cacheÖÐÒ³ÃæµÄÇø·Ö£ºÒ»¸ö±»·ÃÎÊÎļþµÄÎïÀíÒ³Ã涼פÁôÔÚpage cache»òswap
cacheÖУ¬Ò»¸öÒ³ÃæµÄËùÓÐÐÅÏ¢ÓÉstruct pageÀ´ÃèÊö¡£struct pageÖÐÓÐÒ»¸öÓòΪָÕëmapping £¬ËüÖ¸ÏòÒ»¸östruct
address_spaceÀàÐͽṹ¡£page cache»òswap
cacheÖеÄËùÓÐÒ³Ãæ¾ÍÊǸù¾Ýaddress_space½á¹¹ÒÔ¼°Ò»¸öÆ«ÒÆÁ¿À´Çø·ÖµÄ¡£
2¡¢ÎļþÓëaddress_space½á¹¹µÄ¶ÔÓ¦£ºÒ»¸ö¾ßÌåµÄÎļþÔÚ´ò¿ªºó£¬Äں˻áÔÚÄÚ´æÖÐΪ֮½¨Á¢Ò»¸östruct
inode½á¹¹£¬ÆäÖеÄi_mappingÓòÖ¸ÏòÒ»¸öaddress_space½á¹¹¡£ÕâÑù£¬Ò»¸öÎļþ¾Í¶ÔÓ¦Ò»¸öaddress_space½á¹¹£¬Ò»¸ö
address_spaceÓëÒ»¸öÆ«ÒÆÁ¿Äܹ»È·¶¨Ò»¸öpage cache »òswap
cacheÖеÄÒ»¸öÒ³Ãæ¡£Òò´Ë£¬µ±ÒªÑ°Ö·Ä³¸öÊý¾Ýʱ£¬ºÜÈÝÒ׸ù¾Ý¸ø¶¨µÄÎļþ¼°Êý¾ÝÔÚÎļþÄÚµÄÆ«ÒÆÁ¿¶øÕÒµ½ÏàÓ¦µÄÒ³Ãæ¡£
3¡¢½ø³Ìµ÷ÓÃmmap()ʱ£¬Ö»ÊÇÔÚ½ø³Ì¿Õ¼äÄÚÐÂÔöÁËÒ»¿éÏàÓ¦´óСµÄ»º³åÇø£¬²¢ÉèÖÃÁËÏàÓ¦µÄ·ÃÎʱêʶ£¬µ«²¢Ã»Óн¨Á¢½ø³Ì¿Õ¼äµ½ÎïÀíÒ³ÃæµÄÓ³Éä¡£Òò´Ë£¬µÚÒ»´Î·ÃÎʸÿռäʱ£¬»áÒý·¢Ò»¸öȱҳÒì³£¡£
4¡¢¶ÔÓÚ¹²ÏíÄÚ´æÓ³ÉäÇé¿ö£¬È±Ò³Òì³£´¦Àí³ÌÐòÊ×ÏÈÔÚswap
cacheÖÐÑ°ÕÒÄ¿±êÒ³£¨·ûºÏaddress_spaceÒÔ¼°Æ«ÒÆÁ¿µÄÎïÀíÒ³£©£¬Èç¹ûÕÒµ½£¬ÔòÖ±½Ó·µ»ØµØÖ·£»Èç¹ûûÓÐÕÒµ½£¬ÔòÅжϸÃÒ³ÊÇ·ñÔÚ½»»»Çø
(swap area)£¬Èç¹ûÔÚ£¬ÔòÖ´ÐÐÒ»¸ö»»Èë²Ù×÷£»Èç¹ûÉÏÊöÁ½ÖÖÇé¿ö¶¼²»Âú×㣬´¦Àí³ÌÐò½«·ÖÅäеÄÎïÀíÒ³Ã棬²¢°ÑËü²åÈëµ½page
cacheÖС£½ø³Ì×îÖÕ½«¸üн


Ïà¹ØÎĵµ£º

ºìÆìlinux7Ï°²×°postgresql8.4.1£¨Ô´Â룩

1¡£ÏÂÔØpostgresql8.4.1Ô´Âë°ü
     ÏÂÔصØÖ·£ºhttp://www.postgresql.org/ftp/source/
2¡£½âѹԴÂë°ü
3¡£±àÒë°²×°
ÃüÁîÈçÏ£º
./configure
gmake
su
gmake install
adduser postgres
mkdir /usr/local/pgsql/data
chown postgres /usr/local/pgsql/data
su - postgres
/usr/local/pgsql/ ......

Linux cµÄpopen()

½ø³ÌI/Oº¯Êý,Óëpcloseº¯ÊýÒ»ÆðʹÓá£
±íÍ·Îļþ
¡¡¡¡#include <stdio.h>
º¯Êý¶¨Òå
¡¡¡¡FILE * popen
( const char * command
, const char * type
);
¡¡¡¡int pclose
( FILE * stream
);
º¯Êý˵Ã÷
¡¡¡¡
popen() º¯Êýͨ¹ý´´½¨Ò»¸ö¹ÜµÀ£¬µ÷Óà fork ²úÉúÒ»¸ö×Ó½ø³Ì£¬Ö´ÐÐÒ»¸ö shell ÒÔÔËÐÐÃüÁîÀ´¿ªÆôÒ» ......

Linux ϱàÒëhello world µÄC ÓïÑÔ³ÌÐò

±¾À´ÎÒÓõÄÊÇÕâÑùµÄ³ÌÐò
# include <iostream.h>
int main(void)
{
  int i,j;
  j=0;
  i=j+1;
  cout<<"hello world!"<<endl;
  cout<<"the result is"<<i<<endl;
  return 0;
}
ÀûÓÃg++ -o test test.cpp¡£µ«ÊÇÕâÑùÊÇÓдíÎóµÄ£¬ÌáʾÎÞ·¨´ ......

ʹÓà /proc ÎļþϵͳÀ´·ÃÎÊ Linux Äں˵ÄÄÚÈÝ


Õâ¸öÐéÄâÎļþϵͳÔÚÄں˿ռäºÍÓû§¿Õ¼äÖ®¼ä´ò¿ªÁËÒ»¸öͨÐÅ´°¿Ú
ÎĵµÑ¡Ïî
´òÓ¡±¾Ò³
½«´ËÒ³×÷Ϊµç×ÓÓʼþ·¢ËÍ
ÑùÀý´úÂë
¼¶±ð£º ³õ¼¶
M. Tim Jones (mtj@mtjones.com), ×ÊÉîÊ×ϯÈí¼þ¹¤³Ìʦ, Emulex
2006 Äê 4 ÔÂ 24 ÈÕ
/proc ÎļþϵͳÊÇÒ»¸öÐéÄâÎļþϵͳ£¬Í¨¹ýËü¿ÉÒÔʹÓÃÒ»ÖÖеķ½·¨ÔÚ Linux® Äں˿ռäºÍÓà ......

linuxϵͳµ÷Óã¨×ª£©

ÆäÖÐÓÐһЩº¯ÊýµÄ×÷ÓÃÍêÈ«Ïàͬ£¬Ö»ÊDzÎÊý²»Í¬¡££¨¿ÉÄܺܶàÊìϤC++ÅóÓÑÂíÉϾÍÄÜÁªÏëÆðº¯ÊýÖØÔØ£¬µ«ÊDZðÍüÁËLinuxºËÐÄÊÇÓÃCÓïÑÔдµÄ£¬ËùÒÔÖ»
ÄÜÈ¡³É²»Í¬µÄº¯ÊýÃû£©¡£»¹ÓÐһЩº¯ÊýÒѾ­¹ýʱ£¬±»ÐµĸüºÃµÄº¯ÊýËù´úÌæÁË£¨gccÔÚÁ´½ÓÕâЩº¯Êýʱ»á·¢³ö¾¯¸æ£©£¬µ«ÒòΪ¼æÈݵÄÔ­Òò»¹±£Áô×Å£¬ÕâЩº¯ÊýÔÚÇ°
Ãæ±êÉÏ“*”ºÅÒÔÊ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ