- 博客(6)
- 资源 (33)
- 收藏
- 关注
原创 RK3399平台开发系列讲解(进程调度篇)14.4、 进程状态有限状态机
进程并不总是可以立即运行的一方面是 CPU 资源有限,另一方面则是进程时常需要等待外部事件的发生,例如I/O 事件、定时器事件等。因此,对进程的状态进行分类就是一件非常有必要的事情,对于等待某事件发生的进程给予 CPU 资源是没有任何意义的,因为此时事件可能仍未发生。而对于正等待 CPU 资源的进程而言,在得到 CPU 之后即可立即执行。调度器为了尽可能最大地使用硬件资源,通常会将进程分为3个主要的状态: 运行、等待和睡眠。
2017-12-17 19:52:34 1216 8
原创 RK3399平台开发系列讲解(内存篇)15.16、应用程序的内存布局
在未出现“分页虚拟内存”管理机制之前,操作系统对内存空间采用“分段”的方式进行管理:即将相似的数据放在一起,例如文本段、初始化数据段、未初始化数据段。时至今日,此类内存布局仍在使用,并结合分页虚拟内存共同实现对物理内存的管理。
2017-12-17 19:50:41 3071 9
原创 RK3399平台开发系列讲解(内存篇)15.15、MMU页表存储管理部分
CPU首先在MMU的页表缓存中查找需要获取的数据,如果没有,继续到caches中查找,caches中没有,到memory中查找。理论上MMU越大,命中率越高,性能越好,同时要考虑到面积和成本。
2017-12-17 19:35:53 1145 9
原创 RK3568平台开发系列讲解(蓝牙篇)蓝牙系统结构
Android平台中的蓝牙系统是基于BlueZ实现的,BlueZ是通过Linux中的一套完整的蓝牙协议栈开源实现的。在Linux 2.6内核中已经包含了完整的BlueZ协议栈,在Android系统中已经移植并嵌入进了BlueZ的用户空间实现,并且随着硬件技术的发展而不断更新。Android的应用程序框架提供了访问蓝牙功能的APIs。在Android平台中,蓝牙系统从上到下主要包括Java框架中的Bluetooth类、Android适配库、BlueZ库、驱动程序和协议,这几部分的具体结构如图。
2017-12-09 17:37:55 3645 7
原创 RK3399平台开发系列讲解(内核入门篇)1.31、指针详解
C 语言指针真正精髓的地方在于指针可以进行加减法,这一点极大的提升了程序的对指针使用的灵活性,同时也带来了不小的学习负担。正是因为 C 语言指针可运算,才奠定了如今 C 语言的地位。
2017-12-02 16:53:32 2229 12
RK3399 Android7.1-Box 软件开发指南 V1.01-20170401.rar
2021-06-04
ioremap_gpio_demo.c
2021-02-26
rkisp的驱动代码
2020-10-21
MLX90640红外开发资料包.zip
2020-02-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人