RK3399平台开发入门到精通系列专栏
文章平均质量分 82
最全最详细的RK3399平台内核、安卓开发系列教程;经过五年的输出和完善打磨,将深奥的内核知识进行分解;作者深入浅出的讲解内核驱动的原理,通过图文并茂,使其通俗易懂;每周必更新至少两篇。
优惠券已抵扣
余额抵扣
还需支付
¥89.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
内核笔记
一直从业于半导体行业,曾为Linux内核开源文档社区提交过若干文档。
主要从事Linux、Android相关系统软件开发工作,负责Soc芯片BringUp及系统软件开发,喜欢阅读内核源代码,在不断的学习和工作中深入理解内存管理,进程调度,文件系统,设备驱动等内核子系统。
展开
-
RK3399平台入门到精通系列讲解 - 总目录
欢迎大家来到内核笔记的《RK3399平台开发入门到精通系列讲解》,开始前博主先列出RK3399平台学习的大纲,同时这也可以作为大家学习RK3399内核与安卓框架的参考。下面蓝字都是传送门,点击进入即可:...原创 2020-11-17 23:20:48 · 93080 阅读 · 205 评论 -
RK3399平台开发系列讲解(内核入门篇)内核模块符号的导出
📢这里的符号主要指的是全局变量和函数。原创 2024-08-12 22:07:03 · 247 阅读 · 0 评论 -
RK3399平台开发系列讲解(USB篇)USB发展背景
📢介绍USB发展背景。原创 2024-02-17 23:32:04 · 340 阅读 · 1 评论 -
RK3399平台开发系列讲解(内存篇)进程内存详解
📢进程消耗的内存包括:虚拟地址空间映射的物理内存、读写磁盘生成PageCache消耗的内存。原创 2024-02-05 00:15:00 · 596 阅读 · 1 评论 -
RK3399平台开发系列讲解(PCIE篇)PCIE体系结构
PCIE体系结构有哪些知识原创 2024-01-26 00:25:37 · 385 阅读 · 3 评论 -
RK3399平台开发系列讲解(USB篇)USB2.0 包格式分类
📢 USB协议定了多种类型的包,有令牌包、数据包和握手包。原创 2024-01-24 03:45:00 · 680 阅读 · 1 评论 -
RK3399平台开发系列讲解(USB篇)USB协议层数据格式
官网:https://www.usb.org/documents原创 2024-01-23 23:27:39 · 175 阅读 · 0 评论 -
RK3399平台开发系列讲解(内核入门篇)LDM数据结构详细介绍
🚀。原创 2024-01-23 04:00:00 · 141 阅读 · 0 评论 -
RK3399平台入门到精通系列讲解(驱动篇)eventpoll结构体详解
eventpoll 结构体:eventpoll 结构体是 epoll 在内核中的核心结构epitem 结构体:epitem 结构体用于表示 epoll 实例中的事件项eppoll_entry 结构体:它的作用就是关联Socket等待队列中的等待项wait_queue_t和epitem原创 2024-01-11 23:06:36 · 668 阅读 · 2 评论 -
RK3399平台入门到精通系列讲解(实验篇)自定义工作队列的使用
共享队列是由内核管理的全局工作队列,自定义工作队列是由内核或驱动程序创建的特定工作队列,用于处理特定的任务。原创 2024-01-08 04:00:00 · 2095 阅读 · 1 评论 -
RK3399平台入门到精通系列讲解(实验篇)共享工作队列的使用
工作队列是实现中断下半部分的机制之一,是一种用于管理任务的数据结构或机制。它通常用于多线程,多进程或分布式系统中,用于协调和分配待处理的任务给可用的工作线程或工作进程。原创 2024-01-08 06:00:00 · 1048 阅读 · 0 评论 -
RK3399平台入门到精通系列讲解(实验篇)IO 多路复用实验之poll实验
IO 多路复用是一种同步的 IO 模型。IO 多路复用可以实现一个进程监视多个文件描述符。一旦某个文件描述符准备就绪,就通知应用程序进行相应的读写操作。没有文件描述符就绪时就会阻塞应用程序,从而释放出 CPU 资源。原创 2024-01-04 22:06:31 · 788 阅读 · 3 评论 -
RK3399平台入门到精通系列讲解(导读篇)21天挑战Linux系统开发
每个人在突破自己技术瓶颈时都会经历一段痛苦的时光,只有我们具有坚定的信念,并努力坚持下去,相信我等你回过头来再看曾经认为难以理解的技术和知识时,你会有一种阔然开朗、融会贯通的感觉,这就是成长和进步所带来最大的成就感。.........原创 2023-12-28 23:58:33 · 2112 阅读 · 0 评论 -
RK3399平台开发系列讲解(内核入门篇)ConfigFS 的核心数据结构
📢虚拟文件系统 ConfigFS 是一个特殊的文件系统,旨在提供一种动态配置 Linux 内核和设备的机制。原创 2023-11-23 21:48:32 · 648 阅读 · 1 评论 -
RK3399平台开发系列讲解(应用篇)文件属性 stat 函数
📢Linux 下可以使用 stat 命令查看文件的属性,其实这个命令内部就是通过调用 stat()函数来获取文件属性的,stat 函数是 Linux 中的系统调用,用于获取文件相关的信息,函数原型如下所示(可通过"man 2 stat"命令查看)原创 2023-11-13 00:23:20 · 392 阅读 · 1 评论 -
RK3399平台开发系列讲解(内存篇)free 命令查看内存占用情况介绍
📢free 指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。原创 2023-11-11 01:11:20 · 468 阅读 · 1 评论 -
RK3399平台开发系列讲解(基础篇)应用程序代码优化技巧
📢我主要会为你介绍四个优化 应用代码的技巧,它们分别是利用高速缓存利用代码内联利用 restrict 关键字消除不必要内存引用。原创 2023-10-30 23:49:00 · 280 阅读 · 1 评论 -
RK3399平台开发系列讲解(基础篇)嵌入式编码规范有哪些
编码规范的制定,是项目从单人开发逐渐走向多人协作,让团队效率达到 1+1>2 效果的必经之路。因此,如何合理制定规范并加以落实并持续实践,是一个非常值得关注的问题。原创 2023-10-26 20:09:14 · 440 阅读 · 0 评论 -
RK3399平台开发系列讲解(驱动篇)Regulator Framework
📢 要简单介绍下系统的Regulator Framework。原创 2023-10-18 00:37:56 · 601 阅读 · 0 评论 -
RK3399平台开发系列讲解(入门篇)VIM的基础命令
📢 本篇将介绍Vim相关命令。原创 2023-09-14 00:18:13 · 592 阅读 · 0 评论 -
RK3399平台开发系列讲解(内核调试篇)USB摄像头快速测试
📢 本篇介绍如何快速测试 USB 摄像头。原创 2023-09-11 23:21:05 · 625 阅读 · 0 评论 -
RK3399平台开发系列讲解(内核调试篇)spidev_test工具使用
📢 在 Linux 系统上,“spidev_test” 是一个用于测试和配置 SPI(Serial Peripheral Interface)设备的命令行工具。SPI是一种串行通信协议,通常用于连接微控制器、传感器和其他外部设备。“spidev_test” 工具通常在Linux系统上使用,用于检查SPI接口的正确性以及与SPI设备的通信是否正常工作。原创 2023-09-11 23:04:51 · 1859 阅读 · 0 评论 -
RK3399平台开发系列讲解(内核调试篇)IO 数据工具:iostat和iotop
📢 在 Linux 系统上,iostat 和 iotop 这两个 IO 数据工具非常常用。它们都是性能分析领域中不可缺少的工具性软件。原创 2023-09-04 23:04:06 · 1492 阅读 · 3 评论 -
RK3399平台开发系列讲解(入门篇)内核模块详细加载/卸载过程
📢 本篇将介绍内核模块详细加载/卸载过程。原创 2023-08-30 23:34:17 · 532 阅读 · 0 评论 -
RK3399平台开发系列讲解(存储篇)Linux 存储系统的 I/O 栈
📢本篇将介绍 Linux 存储系统的 I/O 原理。原创 2023-08-27 21:54:22 · 692 阅读 · 2 评论 -
RK3399平台开发系列讲解(内核调试篇)网络调试工具
📢 本篇将介绍网络的相关工具。原创 2023-08-23 09:17:02 · 660 阅读 · 1 评论 -
RK3399平台开发系列讲解(内核调试篇)内核中内存泄漏的调试
📢 内核内存泄漏往往都会是很严重的问题,那么,我们该如何判断内存泄漏是否是内核导致的呢?原创 2023-08-21 23:39:24 · 653 阅读 · 2 评论 -
RK3399平台开发系列讲解(内核调试篇)Valgrind使用案例
📢Valgrind 是一个开源的内存调试和性能分析工具,用于帮助开发者找出程序中的内存错误,如内存泄漏、使用未初始化的内存、非法内存访问等问题。它在Linux平台上广泛使用,并且支持多种处理器架构。原创 2023-08-19 23:17:29 · 1160 阅读 · 1 评论 -
RK3399平台开发系列讲解(入门篇)Linux内核常见的规则
📢 本篇将介绍在内核代码的演化过程中应该遵守标准规则。原创 2023-08-13 20:39:53 · 571 阅读 · 2 评论 -
RK3399平台开发系列讲解(内核调试篇)Valgrind 内存调试与性能分析
📢Valgrind 是一个开源的内存调试和性能分析工具,用于帮助开发者找出程序中的内存错误,如内存泄漏、使用未初始化的内存、非法内存访问等问题。它在Linux平台上广泛使用,并且支持多种处理器架构。原创 2023-07-27 19:53:45 · 1060 阅读 · 1 评论 -
RK3399平台开发系列讲解(入门篇)为什么需要学习Linux驱动
沉淀、分享、成长,让自己和他人都能有所收获!😄原创 2023-07-04 21:30:00 · 1391 阅读 · 3 评论 -
RK3399平台开发系列讲解(Pinctrl子系统)pinctrl的使用
📢本篇将介绍pinctrl设备树的使用方法。原创 2023-06-17 00:12:05 · 911 阅读 · 3 评论 -
RK3399平台开发系列讲解(网络篇)DNS协议
📢DNS 是网络世界的地址簿,可以通过域名查地址,因为域名服务器是按照树状结构组织的,因而域名查找是使用递归的方法,并通过缓存的方式增强性能。原创 2023-05-23 23:59:21 · 935 阅读 · 4 评论 -
RK3399平台开发系列讲解(网络篇)Linux 发送网络包流程
沉淀、分享、成长,让自己和他人都能有所收获!原创 2023-05-22 23:28:56 · 906 阅读 · 1 评论 -
RK3568平台开发系列讲解(工具命令篇)使用TOP查看CPU使用率
通过 top、ps、pidstat 等工具,你能够轻松找到 CPU 使用率较高(比如 100% )的进程。接下来,你可能又想知道,占用 CPU 的到底是代码里的哪个函数呢?找到它,你才能更高效、更针对性地进行优化。原创 2022-03-10 23:51:28 · 3570 阅读 · 15 评论 -
RK3399平台开发系列讲解(FLASH篇)MTD子系统结构
📢Linux内核对Flash存储器有很好的支持。内核设计了一个MTD(Memory Technology Device,内存技术设备)结构支持Flash设备,用户只需要按照MTD的要求设置Flash设备的参数并且提供驱动,就可以让Flash设备很好地工作。本篇将介绍内核MTD的系统结构。原创 2023-04-27 23:47:56 · 1189 阅读 · 3 评论 -
RK3399平台开发系列讲解(LED子系统篇)LED子系统详解
📢本篇将详细介绍LED子系统。原创 2023-04-26 21:46:49 · 1640 阅读 · 0 评论 -
RK3399平台开发系列讲解(PCI/PCI-E)PCIE相关配置说明
📢 本篇将介绍在使用 RK3399 平台 PCIE 时候的配置。原创 2023-04-19 23:33:40 · 1861 阅读 · 0 评论 -
RK3399平台开发系列讲解(中断篇)掌握信号处理
📢信号在操作系统中有悠久的历史,信号的概念和使用方式都非常简单,但是要编写出真正实用而稳定的信号处理程序却并不容易。原创 2023-04-18 21:01:33 · 969 阅读 · 2 评论 -
RK3399平台开发系列讲解(基础篇)ADC 使用方法
📢内核采用工业 I/O 子系统来控制 ADC,该子系统主要为 AD 转换或者 DA 转换的传感器设计。 下面以 SAR-ADC 为例子,介绍 ADC 的基本配置方法。原创 2023-04-12 23:15:33 · 1522 阅读 · 1 评论