知识
文章平均质量分 77
灵魂之Ca
广东广州,物联网工程小白,热爱电子。
展开
-
从LED硬件控制流程认识Android架构!
层次概述APP层在Android Studio进行开发的人,调Java包的API,就是调API框架层Java API的提供者,它提供了被称为“服务”的东西,就是应用层你调某个API,我帮你做操作并给你返回值思考这里需要思考一个问题,例如硬件只有一个,那如果多个应用程序都要控制它,怎么办?这就要提到“服务”这个东西,就是安卓系统做主,它去建立一个进程访问硬件(上服务),然后应用层的进程要控制硬件,都给系统服务(下服务)发请求,“系统服务”会建立队列让它们排队使用这个硬件服务(原创 2024-09-02 17:18:28 · 826 阅读 · 0 评论 -
段,页,段页,三种内存(RAM)管理机制分析
linux中每一个进程虚拟地址中的段号都是对应的0~4GB的地址空间,每一个进程段空间范围都一样就意味着虚拟地址中的段号没有划分地址的作用,实际上linux中的虚拟地址是 "虚拟地址 = 段号+页号+页内偏移 ",系统有规定某些段号只有内核程序能使用,应用层程序只能使用另一些段号。缺点:页表本身占用的内存太多了,每一个进程有一个页表,那么理论上32位的机器4G的物理内存,每一页是4K的话,总共会有4G/4K = 2^10 * 2*10 个页表,如果一个页表要4MB,那光是记录页表就要占用800M的内存。原创 2024-06-24 00:12:45 · 803 阅读 · 0 评论 -
Cmake-learning
有的时候目标文件会暂时没指定,那么就看有米有这个语句:target_sources(目标文件 源文件),这是指定目标文件的源文件的语句。新接触一个项目,了解项目组织结构的最快方式就是看编译流程~通过重点关注目标文件、目标库的生成流程,我们可以清晰的看到庞大项目的脉络。add_library(目标库名称SHARED hello.c) #生成动态库文件。add_library(目标库名称SHARED hello.c) #生成动态库文件。target_link_libraries (目标文件 库文件})原创 2024-05-09 17:59:47 · 766 阅读 · 0 评论 -
linux驱动开发面试题
记住“22”,两级分段两级权限。例如是32位的机器,从内存空间看:顶层1G是内核的,底3G是应用的;从权限看:内核是0级特权,应用是3级特权。系统调用。proc。原创 2024-03-17 15:50:57 · 1245 阅读 · 0 评论 -
排序算法-一天两个之冒泡、选择排序
准备笔试题中,这几天复习排序算法,尽量一天学一两个,并且以能手写代码的理解方式写出来。原创 2024-03-15 22:38:18 · 547 阅读 · 1 评论 -
常量指针,指针常量;函数指针,指针函数;指针数组,数组指针 一文全解!带示例
最近准备面试,准备把这几个乱人心智的概念一网打尽,顺便记录一下~原创 2024-03-15 21:47:02 · 349 阅读 · 0 评论 -
基于IEEE 802.15.4协议的Zigbee的PHY层、MAC层理解分析
IEEE 802.15.4标准的一种无线通信协议,主要应用于低功耗、短距离的设备。它包含了一系列的协议层,用于实现设备之间的通信和网络组建。(有点像废话,总之三点,无线,低功耗,短距离。原创 2023-12-15 11:45:18 · 1504 阅读 · 0 评论