- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 Android系统初始化过程分析(Android 4.3)
在内核初始化完成后,最后会启动第一个用户空间进程,路径名为/init,它对应的代码是在/system/core/init/init.c。下面将从main函数开始一步步分析其中的执行过程。 if (!strcmp(basename(argv[0]), "ueventd")) return ueventd_main(argc, argv);
2014-03-30 10:44:55 2980
原创 Zygote启动分析
基于性能的考虑,Dalvik虚拟机只启动一次,新的实例将从第一次启动的Dalvik中拷贝。这个功能是通过系统服务Zygote来实现的。 Zygote的启动过程简述如下:首先,它预初始化和预加载通用的Android类到它的堆中。然后,它监听在Socket端口上,等待启动一个新的Android应用程序的命令。当接收到一个启动应用程序命令,它将利用已经加载的应用程序fork出一个新的进程。该进程
2014-03-30 10:41:12 837
原创 Problem 63 何时该用glDrawTexiOES?
Problem 63 何时该用glDrawTexiOES?Ans: 首先,这个函数的作用是将指定的纹理贴到视图中的一个矩形区域,无须坐标变换,渲染速度加快。使用的步骤大概如下: glGenTextures(...) glBindTexture(...) ... glTexImage2D(...)
2014-03-26 12:54:54 3312
原创 Problem 62 Java中的final关键字?
Problem 62 Java中的final关键字?Ans: 在Java中,通常将作为常量的变量声明为final,表示其值不可更改,如果该变量属于对象引用类型(非基本数据类型),则表示其引用是不可更改的,但是引用的对象本身是可以被修改的。不过,final关键字也可以应用于局部变量,实例变量和静态变量。在所有这些情况下,它们的含义都是:在创建这个变量之后,只能够为之赋值一次,此后不能修改
2014-03-24 13:39:18 687
原创 Problem 61 修改进程的显示名称
Problem 61 修改进程的显示名称?Ans: 要更改一个进程的显示名称,需要使用系统调用 prctl(), 其中PR_SET_NAME可用于修改进程显示名字。测试程序:# include # include int main( void ) { char name[ 32] ; prctl( PR_SET_NAME, ( unsi
2014-03-07 14:22:37 823
Beginning Visual C++ 2008(含源码)
2010-01-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人