Linux Kernel
文章平均质量分 80
子夜蓝风
希望自己从毛毛虫蜕变为一只美丽的蝴蝶!
展开
-
PII RTC TEST Steps
1. Androi: runing—print RTC time—SW hibernation—I2C CMD—delay 100ms—set hibernation bit(这一步是 prima2 自己断电的过程). 2. MCU: running-receive shut down CMD—delay 1s—shut down 5V—pull原创 2015-04-01 11:16:14 · 991 阅读 · 0 评论 -
modem digital audio interface summary
一、PCM(Pulse Code Modulation)1.介绍 PCM脉冲编码调制就是把一个时间连续,取值连续的模拟信号进行采样,再对采样值幅度进行量化、编码为数字信号的过程。其工作原理大致如下: “防失真滤波器”是一个低通滤波器,用来滤除声音频带以外的信号; “波形编码器”可暂时理解为“采样器”;“量化器”可理解为“量化阶大小(step-size)”生成器或原创 2015-12-25 19:54:21 · 1996 阅读 · 0 评论 -
How to do ADC Calibration
ADC转换后的数据跟硬件提供的数据信息并不是完全对应的,它所得出的数据里面存在着offset error和gain error, 所以我们需要对它进行校准后再使用。针对数据可能存在的错误类型,校准分为偏移校准(offset calibration)和 增益校准(gain calibration)。其中offset calibration是为了消除ADC的offset error,gain ca原创 2015-12-25 19:40:11 · 4708 阅读 · 0 评论 -
block and nonblock
同步阻塞IO应用程序(application)为了执行这个read操作,会调用相应的一个system call,将系统控制权交给kernel,然后就进行等待(这其实就是被阻塞了)。kernel开始执行这个system call,执行完毕后会向应用程序返回响应,应用程序得到响应后,就不再阻塞,并进行后面的工作。例如,“在调用 read 系统调用时,应用程序会阻塞并对内核进原创 2015-12-25 19:37:05 · 743 阅读 · 0 评论 -
udev introduction
1.udev简介 udev 的u是指 user space,也就是用户空间设备管理。它能够根据系统中的硬件设备的状态动态更新设备文件,包括设备文件的创建,删除等。设备文件通常放在/dev目录下。使用udev后,在/dev目录下就只包含系统中真正存在 的设备。它只支持linux-2.6内核,严重依赖于sysfs文件系统提供的信息。它替代了原来的devfs,那为什么要替原创 2015-12-25 19:35:29 · 663 阅读 · 0 评论 -
kobject device model and sys file system introduction
一、Linux Device Model1.linux设备模型简介在内核2.5的开发周期中需要完成一个目标:为内核建立一个统一的设备模型,目的是为了对计算机上的所有设备进行统一地表示和操作,包括设备本身和设备之间的连接关系。这个模型是在分析了PCI和USB的总线驱动过程中得到的,这两个总线类型能代表当前系统中的大多数设备类型,它们都有完善的热插拔机制和电源管理的支持,也都有级连机制的支持,原创 2015-12-25 19:31:57 · 813 阅读 · 0 评论 -
tasklet && workqueue && kernel timer
一、kernel timer1、适用环境内核中许多部分的工作都高度依赖于时间信息。Linux内核利用硬件提供的不同的定时器以支持忙等待或睡眠等待等时间相关的服务。忙等待时,CPU会不断运转。但是睡眠等待时,进程将放弃CPU。因此,只有在后者不可行的情况下,才考虑使用前者。当然内核也提供了某些便利,如果我们需要在将来的某个时间点调度执行某个动作,同时在该时间点到达之前不会阻塞当前进程,则原创 2015-12-25 19:25:43 · 1531 阅读 · 0 评论 -
Makefile Summary
一个工程在用make来执行时,需要一个命名为Makefile的特殊文件。这个文件告诉make需要作什么,该如何做。其主要用来进行工程编译和程序链接以至于最后的执行。目的是用来实现程序的自动化编译。所以说使用make工具来构建和管理一个属于自己的工程,是一项基本要求。一个简单的Makefile一般是由“规则”组成。规则描述在什么情况下、如何重建规则的目标文件。以下示例:TARGET... :原创 2015-12-25 17:33:11 · 476 阅读 · 0 评论 -
Git basic usage and work flow
git是个非常好用的版本工具,不但可以在linux下环境使用,还可以在windows下使用。它可以很方便的管理整个代码工程,节省很多代码维护的成本。 以下是学习过程中的一点记录,主要针对一些常用且实用的命令进行归纳总结。一。基本应用 1.安装 git的安装除了git core这个东西以外,我们还需要安装git gui和gitk,这些东西后面会方便我们的工作。 ubunt原创 2015-12-25 17:31:23 · 669 阅读 · 0 评论 -
Linux电源管理_Wakeup count功能--(三)
1. 前言Wakeup count是Wakeup events framework的组成部分,用于解决“system suspend和system wakeup events之间的同步问题”。本文将结合“Linux电源管理(6)_Generic PM之Suspend功能”和“Linux电源管理(7)_Wakeup events framework”两篇文章,分析wakeup count的功转载 2015-05-26 11:00:51 · 4255 阅读 · 0 评论 -
Linux电源管理_Generic PowerManager 之Suspend功能--(一)
1. 前言 Linux内核提供了三种Suspend: Freeze、Standby和STR(Suspend to RAM),在用户空间向”/sys/power/state”文件分别写入”freeze”、”standby”和”mem”,即可触发它们。内核中,Suspend及Resume过程涉及到PM Core、Device PM、各个设备的驱动、Platform dependent PM转载 2015-05-26 10:43:11 · 11617 阅读 · 0 评论 -
android 4.4 suspend process
原创 2015-05-26 11:13:49 · 959 阅读 · 0 评论 -
Linux电源管理_autosleep--(五)
1. 前言Autosleep也是从Android wakelocks补丁集中演化而来的(Linux电源管理(9)_wakelocks),用于取代Android wakelocks中的自动休眠功能。它基于wakeup source实现,从代码逻辑上讲,autosleep是一个简单的功能,但背后却埋藏着一个值得深思的话题:计算机的休眠(通常是STR、Standby、Hibernate等susp转载 2015-05-26 11:03:36 · 6209 阅读 · 0 评论 -
Linux电源管理_Wakeup events framework--(二)
1. 前言 本文继续“Linux电源管理(6)_Generic PM之Suspend功能”中有关suspend同步以及PM wakeup的话题。这个话题,是近几年Linux kernel最具争议的话题之一,在国外Linux开发论坛,经常可以看到围绕该话题的辩论。辩论的时间跨度和空间跨度可以持续很长,且无法达成一致。wakeup events framework是这个话题的一个临时性的转载 2015-05-26 10:49:41 · 3453 阅读 · 1 评论 -
Linux电源管理_wakelocks--(四)
1. 前言wakelocks是一个有故事的功能。wakelocks最初出现在Android为linux kernel打的一个补丁集上,该补丁集实现了一个名称为“wakelocks”的系统调用,该系统调用允许调用者阻止系统进入低功耗模式(如idle、suspend等)。同时,该补丁集更改了Linux kernel原生的电源管理执行过程(kernel/power/main.c中的state_s转载 2015-05-26 11:03:48 · 8020 阅读 · 0 评论 -
Android中Input型输入设备驱动原理分析
话说Android中Event输入设备驱动原理分析还不如说Linux输入子系统呢,反正这个是没变的,在android的底层开发中对于Linux的基本驱动程序设计还是没变的,当然Android底层机制也增加几个属于android自己的机制。典型的IPCAndroid中的input设备驱动主要包括:游戏杆(joystick)、鼠标(mouse)和事件设备(Event)。1、Input输入子转载 2015-06-19 13:47:14 · 986 阅读 · 0 评论 -
epoll 机制--epoll_create, epoll_ctl和epoll_wait
名词解释:man epoll之后,得到如下结果: NAME epoll - I/O event notification facility SYNOPSIS #include DEscrīptION epoll is a variant of poll(2) that can be转载 2015-04-21 20:19:56 · 862 阅读 · 0 评论 -
Linux inotify的功能及实现原理
1. inotify主要功能它是一个内核用于通知用户空间程序文件系统变化的机制。众所周知,Linux 桌面系统与 MAC 或 Windows 相比有许多不如人意的地方,为了改善这种状况,开源社区提出用户态需要内核提供一些机制,以便用户态能够及时地得知内核或底层硬件设备发生了什么,从而能够更好地管理设备,给用户提供更好的服务,如 hotplug、udev 和 inotify 就是转载 2015-04-21 20:14:45 · 584 阅读 · 0 评论 -
ubuntu下最全的软件安装、卸载、查看命令
说明:由于图形化界面方法(如Add/Remove… 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装、卸载和删除的方法。一、Ubuntu中软件安装方法1、APT方式(1)普通安装:apt-get install softname1 softname2 …;(2)修复安装:apt-get -f install s转载 2016-07-28 10:49:54 · 3308 阅读 · 0 评论