原创 linux內核鏡像格式

一、Linux內核鏡像格式     Linux內核有多種格式的鏡像,包括vmlinux、Image、zImage、bzImage、uImage、xipImage、bootpImage等.(1)kernel鏡像格式:vmlinux   vm

原创 原碼反碼補碼加減運算

=======================================================================================================================

原创 嵌入式Linux之我行——ARM MMU工作原理剖析

一、MMU的產生       許多年以前,當人們還在使用DOS或是更古老的操作系統的時候,計算機的內存還非常小,一般都是以K爲單位進行計算,相應的,當時的程序規模也不大,所以內存容量雖然小,但還是可以容納當時的程序。但隨着圖形界面的興起還

原创 函數指針

 函數指針是指向函數的指針變量。 因而“函數指針”本身首先應是指針變量,只不過該指針變量指向函數。這正如用指針變量可指向整型變量、字符型、數組一樣,這

原创 ATPCS使用規則

爲了使單獨編譯的C語言程序和彙編程序之間能夠相互調用,必須爲子程序之間的調用規定一定的規則.ATPCS就是ARM程序和THUMB程序中子程序調用的基本規則... 一.ATPCS概述...        ATPCS規定了一些子程序之間調用

原创 線程控制--私有數據

   在多線程環境下,進程內的所有線程共享進程的數據空間,因此全局變量爲所有線程共有。在程序設計中有時需要保存線程自己的全局變量,這種特殊的變量僅在某個線程內部有效。如常見的變量errno,它返回標準的出錯代碼。errno不應該是一個局部

原创 RHEL5 下安裝GCC編譯環境

系統默認安裝時並沒有安裝編譯環境,也就是說GCC也沒有裝進去。   所幸的是RHEL的光盤上的Server目錄裏已經包含了gcc和其所依賴的軟件   開始安裝:按順序安裝以下包就可以完成GCC的安裝了   找出下列軟件,並安按照順序安裝即

原创 C語言裏的左移和右移運算

來源:http://www.cppblog.com/tx7do/archive/2006/10/19/13867.html   先說左移,左移就是把一個數的所有位都向左移動若干位,在C中用<<運算符.例如: int i = 1; i =

原创 Linkages of identifiers(鏈接屬性)

Link ages of identifiers (鏈接屬性) 參考:【1】C99標準 【2】C和指針 3.6節   1 . An identifier declared in different scopes or in th

原创 進位與溢出

進位與溢出        Cy位是進位位,用來表示本次無符號數運算結果的溢出溢出。由於無符號數的最高有效位只有數位意義而無符號意義,所以該位所產生的進位應該是本次運算結果的實際進位值。所以說:進位位Cy是在給定二進制數的位數範圍內,代表了

原创 刪除文件的恢復策略

作者: 李貴林 陳朝暉 與DOS/Windows不同,UNIX文件被刪除後很難恢復,這是由UNIX獨特的文件系統結構決定的。UNIX文件目錄不像DOS/Windows那 樣,文件即使被刪除之後仍保存有完整的文件名、文件長度、始簇號(即文

原创 Kill信號列表

$ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS

原创 ARM彙編僞指令介紹

在 ARM 彙編語言程序裏,有一些特殊指令助記符,這些助記符與指令系統的助記符不同,沒有相對應的操作碼,通常稱這些特殊指令助記符爲僞指令,他們所完成的操作稱爲僞操作。僞指令在源程序中的作用是爲完成彙編程序作各種準備工作的,這些僞指令僅在彙

原创 S3C2440的時鐘設置

    一個嵌入式系統中,晶振就像心臟。必須先確定晶振,設置好系統的時鐘,WDT,UART,PWM,TIMER等模塊才能正常工作。和51系列單片機相比,S3C2440的時鐘電路很複雜。首先通過引腳OM2,OM3來選擇時鐘源。 以TQ244