原创 時間子系統

標籤(空格分隔): linux子系統 時間子系統 http://cloudtech.iteye.com/blog/1712676 http://blog.csdn.net/lijzheng/article/details/23

原创 platform的學習和使用

標籤(空格分隔): linux子系統 platform平臺框架 http://blog.csdn.net/ufo714/article/details/8595021 platform的靈魂是:device(設備)driver(

原创 中斷的上半部和下半部

參閱《linux內核設計與實現》 中斷處理分爲上半部和下半部 中斷處理的上半部和下半部都是不允許出現睡眠和阻塞的。但是對於下半部,並不是一刀切,不同下半部的實現方式有的不允許睡眠和阻塞(軟中斷和tasklet),有的是可以的(工作

原创 IO_ADDRESS()的實現

上面我們說了如何去在系統中自己實現一個設置系統寄存器的一個方法,上面歸根到底要進行物理地址到虛擬地址的映射 現在我們就說說IO_ADDRESS()的實現 #define __REG32ALI(addr) (*((volatile

原创 靜態映射和動態映射

在linux中去操作系統寄存器時必須經過映射,即 1,靜態映射IO__ADDRESS();//這只是一個工具,使用前必須先初始化靜態映射表 2,動態映射ioremap(); 無論靜態映射還是動態映射目的都是將外設地址映射到虛擬地址

原创 interrupt

http://www.cnblogs.com/pengdonglin137/p/6349209.html 基於tiny4412的Linux內核移植 — 實例學習中斷背後的知識(1) http://www.cnblogs.com/p

原创 gic driver

在kernel發生中斷後,會跳轉到彙編代碼entry-armv.S中__irq_svc處,進而調用handle_arch_irq,每個中斷控制器的drivver會使用如下: handle_arch_irq = gic_handl

原创 關於內存映射的一些疑問

http://www.cnblogs.com/hanyan225/archive/2010/10/25/1860730.html http://wenku.baidu.com/link?url=lpFmJHGfdAQlaEO6z

原创 內存與IO訪問

IO空間是相對於內存空間而言的, x86一般使用IO空間 arm等嵌入式cpu一般不提供IO空間,只存在內存空間 詳看宋寶華第三版第11章:內存與IO訪問 1.內存空間可以直接通過地址,指針來訪問,程序即在程序運行中使用的變

原创 共享中斷

http://blog.csdn.net/laviolette/article/details/51577604 共享中斷 關於共享中斷,這裏有個誤區一定要澄清,這裏所說的共享中斷是一個軟件層面的概念,並不是硬件層面的多個外設共

原创 物理地址空間和虛擬地址空間

http://blog.csdn.net/jiasike/article/details/38852485 一、物理地址(空間)     因爲CPU是32位的,其地址總線是32位的,所以其地址總線可編碼的個數是2^32(4G)

原创 關於靜態映射與動態映射io地址時虛擬地址的問題

關於靜態映射與動態映射io地址時虛擬地址的問題: 一直有個問題,當我們人爲的去靜態的分配好IO地址所對應的虛擬地址時,此時我們已經佔用了一片虛擬地址空間,但是此時使用io_remap去動態映射時,會不會申請到的虛擬地址空間 會和我