学习是一种修行
发布时间:2013-12-28 17:14:40
这个很熟是进程调度初始化函数,主要做了设置进程的GDT,LDT描述符,设置系统定时器中断,系统调用终端,代码如下:void sched_init(void){ int i; struct desc_struct * p;/**********************************描述结构在include/linux/head.h中typedef st.........【阅读全文】
发布时间:2013-12-27 16:59:49
blk_dev_init()的代码很少,如下:void blk_dev_init(void){ int i; for (i=0 ; i<NR_REQUEST ; i++) { request[i].dev = -1; .........【阅读全文】
发布时间:2013-12-27 16:49:55
mem_init的代码很少,是纯c的。也比较容易理解,是内存初始化函数。代码:void mem_init(long start_mem, long end_mem){ int i; HIGH_MEMORY = end_mem; &.........【阅读全文】
发布时间:2013-12-27 16:26:08
trap_init函数是中断初始化函数,主要调用了set_trap_gate和set_system_gate;而这两函数的原型都是 _set_gate。这个是内联汇编函数。代码:#define _set_gate(gate_addr,type,dpl,addr) \__asm__ ("movw %%dx,%%ax\n\t" \ "movw %0,%%dx\n\t" \ "movl %%.........【阅读全文】