Linux Kernel
文章平均质量分 52
allenpettle
这个作者很懒,什么都没留下…
展开
-
linux file descriptor错误如何捕获?
在调用linux系统api的时候有时会出现一些错误,比如在open linux device的时候,open失败,return -1,可以使用errno这个全局变量取得错误值。 具体在文件头#include <errno.h>然后在函数中添加 extern int errno;最后在fd open的case里面printf("errno=%d\n",errno...原创 2010-12-30 14:48:23 · 574 阅读 · 0 评论 -
Linux内核API手册
附加说明文档: http://docs.huihoo.com/linux/kernel/2.6.26/kernel-api/index.htmlhttp://www.gelato.unsw.edu.au/~dsw/public-files/kernel-docs/kernel-api/index.html原创 2011-08-05 13:39:46 · 266 阅读 · 0 评论 -
Linux kernel之内核定时器
内核定时器 (也称为动态定时器)是内核在以后某一个时刻运行一段程序或进程的基础,软件定时器可以在一个确切的时间点上(更严格地说是一个时间点以后)激活相应的程序段或进程。软件定时器在设备驱动程序中被大量应用以检测设备的状态。使用一个软件定时器很简单,只需做一些初始化工作,设置一个相对于当前时刻的超时时间和超时处理函数,将其插入到内核定时器队列中即可,设置的超时处理函数会在定时器超时时自动运行。下...原创 2011-03-31 21:00:20 · 375 阅读 · 0 评论 -
宏EXPORT_SYMBOL在内核中的作用
Module运行在kernel space,不能直接调用应用程序库,只能调用内核函数。EXPORT_SYMBOL的作用是把内核函数的符号导出,也就是将函数的入口地址导出。 Module在运行的时候会根据Kernel中的符号表(EXPORTSYMBOL的名字表)去找Symbol(根据内核函数loadmodule()中的_findsymbol),如果该Module无法找到symbol,函数...原创 2011-08-15 10:47:33 · 145 阅读 · 0 评论 -
Android IPC AudioFlinger binder实例
一篇android的IPC机制binder实例AudioFlinger国外文档。原创 2012-06-20 13:32:15 · 266 阅读 · 0 评论 -
Android内核开发的几个常用命令
在android源码的根目录下执行:. build/envsetup.sh 可以获得下列非常方便的命令:croot: Changes directory to the top of the tree.m: Makes from the top of the tree.mm: Builds all of the modules in the curr...原创 2012-02-23 15:29:41 · 222 阅读 · 0 评论 -
What is trickle charge?
Trickle charge is just a very low current charge. Many chargers, after they sense that the battery is fully charged, go into trickle mode to keep the battery fully charged without overcharging it.原创 2012-07-02 09:47:13 · 549 阅读 · 0 评论 -
Android Partitions Explained: boot, system, recovery, data, cache & misc
Unless you have been using your Android phone just for calls, SMS, browsing and basic apps, you should know that Android uses several partitions to organize files and folders on the device. Each of th...原创 2012-09-06 16:17:38 · 119 阅读 · 0 评论 -
UART的CTS/RTS介绍
在RS232中RTS与CTS有明确的定义,但贺氏(HAYES)推出SmartModem后,这两者定义就有点混淆了。在RS232中RTS与CTS是用来半双工模式下的方向切换;HAYES Modem中的RTS与CTS是用来进行硬件流控的。通常UART的RTS和CTS的含义指后者,即用来做硬流控的。 RTS(Request To Send)请求发送:为输出信号,由计算机产生,通知Modem可...原创 2011-10-08 15:50:47 · 953 阅读 · 0 评论 -
OMAP UART pm debugging
OMAP UART PM Debugging/Test Techniques The onboard UART-controller can usually be tested via a loop-back connection using a cable. However, when testing the behavior during suspend/resume th...原创 2011-10-08 10:59:58 · 209 阅读 · 0 评论 -
[RTC] Read function in RTC Driver
read: the standard read function call.ssize_t read(int file_handler, viod *buf, size_t nbytes);In the RTC driver, the read function is used to wait for the RTC device interrupt.When call ...原创 2011-08-16 16:49:16 · 135 阅读 · 0 评论 -
Linux内核中的jiffies
硬件给内核提供一个系统定时器用以计算和管理时间,内核通过编程预设系统定时器的频率,即节拍率(tick rate),每一个周期称作一个tick(节拍)。Linux内核从2.5版内核开始把频率从100调高到1000(当然带来了很多优点,也有一些缺点). jiffies是内核中的一个全局变量,用来记录从系统启动以来产生的节拍数。譬如,如果计算系统运行了多长时间,...原创 2011-08-25 17:03:13 · 107 阅读 · 0 评论 -
spink_lock及其各个变种区别
spin_lock用于阻止在不同CPU上的执行单元对共享资源的同时访问以及不同进程上下文互相抢占导致的对共享资源的非同步访问,而中断失效和软中断失效却是为了阻止在同一CPU上软中断或中断对共享资源的非同步访问。 1.有些情况下需要在访问共享资源时必须中断失效,而访问完后必须中断使能,这样的情形使用spin_lock_irq和spin_unlock_irq最好;2.spin_lock...原创 2011-09-23 13:37:46 · 278 阅读 · 0 评论 -
Linux kernel coding style.
Linux内核代码风格 这是一个简短的文档,描述了linux内核的首选代码风格。代码风格是因人而异的,而且我不愿意把我的观点强加给任何人,不过这里所讲述的是我必须要维护的代码所遵守的风格,并且我也希望绝大多数其他代码也能遵守这个风格。请在写代码时至少考虑一下本文所述的风格。首先,我建议你打印一份GNU代码规范,然后不要读它。烧了它,这是一个具有重大象征性意义的动作。不管怎样,现在我们开始: ...原创 2011-03-08 21:45:39 · 139 阅读 · 0 评论 -
[Linux Device Drivers 3rd Notes] 1. Device driver introduction
Device drivers在linux kernel种起着特殊的作用,当hardware和internal programming interface需要通讯的时候,drivers就会在runtime被plug-in进来。 The role of a device driver is providing mechanism, not policy.如何区分mechanism与po...原创 2010-11-10 16:32:26 · 99 阅读 · 0 评论 -
android ril related
http://hi.baidu.com/jackyu/blog/item/5bb9db16541ddc13962b4347.htmlhttp://hi.baidu.com/linghtway/blog/item/6f859430b4926ef41b4cffaf.htmlhttp://miox.cc/2009/07/android-gsmrild.html原创 2010-11-20 14:32:34 · 79 阅读 · 0 评论 -
在ubuntu10.10上编译安装linux-2.6.36.1 kernel
terminal进入root模式$sudo -s 安装编译内核所需的debapt-get install build-essential kernel-package libncurses5-dev libqt3-headers 下载内核源码llinux-2.6.36.1.tar.bz2到kernel官网上下载。解压到/usr/src/lin...原创 2010-12-07 10:41:50 · 138 阅读 · 0 评论 -
[Linux Device Drivers 3rd Notes] 2. Modules and kernel programming concepts
Preparation: Come up with a kernel source tree. (The latest stable kernel is 2.6.36.1, you could get it from kernel.org)Build kernel and install it on your system. 具体可以参考在ubuntu10.10上编译安装linu...原创 2010-12-07 17:43:38 · 102 阅读 · 0 评论 -
What is the purpose of different Android partitions
-- [b]Boot partition[/b] stores the Android kernel. If this partition is empty, the LK bootloader will enter the fastboot mode. -- [b]System partition[/b] contains the Android user interface and all...原创 2014-01-02 09:57:52 · 242 阅读 · 0 评论