原创 VxWorks啓動過程具體解釋

原文鏈接:https://www.cnblogs.com/tlnshuju/p/7202776.html 上一節主要是從映像的分類和各種映像的大致載入流程上看VxWorks的啓動過程,這一節讓我

原创 對嵌入式Linux中的根文件系統的理解和解析

雖是轉載的,但是我自己用紅色字體標註了一些覺得對自己有用的點,並且有些地方還加入了自己的“aaron注:”===================分界線=========================     雖然前面已經利用Busybo

原创 Linux ARM交叉編譯工具鏈製作過程

https://www.cnblogs.com/Charles-Zhang-Blog/archive/2013/02/21/2920999.html Linux ARM交叉編譯工具鏈製作過程 一、下載源文件 源代碼文件及其版本與下載地址:

原创 無鎖環形緩衝區的詳細解釋

由以下博客的分析可以知道,內核的kfifo使用了很多技巧以實現其高效性。比如,通過限定寫入的數據不能溢出和內存屏障實現在單線程寫單線程讀的情況下不使用鎖。因爲鎖是使用在共享資源可能存在衝突的情況下。還用設置buffer緩衝區的大小爲2的冪

原创 c標準基本庫函數:libc、glibc的關係

glibc 和 libc 都是 Linux 下的 C 函數庫。 libc 是 Linux 下的 ANSI C 函數庫;glibc 是 Linux 下的 GUN C 函數庫。 ANSI C 和 GNU C 有什麼區別呢?        AN

原创 【轉】Linux ARM交叉編譯工具鏈製作過程

轉載地地址:http://www.cnblogs.com/Charles-Zhang-Blog/archive/2013/02/21/2920999.html#3347926一、下載源文件源代碼文件及其版本與下載地址:Binutils-2

原创 【轉】交叉編譯工具鏈

1、嵌入式開發模型-交叉開發    在嵌入式開發過程中有宿主機和目標機的角色之分:宿主機是執行編譯、鏈接嵌入式軟件的計算機;目標機是運行嵌入式軟件的硬件平臺。              在宿主機執行編譯的流程如下:            

原创 利用busybox製作根文件系統

1、busybox源碼下載及配置https://busybox.net/downloads/1.1、修改Makefile(1) ARCH = arm(2) CROSS_COMPILE = /usr/local/arm/arm-2009q3

原创 QT中QWidget、QDialog及QMainWindow的區別

QT中QWidget、QDialog及QMainWindow的區別     QWidget類是所有用戶界面對象的基類。 窗口部件是用戶界面的一個基本單元:它從窗口系統接收鼠標、鍵盤和其它事件,並且在屏幕上繪製自己。每一個窗口部件都是矩形的

原创 3分鐘看懂gcc、arm-Linux-gcc和arm-elf-gcc的組成及區別

一、GCC簡介The GNU Compiler Collection,通常簡稱 GCC,是一套由 GNU 開發的編譯器集,爲什麼是編輯器集而不是編譯器呢?那是因爲它不僅支持 C 語言編譯,還支持 C++, Ada,Objective C

原创 C標準庫,系統調用,系統接口API,內核函數

雖是轉載,但也有自己的一些總結或看法或疑問。aaron注:所以總結一下,是否能這麼認爲:不管是無平臺差異的C標準庫還是與系統平臺有關的API,其實都有對系統調用的封裝,都是一個屏蔽系統底層複雜度或差異的一箇中間層。============

原创 無鎖環形隊列的一種高效實現

無鎖環形隊列的一種高效實現 1.環形隊列是什麼  隊列是一種常用的數據結構,這種結構保證了數據是按照“先進先出”的原則進行操作的,即最先進去的元素也是最先出來的元素.環形隊列是一種特殊的隊列結構,保證了元素也是先進先出的,但與一般隊列的區