当前搜索:

Android培训班(108)start_kernel函数5

tick_init()这个函数主要作用是初始化时钟事件管理器的回调函数,比如当时钟设备添加时处理。在内核里定义了时钟事件管理器,主要用来管理所有需要周期性地执行任务的设备。boot_cpu_init()这个函数主要作用是设置当前引导系统的CPU在物理上存在,在逻辑上可以使用,并且初始化准备好。在多CPU的系统里,内核需要管理多个CPU,那么就需要知道系统有多少个CPU,在内核里使用cpu_pres...
阅读(2427) 评论(0)

Android培训班(107)start_kernel函数4

cgroup_init_early()这个函数主要作用是控制组进行早期的初始化。什么叫控制组(controlgroups)呢?简单地说,控制组就是定义一组进程具有相同资源的占有程度。比如可以指定一组进程使用CPU为30%,磁盘IO为40%,网络带宽为50%。因此通过控制组就可以把所有进程分配不同的资源。可以参考这个文档(http://docs.redhat.com/docs/en-US/Red_H...
阅读(2374) 评论(0)

Android培训班(106)start_kernel函数3

unwind_init()这个函数主要作用是提供调试和错误的初始化。由于内核是基于C语言开发的系统,而C语言是基于栈的函数调用语言,那么当函数出错时,软件开发工程师就逼切地想知道是从那里调用这个函数出错的,也就是想获取函数调用的路径,以便确认这条路径里是否考虑到的情况,如果没有考虑周到,说明就有错误出现了。如果系统提供这种查看函数调用栈的关系,那么会大大方便软件开发工程师对软件修改,提高质量。调用...
阅读(2755) 评论(0)

Android培训班(105)start_kernel函数2

紧跟参数后面的,就是调用函数smp_setup_processor_id()了,这个函数主要作用是获取当前正在执行初始化的处理器ID。如果仔细地阅读完初始化函数start_kernel,就会发现里面还有调用smp_processor_id()函数,这两个函数都是获取多处理器的ID,为什么会需要两个函数呢?其实这里有一个差别的,smp_setup_processor_id()函数可以不调用setup...
阅读(3307) 评论(0)
    个人资料
    • 访问:5901791次
    • 积分:76272
    • 等级:
    • 排名:第22名
    • 原创:1625篇
    • 转载:61篇
    • 译文:11篇
    • 评论:2102条
    文章存档