
linux内核
archerLea
这个作者很懒,什么都没留下…
展开
-
【转】ramdisk与内核的关系(每一句话都会有用)
ramdisk一个作用就是用来解决boot过程中mount根文件系统的“先有鸡还是先有蛋”的问题的。 一般来说,根文件系统在形形色色的存储设备上,不同的设备又要不同的硬件厂商的驱动,比如intel的南桥自然需要intel的ide/sata驱动,VIA的南桥需要VIA的ide/sata驱动,根文件系统也有不同的文件系统的可能,比如ubuntu发行版可能一般用ext3,suse可能就不是了,不同的文...转载 2018-08-09 15:07:22 · 673 阅读 · 0 评论 -
创建/sys/class下的属性文件DEVICE_ATTR
创建/sys/class下的属性文件DEVICE_ATTR定义#define DEVICE_ATTR(_name, _mode, _show, _store) \ struct device_attribute dev_attr_##_name = __ATTR(_name, _mode, _show, _store)#define __ATTR(_name,_mode,_show,_s...原创 2019-02-28 17:42:31 · 1038 阅读 · 0 评论 -
framebuffer设备驱动的几个连接关键点
framebuffer设备驱动的几个连接关键点framebuffer的架构见到的宋宝华老师总结的一个图表,觉得很清晰,直接移过来了关键点点析文件driver/video/fbmem.c中的file_operations结构体(framebuffer是一个字符设备)文件xxxfb.c,对应于各具体厂商的framebuffer驱动,我这边看的是fsl的驱动,名字是drivers/vide...原创 2019-03-01 10:57:44 · 646 阅读 · 0 评论 -
framebuffer知识点
设备文件是在/dev/目录下设备文件有主设备号,次设备号.当操作设备文件, 系统会根据设备文件的设备号找到相应的设备驱动(驱动在内核注册时已指定使用的设备号),并调用相应的功能. open ---> sys ----> driver ---> drv_open read ---> sys ----> driver ---> drv_read io...转载 2019-03-01 15:11:40 · 238 阅读 · 0 评论 -
linux的gpio操作的api寻找
linux的gpio操作的api寻找授人以鱼不如授人以渔,那么,拿人以鱼不如学人以渔在有需求的时候能够找到对应的寻找点,那么就成功了文件drivers/gpio/gpiolib.c,所需要的gpio的api都在里面了,例如/** * gpio_export - export a GPIO through sysfs gpio在sysfs的出口,供用户使用 * @gpio: gp...原创 2019-03-05 12:18:23 · 316 阅读 · 0 评论 -
在内核中添加显示屏开关的设定
在内核中添加显示屏开关的设定需求dts文件中添加一个指定的gpio口来作为显示屏开关的控制,如果dts中该设备信息生效,在内核启动后给用户开启一个接口,让应用程序来完成对显示屏开关的控制(以达到随开随关的目的)。起因:在实际应用中发现一种屏在使用时如果最开始没有确定的显示数据给到时,直接上电会出现随机的白点,且每次白点的数量和位置都随机。实现要点基本的gpio的操作,设计到gpio的注...原创 2019-03-05 13:00:00 · 366 阅读 · 0 评论 -
linux设备树的of_类的API寻找
linux设备树的of_类的API寻找授人以鱼不如授人以渔,那么,拿人以鱼不如学人以渔文件:drivers/of/base.c例子:/** 在设备树的设备节点中通过name来寻找 * of_find_node_by_name - Find a node by its "name" property * @from: The node to start searching fro...原创 2019-03-05 13:26:19 · 1534 阅读 · 0 评论 -
cpio文件的压缩与解压缩
笔记用途解压cpio -idmv < xxxxxxxxxxxxxxx.rootfs.cpio压缩find . | cpio -o -H newc > xxxxxxxxxxxxxxx.cpio原创 2019-04-26 13:27:00 · 14227 阅读 · 0 评论 -
MAJOR、MINOR和MKDEV
MAJOR、MINOR和MKDEV源码文件include/linux/kdev_t.h#define MINORBITS 20#define MINORMASK ((1U &amp;lt;&amp;lt; MINORBITS) - 1)#define MAJOR(dev) ((unsigned int) ((dev) &amp;gt;&amp;gt; MINORBITS))#define MINOR(dev) ((.原创 2018-12-21 09:46:32 · 452 阅读 · 0 评论 -
实例说明 async_schedule的使用
async_schedule相关函数:&lt;linux/schedule.h&gt;typedef void (*async_func_t) (void *data, async_cookie_t cookie);//调用ptr函数运行//每调用一次async_schedule,就把ptr放到async_pending链表,然后开启一个内核线程来完成工作,这样实现并...原创 2018-08-08 15:45:28 · 1712 阅读 · 0 评论 -
Linux的 __setup解析 -- 命令行处理
Linux的 __setup解析 – 命令行处理名称:__setup 作用:命令行处理,处理启动命令行(来自dts或者在编译内核的时候写到CONFIG_CMDLINE中)的相关参数 示例: 文件 init/do_mounts.c 中:static int __init root_dev_setup(char *line){ strlcpy(saved_root_name...原创 2018-08-08 15:49:52 · 3889 阅读 · 0 评论 -
linux文件系统的启动过程分析
linux文件系统的启动过程分析启动参数:chosen { bootargs = "root=/dev/mmcblk0p2 rootfstype=ext4 rootwait rw console=ttymxc3,115200n8 lpj=7905280 initroot=10:none,initramfs,/startup/run quiet";};prepa...原创 2018-08-08 15:53:50 · 974 阅读 · 0 评论 -
推迟网络的初始化
在文件net\ipv4\af_inet.c中,更改如下,推迟网络的初始化+ #ifdef CONFIG_DELAY_NETWORK+ deferred_initcall(inet_init); // 重点是这个,deferred_initcall() 延迟初始化+ #elsefs_initcall(inet_init);+ #endif...原创 2018-08-08 16:01:39 · 169 阅读 · 0 评论 -
Linux中的DRM
Linux中的DRM如果在搜索引擎离搜索 DRM 映入眼帘的尽是Digital Rights Managemen,也就是数字版权加密保护技术。这当然不是我们想要的解释。在类unix世界中还有一个DRM即The Direct Rendering Manager,它是DRI(Direct Rendering Infrastructure)框架的一个组件。而DRI的作用是为类Unix系统提供高效视...转载 2018-08-30 13:54:10 · 370 阅读 · 0 评论 -
Linux graphic subsystem 2-DRI介绍
Linux graphic subsystem(2)_DRI介绍1. 前言上篇文章(Linux graphic subsytem(1)_概述)介绍了linux图形子系统基本的软件框架,以及GUI、Windowing system、3D渲染等基本概念。文中提到了linux DRI(Direct Render Infrastructure)框架,但限于篇幅,没有过多介绍。蜗蜗觉得,DRI在...转载 2018-08-30 14:09:36 · 373 阅读 · 0 评论 -
Linux graphic subsytem 1-概述
Linux graphic subsytem 1-概述1. 前言图形子系统是linux系统中比较复杂的子系统之一:对下,它要管理形态各异的、性能各异的显示相关的器件;对上,它要向应用程序提供易用的、友好的、功能强大的图形用户界面(GUI)。因此,它是linux系统中少有的、和用户空间程序(甚至是用户)息息相关的一个子系统。本文是图形子系统分析文章的第一篇,也是提纲挈领的一篇,将会从整体...转载 2018-08-30 14:12:05 · 280 阅读 · 0 评论 -
imx6 vpu程序分析
imx6 vpu程序分析背景最近公司需要将产品与外界的设备进行流媒体通信,经过一系列的方案研究确立,最终把功能完成,目前能够顺利的播放基于h264的流媒体文件,趁着闲暇时间对相关的东西做一些笔记记录,方便以后追溯。这里主要分析imx6 的vpu 测试程序,有一部分功能是基于这个来实现的。考虑到 imx6 的 vpu 固件代码不开源,相关的vpu 操作代码根据文档来执行,其接口函数看文档就行,...原创 2018-12-20 09:59:42 · 3458 阅读 · 1 评论 -
嵌入式linux技术到产品的一些考量
嵌入式linux技术到产品的一些考量 俗话说“学以致用”,“学”的最终目的是“用”, 特别是技术,如果所学不能运用到实际产品中,那么学习也失去了意义。 从“学”到“用”还是有一段距离要走的,本文章讨论一下嵌入式linux技术到产品中的一些考量。 ps: 一本书(zlg)上的,觉得写的不错,就整理了一下摘过来了。1. 做最适合的系统 贴合硬件, 量身定制。《登徒子好色赋》中用“增之一...转载 2019-06-12 19:08:25 · 433 阅读 · 0 评论