原创 2.1.4 printk打印消息機制

2.1.4  printk打印消息機制 在內核中,函數printk將消息打印到環形緩衝區__log_buf中,並將消息傳給控制檯進行顯示。控制檯驅動程序根據控制檯的日誌級別顯示日 志消息。 應用程序通過系統調用sys_syslog管理環

原创 2.1.2 syslog系統構架

先介紹klogd是因爲當一開始寫入/var/log/message時,klogd所記錄的信息會比syslogd 的順序優先,原因是klogd所記錄的是尚未進入操作系統的信息,但其實一開始的這些信息並不是由klogd所記錄的,而是自加載k

原创 Uboot 源碼分析----啓動代碼

bootloader中start.S詳細註解 @文件包含處理   #include <config.h>@由頂層的mkconfig生成,其中只包含了一個文件:configs/<頂層makefile中6個參數的第1個參數>.h    #i

原创 AT91RM9200 EK or DK開發參考

2007.8.13 u-boot1.1.6 初步調試成功。 1. 在網上找了幾個 u-boot 的移植文檔,之前一直沒有成功,後來,設置好 u-boot 的程序運行地址後, make clean && make at9

原创 traceroute工作原理

<!-- /* Font Definitions */ @font-face {font-family:宋體; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-f

原创 內核命令處理

From http://blog.chinaunix.net/u3/111928/showart_2184040.html 參考文章:非常經典的文章 http://book.opensourceproject.org.cn/embedde

原创 關於C++中函數返回引用的討論

從函數返回引用確保其引用的對象在函數執行完後仍然存在。 引用類型返回值的主要特徵是可以作爲左值,這意味着我們可以在賦值語句的左邊使用返回引用的函數的結果。   永遠不要從函數中返回局部變量的引用     C++中,返回引用是一個

原创 2.1.5 sys_syslog系統調用

2.1.5  sys_syslog系統調用 系統調用sys_syslog根據參數type的命令執行相應的操作。參數type定義的命令列出如下: 0 -- 關閉日誌,當前沒實現。 1 -- 打開日誌,當前沒實現。 2 -- 從環形緩衝區讀

原创 C++箴言:絕不在構造或析構期調用虛函數

你不應該在構造或析構期間調用虛函數,因爲這樣的調用不會如你想象那樣工作,而且他們做的事情確保會讓你非常鬱悶。如果你轉爲 Java 或 C# 程式員,也請你密切關注本文,因爲在 C++ 急轉彎的地方,那些語言也緊急轉了一個彎。   假設

原创 Bootloader與Kernel間參數傳遞機制

Tag list 被用來在 bootloader 和 linux kernel 之間傳遞參數,這裏分析一下相關的數據結構,主要包括兩個部分: Tag list 和 Tag parser list 。 先來看 Tag list :

原创 Uboot 源碼分析----代碼整體結構分析

1. 文件夾總體功能分析 - board 目標板相關文件,主要包含SDRAM、FLASH驅動; - common 獨立於處理器體系結構的通用代碼,如內存大小探測與故障檢測; - cpu 與處理器相關的文件。如mpc8xx子目錄下含串口、網

原创 linux設備驅動程序開發環境的建立(編譯嵌入式內核)

開發環境的建立:  內核:tq2440提供的內核linux-2.6.30.4_20091030.tar.bz2 arm-linux-gcc -v :4.3.3 我的環境是: pc:            thinkpa sl400 l

原创 移植android 到定製開發板

From http://android.tgbus.com/Android/androidnews/200902/177292.shtml   移植Android的kernel到實際的硬件平臺上,很多人很早就做過這件事了,不過相關的文檔和

原创 快速重建system.img的方法

每次修改android源碼後,經歷make的過程 太過漫長,剛纔找到一個快速重建 system.img鏡像文件的方法: 以修改services模塊爲例,命令如下:cd frameworks/base/services mm ~/YOUDI

原创 u-boot-1.3.2 run in flash for at91rm9200

主要目的:移植u-boot-1.3.2到K9開發板,使其直接從FLASH 啓 動,而不是通過boot.bin和u-boot 壓 縮文件 啓動。實現u- boot的非壓縮式的從FLASH的0x10000000地址處直接啓動。 硬