- 1
- 0
- 约2.44千字
- 约 37页
- 2017-12-30 发布于湖北
- 举报
linux启动函数.pptx
;前情回顾;启动内核;一般位于arch/host/kernelhead.S
功能:_stext() 会设置初始堆栈指针并且会运行其他必需的函数去创建一个最小的C运行环境,像清除BSS的存储器段,之后_stext()会跳到start_kernel()
BSS存放程序中未初始化的全局变量和静态变量的一块内存区域;功能:它会编排启动程序。在调用其它需要的函数功能之前将内核转变为运行状态,start_kernek()调用printk(KERN_NOTICE %s, linux_banner)来打印linux_banner的信息,并解析命令行。;部分代码:;lock_kernel();setup_arch();(1) setup_processor();(3)内存设置代码 ;(4)内核内存空间管理;(5)内存结构初始化;(6)paging_init(meminfo, mdesc);trap_init();init_IRQ(); 这个函数用来做体系相关的irq处理的初始化.
irq_desc数组是用来描述IRQ的请求队列,每一个中断号分配一个irq_desc结构,组成了一个数组。
NR_IRQS代表中断数目,这里只是对中断结构irq_desc进行了初始化。
;sched_init();softirq_init();time_init();console_init();init_modules(
原创力文档

文档评论(0)