原创 [隨筆]gcc的__attribute__編譯屬性

注:此文非原創,是博主在學習過程中網絡摘抄整理而出。 __attribute__主要用於 改變所聲明或定義的函數或數據的特性,它有很多子項,用於改變作用對象的特性。 比如,對函數,noline將禁止進行內聯擴展、noreturn表

原创 在Ubuntu上下載、編譯、運行Android系統

在Ubuntu上下載、編譯、運行Android系統 在Linux開發環境搭建 三 (在Ubuntu上Android/Linux編譯環境的準備)一文中,我們已經將Android的編譯環境搭建OK。在本文中,我們以Android_4

原创 [隨筆]Linux下,如何將一個文件及其所在的遞歸路徑一起拷貝到目標目錄?

[隨筆]如何將一個文件及其所在的遞歸路徑一起拷貝到目標目錄下 實際項目開發過程中,某個文件的路徑往往比較深,同時,又需要給客戶提供patch(即,不光要提供文件,還得將這個文件的所在路徑包括在內)。 如下面路徑和文件: ~/

原创 Linux驅動開發之 二 (那些必須要瞭解的硬件知識 之 處理器篇)

Linux驅動開發之 二 (那些必須要瞭解的硬件知識 之 處理器篇) 本文中部分內容源自網絡,如有侵權請聯繫博主,謝謝 老謝一直以“軟硬通殺”的標準來要求自己。搞軟件的工程師,有必要了解底層硬件的基本原理;搞驅動的工程師,則必

原创 Linux驅動開發之 六 (那些必須要瞭解的硬件知識 之 儀器篇)

Linux驅動開發之 六 (那些必須要瞭解的硬件知識 之 儀器篇) 一、前言 在之前的文章中,老謝已經分享了不少關於嵌入式系統開發過程中必須要瞭解的硬件知識。作爲這一小節的結束(哎呀,終於要結束了),老謝還想和大家聊聊“儀器”。

原创 Linux驅動開發之 五 (那些必須要瞭解的硬件知識 之 I2C)

Linux驅動開發之 五 (那些必須要瞭解的硬件知識 之 I2C) 如果要問在嵌入式系統設計中,應用最最廣泛的總線是什麼,是I2C,是I2C,還是I2C。 老謝真言,“分享是中華名族的傳統美德”。 如下鏈接,老謝分享了一份關於

原创 Linux驅動開發之 三 (那些必須要瞭解的硬件知識 之 存儲器篇)

Linux驅動開發之 三 (那些必須要瞭解的硬件知識 之 存儲器篇) 本文重點學習存儲器相關的基本知識,網絡上對RAM,ROM,FLASH等有非常詳細的介紹,老謝將這些知識點摘抄整理並加以註釋如下。這個整理的過程也是加深記憶的過

原创 Linux驅動開發之 四 (那些必須要瞭解的硬件知識 之 串口)

Linux驅動開發之 四 (那些必須要瞭解的硬件知識 之 串口) 在前面的文章中,我們瞭解處理器、存儲器,在這篇文章中老謝想和大家聊聊在實際項目開發過程中串口的基本知識和作用。 一、串口簡介 如果要非常細緻的瞭解串口的定義,直

原创 Linux文件系統簡介

文件系統是linux的一個十分基礎的知識,同時也是學習linux的必備知識。     本文將站在一個較高的視圖來了解linux的文件系統,主要包括了linux磁盤分區和目錄、掛載基本原理、文件存儲結構、軟鏈接硬鏈接、和常見目錄的介紹。

原创 u-boot分析 四 (程序入口start.S)

u-boot分析 四 (程序入口start.S) 注:部分內容摘抄自網絡,如有問題,請聯絡博主。 本文內容:瞭解以stars.S爲開始的ARM彙編程序部分。 回顧前幾篇博文,咱們見識過了u-boot的目錄結構,另外簡要分析了

原创 u-boot分析 一

學習u-boot難嗎? 不難! 不知你是否和我一樣 不懂gcc編譯鏈接原理 不熟悉常用ARM指令集 沒有ARM彙編編程經驗 …… 沒有關係,這一切的困難都是紙老虎,即便如此,我們一樣可以搞清u-boot啓動原理。 欲善其事,

原创 u-boot分析 二 (u-boot目錄結構)

u-boot分析 二 繼前一啓動篇,此博文目的: 學習u-boot的目錄結構,從code架構上對u-boot有一個整體的把握和了解。 一、學習u-boot,得問,什麼是u-boot? u-boot是一段開源的程序。 Unive

原创 [隨筆]DBG、DMB、DSB 和 ISB -幾條不常用的ARM指令

DBG、DMB、DSB 和 ISB 調試指令、數據內存屏障指令、數據同步屏障指令和指令同步屏障指令。 語法 DBG{cond} {#option} DMB{cond} {option} DSB{cond} {option}

原创 Linux開發環境搭建 三 (在Ubuntu上Android/Linux編譯環境的準備)

Linux開發環境搭建 三 (在Ubuntu上Android/Linux編譯環境的準備) 工欲善其事,必先利其器。萬丈高樓平地起,Android/Linux的學習,咱們需要從最基本的開發環境開始。 一、 安裝Ubuntu系統 在

原创 Linux下.ko, .o, .so, .a, .la文件

Linux下.ko, .o, .so, .a, .la文件 本文轉自網絡,原作者“哀莫大於心死” Linux下文件的類型是不依賴於其後綴名的,但一般來講: .ko 是Linux 2.6內核使用的動態連接文件的後綴名,也就是模