原创 liunx源碼 makefile詳細分析

1、從總目標uImage說起      2、vmlinux的生成     3、vmlinux-lds、vmlinux-init、vmlinux-main的生成   2 scripts/Makefile.build的第一次調用階段    

原创 Linux kernel 源碼在線查看網址

https://elixir.bootlin.com/linux/latest/source

原创 windows 下構建 Eclipse gdb 調試平臺調試arm程序

 安裝yargarto 版本eabi編譯鏈 http://www.yagarto.de/ 安裝JAVA虛擬機  JRE 就足夠了。 下載 eclipse 的 C/C++ 版本 下載 zylin 插件,在 eclipse 的 Help

原创 Android 交叉編譯 i2c-tools

我們寫的C文件編譯成可執行文件 其實可以依照 external 內的程序,依葫蘆畫瓢。很簡單。 但是很多時候是我們下載的第三方工具的源碼,比如 i2c-tools 下載地址 https://launchpad.net/ubuntu

原创 LCD驅動(FrameBuffer)實例開發講解

一、開發環境 主  機:VMWare--Fedora 9開發板:Mini2440--64MB Nand, Kernel:2.6.30.4編譯器:arm-linux-gcc-4.3.2 二、背景知識 1. LCD工作的硬件需求:

原创 linux異步通知機制 與 fcntl 函數使用詳解

什麼是異步通知呢? 異步通知的意思就是,一旦設備就緒,則主動通知應用程序,應用程序 根本就不需要查詢設備狀態,類似於中斷的概念,一個進程收到一個信號與處理器收到一箇中斷請求可以說是一樣的。信號是異步的,一個進程不必通過任何操作來 等待信號

原创 poll和select機制分析機制分析和使用

本文poll機制的內核原理,再說在編程中的使用。    先從內核原理說: 所有的系統調用,基於都可以在它的名字前加上“sys_”前綴,這就是它在內核中對應的函數。比如系統調用open、read、write、poll,與之對應的內核函數爲:

原创 arm linux 啓動代碼分析(一)

這次我寫的是Image的啓動過程,也即使zImage解壓縮結束後的啓動代碼,這時候的代碼開始地址仍然是0x30008000,下面我結合代碼來講吧: Image的啓動代碼是在/arch/arm/kernel/head.S中的: /*

原创 Linux 內核定時器及使用方法

Linux 內核定時器及使用方法 一.度量時間差 時鐘中斷是由系統的定時硬件以週期性的時間間隔產生,這個間隔(即頻率)由內核根據HZ來確定,HZ是一