Android培训班(12)
来源:互联网 发布:电脑软件管家排行榜 编辑:程序博客网 时间:2024/04/28 19:10
#059
#060 get_hardware_name();
这段代码是获取当前android系统运行的硬件信息,比如硬件的CPU名称。主要从/proc/cpuinfo里读到相关的信息。
#061 snprintf(tmp, sizeof(tmp),"/init.%s.rc", hardware);
#062 parse_config_file(tmp);
这段代码是从前面获取到的硬件名称,然后以硬件的名称(/init.硬件名称.rc)来获取相应硬件的配置文件,并且把配置文件参数加载到链表里。
#063
#064 action_for_each_trigger("early-init",action_add_queue_tail);
#065 drain_action_queue();
这段代码是先把有early-init标识的命令提前添加到一个命令队列,以便函数drain_action_queue一个一个命令地执行配置文件里的函数,这样可以在不同的配置文件里,只要标明是最先执行的函数,就可以优先地运行。
#066
#067 INFO("device init/n");
#068 device_fd = device_init();
这段代码是遍历为/sys,添加设备事件响应,创建设备节点。
#069
#070 property_init();
这段代码是进行属性初始化。每个属性都有一个名称和值,它们都是字符串格式。属性被大量使用在Android系统中,用来记录系统设置或进程之间的信息交换。属性是在整个系统中全局可见的。每个进程可以get/set属性。在系统初始化时,Android将分配一个共享内存区来存储的属性,这里主要是从/default.prop属性文件读取属性。这个有点像Windows下的注册表的作用。
#071
#072 // only listen for keychords ifro.debuggable is true
#073 debuggable =property_get("ro.debuggable");
#074 if (debuggable &&!strcmp(debuggable, "1")) {
#075 keychord_fd = open_keychord();
#076 }
这段代码是从属性里获取调试标志,如果是可以调试,就打开组合按键输入驱动程序。
#077
#078 if (console[0]) {
#079 snprintf(tmp, sizeof(tmp),"/dev/%s", console);
#080 console_name = strdup(tmp);
#081 }
#082
#083 fd = open(console_name, O_RDWR);
#084 if(fd >= 0)
#085 have_console = 1;
#086 close(fd);
这段代码是判断是否有控制台,如果没有,就尝试是否是可以打缺省的控制台。
#087
#088 if( load_565rle_image(INIT_IMAGE_FILE) ){
#089 fd = open("/dev/tty0",O_WRONLY);
#090 if (fd >= 0) {
#091 const char *msg;
#092 msg = "/n"
#093 "/n"
#094 "/n"
#095 "/n"
#096 "/n"
#097 "/n"
#098 "/n" // console is 40 cols x 30 lines
#099 "/n"
#100 "/n"
#101 "/n"
#102 "/n"
#103 "/n"
#104 "/n"
#105 "/n"
#106 " A N D R O I D ";
#107 write(fd, msg, strlen(msg));
#108 close(fd);
#109 }
#110 }
这段代码是先调用load_565rle_image函数来尝试加载定制的显示的LOGO图片,如果不成功,就直接在屏幕上显示字符串android。通过这里可以定制不同厂家的LOGO图片显示,以便在系统初始化时,进行更人性化的等待,更加漂亮个性。
- Android培训班(12)
- Android培训班
- Android培训班
- Android培训班(99)内核解压过程12
- Android培训班(1)
- Android培训班(2)
- Android培训班(3)
- Android培训班(4)
- Android培训班(5)
- Android培训班(6)
- Android培训班(7)
- Android培训班(8)
- Android培训班(9)
- Android培训班(10)
- Android培训班(11)
- Android培训班(13)
- Android培训班(14)
- Android培训班(15)
- 脏读,幻读,不可重复读
- 图片代替提交和重置按钮
- CSS中一些小经验(转)
- emulator: ERROR: unknown virtual device name……
- 9260 remap
- Android培训班(12)
- 关键词密度
- Hook基础 C++篇
- Linux from Scratch[转http://baike.baidu.com/view/366312.htm?fr=ala0_1]
- pku2115(欧几里德算法,模线性方程)
- an issue of sctp sctp_getladdrs implementation
- WinForm messagebox 确定取消按钮事件
- Eclipse快捷键
- html下拉列表ddl