文章 2022-10-21 来自:开发者社区

嵌入式实践教程--【Linux驱动】Linux驱动开发基于Linux4.0+(六)I2C总线驱动

I2C总线经常挂载eeprom、温度传感器、湿度传感器等设备。I2C总线下可以挂载多个设备,识别设备采用一个地址,这个地址在一条i2c总线是独一无二的。I2C总线驱动与spi总线驱动框架是一致的,都是采用控制器、core、设备三层驱动。内核中I2C 的处理已经做好了,我们只需要做设备驱动程序相关的内容。总线处理好了I2C 协议,即总线知道如何收发数据,而不知道数据的含义,我们要做的只是设备相关层....

文章 2022-10-21 来自:开发者社区

嵌入式实践教程--【Linux驱动】Linux驱动开发基于Linux4.0+(二)——并发与同步

一、概念所谓并发,是指多个内核路径同时访问和操作数据,可能发生 覆盖共享数据的情况,造成被访问数据的不一致。在内核中发生并发访问并发源主要有以下4种。中断和异常软中断和tasklet:软中断和tasklet可能随时会被调度运行,从而打断当前正在执行进程的上下文。内核抢占:调度器支持内核抢占。多处理器并发运行上述情况需要针对单核和多核系统进行区别对待。对于单处理器的系统有以下并发源:1. 中断处理....

文章 2022-10-19 来自:开发者社区

嵌入式实践教程--Linux性能优化实战之CPU使用率满载怎么办

一、CPU 使用率为了维护 CPU 时间,Linux 通过事先定义的节拍率(内核中表示为 HZ),触发时间中断,并使用全局变量 Jiffies 记录了开机以来的节拍数。每发生一次时间中断,Jiffies 的值就加 1。节拍率 HZ 是内核的可配选项,可以设置为 100、250、1000 等。不同的系统可能设置不同数值,你可以通过查询 /boot/config 内核选项来查看它的配置值。比如在我的....

嵌入式实践教程--Linux性能优化实战之CPU使用率满载怎么办
文章 2022-10-19 来自:开发者社区

嵌入式实践教程--Linux性能优化实战之CPU知识基础篇

一、平均负载1、基础知识$ uptime 02:34:03 up 2 days, 20:14, 1 user, load average: 0.63, 0.83, 0.880.63、0.83,、0.88:过去1、5、15分钟的平均负载简单来说,平均负载是指单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数,它和 CPU 使用率并没有直接关系。可运行状态的进程,是指...

嵌入式实践教程--Linux性能优化实战之CPU知识基础篇
文章 2022-10-17 来自:开发者社区

嵌入式实践教程--【Linux驱动】Linux驱动开发基于Linux4.0+(一)——字符设备驱动

区别于Linux4.0之前的字符设备驱动结构,4.0采用cdev注册字符设备。一、构造一个字符设备结构体,用于cdev的初始化struct led_dev_t{ struct cdev cdev; };二、__init 入口函数1.设备号的处理dev_t led_devno= MKDEV(led_major,0);MKDEV(led_major,0)通过主次设备号生成dev_t,在cdev的...

文章 2022-10-12 来自:开发者社区

嵌入式实践教程--Linux之ASOC

概述ASLA存在的问题:Codec驱动与SOC中断CPU耦合严重,这将导致代码重复,一个Codec驱动每个cpu上会出现不同的版本。当音频事件发生时(插拔耳机,音箱)没有标准的方法通知用户,尤其在移动端此事件非常常见。当播放/录制音频时,驱动会让整个codec处于上电状态,这样会在移动端非常浪费电量。同时也不支持改变采样频率/骗置电流来节约功耗。ASOC的解决办法:Codec代码独立,不再耦合与....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

Linux宝库

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问