LinuxÖеÄÄÚ´æ·ÖÅäºÍÊÍ·ÅÖ®bootmam_init()º¯Êý·ÖÎö
Á˽âÁËLinuxÄÚ´æ¹ÜÀíµÄ»ù±¾ÖªÊ¶ºó£¬ÎÒÃÇÀ´Ñо¿Ò»ÏÂLinuxÄÚ´æµÄ·ÖÅäºÍÊÍ·Å¡£ÎÒÃÇ»á·ÖÁ½¸ö²¿·ÖÀ´Ñо¿µÄ¡£ÎÒÃÇÏòÀ´Ì½ÌÖϵͳÆô¶¯³õÆÚÄÚ´æµÄ·ÖÅäºÍÊÍ·Å¡£Õâ¸ö½×¶Î¿ÉÒÔÉêÇëµ½´óƬµÄÎïÀíÄڴ棬µ«ÊÇҪעÒâµ½ÒÔÏÂÁ½µã£¡
1£©ÆäʵϵͳÆô¶¯³õÆÚÊÇÖ¸ÔÚinit_mem()֮ǰµÄ½×¶Î£¬ÔÚÕâ¸ö½×¶ÎÓÉÓÚÖ»ÐèÒªÉÙÁ¿µÄÄڴ棨Äں˱àÒëÐèÒªµÄÄڴ棬ҳ֡λÂë±í£¬Ò³±í£¬initrd£©£¬ËùÒÔ¿ÉÒÔÉêÇëµ½´óƬµÄÎïÀíÄڴ棬µ«ÊÇÎÒÃÇ»¹Òª×¢Òâµ½µÄÊÇ£¬Èç¹ûÔÚÕâ¸ö½×¶Î²»ÊÍ·ÅÕâЩÄÚ´æµÄ»°£¬init_mem()ÒÔºóµÄÄÚºËÊDz»¿ÉÒÔÔÙ¶ÔÕⲿ·ÖÄÚ´æ²Ù×÷µÄ£¨·ÖÅäºÍÊÍ·Å£©¡£
2£©Õâ¸ö½×¶Î£¬ÎÒÃÇÖ»¿ÉÒÔ·ÖÅäµÍ¶ËÄڴ棬·ÖÅä²»Á˸߶ËÄڴ棬ÒòΪÕâ¸öʱºòÄÚ´æÊÇûÓÐÄÚºËÂß¼µØÖ·µÄ¡£
ºÃÁË£¬ÏÖÔÚÎÒÃÇ¿ªÊ¼À´Ñо¿ÓëÕâ¸ö½×¶ÎÓйصĺ¯Êý£¬Í¨¹ýÕâЩº¯ÊýµÄ·ÖÎö£¬ÎÒÃÇ¿ÉÒÔ¸üÇå³þÄÚ´æ¹ÜÀíÊÇÔõÑùµÄ¡£ÎÒÃÇÏÈÀ´Ñо¿bootmem_init()ϵͳÆô¶¯½×¶ÎÄÚ´æ¹ÜÀí³õʼ»¯¡£Õâ¸öº¯ÊýÊÇÔÚstart_kernel()µÄsetup_arch()µÄpaging_init()µ÷Óõġ£ÎÒÃÇÏÖÔÚÀ´¿´¿´paging_init()µÄ¾ßÌå´úÂë¡£
void __init paging_init(struct meminfo *mi, struct machine_desc *mdesc)
{
void *zero_page;
int node;
bootmem_init(mi);
struct meminfo *miÆäʵÊÇ´Ósetup_arch()º¯Êý´«¹ýÀ´µÄÈ«¾Ö±äÁ¿£¬Õâ¸öÈ«¾Ö±äÁ¿ÊÇmeminfo£¬Õâ¸ö±äÁ¿¼Ç¼ÁËϵͳÄÚ´æÐÅÏ¢£¬¾ßÌåÀ´ËµÊǼǼÁËbankµÄÐÅÏ¢¡£ÎÒÃÇÀ´¿´¿´bootmem_init(mi)¾ßÌå×öЩʲô£¡
static void __init bootmem_init(struct meminfo *mi)
{
struct node_info node_info[MAX_NUMNODES], *np = node_info;
unsigned int bootmap_pages, bootmap_pfn, map_pg;
int node, initrd_node;
bootmap_pages = find_memend_and_nodes(mi, np);
¶ÔÓÚstruct node_infoÕâ¸ö½á¹¹ÌåÊÇÓÃÀ´ÃèÊöÄÚ´æ½Úµã£¨node£©µÄÐÅÏ¢µÄ£¬ÕâÀïµÄnode_info±äÁ¿ÊÇÕâ¸ö½á¹¹ÌåµÄÊý×飬*npÕâÊÇÖ¸ÏòÕâ¸öÊý×éµÄÖ¸Õ룬ÎÒÃÇÏÈÀ´¿´¿´find_memend_and_nodes(mi, np);Õâ¸öº¯Êý¡£
find_memend_and_nodes(struct meminfo *mi, struct node_info *np)
{
unsigned int i, bootmem_pages = 0, memend_pfn = 0;
for (i = 0; i < MAX_NUMNODES; i++) {
np[i].start = -1U;
np[i].end = 0;
np[i].bootmap_pages = 0;
}
ÕâÀïÊǶԸղÅ˵µÄÄǸö½á¹¹Ìå½øÐгõʼ»¯£¬Ò»Ö±°ÑÕû¸öÊý×éµÄÿ¸öµ¥Ôª³õʼ»¯ÍêΪֹ¡£
for (i =
Ïà¹ØÎĵµ£º
ÔÚLinuxϵͳÖУ¬ÖÕ¶ËÉ豸·Ç³£ÖØÒª£¬Ã»ÓÐÖÕ¶ËÉ豸£¬ÏµÍ³½«ÎÞ·¨ÏòÓû§·´À¡ÐÅÏ¢£¬LinuxÖаüº¬¿ØÖÆÌ¨¡¢´®¿ÚºÍαÖÕ¶Ë3ÀàÖÕ¶ËÉ豸¡£
14.1ÖÕ¶ËÉ豸
ÔÚLinuxϵͳÖУ¬ÖÕ¶ËÊÇÒ»ÖÖ×Ö·ûÐÍÉ豸£¬ËüÓжàÖÖÀàÐÍ£¬Í¨³£Ê¹ÓÃttyÀ´¼ò³Æ¸÷ÖÖÀàÐ͵ÄÖÕ¶ËÉ豸¡£ttyÊÇTeletypeµÄËõд£¬TeletypeÊÇ×îÔç³öÏÖµÄÒ»ÖÖÖÕ¶ËÉ豸£¬ ......
ÐéÄâ»úµÄÍøÂç²ÉÓÃBridged(ÇŽÓ)·½Ê½£¬¸Õ¿ªÊ¼ÒÔΪ£¬ÊÇÒòΪ»úÆ÷ÉϵÄÓÐÐ©Íø¿¨Ã»ÓÐÁ¬½ÓµçÀ£¬¶øVMWareÓÖÇ¡ºÃʹÓÃÁ˸ÃÍø¿¨£¬¾¹ý¼¸¸öСʱµÄ²âÊÔ£¬Í¨¹ý½ûÓÃûÁ¬ÏßµÄÍø¿¨¡¢°ÑVMWareµÄVM0Ó³Éäµ½Á¬ÏߵįäËûÍø¿¨£¬¶¼Ã»Óнâ¾öÎÊÌâ¡£
ÔÚVMÐéÄâ»úÖÐ×°ÁËredhatlinux9.0£¬×¼±¸ÓëÖ÷»ú¹²ÏíÎļþ£¬½á¹ûÍøÂ粻ͨ£¡
&n ......
±¾È˲Ù×÷ϵͳ»·¾³ÊÇUBUNTU 8.04 ÔÚ³¬¼¶È¨ÏÞϰ²×°³É¹¦,½ö¹©²Î¿¼(ǰÌáµÃ°²×°Linux °æ±¾JDK)
»ù±¾½éÉÜ:
Tomcat
ÊÇÒ»¸öÃâ·ÑµÄ¿ªÔ´µÄSerlvetÈÝÆ÷£¬ËüÊÇApache»ù½ð»áµÄJakartaÏîÄ¿ÖеÄÒ»¸öºËÐÄÏîÄ¿£¬ÓÉApache£¬SunºÍÆäËüһЩ¹«Ë¾¼°¸öÈ˹²Í¬¿ª·¢¶ø³É¡£ÓÉÓÚÓÐÁËSunµÄ²ÎÓëºÍÖ§³Ö£¬×îеÄServletºÍJsp¹æ·¶×ÜÄÜÔÚTomcatÖ ......
Ìáʾ·ûͨ¹ý±äÁ¿PS1À´ÉèÖ㬿ÉÒÔÓÃÒÔÏÂÃüÁîÀ´ÏÔʾµ±Ç°ÉèÖãº
echo $PS1
Ìáʾ·ûµÄϵͳ·¶Î§£¨¶ÔϵͳÀïËùÓÐÓû§ÓÐЧ£©µÄÉ趨ÔÚÎļþ /etc/bashrcÀ¿ÉÄܰüº¬ÒÔϵÄÐУº
PS=“[\u@\h \W]\$"
Òª¶¨ÖÆÌáʾ·û£¬ÎÒÃÇ¿ÉÒÔ±à¼Îļþ /etc/bashrc £¨rootÓû§£©È»ºóÔÚÁ½¸öÒýºÅÖ®ÄÚÊäÈëÈκÎÄãÏëÒªµÄÎı¾¡£
½«[\u@\h \W]\\$ÐÞ¸ÄΪ[ ......
linux ÏÂc ³ÌÐò ¶Î´íÎó ·ÖÎö
(2008-12-31 16:50:57)
var $tag='it';
var $tag_code='2cec03ae0a5b0d224bb35c9b79dd54c7';
±êÇ©£ºit
·ÖÀࣺC/C++
fopen("/var/spool/cron/tmp","w+");
/////////////////////////////////////////
#include <sys/types.h>
......