原创 Elisp 標記-清除算法簡介
標記-清除(mark-sweep)算法 Emacs Lisp最早使用的就是標記清除算法. 算法分爲"標記"和"清除"兩個階段. 1) 首先標
原创 objdump 反彙編一個函數的腳本
1)使用System.map文件查找函數的起始地址和結束地址 2)使用objdump -d 反彙編, 然後通過--start-address和--stop-address參數指定函數區間 3)使用nm -n out.elf > Syste
原创 自上而下語法分析LL(1)
1. 語法分析的地位 --- 是編譯程序的核心部分 2. 語法分析的任務 -- 識別由詞法分析得出的單詞序列是否是給定文法的句子 3. 語法分析的理論基礎 -- 上下文無關文法和下推自動機 4. 語法分析的方式 1) 自
原创 自上而下分析法
歸約: -- 自下而上的語法分析過程 -- 分類: 簡單優先分析法,算符優先分析法,LR分析法 1.自下而上的語法分析過程思想 -- 是一個最左歸約的過程, 從輸入串開始, 朝着文法的開始符號進行規約,直到 文法到達文法的開始符號爲
原创 kernel-DDR配置
啓動過程參考: http://bbs.chinaunix.net/thread-2039668-1-1.html 參考: http://processors.wiki.ti.com/index.php/Setting_up_AM37x_S
原创 dma使用
1. DMA : 直接存儲訪問. 在不帶MPU或者DSP的情況下,外設和內存之間高性能數據傳輸. 2. 一個DMA傳輸器可以通過一個邏輯DMA通道來
原创 arm 相關學習(2)
* 六個操作模式 User Mode --- 用戶模式,大部分任務在此模式下運行 FIQ --- 快速中斷模式 IRQ --- 普通中斷模式 Supervisor --- 特權模式,軟件中斷或
原创 arm 相關學習(1)
1. 有16個可見的32bit寄存器: r0-r7(所有處理器模式都有各自的寄存器) r8-r12(通用目的寄存器) 其中: r10 --- sl (stack limit)寄存器 r
原创 linux工具
1. ip與mac綁定 #arp -f ip-mac ip-mac內容爲: 192.168.99.19 bc:30:5b:b9:93:82 #arp -n 地址 類型 硬件地址
原创 linux下查看哪些程序佔用sdcard or usb
1. 遍歷查看/proc下的程序(以數字打頭的目錄, 一個目錄對應一個程序的pid) 文件名稱獲取 cat /proc/ [pid] /cmdline 2.查看 fd目錄下的鏈接文件 查看 maps文件的內容 查看 cwd鏈接
原创 設備事件通知
1. hotplug使用 1)內核配置文件: CONFIG_HOTPLUG=y CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 2) 當設備添加,刪除,更改時內核會調用 /sbin/hotp
原创 linux completion
一. linux kernel阻塞等待事件方法: 把線程置爲可中斷或者不可中斷狀態 然後調用進程調度函數執行其他代碼 該進程
原创 git郵件發送
1. 下載腳本: post-receive 根據原版修改的一個發送腳本: http://download.csdn.net/detail/joans123/5686621 獲取git項目下config文件中的內容: 收
原创 arm AAPCS(程序調用標準)
ABI : Application Binary Interface 應用程序二進制接口 EABI : Embedded ABI 嵌入式ABI PCS : Procedure Call Sta
原创 IA-32彙編知識
1. 通用寄存器 EAX 用於操作數和結果數的累加器 EBX 指向數據內存段中的數據指針 ECX 計數器 EDX IO指針 EDI 用於字符串操作的目標數據指針