日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

FreeBSD 4.0 Kernel Hacking Guide--i386/i386/m

getmemsize(),;1419行.;找出并計(jì)算所有可用之記憶體,;并保留;msgbuf
(保留在;avail_end;後面,;MSGBUF_SIZE;大小).


init386(),;1802行.;參數(shù);first;為未使用的;free;mem;addr;(physfree).

1824-1825行,;preload_bootstrap_relocate(),;kern/subr_module.c,;234行,;
relocate;預(yù)先載入(preload)的;kernel;module.;執(zhí)行;loader;的動(dòng)作,
修改;module;的;address;depend;資料.

1839-1860行,;設(shè)定;gdt;(global;descriptor;table).;由於;gdt;的格式較為
雜,;因此有所謂的;soft_segment_descriptor;(ssd),
i386/include/segments.h,;165行,;gdt_segs;就是
ssd;;list,;讓;gdt;較容易操作.;因此在;1853-1860行,;必需進(jìn)行
轉(zhuǎn)換動(dòng)作,;由;ssdtosd(),;i386/i386/support.s,;157行,;從;ssd;轉(zhuǎn)換
成;CPU;所能接受的;segment;descriptor;格式.

1862-1864行,;load;gdt,;使剛設(shè)好的;gdt;發(fā)生作用.;lgdt(),;i386/i386/support.s,
1521行.

1885-1894行,;設(shè)定;ldt.

1897-1923行,;設(shè)定;idt.
所有的;idt;entry;都指向;vector;routines,;i386/i386/exception.s,
122行.;每一個(gè);trap;or;fault;都會(huì)有對(duì)應(yīng)的;entry;point,;作為實(shí)
際;isr;和;cpu;之間介面.;關(guān)於上述介面,;另見專文.

1928行,;cninit(),;console;初始化.

1932行,;isa_defaultirq(),;i386/isa/intr_machdep.c,;219行.;設(shè)定;isa;device
所使用的;irq;(設(shè)定;icu;8259),;并設(shè)定對(duì)應(yīng)的;isr.

1948-1955行,;設(shè)定并安裝;tss.

1971行,;getmemsize(),;i386/i386/machdep.c,;1419行,;找出并計(jì)算所有可用之
memory,;并保留;msgbuf.;getmemsize;會(huì)設(shè)立幾個(gè);global;變數(shù).
physmem 實(shí)際可用的;page;數(shù)目.
Maxmem physcial;memory;address;的最大值.
phys_avail list;of;可用的;mem;block.
avail_start 由;pmap_bootstrap().
avail_end 最大可用之;physcial;memory;address.
所有的分配都必需小於這個(gè)位址.

1976-1979行,;msgbuf;initialization.

1982-1995行,;install;a;call;gate;for;system;call.

1999-2008行,;setup;process;0.

    推薦閱讀